mirror of
https://github.com/foss42/apidash.git
synced 2025-05-23 01:06:46 +08:00
fix: review changes
This commit is contained in:
@ -111,9 +111,9 @@ void main() async {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var headersList = requestModel.requestHeaders;
|
var headersList = requestModel.enabledRequestHeaders;
|
||||||
if (headersList != null || hasBody) {
|
if (headersList != null || hasBody) {
|
||||||
var headers = requestModel.headersMap;
|
var headers = requestModel.enabledHeadersMap;
|
||||||
if (headers.isNotEmpty || hasBody) {
|
if (headers.isNotEmpty || hasBody) {
|
||||||
hasHeaders = true;
|
hasHeaders = true;
|
||||||
if (hasBody) {
|
if (hasBody) {
|
||||||
|
@ -79,8 +79,7 @@ import okhttp3.MediaType.Companion.toMediaType""";
|
|||||||
|
|
||||||
var rec = getValidRequestUri(
|
var rec = getValidRequestUri(
|
||||||
url,
|
url,
|
||||||
requestModel.requestParams,
|
requestModel.enabledRequestParams,
|
||||||
requestModel.enabledParams,
|
|
||||||
);
|
);
|
||||||
Uri? uri = rec.$1;
|
Uri? uri = rec.$1;
|
||||||
|
|
||||||
@ -124,9 +123,9 @@ import okhttp3.MediaType.Companion.toMediaType""";
|
|||||||
result = stringStart + result;
|
result = stringStart + result;
|
||||||
result += kStringRequestStart;
|
result += kStringRequestStart;
|
||||||
|
|
||||||
var headersList = requestModel.requestHeaders;
|
var headersList = requestModel.enabledRequestHeaders;
|
||||||
if (headersList != null) {
|
if (headersList != null) {
|
||||||
var headers = requestModel.headersMap;
|
var headers = requestModel.enabledHeadersMap;
|
||||||
if (headers.isNotEmpty) {
|
if (headers.isNotEmpty) {
|
||||||
hasHeaders = true;
|
hasHeaders = true;
|
||||||
result += getHeaders(headers);
|
result += getHeaders(headers);
|
||||||
|
@ -73,8 +73,7 @@ print(data.decode("utf-8"))
|
|||||||
result += kTemplateStart;
|
result += kTemplateStart;
|
||||||
var rec = getValidRequestUri(
|
var rec = getValidRequestUri(
|
||||||
url,
|
url,
|
||||||
requestModel.requestParams,
|
requestModel.enabledRequestParams,
|
||||||
requestModel.enabledParams,
|
|
||||||
);
|
);
|
||||||
Uri? uri = rec.$1;
|
Uri? uri = rec.$1;
|
||||||
|
|
||||||
@ -101,9 +100,9 @@ print(data.decode("utf-8"))
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var headersList = requestModel.requestHeaders;
|
var headersList = requestModel.enabledRequestHeaders;
|
||||||
if (headersList != null || hasBody) {
|
if (headersList != null || hasBody) {
|
||||||
var headers = requestModel.headersMap;
|
var headers = requestModel.enabledHeadersMap;
|
||||||
if (headers.isNotEmpty || hasBody) {
|
if (headers.isNotEmpty || hasBody) {
|
||||||
hasHeaders = true;
|
hasHeaders = true;
|
||||||
if (hasBody) {
|
if (hasBody) {
|
||||||
|
@ -77,8 +77,7 @@ print('Response Body:', response.text)
|
|||||||
|
|
||||||
var rec = getValidRequestUri(
|
var rec = getValidRequestUri(
|
||||||
url,
|
url,
|
||||||
requestModel.requestParams,
|
requestModel.enabledRequestParams,
|
||||||
requestModel.enabledParams,
|
|
||||||
);
|
);
|
||||||
Uri? uri = rec.$1;
|
Uri? uri = rec.$1;
|
||||||
if (uri != null) {
|
if (uri != null) {
|
||||||
@ -113,9 +112,9 @@ print('Response Body:', response.text)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var headersList = requestModel.requestHeaders;
|
var headersList = requestModel.enabledRequestHeaders;
|
||||||
if (headersList != null || hasBody) {
|
if (headersList != null || hasBody) {
|
||||||
var headers = requestModel.headersMap;
|
var headers = requestModel.enabledHeadersMap;
|
||||||
if (headers.isNotEmpty || hasBody) {
|
if (headers.isNotEmpty || hasBody) {
|
||||||
hasHeaders = true;
|
hasHeaders = true;
|
||||||
if (hasBody) {
|
if (hasBody) {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import 'package:apidash/utils/convert_utils.dart';
|
|
||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:apidash/consts.dart';
|
import 'package:apidash/consts.dart';
|
||||||
import 'package:apidash/utils/utils.dart' show mapToRows, rowsToMap;
|
import 'package:apidash/utils/utils.dart'
|
||||||
|
show mapToRows, rowsToMap, getEnabledRows;
|
||||||
import 'name_value_model.dart';
|
import 'name_value_model.dart';
|
||||||
import 'response_model.dart';
|
import 'response_model.dart';
|
||||||
|
|
||||||
@ -16,8 +16,8 @@ class RequestModel {
|
|||||||
this.requestTabIndex = 0,
|
this.requestTabIndex = 0,
|
||||||
this.requestHeaders,
|
this.requestHeaders,
|
||||||
this.requestParams,
|
this.requestParams,
|
||||||
this.enabledHeaders,
|
this.isHeaderEnabledList,
|
||||||
this.enabledParams,
|
this.isParamEnabledList,
|
||||||
this.requestBodyContentType = ContentType.json,
|
this.requestBodyContentType = ContentType.json,
|
||||||
this.requestBody,
|
this.requestBody,
|
||||||
this.responseStatus,
|
this.responseStatus,
|
||||||
@ -33,18 +33,25 @@ class RequestModel {
|
|||||||
final int requestTabIndex;
|
final int requestTabIndex;
|
||||||
final List<NameValueModel>? requestHeaders;
|
final List<NameValueModel>? requestHeaders;
|
||||||
final List<NameValueModel>? requestParams;
|
final List<NameValueModel>? requestParams;
|
||||||
final List<bool>? enabledHeaders;
|
final List<bool>? isHeaderEnabledList;
|
||||||
final List<bool>? enabledParams;
|
final List<bool>? isParamEnabledList;
|
||||||
final ContentType requestBodyContentType;
|
final ContentType requestBodyContentType;
|
||||||
final String? requestBody;
|
final String? requestBody;
|
||||||
final int? responseStatus;
|
final int? responseStatus;
|
||||||
final String? message;
|
final String? message;
|
||||||
final ResponseModel? responseModel;
|
final ResponseModel? responseModel;
|
||||||
|
|
||||||
Map<String, String> get headersMap =>
|
List<NameValueModel>? get enabledRequestHeaders =>
|
||||||
rowsToMap(getEnabledRows(requestHeaders, enabledHeaders)) ?? {};
|
getEnabledRows(requestHeaders, isHeaderEnabledList);
|
||||||
Map<String, String> get paramsMap =>
|
List<NameValueModel>? get enabledRequestParams =>
|
||||||
rowsToMap(getEnabledRows(requestParams, enabledParams)) ?? {};
|
getEnabledRows(requestParams, isParamEnabledList);
|
||||||
|
|
||||||
|
Map<String, String> get enabledHeadersMap =>
|
||||||
|
rowsToMap(enabledRequestHeaders) ?? {};
|
||||||
|
Map<String, String> get enabledParamsMap =>
|
||||||
|
rowsToMap(enabledRequestParams) ?? {};
|
||||||
|
Map<String, String> get headersMap => rowsToMap(requestHeaders) ?? {};
|
||||||
|
Map<String, String> get paramsMap => rowsToMap(requestParams) ?? {};
|
||||||
|
|
||||||
RequestModel duplicate({
|
RequestModel duplicate({
|
||||||
required String id,
|
required String id,
|
||||||
@ -57,8 +64,10 @@ class RequestModel {
|
|||||||
description: description,
|
description: description,
|
||||||
requestHeaders: requestHeaders != null ? [...requestHeaders!] : null,
|
requestHeaders: requestHeaders != null ? [...requestHeaders!] : null,
|
||||||
requestParams: requestParams != null ? [...requestParams!] : null,
|
requestParams: requestParams != null ? [...requestParams!] : null,
|
||||||
enabledHeaders: enabledHeaders != null ? [...enabledHeaders!] : null,
|
isHeaderEnabledList:
|
||||||
enabledParams: enabledParams != null ? [...enabledParams!] : null,
|
isHeaderEnabledList != null ? [...isHeaderEnabledList!] : null,
|
||||||
|
isParamEnabledList:
|
||||||
|
isParamEnabledList != null ? [...isParamEnabledList!] : null,
|
||||||
requestBodyContentType: requestBodyContentType,
|
requestBodyContentType: requestBodyContentType,
|
||||||
requestBody: requestBody,
|
requestBody: requestBody,
|
||||||
);
|
);
|
||||||
@ -73,8 +82,8 @@ class RequestModel {
|
|||||||
int? requestTabIndex,
|
int? requestTabIndex,
|
||||||
List<NameValueModel>? requestHeaders,
|
List<NameValueModel>? requestHeaders,
|
||||||
List<NameValueModel>? requestParams,
|
List<NameValueModel>? requestParams,
|
||||||
List<bool>? enabledHeaders,
|
List<bool>? isHeaderEnabledList,
|
||||||
List<bool>? enabledParams,
|
List<bool>? isParamEnabledList,
|
||||||
ContentType? requestBodyContentType,
|
ContentType? requestBodyContentType,
|
||||||
String? requestBody,
|
String? requestBody,
|
||||||
int? responseStatus,
|
int? responseStatus,
|
||||||
@ -83,8 +92,8 @@ class RequestModel {
|
|||||||
}) {
|
}) {
|
||||||
var headers = requestHeaders ?? this.requestHeaders;
|
var headers = requestHeaders ?? this.requestHeaders;
|
||||||
var params = requestParams ?? this.requestParams;
|
var params = requestParams ?? this.requestParams;
|
||||||
var eHeaders = enabledHeaders ?? this.enabledHeaders;
|
var enabledHeaders = isHeaderEnabledList ?? this.isHeaderEnabledList;
|
||||||
var eParams = enabledParams ?? this.enabledParams;
|
var enabledParams = isParamEnabledList ?? this.isParamEnabledList;
|
||||||
return RequestModel(
|
return RequestModel(
|
||||||
id: id ?? this.id,
|
id: id ?? this.id,
|
||||||
method: method ?? this.method,
|
method: method ?? this.method,
|
||||||
@ -94,8 +103,8 @@ class RequestModel {
|
|||||||
requestTabIndex: requestTabIndex ?? this.requestTabIndex,
|
requestTabIndex: requestTabIndex ?? this.requestTabIndex,
|
||||||
requestHeaders: headers != null ? [...headers] : null,
|
requestHeaders: headers != null ? [...headers] : null,
|
||||||
requestParams: params != null ? [...params] : null,
|
requestParams: params != null ? [...params] : null,
|
||||||
enabledHeaders: eHeaders != null ? [...eHeaders] : null,
|
isHeaderEnabledList: enabledHeaders != null ? [...enabledHeaders] : null,
|
||||||
enabledParams: eParams != null ? [...eParams] : null,
|
isParamEnabledList: enabledParams != null ? [...enabledParams] : null,
|
||||||
requestBodyContentType:
|
requestBodyContentType:
|
||||||
requestBodyContentType ?? this.requestBodyContentType,
|
requestBodyContentType ?? this.requestBodyContentType,
|
||||||
requestBody: requestBody ?? this.requestBody,
|
requestBody: requestBody ?? this.requestBody,
|
||||||
@ -121,8 +130,8 @@ class RequestModel {
|
|||||||
final description = data["description"] as String?;
|
final description = data["description"] as String?;
|
||||||
final requestHeaders = data["requestHeaders"];
|
final requestHeaders = data["requestHeaders"];
|
||||||
final requestParams = data["requestParams"];
|
final requestParams = data["requestParams"];
|
||||||
final enabledHeaders = data["enabledHeaders"] as List<bool>?;
|
final isHeaderEnabledList = data["isHeaderEnabledList"] as List<bool>?;
|
||||||
final enabledParams = data["enabledParams"] as List<bool>?;
|
final isParamEnabledList = data["isParamEnabledList"] as List<bool>?;
|
||||||
try {
|
try {
|
||||||
requestBodyContentType =
|
requestBodyContentType =
|
||||||
ContentType.values.byName(data["requestBodyContentType"] as String);
|
ContentType.values.byName(data["requestBodyContentType"] as String);
|
||||||
@ -153,8 +162,8 @@ class RequestModel {
|
|||||||
requestParams: requestParams != null
|
requestParams: requestParams != null
|
||||||
? mapToRows(Map<String, String>.from(requestParams))
|
? mapToRows(Map<String, String>.from(requestParams))
|
||||||
: null,
|
: null,
|
||||||
enabledHeaders: enabledHeaders,
|
isHeaderEnabledList: isHeaderEnabledList,
|
||||||
enabledParams: enabledParams,
|
isParamEnabledList: isParamEnabledList,
|
||||||
requestBodyContentType: requestBodyContentType,
|
requestBodyContentType: requestBodyContentType,
|
||||||
requestBody: requestBody,
|
requestBody: requestBody,
|
||||||
responseStatus: responseStatus,
|
responseStatus: responseStatus,
|
||||||
@ -172,8 +181,8 @@ class RequestModel {
|
|||||||
"description": description,
|
"description": description,
|
||||||
"requestHeaders": rowsToMap(requestHeaders),
|
"requestHeaders": rowsToMap(requestHeaders),
|
||||||
"requestParams": rowsToMap(requestParams),
|
"requestParams": rowsToMap(requestParams),
|
||||||
"enabledHeaders": enabledHeaders,
|
"isHeaderEnabledList": isHeaderEnabledList,
|
||||||
"enabledParams": enabledParams,
|
"isParamEnabledList": isParamEnabledList,
|
||||||
"requestBodyContentType": requestBodyContentType.name,
|
"requestBodyContentType": requestBodyContentType.name,
|
||||||
"requestBody": requestBody,
|
"requestBody": requestBody,
|
||||||
"responseStatus": includeResponse ? responseStatus : null,
|
"responseStatus": includeResponse ? responseStatus : null,
|
||||||
@ -192,9 +201,9 @@ class RequestModel {
|
|||||||
"Request Description: $description",
|
"Request Description: $description",
|
||||||
"Request Tab Index: ${requestTabIndex.toString()}",
|
"Request Tab Index: ${requestTabIndex.toString()}",
|
||||||
"Request Headers: ${requestHeaders.toString()}",
|
"Request Headers: ${requestHeaders.toString()}",
|
||||||
"Enabled Headers: ${enabledHeaders.toString()}",
|
"Enabled Headers: ${isHeaderEnabledList.toString()}",
|
||||||
"Request Params: ${requestParams.toString()}",
|
"Request Params: ${requestParams.toString()}",
|
||||||
"Enabled Params: ${enabledParams.toString()}",
|
"Enabled Params: ${isParamEnabledList.toString()}",
|
||||||
"Request Body Content Type: ${requestBodyContentType.toString()}",
|
"Request Body Content Type: ${requestBodyContentType.toString()}",
|
||||||
"Request Body: ${requestBody.toString()}",
|
"Request Body: ${requestBody.toString()}",
|
||||||
"Response Status: $responseStatus",
|
"Response Status: $responseStatus",
|
||||||
@ -215,8 +224,8 @@ class RequestModel {
|
|||||||
other.requestTabIndex == requestTabIndex &&
|
other.requestTabIndex == requestTabIndex &&
|
||||||
listEquals(other.requestHeaders, requestHeaders) &&
|
listEquals(other.requestHeaders, requestHeaders) &&
|
||||||
listEquals(other.requestParams, requestParams) &&
|
listEquals(other.requestParams, requestParams) &&
|
||||||
listEquals(other.enabledHeaders, enabledHeaders) &&
|
listEquals(other.isHeaderEnabledList, isHeaderEnabledList) &&
|
||||||
listEquals(other.enabledParams, enabledParams) &&
|
listEquals(other.isParamEnabledList, isParamEnabledList) &&
|
||||||
other.requestBodyContentType == requestBodyContentType &&
|
other.requestBodyContentType == requestBodyContentType &&
|
||||||
other.requestBody == requestBody &&
|
other.requestBody == requestBody &&
|
||||||
other.responseStatus == responseStatus &&
|
other.responseStatus == responseStatus &&
|
||||||
@ -236,8 +245,8 @@ class RequestModel {
|
|||||||
requestTabIndex,
|
requestTabIndex,
|
||||||
requestHeaders,
|
requestHeaders,
|
||||||
requestParams,
|
requestParams,
|
||||||
enabledHeaders,
|
isHeaderEnabledList,
|
||||||
enabledParams,
|
isParamEnabledList,
|
||||||
requestBodyContentType,
|
requestBodyContentType,
|
||||||
requestBody,
|
requestBody,
|
||||||
responseStatus,
|
responseStatus,
|
||||||
|
@ -123,8 +123,8 @@ class CollectionStateNotifier
|
|||||||
int? requestTabIndex,
|
int? requestTabIndex,
|
||||||
List<NameValueModel>? requestHeaders,
|
List<NameValueModel>? requestHeaders,
|
||||||
List<NameValueModel>? requestParams,
|
List<NameValueModel>? requestParams,
|
||||||
List<bool>? enabledHeaders,
|
List<bool>? isHeaderEnabledList,
|
||||||
List<bool>? enabledParams,
|
List<bool>? isParamEnabledList,
|
||||||
ContentType? requestBodyContentType,
|
ContentType? requestBodyContentType,
|
||||||
String? requestBody,
|
String? requestBody,
|
||||||
int? responseStatus,
|
int? responseStatus,
|
||||||
@ -139,8 +139,8 @@ class CollectionStateNotifier
|
|||||||
requestTabIndex: requestTabIndex,
|
requestTabIndex: requestTabIndex,
|
||||||
requestHeaders: requestHeaders,
|
requestHeaders: requestHeaders,
|
||||||
requestParams: requestParams,
|
requestParams: requestParams,
|
||||||
enabledHeaders: enabledHeaders,
|
isHeaderEnabledList: isHeaderEnabledList,
|
||||||
enabledParams: enabledParams,
|
isParamEnabledList: isParamEnabledList,
|
||||||
requestBodyContentType: requestBodyContentType,
|
requestBodyContentType: requestBodyContentType,
|
||||||
requestBody: requestBody,
|
requestBody: requestBody,
|
||||||
responseStatus: responseStatus,
|
responseStatus: responseStatus,
|
||||||
|
@ -16,7 +16,7 @@ class EditRequestHeaders extends ConsumerStatefulWidget {
|
|||||||
|
|
||||||
class EditRequestHeadersState extends ConsumerState<EditRequestHeaders> {
|
class EditRequestHeadersState extends ConsumerState<EditRequestHeaders> {
|
||||||
late List<NameValueModel> rows;
|
late List<NameValueModel> rows;
|
||||||
late List<bool> enabledRows;
|
late List<bool> isRowEnabledList;
|
||||||
final random = Random.secure();
|
final random = Random.secure();
|
||||||
late int seed;
|
late int seed;
|
||||||
|
|
||||||
@ -30,7 +30,7 @@ class EditRequestHeadersState extends ConsumerState<EditRequestHeaders> {
|
|||||||
ref.read(collectionStateNotifierProvider.notifier).update(
|
ref.read(collectionStateNotifierProvider.notifier).update(
|
||||||
activeId,
|
activeId,
|
||||||
requestHeaders: rows,
|
requestHeaders: rows,
|
||||||
enabledHeaders: enabledRows,
|
isHeaderEnabledList: isRowEnabledList,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -45,8 +45,9 @@ class EditRequestHeadersState extends ConsumerState<EditRequestHeaders> {
|
|||||||
kNameValueEmptyModel,
|
kNameValueEmptyModel,
|
||||||
]
|
]
|
||||||
: rH;
|
: rH;
|
||||||
enabledRows = ref.read(activeRequestModelProvider)?.enabledHeaders ??
|
isRowEnabledList =
|
||||||
List.filled(rows.length, true, growable: true);
|
ref.read(activeRequestModelProvider)?.isHeaderEnabledList ??
|
||||||
|
List.filled(rows.length, true, growable: true);
|
||||||
|
|
||||||
DaviModel<NameValueModel> model = DaviModel<NameValueModel>(
|
DaviModel<NameValueModel> model = DaviModel<NameValueModel>(
|
||||||
rows: rows,
|
rows: rows,
|
||||||
@ -58,10 +59,10 @@ class EditRequestHeadersState extends ConsumerState<EditRequestHeaders> {
|
|||||||
int idx = row.index;
|
int idx = row.index;
|
||||||
return CheckBox(
|
return CheckBox(
|
||||||
keyId: "$activeId-$idx-headers-c-$seed",
|
keyId: "$activeId-$idx-headers-c-$seed",
|
||||||
value: enabledRows[idx],
|
value: isRowEnabledList[idx],
|
||||||
onChanged: (value) {
|
onChanged: (value) {
|
||||||
setState(() {
|
setState(() {
|
||||||
enabledRows[idx] = value!;
|
isRowEnabledList[idx] = value!;
|
||||||
});
|
});
|
||||||
_onFieldChange(activeId!);
|
_onFieldChange(activeId!);
|
||||||
},
|
},
|
||||||
@ -125,17 +126,13 @@ class EditRequestHeadersState extends ConsumerState<EditRequestHeaders> {
|
|||||||
onTap: () {
|
onTap: () {
|
||||||
seed = random.nextInt(kRandMax);
|
seed = random.nextInt(kRandMax);
|
||||||
if (rows.length == 1) {
|
if (rows.length == 1) {
|
||||||
setState(() {
|
rows = [
|
||||||
rows = [
|
kNameValueEmptyModel,
|
||||||
kNameValueEmptyModel,
|
];
|
||||||
];
|
isRowEnabledList = [true];
|
||||||
enabledRows = [true];
|
|
||||||
});
|
|
||||||
} else {
|
} else {
|
||||||
setState(() {
|
isRowEnabledList.removeAt(row.index);
|
||||||
enabledRows.removeAt(row.index);
|
rows.removeAt(row.index);
|
||||||
rows.removeAt(row.index);
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
_onFieldChange(activeId!);
|
_onFieldChange(activeId!);
|
||||||
},
|
},
|
||||||
@ -169,10 +166,8 @@ class EditRequestHeadersState extends ConsumerState<EditRequestHeaders> {
|
|||||||
padding: const EdgeInsets.only(bottom: 30),
|
padding: const EdgeInsets.only(bottom: 30),
|
||||||
child: ElevatedButton.icon(
|
child: ElevatedButton.icon(
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
setState(() {
|
rows.add(kNameValueEmptyModel);
|
||||||
rows.add(kNameValueEmptyModel);
|
isRowEnabledList.add(true);
|
||||||
enabledRows.add(true);
|
|
||||||
});
|
|
||||||
_onFieldChange(activeId!);
|
_onFieldChange(activeId!);
|
||||||
},
|
},
|
||||||
icon: const Icon(Icons.add),
|
icon: const Icon(Icons.add),
|
||||||
|
@ -17,7 +17,7 @@ class EditRequestURLParams extends ConsumerStatefulWidget {
|
|||||||
|
|
||||||
class EditRequestURLParamsState extends ConsumerState<EditRequestURLParams> {
|
class EditRequestURLParamsState extends ConsumerState<EditRequestURLParams> {
|
||||||
late List<NameValueModel> rows;
|
late List<NameValueModel> rows;
|
||||||
late List<bool> enabledRows;
|
late List<bool> isRowEnabledList;
|
||||||
final random = Random.secure();
|
final random = Random.secure();
|
||||||
late int seed;
|
late int seed;
|
||||||
|
|
||||||
@ -31,7 +31,7 @@ class EditRequestURLParamsState extends ConsumerState<EditRequestURLParams> {
|
|||||||
ref.read(collectionStateNotifierProvider.notifier).update(
|
ref.read(collectionStateNotifierProvider.notifier).update(
|
||||||
activeId,
|
activeId,
|
||||||
requestParams: rows,
|
requestParams: rows,
|
||||||
enabledParams: enabledRows,
|
isParamEnabledList: isRowEnabledList,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -46,8 +46,9 @@ class EditRequestURLParamsState extends ConsumerState<EditRequestURLParams> {
|
|||||||
kNameValueEmptyModel,
|
kNameValueEmptyModel,
|
||||||
]
|
]
|
||||||
: rP;
|
: rP;
|
||||||
enabledRows = ref.read(activeRequestModelProvider)?.enabledParams ??
|
isRowEnabledList =
|
||||||
List.filled(rows.length, true, growable: true);
|
ref.read(activeRequestModelProvider)?.isParamEnabledList ??
|
||||||
|
List.filled(rows.length, true, growable: true);
|
||||||
|
|
||||||
DaviModel<NameValueModel> model = DaviModel<NameValueModel>(
|
DaviModel<NameValueModel> model = DaviModel<NameValueModel>(
|
||||||
rows: rows,
|
rows: rows,
|
||||||
@ -60,10 +61,10 @@ class EditRequestURLParamsState extends ConsumerState<EditRequestURLParams> {
|
|||||||
|
|
||||||
return CheckBox(
|
return CheckBox(
|
||||||
keyId: "$activeId-$idx-params-c-$seed",
|
keyId: "$activeId-$idx-params-c-$seed",
|
||||||
value: enabledRows[idx],
|
value: isRowEnabledList[idx],
|
||||||
onChanged: (value) {
|
onChanged: (value) {
|
||||||
setState(() {
|
setState(() {
|
||||||
enabledRows[idx] = value!;
|
isRowEnabledList[idx] = value!;
|
||||||
});
|
});
|
||||||
_onFieldChange(activeId!);
|
_onFieldChange(activeId!);
|
||||||
},
|
},
|
||||||
@ -127,17 +128,13 @@ class EditRequestURLParamsState extends ConsumerState<EditRequestURLParams> {
|
|||||||
onTap: () {
|
onTap: () {
|
||||||
seed = random.nextInt(kRandMax);
|
seed = random.nextInt(kRandMax);
|
||||||
if (rows.length == 1) {
|
if (rows.length == 1) {
|
||||||
setState(() {
|
rows = [
|
||||||
rows = [
|
kNameValueEmptyModel,
|
||||||
kNameValueEmptyModel,
|
];
|
||||||
];
|
isRowEnabledList = [true];
|
||||||
enabledRows = [true];
|
|
||||||
});
|
|
||||||
} else {
|
} else {
|
||||||
setState(() {
|
isRowEnabledList.removeAt(row.index);
|
||||||
enabledRows.removeAt(row.index);
|
rows.removeAt(row.index);
|
||||||
rows.removeAt(row.index);
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
_onFieldChange(activeId!);
|
_onFieldChange(activeId!);
|
||||||
},
|
},
|
||||||
@ -173,7 +170,7 @@ class EditRequestURLParamsState extends ConsumerState<EditRequestURLParams> {
|
|||||||
onPressed: () {
|
onPressed: () {
|
||||||
setState(() {
|
setState(() {
|
||||||
rows.add(kNameValueEmptyModel);
|
rows.add(kNameValueEmptyModel);
|
||||||
enabledRows.add(true);
|
isRowEnabledList.add(true);
|
||||||
});
|
});
|
||||||
_onFieldChange(activeId!);
|
_onFieldChange(activeId!);
|
||||||
},
|
},
|
||||||
|
@ -12,13 +12,12 @@ Future<(http.Response?, Duration?, String?)> request(
|
|||||||
}) async {
|
}) async {
|
||||||
(Uri?, String?) uriRec = getValidRequestUri(
|
(Uri?, String?) uriRec = getValidRequestUri(
|
||||||
requestModel.url,
|
requestModel.url,
|
||||||
requestModel.requestParams,
|
requestModel.enabledRequestParams,
|
||||||
requestModel.enabledParams,
|
|
||||||
defaultUriScheme: defaultUriScheme,
|
defaultUriScheme: defaultUriScheme,
|
||||||
);
|
);
|
||||||
if (uriRec.$1 != null) {
|
if (uriRec.$1 != null) {
|
||||||
Uri requestUrl = uriRec.$1!;
|
Uri requestUrl = uriRec.$1!;
|
||||||
Map<String, String> headers = requestModel.headersMap;
|
Map<String, String> headers = requestModel.enabledHeadersMap;
|
||||||
http.Response response;
|
http.Response response;
|
||||||
String? body;
|
String? body;
|
||||||
try {
|
try {
|
||||||
|
@ -111,11 +111,11 @@ Uint8List jsonMapToBytes(Map<String, dynamic>? map) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
List<NameValueModel>? getEnabledRows(
|
List<NameValueModel>? getEnabledRows(
|
||||||
List<NameValueModel>? rows, List<bool>? enabledList) {
|
List<NameValueModel>? rows, List<bool>? isRowEnabledList) {
|
||||||
if (rows == null || enabledList == null) {
|
if (rows == null || isRowEnabledList == null) {
|
||||||
return rows;
|
return rows;
|
||||||
}
|
}
|
||||||
List<NameValueModel> finalRows =
|
List<NameValueModel> finalRows =
|
||||||
rows.where((element) => enabledList[rows.indexOf(element)]).toList();
|
rows.where((element) => isRowEnabledList[rows.indexOf(element)]).toList();
|
||||||
return finalRows == [] ? null : finalRows;
|
return finalRows == [] ? null : finalRows;
|
||||||
}
|
}
|
||||||
|
@ -80,8 +80,7 @@ Map<String, dynamic> requestModelToHARJsonRequest(
|
|||||||
|
|
||||||
var rec = getValidRequestUri(
|
var rec = getValidRequestUri(
|
||||||
requestModel.url,
|
requestModel.url,
|
||||||
requestModel.requestParams,
|
requestModel.enabledRequestParams,
|
||||||
requestModel.enabledParams,
|
|
||||||
defaultUriScheme: defaultUriScheme,
|
defaultUriScheme: defaultUriScheme,
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -126,9 +125,9 @@ Map<String, dynamic> requestModelToHARJsonRequest(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var headersList = requestModel.requestHeaders;
|
var headersList = requestModel.enabledRequestHeaders;
|
||||||
if (headersList != null || hasBody) {
|
if (headersList != null || hasBody) {
|
||||||
var headers = requestModel.headersMap;
|
var headers = requestModel.enabledHeadersMap;
|
||||||
if (headers.isNotEmpty || hasBody) {
|
if (headers.isNotEmpty || hasBody) {
|
||||||
if (hasBody) {
|
if (hasBody) {
|
||||||
var m = {
|
var m = {
|
||||||
|
@ -4,7 +4,7 @@ import 'package:collection/collection.dart' show mergeMaps;
|
|||||||
import 'package:http_parser/http_parser.dart';
|
import 'package:http_parser/http_parser.dart';
|
||||||
import 'package:xml/xml.dart';
|
import 'package:xml/xml.dart';
|
||||||
import '../models/models.dart';
|
import '../models/models.dart';
|
||||||
import 'convert_utils.dart' show getEnabledRows, rowsToMap;
|
import 'convert_utils.dart' show rowsToMap;
|
||||||
import '../consts.dart';
|
import '../consts.dart';
|
||||||
|
|
||||||
String getRequestTitleFromUrl(String? url) {
|
String getRequestTitleFromUrl(String? url) {
|
||||||
@ -63,7 +63,7 @@ String stripUrlParams(String url) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
(Uri?, String?) getValidRequestUri(
|
(Uri?, String?) getValidRequestUri(
|
||||||
String? url, List<NameValueModel>? requestParams, List<bool>? enabledParams,
|
String? url, List<NameValueModel>? requestParams,
|
||||||
{String defaultUriScheme = kDefaultUriScheme}) {
|
{String defaultUriScheme = kDefaultUriScheme}) {
|
||||||
url = url?.trim();
|
url = url?.trim();
|
||||||
if (url == null || url == "") {
|
if (url == null || url == "") {
|
||||||
@ -88,8 +88,7 @@ String stripUrlParams(String url) {
|
|||||||
uri = uri.removeFragment();
|
uri = uri.removeFragment();
|
||||||
}
|
}
|
||||||
|
|
||||||
Map<String, String>? queryParams =
|
Map<String, String>? queryParams = rowsToMap(requestParams);
|
||||||
rowsToMap(getEnabledRows(requestParams, enabledParams));
|
|
||||||
if (queryParams != null) {
|
if (queryParams != null) {
|
||||||
if (uri.hasQuery) {
|
if (uri.hasQuery) {
|
||||||
Map<String, String> urlQueryParams = uri.queryParameters;
|
Map<String, String> urlQueryParams = uri.queryParameters;
|
||||||
|
@ -106,9 +106,9 @@ void main() {
|
|||||||
'content-length': '18',
|
'content-length': '18',
|
||||||
'content-type': 'application/json; charset=utf-8'
|
'content-type': 'application/json; charset=utf-8'
|
||||||
},
|
},
|
||||||
'enabledHeaders': null,
|
'isHeaderEnabledList': null,
|
||||||
'requestParams': null,
|
'requestParams': null,
|
||||||
'enabledParams': null,
|
'isParamEnabledList': null,
|
||||||
"requestBodyContentType": 'json',
|
"requestBodyContentType": 'json',
|
||||||
"requestBody": '''{
|
"requestBody": '''{
|
||||||
"text":"WORLD"
|
"text":"WORLD"
|
||||||
|
@ -182,16 +182,15 @@ void main() {
|
|||||||
host: 'api.foss42.com',
|
host: 'api.foss42.com',
|
||||||
path: 'country/data',
|
path: 'country/data',
|
||||||
queryParameters: {'code': 'US'});
|
queryParameters: {'code': 'US'});
|
||||||
expect(getValidRequestUri(url1, [kvRow1], null), (uri1Expected, null));
|
expect(getValidRequestUri(url1, [kvRow1]), (uri1Expected, null));
|
||||||
});
|
});
|
||||||
test('Testing getValidRequestUri for null url value', () {
|
test('Testing getValidRequestUri for null url value', () {
|
||||||
const kvRow2 = NameValueModel(name: "code", value: "US");
|
const kvRow2 = NameValueModel(name: "code", value: "US");
|
||||||
expect(
|
expect(getValidRequestUri(null, [kvRow2]), (null, "URL is missing!"));
|
||||||
getValidRequestUri(null, [kvRow2], null), (null, "URL is missing!"));
|
|
||||||
});
|
});
|
||||||
test('Testing getValidRequestUri for empty url value', () {
|
test('Testing getValidRequestUri for empty url value', () {
|
||||||
const kvRow3 = NameValueModel(name: "", value: "");
|
const kvRow3 = NameValueModel(name: "", value: "");
|
||||||
expect(getValidRequestUri("", [kvRow3], null), (null, "URL is missing!"));
|
expect(getValidRequestUri("", [kvRow3]), (null, "URL is missing!"));
|
||||||
});
|
});
|
||||||
test('Testing getValidRequestUri when https is not provided in url', () {
|
test('Testing getValidRequestUri when https is not provided in url', () {
|
||||||
String url4 = "api.foss42.com/country/data";
|
String url4 = "api.foss42.com/country/data";
|
||||||
@ -201,7 +200,7 @@ void main() {
|
|||||||
host: 'api.foss42.com',
|
host: 'api.foss42.com',
|
||||||
path: 'country/data',
|
path: 'country/data',
|
||||||
queryParameters: {'code': 'US'});
|
queryParameters: {'code': 'US'});
|
||||||
expect(getValidRequestUri(url4, [kvRow4], null), (uri4Expected, null));
|
expect(getValidRequestUri(url4, [kvRow4]), (uri4Expected, null));
|
||||||
});
|
});
|
||||||
test('Testing getValidRequestUri when url has fragment', () {
|
test('Testing getValidRequestUri when url has fragment', () {
|
||||||
String url5 = "https://dart.dev/guides/libraries/library-tour#numbers";
|
String url5 = "https://dart.dev/guides/libraries/library-tour#numbers";
|
||||||
@ -209,11 +208,11 @@ void main() {
|
|||||||
scheme: 'https',
|
scheme: 'https',
|
||||||
host: 'dart.dev',
|
host: 'dart.dev',
|
||||||
path: '/guides/libraries/library-tour');
|
path: '/guides/libraries/library-tour');
|
||||||
expect(getValidRequestUri(url5, null, null), (uri5Expected, null));
|
expect(getValidRequestUri(url5, null), (uri5Expected, null));
|
||||||
});
|
});
|
||||||
test('Testing getValidRequestUri when uri scheme is not supported', () {
|
test('Testing getValidRequestUri when uri scheme is not supported', () {
|
||||||
String url5 = "mailto:someone@example.com";
|
String url5 = "mailto:someone@example.com";
|
||||||
expect(getValidRequestUri(url5, null, null),
|
expect(getValidRequestUri(url5, null),
|
||||||
(null, "Unsupported URL Scheme (mailto)"));
|
(null, "Unsupported URL Scheme (mailto)"));
|
||||||
});
|
});
|
||||||
test('Testing getValidRequestUri when query params in both url and kvrow',
|
test('Testing getValidRequestUri when query params in both url and kvrow',
|
||||||
@ -225,7 +224,7 @@ void main() {
|
|||||||
host: 'api.foss42.com',
|
host: 'api.foss42.com',
|
||||||
path: 'country/data',
|
path: 'country/data',
|
||||||
queryParameters: {'code': 'US'});
|
queryParameters: {'code': 'US'});
|
||||||
expect(getValidRequestUri(url6, [kvRow6], null), (uri6Expected, null));
|
expect(getValidRequestUri(url6, [kvRow6]), (uri6Expected, null));
|
||||||
});
|
});
|
||||||
test('Testing getValidRequestUri when kvrow is null', () {
|
test('Testing getValidRequestUri when kvrow is null', () {
|
||||||
String url7 = "api.foss42.com/country/data?code=US";
|
String url7 = "api.foss42.com/country/data?code=US";
|
||||||
@ -234,7 +233,7 @@ void main() {
|
|||||||
host: 'api.foss42.com',
|
host: 'api.foss42.com',
|
||||||
path: 'country/data',
|
path: 'country/data',
|
||||||
queryParameters: {'code': 'US'});
|
queryParameters: {'code': 'US'});
|
||||||
expect(getValidRequestUri(url7, null, null), (uri7Expected, null));
|
expect(getValidRequestUri(url7, null), (uri7Expected, null));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user