mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-04-19 16:36:00 +00:00
app object module methods, search in connection list
This commit is contained in:
@@ -2,13 +2,20 @@
|
||||
import AppObjectListItem from './AppObjectListItem.svelte';
|
||||
|
||||
export let list;
|
||||
export let component;
|
||||
export let module;
|
||||
export let subItemsComponent = undefined;
|
||||
export let expandOnClick = false;
|
||||
export let filter;
|
||||
|
||||
export let groupFunc = undefined;
|
||||
|
||||
$: filtered = list.filter(data => {
|
||||
const matcher = module.createMatcher && module.createMatcher(data);
|
||||
if (matcher && !matcher(filter)) return false;
|
||||
return true;
|
||||
});
|
||||
</script>
|
||||
|
||||
{#each list as data}
|
||||
<AppObjectListItem {component} {subItemsComponent} {expandOnClick} {data} on:objectClick />
|
||||
{#each filtered as data}
|
||||
<AppObjectListItem {module} {subItemsComponent} {expandOnClick} {data} on:objectClick />
|
||||
{/each}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<script lang="ts">
|
||||
export let component;
|
||||
export let module;
|
||||
export let data;
|
||||
export let subItemsComponent;
|
||||
export let expandOnClick;
|
||||
@@ -13,7 +13,7 @@
|
||||
}
|
||||
</script>
|
||||
|
||||
<svelte:component this={component} {data} on:click={handleExpand} />
|
||||
<svelte:component this={module.default} {data} on:click={handleExpand} />
|
||||
|
||||
{#if isExpanded && subItemsComponent}
|
||||
<svelte:component this={subItemsComponent} {data} />
|
||||
|
||||
@@ -26,6 +26,9 @@
|
||||
},
|
||||
];
|
||||
};
|
||||
|
||||
export const extractKey = data => data._id;
|
||||
export const createMatcher = ({ displayName, server }) => filter => filterName(filter, displayName, server);
|
||||
</script>
|
||||
|
||||
<script lang="ts">
|
||||
@@ -33,6 +36,7 @@
|
||||
import AppObjectCore from './AppObjectCore.svelte';
|
||||
import { currentDatabase, extensions, openedConnections } from '../stores';
|
||||
import axios from '../utility/axios';
|
||||
import { filterName } from 'dbgate-datalib';
|
||||
|
||||
export let commonProps;
|
||||
export let data;
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
<script lang="ts">
|
||||
import { useDatabaseList } from '../utility/metadataLoaders';
|
||||
import AppObjectList from './AppObjectList.svelte';
|
||||
import DatabaseAppObject from './DatabaseAppObject.svelte';
|
||||
import * as databaseAppObject from './DatabaseAppObject.svelte';
|
||||
|
||||
export let data;
|
||||
|
||||
$: databases = useDatabaseList({ conid: data._id });
|
||||
</script>
|
||||
|
||||
<AppObjectList list={($databases || []).map(db => ({ ...db, connection: data }))} component={DatabaseAppObject} />
|
||||
<AppObjectList list={($databases || []).map(db => ({ ...db, connection: data }))} module={databaseAppObject} />
|
||||
|
||||
Reference in New Issue
Block a user