diff --git a/packages/web/src/widgets/DbKeysSubTree.svelte b/packages/web/src/widgets/DbKeysSubTree.svelte
index c9f081aad..529903a3a 100644
--- a/packages/web/src/widgets/DbKeysSubTree.svelte
+++ b/packages/web/src/widgets/DbKeysSubTree.svelte
@@ -16,6 +16,7 @@
export let indentLevel = 0;
export let reloadToken = 0;
+ export let connection;
let reloadToken2 = 0;
let maxShowCount = SHOW_INCREMENT;
@@ -33,6 +34,7 @@
{conid}
{database}
{root}
+ {connection}
{item}
{indentLevel}
onRefreshParent={() => {
diff --git a/packages/web/src/widgets/DbKeysTree.svelte b/packages/web/src/widgets/DbKeysTree.svelte
index d785e6b7d..4baecfcf3 100644
--- a/packages/web/src/widgets/DbKeysTree.svelte
+++ b/packages/web/src/widgets/DbKeysTree.svelte
@@ -12,6 +12,7 @@
import { showModal } from '../modals/modalTools';
import { currentDatabase, getExtensions } from '../stores';
import { apiCall } from '../utility/api';
+ import { useConnectionInfo } from '../utility/metadataLoaders';
import DbKeysSubTree from './DbKeysSubTree.svelte';
import WidgetsInnerContainer from './WidgetsInnerContainer.svelte';
@@ -62,5 +63,5 @@
-
+
diff --git a/packages/web/src/widgets/DbKeysTreeNode.svelte b/packages/web/src/widgets/DbKeysTreeNode.svelte
index 90e282b77..f1fc56ebc 100644
--- a/packages/web/src/widgets/DbKeysTreeNode.svelte
+++ b/packages/web/src/widgets/DbKeysTreeNode.svelte
@@ -17,6 +17,7 @@
export let conid;
export let database;
+ export let connection;
export let root;
@@ -29,8 +30,7 @@
let reloadToken = 0;
// $: console.log(item.text, indentLevel);
- async function createMenu() {
- const connection = await getConnectionInfo({ conid });
+ function createMenu() {
return [
item.key != null &&
!connection?.isReadOnly && {
@@ -83,27 +83,28 @@
reloadToken += 1;
},
},
- item.type == 'dir' && {
- label: 'Delete branch',
- onClick: () => {
- const branch = `${item.root}:*`;
- showModal(ConfirmModal, {
- message: `Really delete branch ${branch} with all keys?`,
- onConfirm: async () => {
- await apiCall('database-connections/call-method', {
- conid,
- database,
- method: 'mdel',
- args: [branch],
- });
+ item.type == 'dir' &&
+ !connection?.isReadOnly && {
+ label: 'Delete branch',
+ onClick: () => {
+ const branch = `${item.root}:*`;
+ showModal(ConfirmModal, {
+ message: `Really delete branch ${branch} with all keys?`,
+ onConfirm: async () => {
+ await apiCall('database-connections/call-method', {
+ conid,
+ database,
+ method: 'mdel',
+ args: [branch],
+ });
- if (onRefreshParent) {
- onRefreshParent();
- }
- },
- });
+ if (onRefreshParent) {
+ onRefreshParent();
+ }
+ },
+ });
+ },
},
- },
,
{
label: 'Generate script',
@@ -169,5 +170,5 @@
-->
{#if isExpanded}
-
+
{/if}