diff --git a/packages/client/src/components/app/GridBlock.svelte b/packages/client/src/components/app/GridBlock.svelte index aae41b30c6..3bf7fef231 100644 --- a/packages/client/src/components/app/GridBlock.svelte +++ b/packages/client/src/components/app/GridBlock.svelte @@ -21,9 +21,8 @@ {allowEditRows} {allowDeleteRows} showControls={false} - allowAddColumns={false} - allowEditColumns={false} allowExpandRows={false} + allowSchemaChanges={false} /> diff --git a/packages/frontend-core/src/components/grid/cells/HeaderCell.svelte b/packages/frontend-core/src/components/grid/cells/HeaderCell.svelte index 21ee210233..db2e1a729b 100644 --- a/packages/frontend-core/src/components/grid/cells/HeaderCell.svelte +++ b/packages/frontend-core/src/components/grid/cells/HeaderCell.svelte @@ -163,7 +163,7 @@ Edit column @@ -171,7 +171,7 @@ icon="Label" on:click={makeDisplayColumn} disabled={idx === "sticky" || - !$config.allowEditColumns || + !$config.allowSchemaChanges || bannedDisplayColumnTypes.includes(column.schema.type)} > Use as display column diff --git a/packages/frontend-core/src/components/grid/controls/AddColumnButton.svelte b/packages/frontend-core/src/components/grid/controls/AddColumnButton.svelte index 6ad241eb65..20125bc49c 100644 --- a/packages/frontend-core/src/components/grid/controls/AddColumnButton.svelte +++ b/packages/frontend-core/src/components/grid/controls/AddColumnButton.svelte @@ -10,7 +10,7 @@ quiet size="M" on:click={() => dispatch("add-column")} - disabled={!$config.allowAddColumns} + disabled={!$config.allowSchemaChanges} > Add column diff --git a/packages/frontend-core/src/components/grid/layout/Grid.svelte b/packages/frontend-core/src/components/grid/layout/Grid.svelte index ae4409ddca..e33cb65940 100644 --- a/packages/frontend-core/src/components/grid/layout/Grid.svelte +++ b/packages/frontend-core/src/components/grid/layout/Grid.svelte @@ -35,11 +35,10 @@ export let tableId = null export let schemaOverrides = null export let allowAddRows = true - export let allowAddColumns = true - export let allowEditColumns = true export let allowExpandRows = true export let allowEditRows = true export let allowDeleteRows = true + export let allowSchemaChanges = true export let stripeRows = false export let collaboration = true export let showAvatars = true @@ -53,8 +52,7 @@ const schemaOverridesStore = writable(schemaOverrides) const config = writable({ allowAddRows, - allowAddColumns, - allowEditColumns, + allowSchemaChanges, allowExpandRows, allowEditRows, allowDeleteRows, @@ -88,8 +86,7 @@ $: schemaOverridesStore.set(schemaOverrides) $: config.set({ allowAddRows, - allowAddColumns, - allowEditColumns, + allowSchemaChanges, allowExpandRows, allowEditRows, allowDeleteRows, diff --git a/packages/frontend-core/src/components/grid/layout/HeaderRow.svelte b/packages/frontend-core/src/components/grid/layout/HeaderRow.svelte index 9d6cc2275b..c22ee511a3 100644 --- a/packages/frontend-core/src/components/grid/layout/HeaderRow.svelte +++ b/packages/frontend-core/src/components/grid/layout/HeaderRow.svelte @@ -29,7 +29,7 @@ {/each} - {#if $config.allowAddColumns} + {#if $config.allowSchemaChanges}
{ } export const deriveStores = context => { - const { table, columns, stickyColumn, API, dispatch } = context + const { table, columns, stickyColumn, API, dispatch, config } = context // Updates the tables primary display column const changePrimaryDisplay = async column => { @@ -95,7 +95,9 @@ export const deriveStores = context => { dispatch("updatetable", newTable) // Update server - await API.saveTable(newTable) + if (get(config).allowSchemaChanges) { + await API.saveTable(newTable) + } } return {