Update ResponseBody & BodySuccess widgets

This commit is contained in:
Ankit Mahato
2023-03-19 20:30:19 +05:30
parent 49b1fee053
commit f7665a9360

View File

@ -28,6 +28,7 @@ class _ResponseBodyState extends ConsumerState<ResponseBody> {
final responseModel = collection[idIdx].responseModel; final responseModel = collection[idIdx].responseModel;
var mediaType = responseModel?.mediaType; var mediaType = responseModel?.mediaType;
var body = responseModel?.body; var body = responseModel?.body;
var formattedBody = responseModel?.formattedBody;
if (responseModel == null) { if (responseModel == null) {
return const ErrorMessage( return const ErrorMessage(
message: 'Error: No Response Data Found. $kRaiseIssue'); message: 'Error: No Response Data Found. $kRaiseIssue');
@ -50,12 +51,19 @@ class _ResponseBodyState extends ConsumerState<ResponseBody> {
message: message:
"Viewing response data of Content-Type\n'${mediaType.mimeType}' $kMimeTypeRaiseIssue"); "Viewing response data of Content-Type\n'${mediaType.mimeType}' $kMimeTypeRaiseIssue");
} }
if (formattedBody == null) {
options = [...options];
options.remove(ResponseBodyView.code);
}
return BodySuccess( return BodySuccess(
key: Key("$activeId-response"), key: Key("$activeId-response"),
mediaType: mediaType, mediaType: mediaType,
options: options, options: options,
bytes: responseModel.bodyBytes!, bytes: responseModel.bodyBytes!,
body: body, body: body,
formattedBody: formattedBody,
highlightLanguage: highlightLanguage, highlightLanguage: highlightLanguage,
); );
} }
@ -68,11 +76,13 @@ class BodySuccess extends StatefulWidget {
required this.body, required this.body,
required this.options, required this.options,
required this.bytes, required this.bytes,
this.formattedBody,
this.highlightLanguage}); this.highlightLanguage});
final MediaType mediaType; final MediaType mediaType;
final List<ResponseBodyView> options; final List<ResponseBodyView> options;
final String body; final String body;
final Uint8List bytes; final Uint8List bytes;
final String? formattedBody;
final String? highlightLanguage; final String? highlightLanguage;
@override @override
State<BodySuccess> createState() => _BodySuccessState(); State<BodySuccess> createState() => _BodySuccessState();
@ -149,6 +159,7 @@ class _BodySuccessState extends State<BodySuccess> {
), ),
), ),
), ),
if (widget.formattedBody != null)
Visibility( Visibility(
visible: currentSeg == ResponseBodyView.code, visible: currentSeg == ResponseBodyView.code,
child: Expanded( child: Expanded(
@ -157,7 +168,7 @@ class _BodySuccessState extends State<BodySuccess> {
padding: kP8, padding: kP8,
decoration: textContainerdecoration, decoration: textContainerdecoration,
child: CodePreviewer( child: CodePreviewer(
code: widget.body, code: widget.formattedBody!,
theme: codeTheme, theme: codeTheme,
language: widget.highlightLanguage, language: widget.highlightLanguage,
textStyle: kCodeStyle, textStyle: kCodeStyle,