From 0e211dc91b273f988ef73fa0290f3a39f82d36e8 Mon Sep 17 00:00:00 2001 From: Stela Augustinova Date: Mon, 27 Oct 2025 15:04:04 +0100 Subject: [PATCH] translation-connections,sqlObject,column,filter --- .../web/src/appobj/ConnectionAppObject.svelte | 2 +- packages/web/src/commands/stdCommands.ts | 4 +- .../web/src/datagrid/ColumnManager.svelte | 11 +- .../web/src/datagrid/DataFilterControl.svelte | 87 +++++----- packages/web/src/modals/InputTextModal.svelte | 3 +- packages/web/src/modals/SetFilterModal.svelte | 11 +- .../src/modals/SetFilterModal_Select.svelte | 43 ++--- .../ConnectionAdvancedDriverFields.svelte | 5 +- .../settings/ConnectionDriverFields.svelte | 84 +++++----- .../settings/ConnectionSshTunnelFields.svelte | 19 +-- .../src/settings/ConnectionSslFields.svelte | 13 +- .../web/src/widgets/ConnectionList.svelte | 23 +-- packages/web/src/widgets/SqlObjectList.svelte | 35 ++-- translations/cs.json | 149 +++++++++++++++++- translations/en.json | 149 +++++++++++++++++- translations/sk.json | 149 +++++++++++++++++- 16 files changed, 619 insertions(+), 168 deletions(-) diff --git a/packages/web/src/appobj/ConnectionAppObject.svelte b/packages/web/src/appobj/ConnectionAppObject.svelte index d99ccaf2a..afdaa91e5 100644 --- a/packages/web/src/appobj/ConnectionAppObject.svelte +++ b/packages/web/src/appobj/ConnectionAppObject.svelte @@ -279,7 +279,7 @@ showModal(InputTextModal, { header: _t('connection.createDatabase', { defaultMessage: 'Create database' }), value: 'newdb', - label: _t('connection.databaseName', { defaultMessage: 'Database name' }), + label: _t('connection.database', { defaultMessage: 'Database name' }), onConfirm: name => apiCall('server-connections/create-database', { conid: data._id, diff --git a/packages/web/src/commands/stdCommands.ts b/packages/web/src/commands/stdCommands.ts index f2f3872d6..b912b5846 100644 --- a/packages/web/src/commands/stdCommands.ts +++ b/packages/web/src/commands/stdCommands.ts @@ -161,8 +161,8 @@ registerCommand({ onClick: () => { showModal(InputTextModal, { value: '', - label: 'New connection folder name', - header: 'Create connection folder', + label: _t('connection.createNewFolderName', { defaultMessage: 'New connection folder name' }), + header: _t('connection.createNewFolder', { defaultMessage: 'Create connection folder' }), onConfirm: async folder => { emptyConnectionGroupNames.update(names => { if (!folder) return names; diff --git a/packages/web/src/datagrid/ColumnManager.svelte b/packages/web/src/datagrid/ColumnManager.svelte index fbc024457..573df7ea9 100644 --- a/packages/web/src/datagrid/ColumnManager.svelte +++ b/packages/web/src/datagrid/ColumnManager.svelte @@ -17,6 +17,7 @@ import SelectField from '../forms/SelectField.svelte'; import ColumnEditorModal from '../tableeditor/ColumnEditorModal.svelte'; import { tick } from 'svelte'; + import { _t } from '../translations'; export let managerSize; export let display: GridDisplay; @@ -154,8 +155,8 @@ class="colmode" value={isDynamicStructure ? 'variable' : 'fixed'} options={[ - { label: 'Fixed columns (like SQL)', value: 'fixed' }, - { label: 'Variable columns (like MongoDB)', value: 'variable' }, + { label: _t('column.fixed', {defaultMessage: 'Fixed columns (like SQL)'}), value: 'fixed' }, + { label: _t('column.variable', {defaultMessage: 'Variable columns (like MongoDB)'}) , value: 'variable' }, ]} on:change={e => { dispatchChangeSet({ @@ -175,7 +176,7 @@ {/if} display.setSearchInColumns(value)} data-testid="ColumnManager_searchColumns" @@ -186,8 +187,8 @@ on:click={() => { showModal(InputTextModal, { value: '', - label: 'Column name', - header: 'Add new column', + label: _t('column.name', {defaultMessage: 'Column name'}), + header: _t('column.addNew', {defaultMessage: 'Add new column'}), onConfirm: name => { display.addDynamicColumn(name); tick().then(() => { diff --git a/packages/web/src/datagrid/DataFilterControl.svelte b/packages/web/src/datagrid/DataFilterControl.svelte index 9508de601..7f2a5025a 100644 --- a/packages/web/src/datagrid/DataFilterControl.svelte +++ b/packages/web/src/datagrid/DataFilterControl.svelte @@ -17,6 +17,7 @@ import FontIcon from '../icons/FontIcon.svelte'; import DictionaryLookupModal from '../modals/DictionaryLookupModal.svelte'; import ValueLookupModal from '../modals/ValueLookupModal.svelte'; + import { _t } from '../translations'; export let isReadOnly = false; export let filterBehaviour; @@ -64,43 +65,43 @@ function createMenu() { const res = [ - { onClick: () => setFilter(''), text: 'Clear Filter' }, - { onClick: () => filterMultipleValues(), text: 'Filter multiple values' }, + { onClick: () => setFilter(''), text: _t('filter.clear', { defaultMessage: 'Clear Filter' }) }, + { onClick: () => filterMultipleValues(), text: _t('filter.multipleValues', { defaultMessage: 'Filter multiple values' }) }, ]; if (filterBehaviour.supportEquals) { res.push( - { onClick: () => openFilterWindow('='), text: 'Equals...' }, - { onClick: () => openFilterWindow('<>'), text: 'Does Not Equal...' } + { onClick: () => openFilterWindow('='), text: _t('filter.equals', { defaultMessage: 'Equals...' }) }, + { onClick: () => openFilterWindow('<>'), text: _t('filter.doesNotEqual', { defaultMessage: 'Does Not Equal...' }) } ); } if (filterBehaviour.supportExistsTesting) { res.push( - { onClick: () => setFilter('EXISTS'), text: 'Field exists' }, - { onClick: () => setFilter('NOT EXISTS'), text: 'Field does not exist' } + { onClick: () => setFilter('EXISTS'), text: _t('filter.fieldExists', { defaultMessage: 'Field exists' }) }, + { onClick: () => setFilter('NOT EXISTS'), text: _t('filter.fieldDoesNotExist', { defaultMessage: 'Field does not exist' }) } ); } if (filterBehaviour.supportNotEmptyArrayTesting) { - res.push({ onClick: () => setFilter('NOT EMPTY ARRAY'), text: 'Array is not empty' }); + res.push({ onClick: () => setFilter('NOT EMPTY ARRAY'), text: _t('filter.arrayIsNotEmpty', { defaultMessage: 'Array is not empty' }) }); } if (filterBehaviour.supportEmptyArrayTesting) { - res.push({ onClick: () => setFilter('EMPTY ARRAY'), text: 'Array is empty' }); + res.push({ onClick: () => setFilter('EMPTY ARRAY'), text: _t('filter.arrayIsEmpty', { defaultMessage: 'Array is empty' }) }); } if (filterBehaviour.supportNullTesting) { res.push( - { onClick: () => setFilter('NULL'), text: 'Is Null' }, - { onClick: () => setFilter('NOT NULL'), text: 'Is Not Null' } + { onClick: () => setFilter('NULL'), text: _t('filter.isNull', { defaultMessage: 'Is Null' }) }, + { onClick: () => setFilter('NOT NULL'), text: _t('filter.isNotNull', { defaultMessage: 'Is Not Null' }) } ); } if (filterBehaviour.supportEmpty) { res.push( - { onClick: () => setFilter('EMPTY, NULL'), text: 'Is Empty Or Null' }, - { onClick: () => setFilter('NOT EMPTY NOT NULL'), text: 'Has Not Empty Value' } + { onClick: () => setFilter('EMPTY, NULL'), text: _t('filter.isEmptyOrNull', { defaultMessage: 'Is Empty Or Null' }) }, + { onClick: () => setFilter('NOT EMPTY NOT NULL'), text: _t('filter.hasNotEmptyValue', { defaultMessage: 'Has Not Empty Value' }) } ); } @@ -108,10 +109,10 @@ res.push( { divider: true }, - { onClick: () => openFilterWindow('>'), text: 'Greater Than...' }, - { onClick: () => openFilterWindow('>='), text: 'Greater Than Or Equal To...' }, - { onClick: () => openFilterWindow('<'), text: 'Less Than...' }, - { onClick: () => openFilterWindow('<='), text: 'Less Than Or Equal To...' } + { onClick: () => openFilterWindow('>'), text: _t('filter.greaterThan', { defaultMessage: 'Greater Than...' }) }, + { onClick: () => openFilterWindow('>='), text: _t('filter.greaterThanOrEqualTo', { defaultMessage: 'Greater Than Or Equal To...' }) }, + { onClick: () => openFilterWindow('<'), text: _t('filter.lessThan', { defaultMessage: 'Less Than...' }) }, + { onClick: () => openFilterWindow('<='), text: _t('filter.lessThanOrEqualTo', { defaultMessage: 'Less Than Or Equal To...' }) } ); } @@ -119,26 +120,26 @@ res.push( { divider: true }, - { onClick: () => openFilterWindow('+'), text: 'Contains...' }, - { onClick: () => openFilterWindow('~'), text: 'Does Not Contain...' }, - { onClick: () => openFilterWindow('^'), text: 'Begins With...' }, - { onClick: () => openFilterWindow('!^'), text: 'Does Not Begin With...' }, - { onClick: () => openFilterWindow('$'), text: 'Ends With...' }, - { onClick: () => openFilterWindow('!$'), text: 'Does Not End With...' } + { onClick: () => openFilterWindow('+'), text: _t('filter.contains', { defaultMessage: 'Contains...' }) }, + { onClick: () => openFilterWindow('~'), text: _t('filter.doesNotContain', { defaultMessage: 'Does Not Contain...' }) }, + { onClick: () => openFilterWindow('^'), text: _t('filter.beginsWith', { defaultMessage: 'Begins With...' }) }, + { onClick: () => openFilterWindow('!^'), text: _t('filter.doesNotBeginWith', { defaultMessage: 'Does Not Begin With...' }) }, + { onClick: () => openFilterWindow('$'), text: _t('filter.endsWith', { defaultMessage: 'Ends With...' }) }, + { onClick: () => openFilterWindow('!$'), text: _t('filter.doesNotEndWith', { defaultMessage: 'Does Not End With...' }) } ); } if (filterBehaviour.supportBooleanValues) { res.push( - { onClick: () => setFilter('TRUE'), text: 'Is True' }, - { onClick: () => setFilter('FALSE'), text: 'Is False' } + { onClick: () => setFilter('TRUE'), text: _t('filter.isTrue', { defaultMessage: 'Is True' }) }, + { onClick: () => setFilter('FALSE'), text: _t('filter.isFalse', { defaultMessage: 'Is False' }) } ); } if (filterBehaviour.supportBooleanOrNull) { res.push( - { onClick: () => setFilter('TRUE, NULL'), text: 'Is True or NULL' }, - { onClick: () => setFilter('FALSE, NULL'), text: 'Is False or NULL' } + { onClick: () => setFilter('TRUE, NULL'), text: _t('filter.isTrueOrNull', { defaultMessage: 'Is True or NULL' }) }, + { onClick: () => setFilter('FALSE, NULL'), text: _t('filter.isFalseOrNull', { defaultMessage: 'Is False or NULL' }) } ); } @@ -146,44 +147,44 @@ res.push( { divider: true }, - { onClick: () => setFilter('TOMORROW'), text: 'Tomorrow' }, - { onClick: () => setFilter('TODAY'), text: 'Today' }, - { onClick: () => setFilter('YESTERDAY'), text: 'Yesterday' }, + { onClick: () => setFilter('TOMORROW'), text: _t('filter.tomorrow', { defaultMessage: 'Tomorrow' }) }, + { onClick: () => setFilter('TODAY'), text: _t('filter.today', { defaultMessage: 'Today' }) }, + { onClick: () => setFilter('YESTERDAY'), text: _t('filter.yesterday', { defaultMessage: 'Yesterday' }) }, { divider: true }, - { onClick: () => setFilter('NEXT WEEK'), text: 'Next Week' }, - { onClick: () => setFilter('THIS WEEK'), text: 'This Week' }, - { onClick: () => setFilter('LAST WEEK'), text: 'Last Week' }, + { onClick: () => setFilter('NEXT WEEK'), text: _t('filter.nextWeek', { defaultMessage: 'Next Week' }) }, + { onClick: () => setFilter('THIS WEEK'), text: _t('filter.thisWeek', { defaultMessage: 'This Week' }) }, + { onClick: () => setFilter('LAST WEEK'), text: _t('filter.lastWeek', { defaultMessage: 'Last Week' }) }, { divider: true }, - { onClick: () => setFilter('NEXT MONTH'), text: 'Next Month' }, - { onClick: () => setFilter('THIS MONTH'), text: 'This Month' }, - { onClick: () => setFilter('LAST MONTH'), text: 'Last Month' }, + { onClick: () => setFilter('NEXT MONTH'), text: _t('filter.nextMonth', { defaultMessage: 'Next Month' }) }, + { onClick: () => setFilter('THIS MONTH'), text: _t('filter.thisMonth', { defaultMessage: 'This Month' }) }, + { onClick: () => setFilter('LAST MONTH'), text: _t('filter.lastMonth', { defaultMessage: 'Last Month' }) }, { divider: true }, - { onClick: () => setFilter('NEXT YEAR'), text: 'Next Year' }, - { onClick: () => setFilter('THIS YEAR'), text: 'This Year' }, - { onClick: () => setFilter('LAST YEAR'), text: 'Last Year' } + { onClick: () => setFilter('NEXT YEAR'), text: _t('filter.nextYear', { defaultMessage: 'Next Year' }) }, + { onClick: () => setFilter('THIS YEAR'), text: _t('filter.thisYear', { defaultMessage: 'This Year' }) }, + { onClick: () => setFilter('LAST YEAR'), text: _t('filter.lastYear', { defaultMessage: 'Last Year' }) } ); } if (filterBehaviour.supportDatetimeComparison) { res.push( { divider: true }, - { onClick: () => openFilterWindow('<='), text: 'Before...' }, - { onClick: () => openFilterWindow('>='), text: 'After...' }, - { onClick: () => openFilterWindow('>=;<='), text: 'Between...' } + { onClick: () => openFilterWindow('<='), text: _t('filter.before', { defaultMessage: 'Before...' }) }, + { onClick: () => openFilterWindow('>='), text: _t('filter.after', { defaultMessage: 'After...' }) }, + { onClick: () => openFilterWindow('>=;<='), text: _t('filter.between', { defaultMessage: 'Between...' }) } ); } if (filterBehaviour.supportSqlCondition) { res.push( { divider: true }, - { onClick: () => openFilterWindow('sql'), text: 'SQL condition ...' }, - { onClick: () => openFilterWindow('sqlRight'), text: 'SQL condition - right side ...' } + { onClick: () => openFilterWindow('sql'), text: _t('filter.sqlCondition', { defaultMessage: 'SQL condition ...' }) }, + { onClick: () => openFilterWindow('sqlRight'), text: _t('filter.sqlConditionRight', { defaultMessage: 'SQL condition - right side ...' }) } ); } diff --git a/packages/web/src/modals/InputTextModal.svelte b/packages/web/src/modals/InputTextModal.svelte index 7ce64667e..22dbd1545 100644 --- a/packages/web/src/modals/InputTextModal.svelte +++ b/packages/web/src/modals/InputTextModal.svelte @@ -6,6 +6,7 @@ import FormTextField from '../forms/FormTextField.svelte'; import ModalBase from './ModalBase.svelte'; import { closeCurrentModal } from './modalTools'; + import { _t } from '../translations'; export let header; export let value; @@ -29,7 +30,7 @@ handleSubmit(e.detail)} data-testid="InputTextModal_ok" /> - + diff --git a/packages/web/src/modals/SetFilterModal.svelte b/packages/web/src/modals/SetFilterModal.svelte index 436d734ff..38e224852 100644 --- a/packages/web/src/modals/SetFilterModal.svelte +++ b/packages/web/src/modals/SetFilterModal.svelte @@ -10,6 +10,7 @@ import { closeCurrentModal } from './modalTools'; import FormRadioGroupItem from '../forms/FormRadioGroupItem.svelte'; import FormValues from '../forms/FormValues.svelte'; + import { _t } from '../translations'; export let condition1; export let onFilter; @@ -44,10 +45,10 @@ -
Set filter
+
{_t('filter.setFilter', {defaultMessage: 'Set filter'})}
-
Show rows where
+
{_t('filter.showRowsWhere', {defaultMessage: 'Show rows where'})}
@@ -62,9 +63,9 @@
- + {#if !filterBehaviour.disableOr} - + {/if}
@@ -84,7 +85,7 @@
- +
diff --git a/packages/web/src/modals/SetFilterModal_Select.svelte b/packages/web/src/modals/SetFilterModal_Select.svelte index dd4b54b15..2f0ffee8d 100644 --- a/packages/web/src/modals/SetFilterModal_Select.svelte +++ b/packages/web/src/modals/SetFilterModal_Select.svelte @@ -1,56 +1,57 @@ - - + + {#if advancedFields} diff --git a/packages/web/src/settings/ConnectionDriverFields.svelte b/packages/web/src/settings/ConnectionDriverFields.svelte index 32076ef62..5933239a5 100644 --- a/packages/web/src/settings/ConnectionDriverFields.svelte +++ b/packages/web/src/settings/ConnectionDriverFields.svelte @@ -87,13 +87,13 @@ !driver.isElectronOnly || electron) @@ -109,7 +109,7 @@ {#if $authTypes && driver?.showConnectionField('authType', $values, showConnectionFieldArgs) && driver?.authTypeFirst} {#key $authTypes} {:else} @@ -164,8 +164,8 @@ name="useDatabaseUrl" matchValueToOption={(value, option) => !!option.value == !!value} options={[ - { label: 'Fill database connection details', value: '', default: true }, - { label: 'Use database URL', value: '1' }, + { label: _t('connection.fillDetails', { defaultMessage: 'Fill database connection details' }), value: '', default: true }, + { label: _t('connection.useUrl', { defaultMessage: 'Use database URL' }), value: '1' }, ]} />
@@ -173,7 +173,7 @@ {#if driver?.showConnectionField('databaseUrl', $values, showConnectionFieldArgs)}
- Under docker, localhost and 127.0.0.1 will not work, use dockerhost instead + { _t('connection.dockerWarning', { defaultMessage: 'Under docker, localhost and 127.0.0.1 will not work, use dockerhost instead' }) }
{/if} {/if} @@ -280,7 +280,7 @@
@@ -418,7 +418,7 @@ {#if driver?.showConnectionField('treeKeySeparator', $values, showConnectionFieldArgs)} + {/if} {#if driver}
{#if electron} {:else}
{#if $platformInfo && $platformInfo.sshAuthSock} - SSH Agent found + {_t('connection.sshTunnel.agentFound', {defaultMessage: "SSH Agent found"})} {:else} - SSH Agent not found + {_t('connection.sshTunnel.agentNotFound', {defaultMessage: "SSH Agent not found"})} {/if}
{/if} diff --git a/packages/web/src/settings/ConnectionSslFields.svelte b/packages/web/src/settings/ConnectionSslFields.svelte index 24936f42f..a50928458 100644 --- a/packages/web/src/settings/ConnectionSslFields.svelte +++ b/packages/web/src/settings/ConnectionSslFields.svelte @@ -7,6 +7,7 @@ import getElectron from '../utility/getElectron'; import FormPasswordField from '../forms/FormPasswordField.svelte'; import { openedConnections, openedSingleDatabaseConnections } from '../stores'; + import { _t } from '../translations'; const { values, setFieldValue } = getFormContext(); const electron = getElectron(); @@ -15,21 +16,21 @@ $: isConnected = $openedConnections.includes($values._id) || $openedSingleDatabaseConnections.includes($values._id); - - + + - + diff --git a/packages/web/src/widgets/ConnectionList.svelte b/packages/web/src/widgets/ConnectionList.svelte index 0e9227335..01808473c 100644 --- a/packages/web/src/widgets/ConnectionList.svelte +++ b/packages/web/src/widgets/ConnectionList.svelte @@ -47,6 +47,7 @@ getOpenDetailOnArrowsSettings, } from '../settings/settingsTools'; import DropDownButton from '../buttons/DropDownButton.svelte'; + import { _t } from '../translations'; const connections = useConnectionList(); const serverStatus = useServerStatus(); @@ -58,7 +59,7 @@ let domContainer = null; let domFilter = null; - const RECENT_AND_UNSAVED_LABEL = 'Recent & unsaved'; + const RECENT_AND_UNSAVED_LABEL = _t('connection.recentUnsaved', { defaultMessage: 'Recent & unsaved' }); function extractConnectionParent(data, openedConnections, openedSingleDatabaseConnections) { if (data.parent) { @@ -193,12 +194,12 @@ function createSearchMenu() { const res = []; - res.push({ label: 'Search by:', isBold: true, disabled: true }); - res.push({ label: 'Display name', switchValue: 'displayName' }); - res.push({ label: 'Server', switchValue: 'server' }); - res.push({ label: 'User', switchValue: 'user' }); - res.push({ label: 'Database engine', switchValue: 'engine' }); - res.push({ label: 'Database name', switchValue: 'database' }); + res.push({ label: _t('common.searchBy', { defaultMessage: 'Search by:' }), isBold: true, disabled: true }); + res.push({ label: _t('connection.displayName', { defaultMessage: 'Display name' }), switchValue: 'displayName' }); + res.push({ label: _t('connection.server', { defaultMessage: 'Server' }), switchValue: 'server' }); + res.push({ label: _t('connection.user', { defaultMessage: 'User' }), switchValue: 'user' }); + res.push({ label: _t('connection.engine', { defaultMessage: 'Database engine' }), switchValue: 'engine' }); + res.push({ label: _t('connection.database', { defaultMessage: 'Database name' }), switchValue: 'database' }); return res.map(item => ({ ...item, switchStore: connectionAppObjectSearchSettings, @@ -209,7 +210,7 @@ { @@ -227,16 +228,16 @@ {#if $commandsCustomized['new.connection']?.enabled} runCommand('new.connection')} - title="Add new connection" + title={_t('connection.new.title', { defaultMessage: 'Add new connection' })} data-testid="ConnectionList_buttonNewConnection" > - runCommand('new.connection.folder')} title="Add new connection folder"> + runCommand('new.connection.folder')} title={_t('connection.new.folder.title', { defaultMessage: 'Add new connection folder' })}> {/if} - + diff --git a/packages/web/src/widgets/SqlObjectList.svelte b/packages/web/src/widgets/SqlObjectList.svelte index 96de61bcd..fbafef8a2 100644 --- a/packages/web/src/widgets/SqlObjectList.svelte +++ b/packages/web/src/widgets/SqlObjectList.svelte @@ -56,6 +56,7 @@ import FocusedConnectionInfoWidget from './FocusedConnectionInfoWidget.svelte'; import SubProcedureParamList from '../appobj/SubProcedureParamList.svelte'; import SubProcedureLineList from '../appobj/SubProcedureLineList.svelte'; + import { _t } from '../translations'; export let conid; export let database; @@ -130,20 +131,20 @@ function createSearchMenu() { const res = []; - res.push({ label: 'Search by:', isBold: true, disabled: true }); + res.push({ label: _t('sqlObject.searchBy', { defaultMessage: 'Search by:' }), isBold: true, disabled: true }); if (driver?.databaseEngineTypes?.includes('document')) { - res.push({ label: 'Collection name', switchValue: 'pureName' }); + res.push({ label: _t('sqlObject.collectionName', { defaultMessage: 'Collection name' }), switchValue: 'pureName' }); } if (driver?.databaseEngineTypes?.includes('sql')) { - res.push({ label: 'Table/view/procedure name', switchValue: 'pureName' }); - res.push({ label: 'Schema', switchValue: 'schemaName' }); - res.push({ label: 'Column name', switchValue: 'columnName' }); - res.push({ label: 'Column data type', switchValue: 'columnDataType' }); - res.push({ label: 'Table comment', switchValue: 'tableComment' }); - res.push({ label: 'Column comment', switchValue: 'columnComment' }); - res.push({ label: 'View/procedure/trigger text', switchValue: 'sqlObjectText' }); - res.push({ label: 'Table engine', switchValue: 'tableEngine' }); - res.push({ label: 'Only tables with rows', switchValue: 'tablesWithRows' }); + res.push({ label: _t('sqlObject.tableViewProcedureName', { defaultMessage: 'Table/view/procedure name' }), switchValue: 'pureName' }); + res.push({ label: _t('sqlObject.schemaName', { defaultMessage: 'Schema' }), switchValue: 'schemaName' }); + res.push({ label: _t('sqlObject.columnName', { defaultMessage: 'Column name' }), switchValue: 'columnName' }); + res.push({ label: _t('sqlObject.columnDataType', { defaultMessage: 'Column data type' }), switchValue: 'columnDataType' }); + res.push({ label: _t('sqlObject.tableComment', { defaultMessage: 'Table comment' }), switchValue: 'tableComment' }); + res.push({ label: _t('sqlObject.columnComment', { defaultMessage: 'Column comment' }), switchValue: 'columnComment' }); + res.push({ label: _t('sqlObject.viewProcedureTriggerText', { defaultMessage: 'View/procedure/trigger text' }), switchValue: 'sqlObjectText' }); + res.push({ label: _t('sqlObject.tableEngine', { defaultMessage: 'Table engine' }), switchValue: 'tableEngine' }); + res.push({ label: _t('sqlObject.tablesWithRows', { defaultMessage: 'Only tables with rows' }), switchValue: 'tablesWithRows' }); } return res.map(item => ({ ...item, @@ -175,7 +176,7 @@ - Refresh + {_t('common.refresh', { defaultMessage: 'Refresh' })} {:else if objectList.length == 0 && $status && $status.name != 'pending' && $status.name != 'checkStructure' && $status.name != 'loadStructure' && $objects}
- Refresh + {_t('common.refresh', { defaultMessage: 'Refresh' })} {#if driver?.databaseEngineTypes?.includes('sql')}
- runCommand('new.table')}>New table + runCommand('new.table')}>{_t('database.newTable', { defaultMessage: 'New table' })} {/if} {#if driver?.databaseEngineTypes?.includes('document')}
@@ -211,7 +212,7 @@ {:else} { @@ -259,7 +260,7 @@ data-testid="SqlObjectList_container" > {#if ($status && ($status.name == 'pending' || $status.name == 'checkStructure' || $status.name == 'loadStructure') && $objects) || !$objects} - + {:else}