mirror of
https://github.com/foss42/apidash.git
synced 2025-08-05 21:10:33 +08:00
Update codegens
This commit is contained in:
@ -4,7 +4,7 @@ import 'package:jinja/jinja.dart' as jj;
|
||||
import 'package:apidash/consts.dart';
|
||||
import 'package:apidash/utils/utils.dart'
|
||||
show getNewUuid, getValidRequestUri, stripUriParams;
|
||||
import 'package:apidash/models/models.dart' show RequestModel;
|
||||
import 'package:apidash/models/models.dart';
|
||||
|
||||
class RustActixCodeGen {
|
||||
final String kTemplateStart = """
|
||||
@ -112,7 +112,7 @@ multipart/form-data; boundary={{boundary}}''';
|
||||
""";
|
||||
|
||||
String? getCode(
|
||||
RequestModel requestModel, {
|
||||
HttpRequestModel requestModel, {
|
||||
String? boundary,
|
||||
}) {
|
||||
try {
|
||||
@ -125,7 +125,7 @@ multipart/form-data; boundary={{boundary}}''';
|
||||
|
||||
var rec = getValidRequestUri(
|
||||
url,
|
||||
requestModel.enabledRequestParams,
|
||||
requestModel.enabledParams,
|
||||
);
|
||||
Uri? uri = rec.$1;
|
||||
if (uri != null) {
|
||||
@ -137,11 +137,11 @@ multipart/form-data; boundary={{boundary}}''';
|
||||
});
|
||||
|
||||
var method = requestModel.method;
|
||||
var requestBody = requestModel.requestBody;
|
||||
var requestBody = requestModel.body;
|
||||
if (kMethodsWithBody.contains(method) && requestBody != null) {
|
||||
var contentLength = utf8.encode(requestBody).length;
|
||||
if (contentLength > 0) {
|
||||
if (requestModel.requestBodyContentType == ContentType.json) {
|
||||
if (requestModel.bodyContentType == ContentType.json) {
|
||||
hasJsonBody = true;
|
||||
var templateBody = jj.Template(kTemplateJson);
|
||||
result += templateBody.render({"body": requestBody});
|
||||
@ -179,7 +179,7 @@ multipart/form-data; boundary={{boundary}}''';
|
||||
}
|
||||
}
|
||||
|
||||
var headersList = requestModel.enabledRequestHeaders;
|
||||
var headersList = requestModel.enabledHeaders;
|
||||
if (headersList != null || hasBody || requestModel.hasFormData) {
|
||||
var headers = requestModel.enabledHeadersMap;
|
||||
if (requestModel.hasFormData) {
|
||||
@ -190,7 +190,7 @@ multipart/form-data; boundary={{boundary}}''';
|
||||
});
|
||||
} else if (hasBody) {
|
||||
headers[HttpHeaders.contentTypeHeader] =
|
||||
requestModel.requestBodyContentType.header;
|
||||
requestModel.bodyContentType.header;
|
||||
}
|
||||
|
||||
if (headers.isNotEmpty) {
|
||||
|
@ -1,7 +1,7 @@
|
||||
import 'package:jinja/jinja.dart' as jj;
|
||||
import 'package:apidash/utils/utils.dart'
|
||||
show getValidRequestUri, requestModelToHARJsonRequest;
|
||||
import 'package:apidash/models/models.dart' show RequestModel;
|
||||
import 'package:apidash/models/models.dart';
|
||||
import 'package:apidash/consts.dart';
|
||||
|
||||
class RustCurlCodeGen {
|
||||
@ -78,23 +78,22 @@ fn main() {
|
||||
println!("Response code: {}", easy.response_code().unwrap());
|
||||
}""";
|
||||
|
||||
String? getCode(RequestModel requestModel) {
|
||||
String? getCode(HttpRequestModel requestModel) {
|
||||
try {
|
||||
String result = "";
|
||||
var requestBody = requestModel.requestBody;
|
||||
|
||||
String url = requestModel.url;
|
||||
|
||||
result += jj.Template(kTemplateStart).render({
|
||||
"hasJsonBody": requestModel.hasJsonData,
|
||||
"hasHeaders": (requestModel.enabledRequestHeaders != null &&
|
||||
requestModel.enabledRequestHeaders!.isNotEmpty) ||
|
||||
"hasHeaders": (requestModel.enabledHeaders != null &&
|
||||
requestModel.enabledHeaders!.isNotEmpty) ||
|
||||
(requestModel.hasJsonData || requestModel.hasTextData)
|
||||
});
|
||||
|
||||
var rec = getValidRequestUri(
|
||||
url,
|
||||
requestModel.enabledRequestParams,
|
||||
requestModel.enabledParams,
|
||||
);
|
||||
|
||||
Uri? uri = rec.$1;
|
||||
@ -110,10 +109,10 @@ fn main() {
|
||||
if (uri != null) {
|
||||
if (requestModel.hasTextData) {
|
||||
var templateBody = jj.Template(kTemplateRawBody);
|
||||
result += templateBody.render({"body": requestBody});
|
||||
result += templateBody.render({"body": requestModel.body});
|
||||
} else if (requestModel.hasJsonData) {
|
||||
var templateBody = jj.Template(kTemplateJsonBody);
|
||||
result += templateBody.render({"body": requestBody});
|
||||
result += templateBody.render({"body": requestModel.body});
|
||||
} else if (requestModel.hasFormData) {
|
||||
var templateFormData = jj.Template(kTemplateFormData);
|
||||
result += templateFormData.render({
|
||||
@ -121,12 +120,12 @@ fn main() {
|
||||
});
|
||||
}
|
||||
|
||||
var headersList = requestModel.enabledRequestHeaders;
|
||||
var headersList = requestModel.enabledHeaders;
|
||||
if (headersList != null || requestModel.hasBody) {
|
||||
var headers = requestModel.enabledHeadersMap;
|
||||
if (requestModel.hasJsonData || requestModel.hasTextData) {
|
||||
headers.putIfAbsent(kHeaderContentType,
|
||||
() => requestModel.requestBodyContentType.header);
|
||||
headers.putIfAbsent(
|
||||
kHeaderContentType, () => requestModel.bodyContentType.header);
|
||||
}
|
||||
if (headers.isNotEmpty) {
|
||||
var templateHeader = jj.Template(kTemplateHeader);
|
||||
|
@ -4,7 +4,7 @@ import 'package:jinja/jinja.dart' as jj;
|
||||
import 'package:apidash/consts.dart';
|
||||
import 'package:apidash/utils/utils.dart'
|
||||
show getValidRequestUri, stripUriParams;
|
||||
import 'package:apidash/models/models.dart' show RequestModel;
|
||||
import 'package:apidash/models/models.dart';
|
||||
|
||||
class RustReqwestCodeGen {
|
||||
final String kTemplateStart =
|
||||
@ -81,7 +81,7 @@ class RustReqwestCodeGen {
|
||||
""";
|
||||
|
||||
String? getCode(
|
||||
RequestModel requestModel,
|
||||
HttpRequestModel requestModel,
|
||||
) {
|
||||
try {
|
||||
String result = "";
|
||||
@ -92,7 +92,7 @@ class RustReqwestCodeGen {
|
||||
|
||||
var rec = getValidRequestUri(
|
||||
url,
|
||||
requestModel.enabledRequestParams,
|
||||
requestModel.enabledParams,
|
||||
);
|
||||
Uri? uri = rec.$1;
|
||||
if (uri != null) {
|
||||
@ -100,15 +100,15 @@ class RustReqwestCodeGen {
|
||||
result += templateStartUrl.render({
|
||||
"url": stripUriParams(uri),
|
||||
'isFormDataRequest': requestModel.hasFormData,
|
||||
'isJson': requestModel.requestBodyContentType == ContentType.json
|
||||
'isJson': requestModel.bodyContentType == ContentType.json
|
||||
});
|
||||
|
||||
var method = requestModel.method;
|
||||
var requestBody = requestModel.requestBody;
|
||||
var requestBody = requestModel.body;
|
||||
if (kMethodsWithBody.contains(method) && requestBody != null) {
|
||||
var contentLength = utf8.encode(requestBody).length;
|
||||
if (contentLength > 0) {
|
||||
if (requestModel.requestBodyContentType == ContentType.json) {
|
||||
if (requestModel.bodyContentType == ContentType.json) {
|
||||
hasJsonBody = true;
|
||||
var templateBody = jj.Template(kTemplateJson);
|
||||
result += templateBody.render({"body": requestBody});
|
||||
@ -145,12 +145,12 @@ class RustReqwestCodeGen {
|
||||
}
|
||||
}
|
||||
|
||||
var headersList = requestModel.enabledRequestHeaders;
|
||||
var headersList = requestModel.enabledHeaders;
|
||||
if (headersList != null || hasBody) {
|
||||
var headers = requestModel.enabledHeadersMap;
|
||||
if (hasBody) {
|
||||
headers[HttpHeaders.contentTypeHeader] =
|
||||
requestModel.requestBodyContentType.header;
|
||||
requestModel.bodyContentType.header;
|
||||
}
|
||||
if (headers.isNotEmpty) {
|
||||
var templateHeaders = jj.Template(kTemplateHeaders);
|
||||
|
@ -4,7 +4,7 @@ import 'package:jinja/jinja.dart' as jj;
|
||||
import 'package:apidash/consts.dart';
|
||||
import 'package:apidash/utils/utils.dart'
|
||||
show getNewUuid, getValidRequestUri, stripUriParams;
|
||||
import 'package:apidash/models/models.dart' show RequestModel;
|
||||
import 'package:apidash/models/models.dart';
|
||||
|
||||
class RustUreqCodeGen {
|
||||
final String kTemplateStart = """
|
||||
@ -109,7 +109,7 @@ multipart/form-data; boundary={{boundary}}''';
|
||||
""";
|
||||
|
||||
String? getCode(
|
||||
RequestModel requestModel, {
|
||||
HttpRequestModel requestModel, {
|
||||
String? boundary,
|
||||
}) {
|
||||
try {
|
||||
@ -122,7 +122,7 @@ multipart/form-data; boundary={{boundary}}''';
|
||||
|
||||
var rec = getValidRequestUri(
|
||||
url,
|
||||
requestModel.enabledRequestParams,
|
||||
requestModel.enabledParams,
|
||||
);
|
||||
Uri? uri = rec.$1;
|
||||
if (uri != null) {
|
||||
@ -134,11 +134,11 @@ multipart/form-data; boundary={{boundary}}''';
|
||||
});
|
||||
|
||||
var method = requestModel.method;
|
||||
var requestBody = requestModel.requestBody;
|
||||
var requestBody = requestModel.body;
|
||||
if (kMethodsWithBody.contains(method) && requestBody != null) {
|
||||
var contentLength = utf8.encode(requestBody).length;
|
||||
if (contentLength > 0) {
|
||||
if (requestModel.requestBodyContentType == ContentType.json) {
|
||||
if (requestModel.bodyContentType == ContentType.json) {
|
||||
hasJsonBody = true;
|
||||
var templateBody = jj.Template(kTemplateJson);
|
||||
result += templateBody.render({"body": requestBody});
|
||||
@ -172,7 +172,7 @@ multipart/form-data; boundary={{boundary}}''';
|
||||
}
|
||||
}
|
||||
|
||||
var headersList = requestModel.enabledRequestHeaders;
|
||||
var headersList = requestModel.enabledHeaders;
|
||||
if (headersList != null || hasBody || requestModel.hasFormData) {
|
||||
var headers = requestModel.enabledHeadersMap;
|
||||
if (requestModel.hasFormData) {
|
||||
@ -183,7 +183,7 @@ multipart/form-data; boundary={{boundary}}''';
|
||||
});
|
||||
} else if (hasBody) {
|
||||
headers[HttpHeaders.contentTypeHeader] =
|
||||
requestModel.requestBodyContentType.header;
|
||||
requestModel.bodyContentType.header;
|
||||
}
|
||||
|
||||
if (headers.isNotEmpty) {
|
||||
|
Reference in New Issue
Block a user