diff --git a/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/+layout.svelte b/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/+layout.svelte index a0d751d08..076e08f1c 100644 --- a/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/+layout.svelte +++ b/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/+layout.svelte @@ -52,7 +52,7 @@ import EditColumn from './columns/edit.svelte'; import RowActivity from './rows/activity.svelte'; import EditRowPermissions from './rows/editPermissions.svelte'; - import { Dialog, Layout, Typography } from '@appwrite.io/pink-svelte'; + import { Dialog, Layout, Typography, Selector } from '@appwrite.io/pink-svelte'; import { Button, Seekbar } from '$lib/elements/forms'; import { generateFakeRecords, generateColumns } from '$lib/helpers/faker'; import { addNotification } from '$lib/stores/notifications'; @@ -70,6 +70,7 @@ let createIndex: CreateIndex; let createColumn: CreateColumn; let selectedOption: Option['name'] = 'String'; + let createMoreColumns = false; /** * adding a lot of fake data will trigger the realtime below @@ -327,6 +328,10 @@ spreadsheetRenderKey.set(hash(rowIds)); } + + $: if (!$showCreateColumnSheet.show) { + createMoreColumns = false; + } @@ -336,20 +341,27 @@ { - await createColumn?.submit(); - }, + onClick: async () => await createColumn?.submit(), disabled: !selectedOption }}> + {#snippet footer()} + + + + {/snippet} void; } = $props(); @@ -148,12 +150,19 @@ message: `Column ${key ?? data?.key} has been created` }); trackEvent(Submit.ColumnCreate); + + if (createMore) { + init(); + return true; // keep sheet open + } + return false; // close sheet } catch (e) { addNotification({ type: 'error', message: e.message }); trackError(e, Submit.ColumnCreate); + return true; // keep open on error } }