mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-04-19 16:36:00 +00:00
find in SQL text
This commit is contained in:
@@ -32,6 +32,7 @@
|
||||
export let indentLevel = 0;
|
||||
export let disableBoldScroll = false;
|
||||
export let filter = null;
|
||||
export let disableHover = false;
|
||||
|
||||
$: isChecked =
|
||||
checkedObjectsStore && $checkedObjectsStore.find(x => module?.extractKey(data) == module?.extractKey(x));
|
||||
@@ -91,6 +92,7 @@
|
||||
class="main"
|
||||
class:isBold
|
||||
class:isChoosed
|
||||
class:disableHover
|
||||
draggable={true}
|
||||
on:click={handleClick}
|
||||
on:mouseup={handleMouseUp}
|
||||
@@ -197,7 +199,7 @@
|
||||
white-space: nowrap;
|
||||
font-weight: normal;
|
||||
}
|
||||
.main:hover {
|
||||
.main:hover:not(.disableHover) {
|
||||
background-color: var(--theme-bg-hover);
|
||||
}
|
||||
.isBold {
|
||||
|
||||
@@ -73,5 +73,5 @@
|
||||
{extInfo}
|
||||
icon={getColumnIcon(data, true)}
|
||||
menu={createMenu}
|
||||
disableHover
|
||||
\
|
||||
/>
|
||||
|
||||
23
packages/web/src/appobj/ProcedureLineAppObject.svelte
Normal file
23
packages/web/src/appobj/ProcedureLineAppObject.svelte
Normal file
@@ -0,0 +1,23 @@
|
||||
<script lang="ts" context="module">
|
||||
export const extractKey = ({ columnName }) => columnName;
|
||||
|
||||
export const createMatcher =
|
||||
(filter, cfg = DEFAULT_SEARCH_SETTINGS) =>
|
||||
data => {
|
||||
const filterArgs = [];
|
||||
if (cfg.sqlObjectText) filterArgs.push(data.lineData);
|
||||
|
||||
const res = filterName(filter, ...filterArgs);
|
||||
return res;
|
||||
};
|
||||
</script>
|
||||
|
||||
<script lang="ts">
|
||||
import AppObjectCore from './AppObjectCore.svelte';
|
||||
import { filterName } from 'dbgate-tools';
|
||||
import { DEFAULT_SEARCH_SETTINGS } from '../stores';
|
||||
|
||||
export let data;
|
||||
</script>
|
||||
|
||||
<AppObjectCore {...$$restProps} {data} icon="icon text" title={data.lineData?.substring(0, 100)} disableHover />
|
||||
19
packages/web/src/appobj/SubProcedureLineList.svelte
Normal file
19
packages/web/src/appobj/SubProcedureLineList.svelte
Normal file
@@ -0,0 +1,19 @@
|
||||
<script lang="ts" context="module">
|
||||
export const extractKey = ({ lineData }) => lineData;
|
||||
</script>
|
||||
|
||||
<script lang="ts">
|
||||
import AppObjectList from './AppObjectList.svelte';
|
||||
import * as procedureLineAppObject from './ProcedureLineAppObject.svelte';
|
||||
|
||||
export let data;
|
||||
export let filter;
|
||||
</script>
|
||||
|
||||
<AppObjectList
|
||||
list={(data.createSql?.split('\n') || []).map(lineData => ({
|
||||
lineData,
|
||||
}))}
|
||||
module={procedureLineAppObject}
|
||||
{filter}
|
||||
/>
|
||||
@@ -143,6 +143,7 @@
|
||||
'icon parent-filter': 'mdi mdi-home-alert',
|
||||
'icon parent-filter-outline': 'mdi mdi-home-alert-outline',
|
||||
'icon download': 'mdi mdi-download',
|
||||
'icon text': 'mdi mdi-text',
|
||||
|
||||
'icon run': 'mdi mdi-play',
|
||||
'icon chevron-down': 'mdi mdi-chevron-down',
|
||||
|
||||
@@ -55,6 +55,7 @@
|
||||
import { matchDatabaseObjectAppObject } from '../appobj/appObjectTools';
|
||||
import FocusedConnectionInfoWidget from './FocusedConnectionInfoWidget.svelte';
|
||||
import SubProcedureParamList from '../appobj/SubProcedureParamList.svelte';
|
||||
import SubProcedureLineList from '../appobj/SubProcedureLineList.svelte';
|
||||
|
||||
export let conid;
|
||||
export let database;
|
||||
@@ -270,7 +271,9 @@
|
||||
groupFunc={data => getObjectTypeFieldLabel(data.objectTypeField, driver)}
|
||||
subItemsComponent={data =>
|
||||
data.objectTypeField == 'procedures' || data.objectTypeField == 'functions'
|
||||
? SubProcedureParamList
|
||||
? filter
|
||||
? SubProcedureLineList
|
||||
: SubProcedureParamList
|
||||
: SubTableColumnList}
|
||||
isExpandable={data =>
|
||||
data.objectTypeField == 'tables' ||
|
||||
|
||||
Reference in New Issue
Block a user