Update ContentType & ResponseBodyView enums

This commit is contained in:
Ashita Prasad
2024-01-08 00:32:49 +05:30
parent fdd749d4a0
commit d46dd0071f
8 changed files with 29 additions and 35 deletions

View File

@ -57,8 +57,8 @@ class DartHttpCodeGen {
final strContent = CodeExpression(Code('r\'\'\'$body\'\'\''));
dataExp = declareVar('body', type: refer('String')).assign(strContent);
if (!hasContentTypeHeader) {
headers.putIfAbsent(HttpHeaders.contentTypeHeader,
() => kContentTypeMap[contentType] ?? '');
headers.putIfAbsent(
HttpHeaders.contentTypeHeader, () => contentType.header);
}
}

View File

@ -118,8 +118,7 @@ import okhttp3.MediaType.Companion.toMediaType""";
var contentLength = utf8.encode(requestBody).length;
if (contentLength > 0) {
hasBody = true;
String contentType =
kContentTypeMap[requestModel.requestBodyContentType] ?? "";
String contentType = requestModel.requestBodyContentType.header;
var templateBody = jj.Template(kTemplateRequestBody);
result += templateBody
.render({"contentType": contentType, "body": requestBody});

View File

@ -154,7 +154,7 @@ body = b'\r\n'.join(dataList)
hasHeaders = true;
if (hasBody && !requestModel.hasContentTypeHeader) {
headers[HttpHeaders.contentTypeHeader] =
kContentTypeMap[requestModel.requestBodyContentType] ?? "";
requestModel.requestBodyContentType.header;
}
var headersString = kEncoder.convert(headers);
headersString = padMultilineString(headersString, kHeadersPadding);

View File

@ -162,7 +162,7 @@ print('Response Body:', response.text)
hasHeaders = true;
if (hasBody) {
headers[HttpHeaders.contentTypeHeader] =
kContentTypeMap[requestModel.requestBodyContentType] ?? "";
requestModel.requestBodyContentType.header;
}
var headersString = kEncoder.convert(headers);
headersString = padMultilineString(headersString, kHeadersPadding);

View File

@ -242,8 +242,6 @@ enum RequestItemMenuOption { edit, delete, duplicate }
enum HTTPVerb { get, head, post, put, patch, delete }
enum ContentType { json, text, formdata }
enum FormDataType { text, file }
const kSupportedUriSchemes = ["https", "http"];
@ -312,25 +310,25 @@ const kTypeVideo = 'video';
const kSubTypeDefaultViewOptions = 'all';
const kContentTypeMap = {
ContentType.json: "$kTypeApplication/$kSubTypeJson",
ContentType.text: "$kTypeText/$kSubTypePlain",
ContentType.formdata: "multipart/form-data",
};
enum ContentType {
json("$kTypeApplication/$kSubTypeJson"),
text("$kTypeText/$kSubTypePlain"),
formdata("multipart/form-data");
enum ResponseBodyView { preview, code, raw, none }
const ContentType(this.header);
final String header;
}
const kKeyIcon = "icon";
const kKeyName = "name";
const Map<ResponseBodyView, Map> kResponseBodyViewIcons = {
ResponseBodyView.none: {kKeyName: "Preview", kKeyIcon: Icons.warning},
ResponseBodyView.preview: {
kKeyName: "Preview",
kKeyIcon: Icons.visibility_rounded
},
ResponseBodyView.code: {kKeyName: "Preview", kKeyIcon: Icons.code_rounded},
ResponseBodyView.raw: {kKeyName: "Raw", kKeyIcon: Icons.text_snippet_rounded}
};
enum ResponseBodyView {
preview("Preview", Icons.visibility_rounded),
code("Preview", Icons.code_rounded),
raw("Raw", Icons.text_snippet_rounded),
none("Preview", Icons.warning);
const ResponseBodyView(this.label, this.icon);
final String label;
final IconData icon;
}
const kNoBodyViewOptions = [ResponseBodyView.none];
const kNoRawBodyViewOptions = [ResponseBodyView.none, ResponseBodyView.raw];

View File

@ -31,7 +31,7 @@ Future<(http.Response?, Duration?, String?)> request(
headers[HttpHeaders.contentLengthHeader] = contentLength.toString();
if (!requestModel.hasContentTypeHeader) {
headers[HttpHeaders.contentTypeHeader] =
kContentTypeMap[requestModel.requestBodyContentType] ?? "";
requestModel.requestBodyContentType.header;
}
}
}

View File

@ -121,7 +121,7 @@ Map<String, dynamic> requestModelToHARJsonRequest(
hasBody = true;
json["postData"] = {};
json["postData"]["mimeType"] =
kContentTypeMap[requestModel.requestBodyContentType] ?? "";
requestModel.requestBodyContentType.header;
json["postData"]["text"] = requestBody;
if (exportMode) {
json["postData"]["comment"] = "";
@ -139,7 +139,7 @@ Map<String, dynamic> requestModelToHARJsonRequest(
if (hasBody && !requestModel.hasContentTypeHeader) {
var m = {
"name": "Content-Type",
"value": kContentTypeMap[requestModel.requestBodyContentType] ?? ""
"value": requestModel.requestBodyContentType.header
};
if (exportMode) {
m["comment"] = "";

View File

@ -397,16 +397,13 @@ class _BodySuccessState extends State<BodySuccess> {
(widget.options == kRawBodyViewOptions)
? const SizedBox()
: SegmentedButton<ResponseBodyView>(
selectedIcon: Icon(
kResponseBodyViewIcons[currentSeg]![kKeyIcon]),
selectedIcon: Icon(currentSeg.icon),
segments: widget.options
.map<ButtonSegment<ResponseBodyView>>(
(e) => ButtonSegment<ResponseBodyView>(
value: e,
label: Text(
kResponseBodyViewIcons[e]![kKeyName]),
icon: Icon(
kResponseBodyViewIcons[e]![kKeyIcon]),
label: Text(e.label),
icon: Icon(e.icon),
),
)
.toList(),