diff --git a/packages/web/src/dbkeyvalue/DbKeyItemDetail.svelte b/packages/web/src/dbkeyvalue/DbKeyItemDetail.svelte index 8e927d976..77bcdd446 100644 --- a/packages/web/src/dbkeyvalue/DbKeyItemDetail.svelte +++ b/packages/web/src/dbkeyvalue/DbKeyItemDetail.svelte @@ -3,13 +3,25 @@ export let keyInfo; export let item; + export let onChangeItem;
{#each keyInfo.tableColumns as column}
{column.name}
- + { + if (onChangeItem) { + onChangeItem({ + ...item, + [column.name]: e.detail, + }); + } + }} + />
{/each}
diff --git a/packages/web/src/modals/DbKeyAddItemModal.svelte b/packages/web/src/modals/DbKeyAddItemModal.svelte index 2bdab7000..57122c545 100644 --- a/packages/web/src/modals/DbKeyAddItemModal.svelte +++ b/packages/web/src/modals/DbKeyAddItemModal.svelte @@ -1,36 +1,47 @@ - + - - Add item - + Add item - +
+ { + item = value; + }} + /> +
- handleSubmit(e.detail)} /> + handleSubmit()} />
+ + diff --git a/packages/web/src/tabs/DbKeyDetailTab.svelte b/packages/web/src/tabs/DbKeyDetailTab.svelte index 31dda6871..e3f0b733b 100644 --- a/packages/web/src/tabs/DbKeyDetailTab.svelte +++ b/packages/web/src/tabs/DbKeyDetailTab.svelte @@ -83,7 +83,18 @@ } async function addItem(keyInfo) { - showModal(DbKeyAddItemModal, { keyInfo }); + showModal(DbKeyAddItemModal, { + keyInfo, + onConfirm: async row => { + await apiCall('database-connections/call-method', { + conid, + database, + method: keyInfo.addMethod, + args: [keyInfo.key, ...keyInfo.tableColumns.map(col => row[col.name])], + }); + refresh(); + }, + }); }