diff --git a/packages/web/src/datagrid/DataGrid.svelte b/packages/web/src/datagrid/DataGrid.svelte
index 9068fac4f..76d0a5d80 100644
--- a/packages/web/src/datagrid/DataGrid.svelte
+++ b/packages/web/src/datagrid/DataGrid.svelte
@@ -43,7 +43,7 @@
export let loadedRows;
- let selectedCellsPublished = [];
+ let selectedCellsPublished = () => [];
const selectedMacro = writable(null);
setContext('selectedMacro', selectedMacro);
@@ -55,7 +55,7 @@
$: isFormView = !!(formDisplay && formDisplay.config && formDisplay.config.isFormView);
const handleExecuteMacro = () => {
- onRunMacro($selectedMacro, extractMacroValuesForMacro($macroValues, $selectedMacro), selectedCellsPublished);
+ onRunMacro($selectedMacro, extractMacroValuesForMacro($macroValues, $selectedMacro), selectedCellsPublished());
$selectedMacro = null;
// const newChangeSet = runMacroOnChangeSet(
@@ -117,11 +117,10 @@
this={gridCoreComponent}
{...$$props}
formViewAvailable={!!formViewComponent && !!formDisplay}
- onSelectionChanged={value => (selectedCellsPublished = value)}
macroValues={extractMacroValuesForMacro($macroValues, $selectedMacro)}
macroPreview={$selectedMacro}
- {selectedCellsPublished}
bind:loadedRows
+ bind:selectedCellsPublished
/>
{/if}
diff --git a/packages/web/src/datagrid/DataGridCore.svelte b/packages/web/src/datagrid/DataGridCore.svelte
index 10ae7f65d..c3c9691a0 100644
--- a/packages/web/src/datagrid/DataGridCore.svelte
+++ b/packages/web/src/datagrid/DataGridCore.svelte
@@ -258,7 +258,7 @@
export let allRowCount = undefined;
export let onReferenceSourceChanged = undefined;
export let onReferenceClick = undefined;
- export let onSelectionChanged = undefined;
+ // export let onSelectedCellsPublishedChanged = undefined;
export let onSave;
export let focusOnVisible = false;
export let onExportGrid = null;
@@ -271,6 +271,7 @@
export let loadedTime;
export let changeSetStore;
export let isDynamicStructure = false;
+ export let selectedCellsPublished = () => [];
// export let generalAllowSave = false;
const wheelRowCount = 5;
@@ -575,8 +576,10 @@
const stringified = stableStringify(selectedCells);
if (lastPublishledSelectedCellsRef.get() != stringified) {
lastPublishledSelectedCellsRef.set(stringified);
- if (onSelectionChanged) onSelectionChanged(getCellsPublished(selectedCells));
- $selectedCellsCallback = () => getCellsPublished(selectedCells);
+ const cellsValue = () => getCellsPublished(selectedCells);
+ selectedCellsPublished = cellsValue;
+ $selectedCellsCallback = cellsValue;
+ // if (onSelectedCellsPublishedChanged) onSelectedCellsPublishedChanged(getCellsPublished(selectedCells));
}
}
diff --git a/packages/web/src/datagrid/LoadingDataGridCore.svelte b/packages/web/src/datagrid/LoadingDataGridCore.svelte
index 9005d18c7..29414f998 100644
--- a/packages/web/src/datagrid/LoadingDataGridCore.svelte
+++ b/packages/web/src/datagrid/LoadingDataGridCore.svelte
@@ -9,6 +9,8 @@
export let grider;
export let display;
export let masterLoadedTime = undefined;
+ export let selectedCellsPublished;
+
// export let griderFactory;
export let loadedRows = [];
@@ -120,4 +122,5 @@
{allRowCount}
{isLoadedAll}
{loadedTime}
+ bind:selectedCellsPublished
/>
diff --git a/packages/web/src/datagrid/SqlDataGridCore.svelte b/packages/web/src/datagrid/SqlDataGridCore.svelte
index cf71c61d7..26fce1932 100644
--- a/packages/web/src/datagrid/SqlDataGridCore.svelte
+++ b/packages/web/src/datagrid/SqlDataGridCore.svelte
@@ -68,7 +68,7 @@
export let macroPreview;
export let macroValues;
- export let selectedCellsPublished;
+ export let selectedCellsPublished = () => [];
// export let onChangeGrider = undefined;
@@ -82,7 +82,7 @@
display,
macroPreview,
macroValues,
- selectedCellsPublished
+ selectedCellsPublished()
);
// $: console.log('GRIDER', grider);
// $: if (onChangeGrider) onChangeGrider(grider);
@@ -177,6 +177,7 @@
onOpenQuery={openQuery}
onOpenActiveChart={openActiveChart}
bind:loadedRows
+ bind:selectedCellsPublished
frameSelection={!!macroPreview}
{grider}
onSave={handleSave}
diff --git a/packages/web/src/freetable/FreeTableGridCore.svelte b/packages/web/src/freetable/FreeTableGridCore.svelte
index 456f0c115..b25ae1e2a 100644
--- a/packages/web/src/freetable/FreeTableGridCore.svelte
+++ b/packages/web/src/freetable/FreeTableGridCore.svelte
@@ -21,7 +21,7 @@
const cache = writable(createGridCache());
$: grider = macroPreview
- ? new MacroPreviewGrider(modelState.value, macroPreview, macroValues, selectedCellsPublished)
+ ? new MacroPreviewGrider(modelState.value, macroPreview, macroValues, selectedCellsPublished())
: new FreeTableGrider(modelState, dispatchModel);
$: display = new FreeTableGridDisplay(grider.model || modelState.value, config, setConfig, $cache, cache.update);
@@ -36,4 +36,12 @@
}
-
+
diff --git a/packages/web/src/tabs/FreeTableTab.svelte b/packages/web/src/tabs/FreeTableTab.svelte
index 4f54ec801..97674a4b0 100644
--- a/packages/web/src/tabs/FreeTableTab.svelte
+++ b/packages/web/src/tabs/FreeTableTab.svelte
@@ -4,7 +4,6 @@
import ErrorInfo from '../elements/ErrorInfo.svelte';
import LoadingInfo from '../elements/LoadingInfo.svelte';
- import FreeTableGrid from '../freetable/FreeTableGrid.svelte';
import FreeTableGridCore from '../freetable/FreeTableGridCore.svelte';
import { showModal } from '../modals/modalTools';
import SaveArchiveModal from '../modals/SaveArchiveModal.svelte';