diff --git a/packages/web/src/dbkeyvalue/DbKeyItemDetail.svelte b/packages/web/src/dbkeyvalue/DbKeyItemDetail.svelte index 58d1916b7..4eedff2db 100644 --- a/packages/web/src/dbkeyvalue/DbKeyItemDetail.svelte +++ b/packages/web/src/dbkeyvalue/DbKeyItemDetail.svelte @@ -9,7 +9,18 @@
{#each dbKeyFields as column} - + { + onChangeItem?.({ + ...item, + [column.name]: value, + }); + } + : null} + /> {/each}
diff --git a/packages/web/src/dbkeyvalue/DbKeyValueDetail.svelte b/packages/web/src/dbkeyvalue/DbKeyValueDetail.svelte index a1692e1a2..20d543743 100644 --- a/packages/web/src/dbkeyvalue/DbKeyValueDetail.svelte +++ b/packages/web/src/dbkeyvalue/DbKeyValueDetail.svelte @@ -9,13 +9,13 @@ let display = 'text'; - export let column; - export let item; - export let onChangeItem = null; + export let columnTitle; + export let value; + export let onChangeValue = null;
-
{_.startCase(column.name)}
+
{columnTitle}
{#if display == 'text'} { - if (onChangeItem) { - onChangeItem({ - ...item, - [column.name]: e.detail, - }); - } + onChangeValue?.(e.detail); }} /> {/if} {#if display == 'json'}
- +
{/if} diff --git a/packages/web/src/tabs/DbKeyDetailTab.svelte b/packages/web/src/tabs/DbKeyDetailTab.svelte index f7d49ad2f..1e1319e1b 100644 --- a/packages/web/src/tabs/DbKeyDetailTab.svelte +++ b/packages/web/src/tabs/DbKeyDetailTab.svelte @@ -9,7 +9,7 @@ function getKeyText(key) { const keySplit = key.split(':'); if (keySplit.length > 1) return keySplit[keySplit.length - 1]; - return key; + return key || '(no name)'; } @@ -32,6 +32,8 @@ import DbKeyAddItemModal from '../modals/DbKeyAddItemModal.svelte'; import ErrorMessageModal from '../modals/ErrorMessageModal.svelte'; import { changeTab } from '../utility/common'; + import SelectField from '../forms/SelectField.svelte'; + import DbKeyValueDetail from '../dbkeyvalue/DbKeyValueDetail.svelte'; export let tabid; export let conid; @@ -157,12 +159,15 @@ {:else} - { - editedValue = e.detail; - }} - /> +
+ { + editedValue = value; + }} + /> +
{/if}
@@ -199,4 +204,15 @@ .key-name :global(input) { flex-grow: 1; } + + .value-holder { + position: absolute; + left: 0; + top: 0; + right: 0; + bottom: 0; + + display: flex; + flex-direction: column; + } diff --git a/packages/web/src/widgets/DbKeysTreeNode.svelte b/packages/web/src/widgets/DbKeysTreeNode.svelte index dec05b2e3..0c666ff47 100644 --- a/packages/web/src/widgets/DbKeysTreeNode.svelte +++ b/packages/web/src/widgets/DbKeysTreeNode.svelte @@ -135,7 +135,7 @@ { if (item.type == 'dir') { @@ -148,7 +148,7 @@ } else { openNewTab({ tabComponent: 'DbKeyDetailTab', - title: item.text, + title: item.text || '(no name)', icon: 'img keydb', props: { isDefaultBrowser: true,