mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-05-03 08:13:57 +00:00
perspective designer - checking columns
This commit is contained in:
@@ -100,10 +100,15 @@
|
|||||||
>
|
>
|
||||||
{#if settings?.allowColumnOperations}
|
{#if settings?.allowColumnOperations}
|
||||||
<CheckboxField
|
<CheckboxField
|
||||||
checked={!!(designer.columns || []).find(
|
checked={settings?.isColumnChecked
|
||||||
|
? settings?.isColumnChecked(designerId, column.columnName)
|
||||||
|
: !!(designer.columns || []).find(
|
||||||
x => x.designerId == designerId && x.columnName == column.columnName && x.isOutput
|
x => x.designerId == designerId && x.columnName == column.columnName && x.isOutput
|
||||||
)}
|
)}
|
||||||
on:change={e => {
|
on:change={e => {
|
||||||
|
if (settings?.setColumnChecked) {
|
||||||
|
settings?.setColumnChecked(designerId, column.columnName, e.target.checked);
|
||||||
|
} else {
|
||||||
if (e.target.checked) {
|
if (e.target.checked) {
|
||||||
onChangeColumn(
|
onChangeColumn(
|
||||||
{
|
{
|
||||||
@@ -121,6 +126,7 @@
|
|||||||
col => ({ ...col, isOutput: false })
|
col => ({ ...col, isOutput: false })
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
{/if}
|
{/if}
|
||||||
|
|||||||
@@ -90,6 +90,24 @@
|
|||||||
return [{ text: 'Remove', onClick: () => onRemoveReference(reference) }];
|
return [{ text: 'Remove', onClick: () => onRemoveReference(reference) }];
|
||||||
},
|
},
|
||||||
createReferenceText: reference => (reference.isAutoGenerated ? 'FK' : 'Custom'),
|
createReferenceText: reference => (reference.isAutoGenerated ? 'FK' : 'Custom'),
|
||||||
|
isColumnChecked: (designerId, columnName) => {
|
||||||
|
return config.nodes.find(x => x.designerId == designerId)?.checkedColumns?.includes(columnName);
|
||||||
|
},
|
||||||
|
setColumnChecked: (designerId, columnName, value) => {
|
||||||
|
onChange(cfg => ({
|
||||||
|
...cfg,
|
||||||
|
nodes: cfg.nodes.map(node =>
|
||||||
|
node.designerId == designerId
|
||||||
|
? {
|
||||||
|
...node,
|
||||||
|
checkedColumns: value
|
||||||
|
? [...(node.checkedColumns || []), columnName]
|
||||||
|
: (node.checkedColumns || []).filter(x => x != columnName),
|
||||||
|
}
|
||||||
|
: node
|
||||||
|
),
|
||||||
|
}));
|
||||||
|
},
|
||||||
}}
|
}}
|
||||||
referenceComponent={QueryDesignerReference}
|
referenceComponent={QueryDesignerReference}
|
||||||
value={createDesignerModel(config, dbInfos)}
|
value={createDesignerModel(config, dbInfos)}
|
||||||
|
|||||||
Reference in New Issue
Block a user