From d94a67d0af853e964d2ffec6c0e08e6f6e7c7bf7 Mon Sep 17 00:00:00 2001 From: Stela Augustinova Date: Mon, 1 Dec 2025 10:25:43 +0100 Subject: [PATCH] Added translation tags for modals --- .../impexp/ImportExportConfigurator.svelte | 22 ++++---- packages/web/src/modals/ColumnMapModal.svelte | 2 +- .../ExportImportConnectionsModal.svelte | 38 +++++++------- packages/web/src/modals/FavoriteModal.svelte | 27 +++++----- .../modals/FilterMultipleValuesModal.svelte | 17 +++--- .../modals/GenerateSqlFromDataModal.svelte | 14 ++--- packages/web/src/modals/InputTextModal.svelte | 2 +- .../web/src/modals/InsertJoinModal.svelte | 29 ++++++----- .../modals/LicenseLimitMessageModal.svelte | 17 +++--- .../web/src/modals/NewCollectionModal.svelte | 6 +-- .../src/modals/QueryParametersModal.svelte | 9 ++-- packages/web/src/modals/RunScriptModal.svelte | 7 +-- .../web/src/modals/SaveArchiveModal.svelte | 6 +-- packages/web/src/modals/SaveFileModal.svelte | 12 ++--- packages/web/src/modals/SetFilterModal.svelte | 2 +- packages/web/src/modals/ShowSqlModal.svelte | 4 +- .../web/src/modals/SqlGeneratorModal.svelte | 52 +++++++++---------- .../web/src/modals/SwitchDatabaseModal.svelte | 11 ++-- .../web/src/modals/ValueLookupModal.svelte | 2 +- .../src/perspectives/CustomJoinModal.svelte | 29 ++++++----- .../web/src/query/RunnerOutputFiles.svelte | 19 +++---- .../web/src/query/RunnerOutputPane.svelte | 5 +- .../web/src/query/SocketMessageView.svelte | 3 +- .../VirtualForeignKeyEditorModal.svelte | 19 +++---- packages/web/src/tabs/QueryTab.svelte | 3 +- 25 files changed, 185 insertions(+), 172 deletions(-) diff --git a/packages/web/src/impexp/ImportExportConfigurator.svelte b/packages/web/src/impexp/ImportExportConfigurator.svelte index 5e029f50d..f3151e856 100644 --- a/packages/web/src/impexp/ImportExportConfigurator.svelte +++ b/packages/web/src/impexp/ImportExportConfigurator.svelte @@ -307,21 +307,21 @@ }, }); }} - >{columnCount > 0 ? `(${columnCount} columns)` : '(copy from source)'} + >{columnCount > 0 ? _t('importExport.columnsCount', { defaultMessage: '({columnCount} columns)', values: { columnCount } }) : _t('importExport.copyFromSource', { defaultMessage: '(copy from source)' })} {#if progressHolder[row]?.status == 'running' && isRunning} {#if progressHolder[row]?.writtenRowCount} - {progressHolder[row]?.writtenRowCount} rows writtem + {progressHolder[row]?.writtenRowCount} {_t('importExport.rowsWritten', { defaultMessage: 'rows written' })} {:else if progressHolder[row]?.readRowCount} - {progressHolder[row]?.readRowCount} rows read + {progressHolder[row]?.readRowCount} {_t('importExport.rowsRead', { defaultMessage: 'rows read' })} {:else} - Running + {_t('importExport.running', { defaultMessage: 'Running' })} {/if} {:else if progressHolder[row]?.status == 'error'} - Error + {_t('common.error', { defaultMessage: 'Error' })} {#if progressHolder[row]?.errorMessage} {#if progressHolder[row]?.writtenRowCount} - {progressHolder[row]?.writtenRowCount} rows written + {progressHolder[row]?.writtenRowCount} {_t('importExport.rowsWritten', { defaultMessage: 'rows written' })} {:else if progressHolder[row]?.readRowCount} - {progressHolder[row]?.readRowCount} rows written + {progressHolder[row]?.readRowCount} {_t('importExport.rowsWritten', { defaultMessage: 'rows written' })} {:else} - Done + {_t('common.done', { defaultMessage: 'Done' })} {/if} {:else} {#if progressHolder[row]?.writtenRowCount} - {progressHolder[row]?.writtenRowCount} rows writtem + {progressHolder[row]?.writtenRowCount} {_t('importExport.rowsWritten', { defaultMessage: 'rows written' })} {:else if progressHolder[row]?.readRowCount} - {progressHolder[row]?.readRowCount} rows read + {progressHolder[row]?.readRowCount} {_t('importExport.rowsRead', { defaultMessage: 'rows read' })} {:else} - Queued + {_t('importExport.queued', { defaultMessage: 'Queued' })} {/if} {/if} diff --git a/packages/web/src/modals/ColumnMapModal.svelte b/packages/web/src/modals/ColumnMapModal.svelte index 275048ea1..43004b4ca 100644 --- a/packages/web/src/modals/ColumnMapModal.svelte +++ b/packages/web/src/modals/ColumnMapModal.svelte @@ -137,7 +137,7 @@ { value = value.filter((x, i) => i != index); - }}>Remove{_t('common.Remove', { defaultMessage: 'Remove' })} diff --git a/packages/web/src/modals/ExportImportConnectionsModal.svelte b/packages/web/src/modals/ExportImportConnectionsModal.svelte index 5a7e1b0fc..74f81ee64 100644 --- a/packages/web/src/modals/ExportImportConnectionsModal.svelte +++ b/packages/web/src/modals/ExportImportConnectionsModal.svelte @@ -168,7 +168,7 @@
- {mode == 'export' ? 'Export' : 'Import'} connections & settings + {mode == 'export' ? 'Export' : 'Import'} {_t('importExport.connectionsSettings', { defaultMessage: 'connections & settings' })} handleCheckAll(true)}>{_t('common.checkAll', { defaultMessage: 'Check all' })} | @@ -180,16 +180,16 @@ @@ -199,10 +199,10 @@ stickyHeader columns={[ { header: 'ID', fieldName: 'id', sortable: true, filterable: true }, - { header: 'Display name', fieldName: 'displayName', sortable: true, filterable: true }, - { header: 'Engine', fieldName: 'engine', sortable: true, filterable: true }, - { header: 'Server', fieldName: 'server', sortable: true, filterable: true }, - { header: 'User', fieldName: 'user', sortable: true, filterable: true }, + { header: _t('importExport.displayName', { defaultMessage: 'Display name' }), fieldName: 'displayName', sortable: true, filterable: true }, + { header: _t('importExport.engine', { defaultMessage: 'Engine' }), fieldName: 'engine', sortable: true, filterable: true }, + { header: _t('importExport.server', { defaultMessage: 'Server' }), fieldName: 'server', sortable: true, filterable: true }, + { header: _t('importExport.user', { defaultMessage: 'User' }), fieldName: 'user', sortable: true, filterable: true }, ]} clickable rows={connections} @@ -225,8 +225,8 @@ stickyHeader columns={[ { header: 'ID', fieldName: 'id', sortable: true, filterable: true }, - { header: 'Login', fieldName: 'login', sortable: true, filterable: true }, - { header: 'E-mail', fieldName: 'email', sortable: true, filterable: true }, + { header: _t('importExport.login', { defaultMessage: 'Login' }), fieldName: 'login', sortable: true, filterable: true }, + { header: _t('importExport.email', { defaultMessage: 'E-mail' }), fieldName: 'email', sortable: true, filterable: true }, ]} clickable rows={users} @@ -249,7 +249,7 @@ stickyHeader columns={[ { header: 'ID', fieldName: 'id', sortable: true, filterable: true }, - { header: 'Name', fieldName: 'name', sortable: true, filterable: true }, + { header: _t('importExport.name', { defaultMessage: 'Name' }), fieldName: 'name', sortable: true, filterable: true }, ]} clickable rows={roles} @@ -272,8 +272,8 @@ stickyHeader columns={[ { header: 'ID', fieldName: 'id', sortable: true, filterable: true }, - { header: 'Name', fieldName: 'name', sortable: true, filterable: true }, - { header: 'Type', fieldName: 'type', sortable: true, filterable: true }, + { header: _t('importExport.name', { defaultMessage: 'Name' }), fieldName: 'name', sortable: true, filterable: true }, + { header: _t('importExport.type', { defaultMessage: 'Type' }), fieldName: 'type', sortable: true, filterable: true }, ]} clickable rows={authMethods} @@ -296,9 +296,9 @@ stickyHeader columns={[ { header: 'ID', fieldName: 'id', sortable: true, filterable: true }, - { header: 'Group', fieldName: 'group', sortable: true, filterable: true }, - { header: 'Key', fieldName: 'key', sortable: true, filterable: true }, - { header: 'Value', fieldName: 'value', sortable: true, filterable: true }, + { header: _t('importExport.group', { defaultMessage: 'Group' }), fieldName: 'group', sortable: true, filterable: true }, + { header: _t('importExport.key', { defaultMessage: 'Key' }), fieldName: 'key', sortable: true, filterable: true }, + { header: _t('importExport.value', { defaultMessage: 'Value' }), fieldName: 'value', sortable: true, filterable: true }, ]} clickable rows={config} @@ -340,7 +340,7 @@ > {/if} Close{_t('common.close', { defaultMessage: 'Close' })}
diff --git a/packages/web/src/modals/FavoriteModal.svelte b/packages/web/src/modals/FavoriteModal.svelte index a065cd8e2..2d77b22ac 100644 --- a/packages/web/src/modals/FavoriteModal.svelte +++ b/packages/web/src/modals/FavoriteModal.svelte @@ -16,6 +16,7 @@ import FormSubmit from '../forms/FormSubmit.svelte'; import FormButton from '../forms/FormButton.svelte'; import { apiCall } from '../utility/api'; + import { _t } from '../translations'; export let editingData; export let savingTab; @@ -113,28 +114,28 @@ - {editingData ? 'Edit favorite' : 'Share / add to favorites'} + {editingData ? _t('favorite.editFavorite', { defaultMessage: 'Edit favorite' }) : _t('favorite.shareAddToFavorites', { defaultMessage: 'Share / add to favorites' })} - - + + - + {#if !!savingTab && !electron && canWriteFavorite} - + {/if} {#if !values.shareAsLink && canWriteFavorite} - - + + {/if} {#if !!savingTab && !!savedFile} {/if} @@ -142,12 +143,12 @@ {#if !values.shareAsLink && canWriteFavorite} - + {/if} {#if values.shareAsLink || !canWriteFavorite} - + {/if} - + diff --git a/packages/web/src/modals/FilterMultipleValuesModal.svelte b/packages/web/src/modals/FilterMultipleValuesModal.svelte index 96ca5306b..49b87c8ed 100644 --- a/packages/web/src/modals/FilterMultipleValuesModal.svelte +++ b/packages/web/src/modals/FilterMultipleValuesModal.svelte @@ -3,6 +3,7 @@ import FormStyledButton from '../buttons/FormStyledButton.svelte'; import ModalBase from './ModalBase.svelte'; import { closeCurrentModal } from './modalTools'; + import { _t } from '../translations'; export let onFilter; @@ -16,35 +17,35 @@ -
Filter multiple values
+
{_t('filterMultipleValues.filterMultipleValues', { defaultMessage: 'Filter multiple values' })}
- ' + '
- ' + '
- ' + '
- ' + '
- ' + '
- - + +
diff --git a/packages/web/src/modals/GenerateSqlFromDataModal.svelte b/packages/web/src/modals/GenerateSqlFromDataModal.svelte index 4760a3605..447ae6a84 100644 --- a/packages/web/src/modals/GenerateSqlFromDataModal.svelte +++ b/packages/web/src/modals/GenerateSqlFromDataModal.svelte @@ -9,6 +9,7 @@ import newQuery from '../query/newQuery'; import SqlEditor from '../query/SqlEditor.svelte'; import keycodes from '../utility/keycodes'; + import { _t } from '../translations'; import ModalBase from './ModalBase.svelte'; import { closeCurrentModal } from './modalTools'; @@ -77,24 +78,23 @@ - Generate SQL from data + {_t('generateSqlFromData.generateSqlFromData', { defaultMessage: 'Generate SQL from data' })}
-
Choose query type
- +
{_t('generateSqlFromData.chooseQueryType', { defaultMessage: 'Choose query type' })}
({ name }))} bind:selectedIndex={queryTypeIndex} bind:domTable={domQueryType} focusOnCreate selectable - columns={[{ fieldName: 'name', header: 'Query type' }]} + columns={[{ fieldName: 'name', header: _t('generateSqlFromData.queryType', { defaultMessage: 'Query type' }) }]} />
-
Value columns
+
{_t('generateSqlFromData.valueColumns', { defaultMessage: 'Value columns' })}
{ newQuery({ initialData: sqlPreview }); closeCurrentModal(); }} /> - + diff --git a/packages/web/src/modals/InputTextModal.svelte b/packages/web/src/modals/InputTextModal.svelte index 22dbd1545..1045434f7 100644 --- a/packages/web/src/modals/InputTextModal.svelte +++ b/packages/web/src/modals/InputTextModal.svelte @@ -29,7 +29,7 @@ - handleSubmit(e.detail)} data-testid="InputTextModal_ok" /> + handleSubmit(e.detail)} data-testid="InputTextModal_ok" /> diff --git a/packages/web/src/modals/InsertJoinModal.svelte b/packages/web/src/modals/InsertJoinModal.svelte index e1cd01777..b84628778 100644 --- a/packages/web/src/modals/InsertJoinModal.svelte +++ b/packages/web/src/modals/InsertJoinModal.svelte @@ -9,6 +9,8 @@ import ModalBase from './ModalBase.svelte'; import { closeCurrentModal } from './modalTools'; + import { _t } from '../translations'; + import _ from 'lodash'; export let sql; export let onInsert; @@ -104,12 +106,11 @@ - Insert join + {_t('insertJoin.insertJoin', { defaultMessage: 'Insert join' })}
-
Existing table
- +
{_t('insertJoin.existingTable', { defaultMessage: 'Existing table' })}
-
New table
+
{_t('insertJoin.newTable', { defaultMessage: 'New table' })}
-
Join
+
{_t('insertJoin.join', { defaultMessage: 'Join' })}
({ name }))} @@ -150,10 +151,10 @@ bind:domTable={domJoin} selectable on:keydown={joinKeyDown} - columns={[{ fieldName: 'name', header: 'Join type' }]} + columns={[{ fieldName: 'name', header: _t('insertJoin.joinType', { defaultMessage: 'Join type' }) }]} /> -
Alias
+
{_t('insertJoin.alias', { defaultMessage: 'Alias' })}
{ @@ -171,13 +172,13 @@ { closeCurrentModal(); onInsert(sqlPreview); }} /> - + diff --git a/packages/web/src/modals/LicenseLimitMessageModal.svelte b/packages/web/src/modals/LicenseLimitMessageModal.svelte index ca59a0c54..69011b324 100644 --- a/packages/web/src/modals/LicenseLimitMessageModal.svelte +++ b/packages/web/src/modals/LicenseLimitMessageModal.svelte @@ -5,6 +5,7 @@ import FontIcon from '../icons/FontIcon.svelte'; import { isProApp } from '../utility/proTools'; import { openWebLink } from '../utility/simpleTools'; + import { _t } from '../translations'; import ModalBase from './ModalBase.svelte'; import { closeCurrentModal } from './modalTools'; @@ -15,7 +16,7 @@ -
License limit error
+
{_t('licenseLimit.licenseLimitError', { defaultMessage: 'License limit error' })}
@@ -23,15 +24,15 @@

