From 3882052cb534a2740e0c3aa19aef5346edb07984 Mon Sep 17 00:00:00 2001 From: Manas Hejmadi Date: Sun, 8 Jun 2025 11:43:08 +0530 Subject: [PATCH] AIRequests: URL is not modifiable for requests --- .../home_page/editor_pane/url_card.dart | 42 ++++++++++++++----- 1 file changed, 32 insertions(+), 10 deletions(-) diff --git a/lib/screens/home_page/editor_pane/url_card.dart b/lib/screens/home_page/editor_pane/url_card.dart index d64288f5..a60c554e 100644 --- a/lib/screens/home_page/editor_pane/url_card.dart +++ b/lib/screens/home_page/editor_pane/url_card.dart @@ -16,6 +16,8 @@ class EditorPaneRequestURLCard extends ConsumerWidget { ref.watch(selectedIdStateProvider); final apiType = ref .watch(selectedRequestModelProvider.select((value) => value?.apiType)); + final aiHC = ref.watch(selectedRequestModelProvider + .select((v) => v?.aiRequestModel?.hashCode)); return Card( color: kColorTransparent, surfaceTintColor: kColorTransparent, @@ -44,8 +46,10 @@ class EditorPaneRequestURLCard extends ConsumerWidget { APIType.rest => kHSpacer5, _ => kHSpacer8, }, - const Expanded( - child: URLTextField(), + Expanded( + child: URLTextField( + key: aiHC == null ? null : ValueKey(aiHC), + ), ), ], ) @@ -61,8 +65,10 @@ class EditorPaneRequestURLCard extends ConsumerWidget { APIType.rest => kHSpacer20, _ => kHSpacer8, }, - const Expanded( - child: URLTextField(), + Expanded( + child: URLTextField( + key: aiHC == null ? null : ValueKey(aiHC), + ), ), kHSpacer20, const SizedBox( @@ -104,15 +110,31 @@ class URLTextField extends ConsumerWidget { @override Widget build(BuildContext context, WidgetRef ref) { final selectedId = ref.watch(selectedIdStateProvider); + + final reqM = ref.read(collectionStateNotifierProvider)![selectedId]!; + final aiReqM = reqM.aiRequestModel; + final payload = aiReqM?.payload; + return EnvURLField( selectedId: selectedId!, - initialValue: ref - .read(collectionStateNotifierProvider.notifier) - .getRequestModel(selectedId) - ?.httpRequestModel - ?.url, + initialValue: payload?.endpoint ?? + ref + .read(collectionStateNotifierProvider.notifier) + .getRequestModel(selectedId) + ?.httpRequestModel + ?.url, onChanged: (value) { - ref.read(collectionStateNotifierProvider.notifier).update(url: value); + final aim = ref + .read(collectionStateNotifierProvider)![selectedId]! + .aiRequestModel; + if (aim != null) { + aim.payload.endpoint = value; + ref + .read(collectionStateNotifierProvider.notifier) + .update(aiRequestModel: aim.updatePayload(aim.payload)); + } else { + ref.read(collectionStateNotifierProvider.notifier).update(url: value); + } }, onFieldSubmitted: (value) { ref.read(collectionStateNotifierProvider.notifier).sendRequest();