From ac301bb021683a947eba2d07981a1163d2ceac85 Mon Sep 17 00:00:00 2001
From: Harsh Mahajan <127186841+HarshMN2345@users.noreply.github.com>
Date: Sun, 7 Sep 2025 18:04:41 +0530
Subject: [PATCH 1/3] feat: add Create more to column creation flow
---
.../table-[table]/+layout.svelte | 16 ++++++++++++----
.../table-[table]/createColumn.svelte | 9 +++++++++
2 files changed, 21 insertions(+), 4 deletions(-)
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..5e7c3614c 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
@@ -342,14 +343,21 @@
bind:show={$showCreateColumnSheet.show}
submit={{
text: 'Create',
- onClick: async () => {
- 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
}
}
From 9eaedc6d580bb6851153931d266bd3806575d6b9 Mon Sep 17 00:00:00 2001
From: Harsh Mahajan <127186841+HarshMN2345@users.noreply.github.com>
Date: Mon, 8 Sep 2025 10:58:30 +0530
Subject: [PATCH 2/3] eeset createMoreColumns to false when sheet closes
---
.../database-[database]/table-[table]/+layout.svelte | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
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 5e7c3614c..84908b2b3 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
@@ -72,6 +72,10 @@
let selectedOption: Option['name'] = 'String';
let createMoreColumns = false;
+ $: if (!$showCreateColumnSheet.show) {
+ createMoreColumns = false;
+ }
+
/**
* adding a lot of fake data will trigger the realtime below
* and will keep invalidating the `Dependencies.TABLE` making a lot of API noise!
@@ -337,7 +341,7 @@
Date: Mon, 8 Sep 2025 11:07:53 +0530
Subject: [PATCH 3/3] move to end
---
.../database-[database]/table-[table]/+layout.svelte | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
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 84908b2b3..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
@@ -72,10 +72,6 @@
let selectedOption: Option['name'] = 'String';
let createMoreColumns = false;
- $: if (!$showCreateColumnSheet.show) {
- createMoreColumns = false;
- }
-
/**
* adding a lot of fake data will trigger the realtime below
* and will keep invalidating the `Dependencies.TABLE` making a lot of API noise!
@@ -332,6 +328,10 @@
spreadsheetRenderKey.set(hash(rowIds));
}
+
+ $: if (!$showCreateColumnSheet.show) {
+ createMoreColumns = false;
+ }