diff --git a/packages/web/src/datagrid/DataGridCore.svelte b/packages/web/src/datagrid/DataGridCore.svelte index 8dfb8d18e..b0757034e 100644 --- a/packages/web/src/datagrid/DataGridCore.svelte +++ b/packages/web/src/datagrid/DataGridCore.svelte @@ -177,6 +177,7 @@ import axiosInstance from '../utility/axiosInstance'; import { copyTextToClipboard } from '../utility/clipboard'; import invalidateCommands from '../commands/invalidateCommands'; + import createRef from '../utility/createRef'; export let onLoadNextData = undefined; export let grider = undefined; @@ -416,15 +417,15 @@ domFocusField.focus(); } - const lastPublishledRef = { current: '' }; + const lastPublishledRef = createRef(''); $: if (onSelectionChanged) { const published = getCellsPublished(selectedCells); const stringified = stableStringify(published); - if (lastPublishledRef.current != stringified) { + if (lastPublishledRef.get() != stringified) { // console.log('PUBLISH', published); // console.log('lastPublishledRef.current', lastPublishledRef.current); // console.log('stringified', stringified); - lastPublishledRef.current = stringified; + lastPublishledRef.set(stringified); onSelectionChanged(published); } } diff --git a/packages/web/src/datagrid/InplaceEditor.svelte b/packages/web/src/datagrid/InplaceEditor.svelte index 1a7340308..affbd23c9 100644 --- a/packages/web/src/datagrid/InplaceEditor.svelte +++ b/packages/web/src/datagrid/InplaceEditor.svelte @@ -1,6 +1,7 @@ diff --git a/packages/web/src/forms/FormSubmit.svelte b/packages/web/src/forms/FormSubmit.svelte index c76003073..d7643970a 100644 --- a/packages/web/src/forms/FormSubmit.svelte +++ b/packages/web/src/forms/FormSubmit.svelte @@ -12,9 +12,9 @@ dispatch('click', $values); } - submitActionRef.current = () => { + submitActionRef.set(() => { handleClick(); - }; + }); diff --git a/packages/web/src/modals/ConnectionModal.svelte b/packages/web/src/modals/ConnectionModal.svelte index e1bff4deb..cc1fd9cf7 100644 --- a/packages/web/src/modals/ConnectionModal.svelte +++ b/packages/web/src/modals/ConnectionModal.svelte @@ -13,27 +13,28 @@ import ModalBase from './ModalBase.svelte'; import { closeCurrentModal, closeModal } from './modalTools'; + import createRef from '../utility/createRef'; export let connection; let isTesting; let sqlConnectResult; - const testIdRef = { current: 0 }; + const testIdRef = createRef(0); async function handleTest(e) { isTesting = true; - testIdRef.current += 1; - const testid = testIdRef.current; + testIdRef.update(x => x + 1); + const testid = testIdRef.get(); const resp = await axiosInstance.post('connections/test', e.detail); - if (testIdRef.current != testid) return; + if (testIdRef.get() != testid) return; isTesting = false; sqlConnectResult = resp.data; } function handleCancelTest() { - testIdRef.current += 1; // invalidate current test + testIdRef.update(x => x + 1); // invalidate current test isTesting = false; } diff --git a/packages/web/src/modals/ImportExportModal.svelte b/packages/web/src/modals/ImportExportModal.svelte index 69e28b696..9a2a87537 100644 --- a/packages/web/src/modals/ImportExportModal.svelte +++ b/packages/web/src/modals/ImportExportModal.svelte @@ -15,6 +15,7 @@ import SocketMessageView from '../query/SocketMessageView.svelte'; import { currentArchive, extensions, selectedWidget } from '../stores'; import axiosInstance from '../utility/axiosInstance'; + import createRef from '../utility/createRef'; import openNewTab from '../utility/openNewTab'; import socket from '../utility/socket'; import useEffect from '../utility/useEffect'; @@ -33,7 +34,7 @@ export let openedFile = undefined; export let importToArchive = false; - const refreshArchiveFolderRef = { current: null }; + const refreshArchiveFolderRef = createRef(null); $: targetArchiveFolder = importToArchive ? `import-${moment().format('YYYY-MM-DD-hh-mm-ss')}` : $currentArchive; @@ -54,10 +55,10 @@ const handleRunnerDone = () => { busy = false; - if (refreshArchiveFolderRef.current) { + if (refreshArchiveFolderRef.get()) { axiosInstance.post('archive/refresh-folders', {}); - axiosInstance.post('archive/refresh-files', { folder: refreshArchiveFolderRef.current }); - $currentArchive = refreshArchiveFolderRef.current; + axiosInstance.post('archive/refresh-files', { folder: refreshArchiveFolderRef.get() }); + $currentArchive = refreshArchiveFolderRef.get(); $selectedWidget = 'archive'; } }; @@ -87,9 +88,9 @@ runnerId = runid; if (values.targetStorageType == 'archive') { - refreshArchiveFolderRef.current = values.targetArchiveFolder; + refreshArchiveFolderRef.set(values.targetArchiveFolder); } else { - refreshArchiveFolderRef.current = null; + refreshArchiveFolderRef.set(null); } }; diff --git a/packages/web/src/query/SocketMessageView.svelte b/packages/web/src/query/SocketMessageView.svelte index b6a42715a..629011b71 100644 --- a/packages/web/src/query/SocketMessageView.svelte +++ b/packages/web/src/query/SocketMessageView.svelte @@ -1,6 +1,7 @@