mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-04-22 22:46:01 +00:00
MPR references
This commit is contained in:
@@ -39,7 +39,8 @@ export class TableGridDisplay extends GridDisplay {
|
|||||||
public getDictionaryDescription: DictionaryDescriptionFunc = null,
|
public getDictionaryDescription: DictionaryDescriptionFunc = null,
|
||||||
isReadOnly = false,
|
isReadOnly = false,
|
||||||
public isRawMode = false,
|
public isRawMode = false,
|
||||||
public currentSettings = null
|
public currentSettings = null,
|
||||||
|
public areReferencesAllowed = true
|
||||||
) {
|
) {
|
||||||
super(config, setConfig, cache, setCache, driver, dbinfo, serverVersion, currentSettings);
|
super(config, setConfig, cache, setCache, driver, dbinfo, serverVersion, currentSettings);
|
||||||
|
|
||||||
@@ -248,6 +249,7 @@ export class TableGridDisplay extends GridDisplay {
|
|||||||
}
|
}
|
||||||
|
|
||||||
processReferences(select: Select, displayedColumnInfo: DisplayedColumnInfo, options) {
|
processReferences(select: Select, displayedColumnInfo: DisplayedColumnInfo, options) {
|
||||||
|
if (!this.areReferencesAllowed) return;
|
||||||
this.addJoinsFromExpandedColumns(select, this.columns, 'basetbl', displayedColumnInfo);
|
this.addJoinsFromExpandedColumns(select, this.columns, 'basetbl', displayedColumnInfo);
|
||||||
if (!options.isExport && this.displayOptions.showHintColumns) {
|
if (!options.isExport && this.displayOptions.showHintColumns) {
|
||||||
this.addHintsToSelect(select);
|
this.addHintsToSelect(select);
|
||||||
|
|||||||
@@ -95,8 +95,10 @@
|
|||||||
|
|
||||||
{ divider: true },
|
{ divider: true },
|
||||||
|
|
||||||
|
isProApp() &&
|
||||||
allowDefineVirtualReferences && { onClick: handleDefineVirtualForeignKey, text: 'Define virtual foreign key' },
|
allowDefineVirtualReferences && { onClick: handleDefineVirtualForeignKey, text: 'Define virtual foreign key' },
|
||||||
column.foreignKey && {
|
column.foreignKey &&
|
||||||
|
isProApp() && {
|
||||||
onClick: handleCustomizeDescriptions,
|
onClick: handleCustomizeDescriptions,
|
||||||
text: 'Customize description',
|
text: 'Customize description',
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
import { showModal } from '../modals/modalTools';
|
import { showModal } from '../modals/modalTools';
|
||||||
import ColumnEditorModal from '../tableeditor/ColumnEditorModal.svelte';
|
import ColumnEditorModal from '../tableeditor/ColumnEditorModal.svelte';
|
||||||
import { editorDeleteColumn } from 'dbgate-tools';
|
import { editorDeleteColumn } from 'dbgate-tools';
|
||||||
|
import { isProApp } from '../utility/proTools';
|
||||||
|
|
||||||
export let column;
|
export let column;
|
||||||
export let display;
|
export let display;
|
||||||
@@ -59,13 +60,17 @@
|
|||||||
on:mouseup
|
on:mouseup
|
||||||
>
|
>
|
||||||
<div>
|
<div>
|
||||||
|
{#if isProApp()}
|
||||||
<span class="expandColumnIcon" style={`margin-right: ${5 + (column.uniquePath.length - 1) * 10}px`}>
|
<span class="expandColumnIcon" style={`margin-right: ${5 + (column.uniquePath.length - 1) * 10}px`}>
|
||||||
<FontIcon
|
<FontIcon
|
||||||
icon={column.isExpandable ? plusExpandIcon(display.isExpandedColumn(column.uniqueName)) : 'icon invisible-box'}
|
icon={column.isExpandable
|
||||||
|
? plusExpandIcon(display.isExpandedColumn(column.uniqueName))
|
||||||
|
: 'icon invisible-box'}
|
||||||
on:click={() => display.toggleExpandedColumn(column.uniqueName)}
|
on:click={() => display.toggleExpandedColumn(column.uniqueName)}
|
||||||
data-testid="ColumnManagerRow_expand_{column.uniqueName}"
|
data-testid="ColumnManagerRow_expand_{column.uniqueName}"
|
||||||
/>
|
/>
|
||||||
</span>
|
</span>
|
||||||
|
{/if}
|
||||||
{#if isJsonView}
|
{#if isJsonView}
|
||||||
<FontIcon icon="img column" />
|
<FontIcon icon="img column" />
|
||||||
{:else}
|
{:else}
|
||||||
|
|||||||
@@ -30,6 +30,7 @@
|
|||||||
import SqlFormView from '../formview/SqlFormView.svelte';
|
import SqlFormView from '../formview/SqlFormView.svelte';
|
||||||
import { getBoolSettingsValue } from '../settings/settingsTools';
|
import { getBoolSettingsValue } from '../settings/settingsTools';
|
||||||
import { getDictionaryDescription } from '../utility/dictionaryDescriptionTools';
|
import { getDictionaryDescription } from '../utility/dictionaryDescriptionTools';
|
||||||
|
import { isProApp } from '../utility/proTools';
|
||||||
|
|
||||||
export let conid;
|
export let conid;
|
||||||
export let database;
|
export let database;
|
||||||
@@ -82,7 +83,8 @@
|
|||||||
extendedDbInfo?.tables?.find(x => x.pureName == pureName && x.schemaName == schemaName)
|
extendedDbInfo?.tables?.find(x => x.pureName == pureName && x.schemaName == schemaName)
|
||||||
?.tablePermissionRole == 'read',
|
?.tablePermissionRole == 'read',
|
||||||
isRawMode,
|
isRawMode,
|
||||||
$settingsValue
|
$settingsValue,
|
||||||
|
isProApp()
|
||||||
)
|
)
|
||||||
: null;
|
: null;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user