diff --git a/packages/web/src/appobj/AppObjectCore.svelte b/packages/web/src/appobj/AppObjectCore.svelte index d89cc1f87..1ffedd020 100644 --- a/packages/web/src/appobj/AppObjectCore.svelte +++ b/packages/web/src/appobj/AppObjectCore.svelte @@ -1,18 +1,19 @@
- {prefix || ''} + {prefix} {#if isBusy} {:else} @@ -41,7 +42,6 @@ } .main:hover { background-color: var(--theme-bg-hover); - } .isBold { font-weight: bold; diff --git a/packages/web/src/appobj/AppObjectList.svelte b/packages/web/src/appobj/AppObjectList.svelte index 67d53a1ee..c47af2563 100644 --- a/packages/web/src/appobj/AppObjectList.svelte +++ b/packages/web/src/appobj/AppObjectList.svelte @@ -1,11 +1,14 @@ {#each list as data} - + {/each} diff --git a/packages/web/src/appobj/AppObjectListItem.svelte b/packages/web/src/appobj/AppObjectListItem.svelte index dafc4b693..adc02ba99 100644 --- a/packages/web/src/appobj/AppObjectListItem.svelte +++ b/packages/web/src/appobj/AppObjectListItem.svelte @@ -1,8 +1,20 @@ - + + +{#if isExpanded && subItemsComponent} + +{/if} diff --git a/packages/web/src/appobj/ConnectionAppObject.svelte b/packages/web/src/appobj/ConnectionAppObject.svelte index 5a817310e..3bca202ea 100644 --- a/packages/web/src/appobj/ConnectionAppObject.svelte +++ b/packages/web/src/appobj/ConnectionAppObject.svelte @@ -31,5 +31,6 @@ isBold={_.get($currentDatabase, 'connection._id') == data._id} statusIcon={statusIcon} statusTitle={statusTitle} + on:click on:click={() => ($openedConnections = _.uniq([...$openedConnections, data._id]))} /> diff --git a/packages/web/src/appobj/DatabaseAppObject.svelte b/packages/web/src/appobj/DatabaseAppObject.svelte new file mode 100644 index 000000000..1e04fcefc --- /dev/null +++ b/packages/web/src/appobj/DatabaseAppObject.svelte @@ -0,0 +1,20 @@ + + + ($currentDatabase = data)} +/> diff --git a/packages/web/src/appobj/SubDatabaseList.svelte b/packages/web/src/appobj/SubDatabaseList.svelte new file mode 100644 index 000000000..18c20fd53 --- /dev/null +++ b/packages/web/src/appobj/SubDatabaseList.svelte @@ -0,0 +1,11 @@ + + + ({ ...db, connection: data }))} component={DatabaseAppObject} /> diff --git a/packages/web/src/widgets/ConnectionList.svelte b/packages/web/src/widgets/ConnectionList.svelte index c36e7752f..194ad92ca 100644 --- a/packages/web/src/widgets/ConnectionList.svelte +++ b/packages/web/src/widgets/ConnectionList.svelte @@ -7,6 +7,7 @@ import SearchBoxWrapper from './SearchBoxWrapper.svelte'; import AppObjectList from '../appobj/AppObjectList.svelte'; import ConnectionAppObject from '../appobj/ConnectionAppObject.svelte'; + import SubDatabaseList from '../appobj/SubDatabaseList.svelte'; const connections = useConnectionList(); const serverStatus = useServerStatus(); @@ -25,5 +26,7 @@ (displayName || server || '').toUpperCase())} component={ConnectionAppObject} + subItemsComponent={SubDatabaseList} + expandOnClick /> diff --git a/packages/web/src/widgets/InlineButton.svelte b/packages/web/src/widgets/InlineButton.svelte index e0b4ebf8a..494affec7 100644 --- a/packages/web/src/widgets/InlineButton.svelte +++ b/packages/web/src/widgets/InlineButton.svelte @@ -1,6 +1,6 @@