- Cloud operation ended with error:
+ {_t('licenseLimit.cloudOperationEndedWithError', { defaultMessage: 'Cloud operation ended with error:' })}
{message}

- This is a limitation of the free version of DbGate. To continue using cloud operations, please {#if !isProApp()}download - and{/if} purchase DbGate Premium. + {_t('licenseLimit.limitationMessage', { defaultMessage: 'This is a limitation of the free version of DbGate. To continue using cloud operations, please' })} {#if !isProApp()} {_t('licenseLimit.download', { defaultMessage: 'download and' })} + {/if} {_t('licenseLimit.purchase', { defaultMessage: 'purchase DbGate Premium.' })}

-

Free version limit:

+

{_t('licenseLimit.freeVersionLimit', { defaultMessage: 'Free version limit:' })}

    {#each licenseLimits || [] as limit}
  • {limit}
  • @@ -41,16 +42,16 @@
- + {#if !isProApp()} openWebLink('https://www.dbgate.io/download/')} skipWidth /> {/if} openWebLink('https://www.dbgate.io/purchase/premium/')} skipWidth /> diff --git a/packages/web/src/modals/NewCollectionModal.svelte b/packages/web/src/modals/NewCollectionModal.svelte index 16f1c9028..3c3fcfd1f 100644 --- a/packages/web/src/modals/NewCollectionModal.svelte +++ b/packages/web/src/modals/NewCollectionModal.svelte @@ -30,9 +30,9 @@ const { errorMessage } = resp || {}; if (errorMessage) { - showModal(ErrorMessageModal, { title: 'Error when executing operation', message: errorMessage }); + showModal(ErrorMessageModal, { title: _t('error.executingOperation', { defaultMessage: 'Error when executing operation' }), message: errorMessage }); } else { - showSnackbarSuccess('Saved to database'); + showSnackbarSuccess(_t('common.savedToDatabase', { defaultMessage: 'Saved to database' })); apiCall('database-connections/sync-model', dbid); closeCurrentModal(); } @@ -51,7 +51,7 @@ - handleSubmit(e.detail)} disabled={isSaving} /> + handleSubmit(e.detail)} disabled={isSaving} /> diff --git a/packages/web/src/modals/QueryParametersModal.svelte b/packages/web/src/modals/QueryParametersModal.svelte index 53447b493..c028d1d2d 100644 --- a/packages/web/src/modals/QueryParametersModal.svelte +++ b/packages/web/src/modals/QueryParametersModal.svelte @@ -5,6 +5,7 @@ import FormSubmit from '../forms/FormSubmit.svelte'; import FormTextField from '../forms/FormTextField.svelte'; import { apiCall } from '../utility/api'; + import { _t } from '../translations'; import getElectron from '../utility/getElectron'; import ModalBase from './ModalBase.svelte'; @@ -26,7 +27,7 @@ - Edit query parameters + {_t('queryParameters.editQueryParameters', { defaultMessage: 'Edit query parameters' })}
{#each parameterNames as parameterName, index} @@ -34,11 +35,11 @@ {/each}
-
String values must be 'quoted'. You can use valid SQL expressions.
+
{_t('queryParameters.stringValuesMustBeQuoted', { defaultMessage: "String values must be 'quoted'. You can use valid SQL expressions." })}
- - + +
diff --git a/packages/web/src/modals/RunScriptModal.svelte b/packages/web/src/modals/RunScriptModal.svelte index 6ea9b7e14..2a2bd5482 100644 --- a/packages/web/src/modals/RunScriptModal.svelte +++ b/packages/web/src/modals/RunScriptModal.svelte @@ -10,6 +10,7 @@ import { showSnackbarError } from '../utility/snackbar'; import ModalBase from './ModalBase.svelte'; import { closeCurrentModal } from './modalTools'; + import { _t } from '../translations'; export let script; export let header; @@ -77,14 +78,14 @@ {#if isRunning} - + {:else} - + {/if} {#if onOpenResult && !isRunning} { closeCurrentModal(); onOpenResult(); diff --git a/packages/web/src/modals/SaveArchiveModal.svelte b/packages/web/src/modals/SaveArchiveModal.svelte index 4288a9b6a..bcc54afc2 100644 --- a/packages/web/src/modals/SaveArchiveModal.svelte +++ b/packages/web/src/modals/SaveArchiveModal.svelte @@ -24,10 +24,10 @@ - Save to archive + {_t('archive.saveToArchive', { defaultMessage: 'Save to archive' })} - - + + diff --git a/packages/web/src/modals/SaveFileModal.svelte b/packages/web/src/modals/SaveFileModal.svelte index 6dcf13c4b..b65124f79 100644 --- a/packages/web/src/modals/SaveFileModal.svelte +++ b/packages/web/src/modals/SaveFileModal.svelte @@ -125,7 +125,7 @@ {#if $cloudSigninTokenHolder && !$values['saveToTeamFolder']} {/if} {#if $configValue?.storageDatabase} - + {/if} @@ -148,12 +148,12 @@ {#if electron} { const file = await electron.showSaveDialog({ filters: [ - { name: `${fileExtension.toUpperCase()} files`, extensions: [fileExtension] }, - { name: `All files`, extensions: ['*'] }, + { name: _t('common.fileType', { defaultMessage: '{extension} files', values: {extension: fileExtension.toUpperCase()} }), extensions: [fileExtension] }, + { name: _t('common.allFiles', { defaultMessage: 'All files' }), extensions: ['*'] }, ], defaultPath: filePath || `${name}.${fileExtension}`, properties: ['showOverwriteConfirmation'], diff --git a/packages/web/src/modals/SetFilterModal.svelte b/packages/web/src/modals/SetFilterModal.svelte index 38e224852..28cb43d61 100644 --- a/packages/web/src/modals/SetFilterModal.svelte +++ b/packages/web/src/modals/SetFilterModal.svelte @@ -84,7 +84,7 @@
- +
diff --git a/packages/web/src/modals/ShowSqlModal.svelte b/packages/web/src/modals/ShowSqlModal.svelte index 78fd71dfd..c457326b1 100644 --- a/packages/web/src/modals/ShowSqlModal.svelte +++ b/packages/web/src/modals/ShowSqlModal.svelte @@ -14,7 +14,7 @@ -
SQL Script
+
{_t('script.sqlScript', { defaultMessage: 'SQL Script' })}
@@ -29,7 +29,7 @@ /> { newQuery({ initialData: sql, diff --git a/packages/web/src/modals/SqlGeneratorModal.svelte b/packages/web/src/modals/SqlGeneratorModal.svelte index 4305a1b79..40249ca8a 100644 --- a/packages/web/src/modals/SqlGeneratorModal.svelte +++ b/packages/web/src/modals/SqlGeneratorModal.svelte @@ -32,6 +32,7 @@ import LoadingInfo from '../elements/LoadingInfo.svelte'; import { getObjectTypeFieldLabel } from '../utility/common'; import { apiCall } from '../utility/api'; + import { _t } from '../translations'; export let conid; export let database; @@ -113,7 +114,7 @@ function editSql() { openNewTab( { - title: 'Query #', + title: _t('query.queryNumber', { defaultMessage: 'Query #' }), icon: 'img sql-file', tabComponent: 'QueryTab', focused: true, @@ -133,7 +134,7 @@ - SQL Generator + {_t('sqlGenerator.sqlGenerator', { defaultMessage: 'SQL Generator' })} {database} @@ -146,9 +147,9 @@
- Choose objects + {_t('sqlGenerator.chooseObjects', { defaultMessage: 'Choose objects' })} - + @@ -174,54 +175,53 @@ {:else}
{#if truncated} - + {/if}
{#if busy} - + {/if} {/if}
- Generator settings + {_t('sqlGenerator.generatorSettings', { defaultMessage: 'Generator settings' })} -
Tables
- +
{_t('sqlGenerator.tables', { defaultMessage: 'Tables' })}
+ {#if values.dropTables}
- +
{/if} - + - - - - + + + + - + {#if values.insert}
- - - + + +
{/if} - - + {#each ['View', 'Matview', 'Procedure', 'Function', 'Trigger', 'SchedulerEvent'] as objtype}
{getObjectTypeFieldLabel(objtype + 's')}
- - + + {#if values[`drop${objtype}s`]}
- +
{/if} {/each} @@ -241,8 +241,8 @@
- Edit SQL - Close + {_t('sqlGenerator.editSql', { defaultMessage: 'Edit SQL' })} + {_t('common.close', { defaultMessage: 'Close' })}
diff --git a/packages/web/src/modals/SwitchDatabaseModal.svelte b/packages/web/src/modals/SwitchDatabaseModal.svelte index 33662e717..3f40ff4d1 100644 --- a/packages/web/src/modals/SwitchDatabaseModal.svelte +++ b/packages/web/src/modals/SwitchDatabaseModal.svelte @@ -19,6 +19,7 @@ import FormConnectionSelect from '../impexp/FormConnectionSelect.svelte'; import FormDatabaseSelect from '../impexp/FormDatabaseSelect.svelte'; import { changeTab } from '../utility/common'; + import { _t } from '../translations'; export let editingData; export let callingTab; @@ -46,15 +47,15 @@ - Switch database + {_t('switchDatabase.switchDatabase', { defaultMessage: 'Switch database' })} - - + + - - + + diff --git a/packages/web/src/modals/ValueLookupModal.svelte b/packages/web/src/modals/ValueLookupModal.svelte index 7b3701ac6..602c730f0 100644 --- a/packages/web/src/modals/ValueLookupModal.svelte +++ b/packages/web/src/modals/ValueLookupModal.svelte @@ -141,7 +141,7 @@ {#if multiselect} { closeCurrentModal(); onConfirm(checkedKeys); diff --git a/packages/web/src/perspectives/CustomJoinModal.svelte b/packages/web/src/perspectives/CustomJoinModal.svelte index c8009acca..7f4c8d490 100644 --- a/packages/web/src/perspectives/CustomJoinModal.svelte +++ b/packages/web/src/perspectives/CustomJoinModal.svelte @@ -20,6 +20,7 @@ import type { ChangePerspectiveConfigFunc, PerspectiveConfig, PerspectiveCustomJoinConfig } from 'dbgate-datalib'; import uuidv1 from 'uuid/v1'; import TextField from '../forms/TextField.svelte'; + import { _t } from '../translations'; export let conid; export let database; @@ -90,7 +91,7 @@ $: connections = useConnectionList(); $: connectionOptions = [ - { value: null, label: 'The same as root' }, + { value: null, label: _t('customJoin.theSameAsRoot', { defaultMessage: 'The same as root' }) }, ..._.sortBy( ($connections || []) // .filter(x => !x.unsaved) @@ -107,7 +108,7 @@ $: databases = useDatabaseList({ conid: conidOverride || conid }); $: databaseOptions = [ - { value: null, label: 'The same as root' }, + { value: null, label: _t('customJoin.theSameAsRoot', { defaultMessage: 'The same as root' }) }, ..._.sortBy( ($databases || []).map(db => ({ value: db.name, @@ -147,11 +148,11 @@ - Define custom join + {_t('customJoin.defineCustomJoin', { defaultMessage: 'Define custom join' })}
-
Join name
+
{_t('customJoin.joinName', { defaultMessage: 'Join name' })}
-
Base table
+
{_t('customJoin.baseTable', { defaultMessage: 'Base table' })}
-
Connection
+
{_t('customJoin.connection', { defaultMessage: 'Connection' })}
-
Database
+
{_t('customJoin.database', { defaultMessage: 'Database' })}
-->
-
Referenced table
+
{_t('customJoin.referencedTable', { defaultMessage: 'Referenced table' })}
- Base column - {fromTableInfo?.pureName} + {_t('customJoin.baseColumn', { defaultMessage: 'Base column' })} - {fromTableInfo?.pureName}
- Ref column - {refTableName || '(table not set)'} + {_t('customJoin.refColumn', { defaultMessage: 'Ref column' })} - {refTableName || _t('customJoin.tableNotSet', { defaultMessage: '(table not set)' })}
@@ -286,7 +287,7 @@
{ const x = [...columns]; x.splice(index, 1); @@ -299,7 +300,7 @@ { columns = [ ...columns, @@ -314,7 +315,7 @@ { setConfig(cfg => { const newNode = createPerspectiveNodeConfig({ pureName: refTableName, schemaName: refSchemaName }); @@ -361,7 +362,7 @@ }} /> - + diff --git a/packages/web/src/query/RunnerOutputFiles.svelte b/packages/web/src/query/RunnerOutputFiles.svelte index a5979c11b..2d8f36c96 100644 --- a/packages/web/src/query/RunnerOutputFiles.svelte +++ b/packages/web/src/query/RunnerOutputFiles.svelte @@ -8,6 +8,7 @@ import { downloadFromApi } from '../utility/exportFileTools'; import useEffect from '../utility/useEffect'; import Link from '../elements/Link.svelte'; + import { _t } from '../translations'; export let runnerId; export let executeNumber; @@ -40,28 +41,28 @@ {#if !files || files.length == 0} - + {:else}
formatFileSize(row.size) }, + { fieldName: 'name', header: _t('query.Name', { defaultMessage: 'Name' }) }, + { fieldName: 'size', header: _t('query.Size', { defaultMessage: 'Size' }), formatter: row => formatFileSize(row.size) }, !electron && { fieldName: 'download', - header: 'Download', + header: _t('query.Download', { defaultMessage: 'Download' }), slot: 0, }, electron && { fieldName: 'copy', - header: 'Copy', + header: _t('query.Copy', { defaultMessage: 'Copy' }), slot: 1, }, electron && { fieldName: 'show', - header: 'Show', + header: _t('query.Show', { defaultMessage: 'Show' }), slot: 2, }, ]} @@ -72,7 +73,7 @@ downloadFromApi(`runners/data/${runnerId}/${row.name}`, row.name); }} > - download + {_t('query.download', { defaultMessage: 'download' })} @@ -86,7 +87,7 @@ } }} > - save + {_t('query.save', { defaultMessage: 'save' })} @@ -96,7 +97,7 @@ electron.showItemInFolder(row.path); }} > - show + {_t('query.show', { defaultMessage: 'show' })} diff --git a/packages/web/src/query/RunnerOutputPane.svelte b/packages/web/src/query/RunnerOutputPane.svelte index 017f0c122..e3910be44 100644 --- a/packages/web/src/query/RunnerOutputPane.svelte +++ b/packages/web/src/query/RunnerOutputPane.svelte @@ -3,6 +3,7 @@ import WidgetTitle from '../widgets/WidgetTitle.svelte'; import RunnerOutputFiles from './RunnerOutputFiles.svelte'; import SocketMessageView from './SocketMessageView.svelte'; + import { _t } from '../translations'; export let runnerId; export let executeNumber; @@ -10,7 +11,7 @@
- Messages + {_t('query.Messages', { defaultMessage: 'Messages' })}
- Output files + {_t('query.OutputFiles', { defaultMessage: 'Output files' })}
diff --git a/packages/web/src/query/SocketMessageView.svelte b/packages/web/src/query/SocketMessageView.svelte index 4bc6f7db5..694f9b07d 100644 --- a/packages/web/src/query/SocketMessageView.svelte +++ b/packages/web/src/query/SocketMessageView.svelte @@ -3,6 +3,7 @@ import ErrorInfo from '../elements/ErrorInfo.svelte'; import { apiOff, apiOn } from '../utility/api'; import createRef from '../utility/createRef'; + import { _t } from '../translations'; import useEffect from '../utility/useEffect'; @@ -75,7 +76,7 @@ {#if showNoMessagesAlert && (!displayedMessages || displayedMessages.length == 0)} - + {:else} - Virtual foreign key + {_t('virtualForeignKey.virtualForeignKey', { defaultMessage: 'Virtual foreign key' })}
-
Referenced table
+
{_t('virtualForeignKey.referencedTable', { defaultMessage: 'Referenced table' })}
- Base column - {$tableInfo?.pureName} + {_t('virtualForeignKey.baseColumn', { defaultMessage: 'Base column' })} - {$tableInfo?.pureName}
- Ref column - {refTableName || '(table not set)'} + {_t('virtualForeignKey.refColumn', { defaultMessage: 'Ref column' })} - {refTableName || _t('virtualForeignKey.tableNotSet', { defaultMessage: '(table not set)' })}
@@ -152,7 +153,7 @@
{ const x = [...columns]; x.splice(index, 1); @@ -165,14 +166,14 @@ { columns = [...columns, {}]; }} />
-
Target application
+
{_t('virtualForeignKey.targetApplication', { defaultMessage: 'Target application' })}
@@ -181,7 +182,7 @@ { await apiCall('apps/save-virtual-reference', { @@ -196,7 +197,7 @@ }} /> - + diff --git a/packages/web/src/tabs/QueryTab.svelte b/packages/web/src/tabs/QueryTab.svelte index 1ee85dce6..e5a02bf96 100644 --- a/packages/web/src/tabs/QueryTab.svelte +++ b/packages/web/src/tabs/QueryTab.svelte @@ -169,6 +169,7 @@ import hasPermission from '../utility/hasPermission'; import QueryAiAssistant from '../ai/QueryAiAssistant.svelte'; import { getCurrentSettings } from '../stores'; + import { Messages } from 'openai/resources/chat/completions'; export let tabid; export let conid; @@ -765,7 +766,7 @@