diff --git a/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/columns/+page.svelte b/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/columns/+page.svelte
index 3a580f820..c7e75ba02 100644
--- a/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/columns/+page.svelte
+++ b/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/columns/+page.svelte
@@ -130,7 +130,9 @@
const emptyCellsLimit = $derived($isSmallViewport ? 14 : 16);
const emptyCellsCount = $derived(
- $columns.length >= emptyCellsLimit ? 0 : emptyCellsLimit - $columns.length
+ updatedColumnsForSheet.length >= emptyCellsLimit
+ ? 0
+ : emptyCellsLimit - updatedColumnsForSheet.length
);
onMount(() => {
diff --git a/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/header.svelte b/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/header.svelte
index b81438392..ff3547bec 100644
--- a/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/header.svelte
+++ b/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/header.svelte
@@ -6,7 +6,7 @@
import { Cover, CoverTitle } from '$lib/layout';
import { canWriteTables } from '$lib/stores/roles';
import { table } from './store';
- import { isTabletViewport } from '$lib/stores/viewport';
+ import { isSmallViewport, isTabletViewport } from '$lib/stores/viewport';
const databaseId = $derived(page.params.database);
@@ -56,7 +56,7 @@
);
-
+
($showCreateAttributeSheet.show = false));
+
+ const emptyCellsLimit = $derived($isSmallViewport ? 14 : 16);
+ const emptyCellsCount = $derived(
+ data.table.indexes.length >= emptyCellsLimit
+ ? 0
+ : emptyCellsLimit - data.table.indexes.length
+ );
@@ -106,7 +114,9 @@
Key
@@ -121,6 +131,7 @@
{/if}
+
{#each data.table.indexes as index}
@@ -182,6 +193,18 @@
{/each}
+
+
+
+
+ {data.table.indexes.length} columns
+
+
+
{:else}
diff --git a/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/layout/emptySheet.svelte b/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/layout/emptySheet.svelte
index bc7eebe26..6d8375f37 100644
--- a/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/layout/emptySheet.svelte
+++ b/src/routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/layout/emptySheet.svelte
@@ -1,5 +1,13 @@
+ loading={$spreadsheetLoading}
+ bottomActionClick={() => {
+ /* @ignore: only for showing the `+` button on footer */
+ }}>
{#each spreadsheetColumns as column (column.id)}
{@const columnActionsById = column.id === 'actions'}
@@ -165,43 +179,55 @@
{/each}
+
+
+
+
+
+
-
-
-
- {title ?? `You have no ${mode} yet`}
+ {#if !$spreadsheetLoading}
+
+
+
+ {title ?? `You have no ${mode} yet`}
- {#if showActions}
-
-
-
- {actions?.primary?.text ?? `Create ${mode}`}
-
-
- {#if mode === 'records'}
+ {#if showActions}
+
- {actions?.random?.text ?? `Generate random data`}
+ disabled={actions?.primary?.disabled}
+ onclick={actions?.primary?.onClick}>
+
+ {actions?.primary?.text ?? `Create ${mode}`}
- {/if}
-
- {/if}
-
+
+ {#if mode === 'records'}
+
+ {actions?.random?.text ?? `Generate random data`}
+
+ {/if}
+
+ {/if}
+
+
-
+ {/if}