mirror of
https://github.com/foss42/apidash.git
synced 2025-06-01 06:42:07 +08:00
fixes: form data & curl
This commit is contained in:
@ -58,7 +58,7 @@ class cURLCodeGen {
|
||||
} else if (requestModel.hasFormData) {
|
||||
for (var formData in requestModel.formDataList) {
|
||||
var templateFormData = jj.Template(kTemplateFormData);
|
||||
if (formData.name.isNotEmpty && formData.value.isNotEmpty) {
|
||||
if (formData.name.isNotEmpty) {
|
||||
result += templateFormData.render({
|
||||
"name": formData.name,
|
||||
"value":
|
||||
|
@ -80,10 +80,10 @@ class RequestModel {
|
||||
bool get hasFormData =>
|
||||
kMethodsWithBody.contains(method) &&
|
||||
hasFormDataContentType &&
|
||||
(requestFormDataList ?? <FormDataModel>[]).isNotEmpty;
|
||||
formDataMapList.isNotEmpty;
|
||||
List<FormDataModel> get formDataList =>
|
||||
requestFormDataList ?? <FormDataModel>[];
|
||||
List<Map<String, dynamic>> get formDataMapList =>
|
||||
List<Map<String, String>> get formDataMapList =>
|
||||
rowsToFormDataMapList(requestFormDataList) ?? [];
|
||||
bool get hasFileInFormData => formDataList
|
||||
.map((e) => e.type == FormDataType.file)
|
||||
@ -137,6 +137,7 @@ class RequestModel {
|
||||
var params = requestParams ?? this.requestParams;
|
||||
var enabledHeaders = isHeaderEnabledList ?? this.isHeaderEnabledList;
|
||||
var enabledParams = isParamEnabledList ?? this.isParamEnabledList;
|
||||
var formDataList = requestFormDataList ?? this.requestFormDataList;
|
||||
return RequestModel(
|
||||
id: id ?? this.id,
|
||||
method: method ?? this.method,
|
||||
@ -151,7 +152,7 @@ class RequestModel {
|
||||
requestBodyContentType:
|
||||
requestBodyContentType ?? this.requestBodyContentType,
|
||||
requestBody: requestBody ?? this.requestBody,
|
||||
requestFormDataList: requestFormDataList ?? this.requestFormDataList,
|
||||
requestFormDataList: formDataList != null ? [...formDataList] : null,
|
||||
responseStatus: responseStatus ?? this.responseStatus,
|
||||
message: message ?? this.message,
|
||||
responseModel: responseModel ?? this.responseModel,
|
||||
|
@ -1,5 +1,6 @@
|
||||
import 'dart:typed_data';
|
||||
import 'dart:convert';
|
||||
import 'package:collection/collection.dart';
|
||||
import '../models/models.dart';
|
||||
import '../consts.dart';
|
||||
import 'package:http/http.dart' as http;
|
||||
@ -90,18 +91,22 @@ List<NameValueModel>? mapToRows(Map<String, String>? kvMap) {
|
||||
return finalRows;
|
||||
}
|
||||
|
||||
List<Map<String, dynamic>>? rowsToFormDataMapList(
|
||||
List<Map<String, String>>? rowsToFormDataMapList(
|
||||
List<FormDataModel>? kvRows,
|
||||
) {
|
||||
if (kvRows == null) {
|
||||
return null;
|
||||
}
|
||||
List<Map<String, dynamic>> finalMap = kvRows
|
||||
.map((FormDataModel formData) => {
|
||||
"name": formData.name,
|
||||
"value": formData.value,
|
||||
"type": formData.type.name,
|
||||
})
|
||||
List<Map<String, String>> finalMap = kvRows
|
||||
.map((FormDataModel formData) =>
|
||||
(formData.name.trim().isEmpty && formData.value.trim().isEmpty)
|
||||
? null
|
||||
: {
|
||||
"name": formData.name,
|
||||
"value": formData.value,
|
||||
"type": formData.type.name,
|
||||
})
|
||||
.whereNotNull()
|
||||
.toList();
|
||||
return finalMap;
|
||||
}
|
||||
|
@ -50,7 +50,7 @@ String getShortPath(String path) {
|
||||
|
||||
String getFilenameFromPath(String path) {
|
||||
var f = p.split(path);
|
||||
return f.last;
|
||||
return f.lastOrNull ?? "";
|
||||
}
|
||||
|
||||
String getTempFileName() {
|
||||
|
Reference in New Issue
Block a user