mirror of
https://github.com/foss42/apidash.git
synced 2025-05-21 16:26:37 +08:00
Update ContentType & ResponseBodyView enums
This commit is contained in:
@ -22,7 +22,7 @@ class DartHttpCodeGen {
|
||||
queryParams: requestModel.enabledParamsMap,
|
||||
headers: {...requestModel.enabledHeadersMap},
|
||||
contentType: requestModel.requestBodyContentType,
|
||||
hasContentTypeHeader: requestModel.hasContentTypeHeader,
|
||||
hasContentTypeHeader: requestModel.hasContentTypeHeader,
|
||||
body: requestModel.requestBody,
|
||||
formData: requestModel.formDataMapList,
|
||||
);
|
||||
@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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});
|
||||
|
@ -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);
|
||||
|
@ -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);
|
||||
|
@ -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];
|
||||
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -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"] = "";
|
||||
|
@ -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(),
|
||||
|
Reference in New Issue
Block a user