From 2ab9d2f450c510e49bb5a085ef9fcd1a4307e302 Mon Sep 17 00:00:00 2001 From: sergeyteleshev Date: Mon, 12 May 2025 16:21:21 +0200 Subject: [PATCH] dbeaver/pro#5405 adds autosave for scripts (#3427) * dbeaver/pro#5405 adds autosave for scripts * fixes russian locale --------- Co-authored-by: Evgenia <139753579+EvgeniaBzzz@users.noreply.github.com> --- .../src/SqlEditorSettingsService.ts | 25 +++++++++++-------- .../plugin-sql-editor/src/locales/en.ts | 8 ++++-- .../plugin-sql-editor/src/locales/fr.ts | 8 ++++-- .../plugin-sql-editor/src/locales/it.ts | 8 ++++-- .../plugin-sql-editor/src/locales/ru.ts | 8 ++++-- .../plugin-sql-editor/src/locales/zh.ts | 8 ++++-- 6 files changed, 44 insertions(+), 21 deletions(-) diff --git a/webapp/packages/plugin-sql-editor/src/SqlEditorSettingsService.ts b/webapp/packages/plugin-sql-editor/src/SqlEditorSettingsService.ts index 101d78af4d..0c97ade3ea 100644 --- a/webapp/packages/plugin-sql-editor/src/SqlEditorSettingsService.ts +++ b/webapp/packages/plugin-sql-editor/src/SqlEditorSettingsService.ts @@ -6,7 +6,7 @@ * you may not use this file except in compliance with the License. */ import { Dependency, injectable } from '@cloudbeaver/core-di'; -import { ServerSettingsManagerService } from '@cloudbeaver/core-root'; +import { FEATURE_GIT_ID, ServerConfigResource, ServerSettingsManagerService } from '@cloudbeaver/core-root'; import { createSettingsAliasResolver, ESettingsValueType, @@ -90,6 +90,7 @@ export class SqlEditorSettingsService extends Dependency { private readonly settingsManagerService: SettingsManagerService, private readonly settingsResolverService: SettingsResolverService, private readonly serverSettingsManagerService: ServerSettingsManagerService, + private readonly serverConfigResource: ServerConfigResource, ) { super(); this.settings = this.settingsProviderService.createSettings(defaultSettings); @@ -141,16 +142,18 @@ export class SqlEditorSettingsService extends Dependency { name: 'plugin_sql_editor_settings_import_max_size', description: 'plugin_sql_editor_settings_import_max_size_description', }, - // { - // group: SQL_EDITOR_SETTINGS_GROUP, - // key: 'plugin.sql-editor.autoSave', - // access: { - // scope: ['client'], - // }, - // type: ESettingsValueType.Checkbox, - // name: 'plugin_sql_editor_settings_auto_save', - // description: 'plugin_sql_editor_settings_auto_save_description', - // }, + { + group: SQL_EDITOR_SETTINGS_GROUP, + key: 'plugin.sql-editor.autoSave', + access: { + scope: ['client', 'server'], + }, + type: ESettingsValueType.Checkbox, + name: 'plugin_sql_editor_settings_auto_save', + description: this.serverConfigResource.isFeatureEnabled(FEATURE_GIT_ID, true) + ? 'plugin_sql_editor_settings_auto_save_description_git_integration' + : 'plugin_sql_editor_settings_auto_save_description', + }, ]; if (!this.serverSettingsManagerService.providedSettings.has('sql.proposals.insert.table.alias')) { diff --git a/webapp/packages/plugin-sql-editor/src/locales/en.ts b/webapp/packages/plugin-sql-editor/src/locales/en.ts index b248e39546..033a311a19 100644 --- a/webapp/packages/plugin-sql-editor/src/locales/en.ts +++ b/webapp/packages/plugin-sql-editor/src/locales/en.ts @@ -43,6 +43,10 @@ export default [ ['plugin_sql_editor_settings_disable_description', 'Disable SQL editor for all users'], ['plugin_sql_editor_settings_import_max_size', 'Import limit (KB)'], ['plugin_sql_editor_settings_import_max_size_description', 'Maximum file size that can be imported in KB'], - ['plugin_sql_editor_settings_auto_save', 'Auto save'], - ['plugin_sql_editor_settings_auto_save_description', 'Automatically save the editor content'], + ['plugin_sql_editor_settings_auto_save', 'Autosave script files'], + ['plugin_sql_editor_settings_auto_save_description', 'Automatically save the script files'], + [ + 'plugin_sql_editor_settings_auto_save_description_git_integration', + 'Automatically save the script files. This feature is only available when Git integration is turned off', + ], ]; diff --git a/webapp/packages/plugin-sql-editor/src/locales/fr.ts b/webapp/packages/plugin-sql-editor/src/locales/fr.ts index fa6d29bcff..58e3066c4e 100644 --- a/webapp/packages/plugin-sql-editor/src/locales/fr.ts +++ b/webapp/packages/plugin-sql-editor/src/locales/fr.ts @@ -44,6 +44,10 @@ export default [ ['plugin_sql_editor_settings_disable_description', 'Disable SQL editor for all users'], ['plugin_sql_editor_settings_import_max_size', 'Import limit (KB)'], ['plugin_sql_editor_settings_import_max_size_description', 'Maximum file size that can be imported in KB'], - ['plugin_sql_editor_settings_auto_save', 'Auto save'], - ['plugin_sql_editor_settings_auto_save_description', 'Automatically save the editor content'], + ['plugin_sql_editor_settings_auto_save', 'Autosave script files'], + ['plugin_sql_editor_settings_auto_save_description', 'Automatically save the script files'], + [ + 'plugin_sql_editor_settings_auto_save_description_git_integration', + 'Automatically save the script files. This feature is only available when Git integration is turned off', + ], ]; diff --git a/webapp/packages/plugin-sql-editor/src/locales/it.ts b/webapp/packages/plugin-sql-editor/src/locales/it.ts index 81610e1c73..58c6e65284 100644 --- a/webapp/packages/plugin-sql-editor/src/locales/it.ts +++ b/webapp/packages/plugin-sql-editor/src/locales/it.ts @@ -36,6 +36,10 @@ export default [ ['plugin_sql_editor_settings_disable_description', 'Disable SQL editor for all users'], ['plugin_sql_editor_settings_import_max_size', 'Import limit (KB)'], ['plugin_sql_editor_settings_import_max_size_description', 'Maximum file size that can be imported in KB'], - ['plugin_sql_editor_settings_auto_save', 'Auto save'], - ['plugin_sql_editor_settings_auto_save_description', 'Automatically save the editor content'], + ['plugin_sql_editor_settings_auto_save', 'Autosave script files'], + ['plugin_sql_editor_settings_auto_save_description', 'Automatically save the script files'], + [ + 'plugin_sql_editor_settings_auto_save_description_git_integration', + 'Automatically save the script files. This feature is only available when Git integration is turned off', + ], ]; diff --git a/webapp/packages/plugin-sql-editor/src/locales/ru.ts b/webapp/packages/plugin-sql-editor/src/locales/ru.ts index 714a5e4832..d2f5118f31 100644 --- a/webapp/packages/plugin-sql-editor/src/locales/ru.ts +++ b/webapp/packages/plugin-sql-editor/src/locales/ru.ts @@ -40,6 +40,10 @@ export default [ ['plugin_sql_editor_settings_disable_description', 'Отключить SQL редактор для всех пользователей'], ['plugin_sql_editor_settings_import_max_size', 'Лимит импорта (КБ)'], ['plugin_sql_editor_settings_import_max_size_description', 'Максимальный размер файла, который можно импортировать в КБ'], - ['plugin_sql_editor_settings_auto_save', 'Автосохранение'], - ['plugin_sql_editor_settings_auto_save_description', 'Автоматически сохранять содержимое редактора'], + ['plugin_sql_editor_settings_auto_save', 'Автосохранение файлов скриптов'], + ['plugin_sql_editor_settings_auto_save_description', 'Автоматически сохранять файлы скриптов'], + [ + 'plugin_sql_editor_settings_auto_save_description_git_integration', + 'Автоматически сохранять файлы скриптов. Эта настройка доступна только при отключенной интеграции с Git', + ], ]; diff --git a/webapp/packages/plugin-sql-editor/src/locales/zh.ts b/webapp/packages/plugin-sql-editor/src/locales/zh.ts index 9839c937bb..29945c64d3 100644 --- a/webapp/packages/plugin-sql-editor/src/locales/zh.ts +++ b/webapp/packages/plugin-sql-editor/src/locales/zh.ts @@ -40,6 +40,10 @@ export default [ ['plugin_sql_editor_settings_disable_description', 'Disable SQL editor for all users'], ['plugin_sql_editor_settings_import_max_size', 'Import limit (KB)'], ['plugin_sql_editor_settings_import_max_size_description', 'Maximum file size that can be imported in KB'], - ['plugin_sql_editor_settings_auto_save', 'Auto save'], - ['plugin_sql_editor_settings_auto_save_description', 'Automatically save the editor content'], + ['plugin_sql_editor_settings_auto_save', 'Autosave script files'], + ['plugin_sql_editor_settings_auto_save_description', 'Automatically save the script files'], + [ + 'plugin_sql_editor_settings_auto_save_description_git_integration', + 'Automatically save the script files. This feature is only available when Git integration is turned off', + ], ];