From 086d0d98ef0262d435e1ae1254d9ea5720dd0f93 Mon Sep 17 00:00:00 2001 From: srikary12 <121927567+srikary12@users.noreply.github.com> Date: Wed, 26 Nov 2025 12:17:52 +0530 Subject: [PATCH 1/3] feature/autoSave (#582) --- .../components/RequestPane/QueryUrl/index.js | 7 +++-- .../src/components/SingleLineEditor/index.js | 24 ++++++++++++++++ .../ReduxStore/slices/collections/actions.js | 28 +++++++++++-------- 3 files changed, 45 insertions(+), 14 deletions(-) diff --git a/packages/bruno-app/src/components/RequestPane/QueryUrl/index.js b/packages/bruno-app/src/components/RequestPane/QueryUrl/index.js index a1d7dd86a..69963f45f 100644 --- a/packages/bruno-app/src/components/RequestPane/QueryUrl/index.js +++ b/packages/bruno-app/src/components/RequestPane/QueryUrl/index.js @@ -10,12 +10,14 @@ import SingleLineEditor from 'components/SingleLineEditor'; import { isMacOS } from 'utils/common/platform'; import { hasRequestChanges } from 'utils/collections'; import StyledWrapper from './StyledWrapper'; +import { usePreferences } from 'providers/Preferences/index'; import GenerateCodeItem from 'components/Sidebar/Collections/Collection/CollectionItem/GenerateCodeItem/index'; import toast from 'react-hot-toast'; const QueryUrl = ({ item, collection, handleRun }) => { const { theme, storedTheme } = useTheme(); const dispatch = useDispatch(); + const autoSavePreference = usePreferences().preferences.request.autoSave; const method = item.draft ? get(item, 'draft.request.method') : get(item, 'request.method'); const url = item.draft ? get(item, 'draft.request.url', '') : get(item, 'request.url', ''); const isMac = isMacOS(); @@ -33,8 +35,8 @@ const QueryUrl = ({ item, collection, handleRun }) => { setMethodSelectorWidth(el.offsetWidth); }, [method]); - const onSave = (finalValue) => { - dispatch(saveRequest(item.uid, collection.uid)); + const onSave = (notify = 1) => { + dispatch(saveRequest(item.uid, collection.uid, notify)); }; const onUrlChange = (value) => { @@ -118,6 +120,7 @@ const QueryUrl = ({ item, collection, handleRun }) => { highlightPathParams={true} item={item} showNewlineArrow={true} + autoSave={autoSavePreference} />