From f047ec787aa8161d56a382310cad114bea7ce8a3 Mon Sep 17 00:00:00 2001 From: "SPRINX0\\prochazka" Date: Tue, 18 Nov 2025 12:29:48 +0100 Subject: [PATCH] translated electron menu --- app/src/electron.js | 17 ++++++++++--- packages/web/src/appobj/AppObjectList.svelte | 10 ++++---- .../src/appobj/DatabaseObjectAppObject.svelte | 6 ++--- .../src/buttons/ToolStripCommandButton.svelte | 6 ++--- .../src/buttons/ToolStripExportButton.svelte | 4 +-- .../web/src/commands/CommandPalette.svelte | 4 +-- packages/web/src/commands/registerCommand.ts | 16 ++++++------ packages/web/src/datagrid/DataGridCore.svelte | 8 +++--- packages/web/src/elements/TableControl.svelte | 4 +-- .../web/src/forms/FormTextFieldRaw.svelte | 4 +-- .../settings/FormDefaultActionField.svelte | 4 +-- packages/web/src/translations.ts | 25 ++++++++++++++++--- packages/web/src/utility/contextMenu.ts | 4 +-- 13 files changed, 70 insertions(+), 42 deletions(-) diff --git a/app/src/electron.js b/app/src/electron.js index e798be665..4e0713db1 100644 --- a/app/src/electron.js +++ b/app/src/electron.js @@ -31,8 +31,14 @@ let mainModule; let appUpdateStatus = ''; let settingsJson = {}; -function _t(key, { defaultMessage } = {}) { - return global.TRANSLATION_DATA?.[key] || defaultMessage; +function getTranslated(key) { + if (typeof key === 'string' && global.TRANSLATION_DATA?.[key]) { + return global.TRANSLATION_DATA?.[key]; + } + if (typeof key?._transKey === 'string') { + return global.TRANSLATION_DATA?.[key._transKey] ?? key._transOptions?.defaultMessage; + } + return key; } process.on('uncaughtException', function (error) { @@ -96,9 +102,14 @@ function commandItem(item, disableAll = false) { if (item.skipInApp) { return { skip: true }; } + if (!command) { + return { skip: true }; + } return { id, - label: command ? _t(command.menuName) || _t(command.toolbarName) || command.name : id, + label: command + ? getTranslated(command.menuName) || getTranslated(command.toolbarName) || getTranslated(command.name) + : id, accelerator: formatKeyText(command ? command.keyText : undefined), enabled: command ? command.enabled && (!disableAll || command.systemCommand) : false, click() { diff --git a/packages/web/src/appobj/AppObjectList.svelte b/packages/web/src/appobj/AppObjectList.svelte index b1a7c8393..7846d5f48 100644 --- a/packages/web/src/appobj/AppObjectList.svelte +++ b/packages/web/src/appobj/AppObjectList.svelte @@ -8,7 +8,7 @@ import Link from '../elements/Link.svelte'; import { focusedConnectionOrDatabase } from '../stores'; import { tick } from 'svelte'; - import { _val } from '../translations'; + import { _tval } from '../translations'; export let list; export let module; @@ -41,12 +41,12 @@ $: listTranslated = (list || []).map(data => ({ ...data, - group: data?.group && _val(data.group), - title: data?.title && _val(data.title), - description: data?.description && _val(data.description), + group: data?.group && _tval(data.group), + title: data?.title && _tval(data.title), + description: data?.description && _tval(data.description), args: (data?.args || []).map(x => ({ ...x, - label: x?.label && _val(x.label), + label: x?.label && _tval(x.label), })), })); diff --git a/packages/web/src/appobj/DatabaseObjectAppObject.svelte b/packages/web/src/appobj/DatabaseObjectAppObject.svelte index c7ea24918..21cd3efc2 100644 --- a/packages/web/src/appobj/DatabaseObjectAppObject.svelte +++ b/packages/web/src/appobj/DatabaseObjectAppObject.svelte @@ -1,6 +1,6 @@