From 6e76edb279c454f9456f8e00ac5afbd8466fcd4e Mon Sep 17 00:00:00 2001 From: Diego Imbert Date: Mon, 31 Aug 2026 06:01:13 +0200 Subject: [PATCH] fix(datatables): tell the caller when roles have been saved --- .../src/lib/components/datatableAcl/PgGrantBuilder.svelte | 1 - .../workspaceSettings/DataTablePermissionsButton.svelte | 7 ++++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/frontend/src/lib/components/datatableAcl/PgGrantBuilder.svelte b/frontend/src/lib/components/datatableAcl/PgGrantBuilder.svelte index f8afe1546b..164170ebff 100644 --- a/frontend/src/lib/components/datatableAcl/PgGrantBuilder.svelte +++ b/frontend/src/lib/components/datatableAcl/PgGrantBuilder.svelte @@ -58,7 +58,6 @@ bind:value={privileges} items={available.map((p) => ({ value: p, label: p }))} placeholder="privileges" - size="xs" {disabled} class="min-w-56" /> diff --git a/frontend/src/lib/components/workspaceSettings/DataTablePermissionsButton.svelte b/frontend/src/lib/components/workspaceSettings/DataTablePermissionsButton.svelte index fe6fc84ba4..061a64591a 100644 --- a/frontend/src/lib/components/workspaceSettings/DataTablePermissionsButton.svelte +++ b/frontend/src/lib/components/workspaceSettings/DataTablePermissionsButton.svelte @@ -34,7 +34,8 @@ workspace, datatable, disabled = false, - hideTrigger = false + hideTrigger = false, + onSaved }: { workspace: string datatable: string @@ -42,6 +43,9 @@ /** Mount the drawer without its button, so a caller can drive it via `open()` * (the database manager opens it from the tree's row menu). */ hideTrigger?: boolean + /** Called once the roles have actually changed, so a caller showing them + * (the manager's role picker) can read them again. */ + onSaved?: () => void } = $props() // Matches every workspace member, unlike the `all` group whose membership is @@ -214,6 +218,7 @@ sendUserToast('Data table permissions saved') preview = undefined await load() + onSaved?.() } catch (e) { sendUserToast(e?.body ?? e?.message ?? String(e), true) } finally {