Fix tab indicator for formdata

This commit is contained in:
Ankit Mahato
2024-03-16 05:18:00 +05:30
parent 21dfa85e8e
commit 0b669390ff
6 changed files with 16 additions and 13 deletions

View File

@ -99,7 +99,7 @@ func main() {
var templateStart = jj.Template(kTemplateStart);
result += templateStart.render({
"hasBody": requestModel.hasData,
"hasBody": requestModel.hasBody,
"hasFormData": requestModel.hasFormData,
"hasFileInFormData": requestModel.hasFileInFormData,
});
@ -144,7 +144,7 @@ func main() {
});
var headersList = requestModel.enabledRequestHeaders;
if (headersList != null || requestModel.hasData) {
if (headersList != null || requestModel.hasBody) {
var headers = requestModel.enabledHeadersMap;
if (requestModel.hasJsonData || requestModel.hasTextData) {
headers.putIfAbsent(kHeaderContentType,

View File

@ -116,7 +116,7 @@ body = b'\r\n'.join(dataList)
}
}
if (requestModel.hasData) {
if (requestModel.hasBody) {
hasBody = true;
if (requestModel.hasJsonData || requestModel.hasTextData) {
var templateBody = jj.Template(kTemplateBody);

View File

@ -68,7 +68,7 @@ class RequestModel {
bool get hasJsonContentType => requestBodyContentType == ContentType.json;
bool get hasTextContentType => requestBodyContentType == ContentType.text;
int get contentLength => utf8.encode(requestBody ?? "").length;
bool get hasData => hasJsonData || hasTextData || hasFormData;
bool get hasBody => hasJsonData || hasTextData || hasFormData;
bool get hasJsonData =>
kMethodsWithBody.contains(method) &&
hasJsonContentType &&

View File

@ -37,7 +37,7 @@ class EditRequestHeadersState extends ConsumerState<EditRequestHeaders> {
@override
Widget build(BuildContext context) {
final selectedId = ref.watch(selectedIdStateProvider);
final length = ref.watch(selectedRequestModelProvider
ref.watch(selectedRequestModelProvider
.select((value) => value?.requestHeaders?.length));
var rH = ref.read(selectedRequestModelProvider)?.requestHeaders;
rows = (rH == null || rH.isEmpty)

View File

@ -17,11 +17,14 @@ class EditRequestPane extends ConsumerWidget {
selectedRequestModelProvider.select((value) => value?.requestTabIndex));
final headerLength = ref.watch(selectedRequestModelProvider
.select((value) => value?.headersMap.length));
.select((value) => value?.headersMap.length)) ??
0;
final paramLength = ref.watch(selectedRequestModelProvider
.select((value) => value?.paramsMap.length));
final bodyLength = ref.watch(selectedRequestModelProvider
.select((value) => value?.requestBody?.length));
.select((value) => value?.paramsMap.length)) ??
0;
final hasBody = ref.watch(
selectedRequestModelProvider.select((value) => value?.hasBody)) ??
false;
return RequestPane(
selectedId: selectedId,
@ -37,9 +40,9 @@ class EditRequestPane extends ConsumerWidget {
.update(selectedId!, requestTabIndex: index);
},
showIndicators: [
paramLength != null && paramLength > 0,
headerLength != null && headerLength > 0,
bodyLength != null && bodyLength > 0,
paramLength > 0,
headerLength > 0,
hasBody,
],
children: const [
EditRequestURLParams(),

View File

@ -38,7 +38,7 @@ class EditRequestURLParamsState extends ConsumerState<EditRequestURLParams> {
@override
Widget build(BuildContext context) {
final selectedId = ref.watch(selectedIdStateProvider);
final length = ref.watch(selectedRequestModelProvider
ref.watch(selectedRequestModelProvider
.select((value) => value?.requestParams?.length));
var rP = ref.read(selectedRequestModelProvider)?.requestParams;
rows = (rP == null || rP.isEmpty)