mirror of
https://github.com/dbeaver/cloudbeaver.git
synced 2026-09-24 16:04:36 +08:00
Merge pull request #519 from dbeaver/fix/localization
fix(core-localization): CB-371, CB-1334 localization, remove identity…
This commit is contained in:
+7
-5
@@ -11,6 +11,7 @@ import { observable, computed, makeObservable } from 'mobx';
|
||||
import { injectable } from '@cloudbeaver/core-di';
|
||||
import { CommonDialogService, ConfirmationDialogDelete, DialogueStateResult } from '@cloudbeaver/core-dialogs';
|
||||
import { NotificationService } from '@cloudbeaver/core-events';
|
||||
import { LocalizationService } from '@cloudbeaver/core-localization';
|
||||
import { resourceKeyList } from '@cloudbeaver/core-sdk';
|
||||
|
||||
import { DatabaseConnection, compareConnections, ConnectionsResource } from '../ConnectionsResource';
|
||||
@@ -31,7 +32,8 @@ export class ConnectionsAdministrationController {
|
||||
constructor(
|
||||
private notificationService: NotificationService,
|
||||
private connectionsResource: ConnectionsResource,
|
||||
private commonDialogService: CommonDialogService
|
||||
private commonDialogService: CommonDialogService,
|
||||
private localizationService: LocalizationService,
|
||||
) {
|
||||
makeObservable(this, {
|
||||
isProcessing: observable,
|
||||
@@ -69,13 +71,13 @@ export class ConnectionsAdministrationController {
|
||||
return;
|
||||
}
|
||||
|
||||
const connectionNames = deletionList
|
||||
.map(id => this.connectionsResource.get(id)?.name)
|
||||
.filter(Boolean);
|
||||
const connectionNames = deletionList.map(id => this.connectionsResource.get(id)?.name).filter(Boolean);
|
||||
const nameList = connectionNames.map(name => `"${name}"`).join(', ');
|
||||
const message = `${this.localizationService.translate('connections_administration_delete_confirmation')}${nameList}. ${this.localizationService.translate('ui_are_you_sure')}`;
|
||||
|
||||
const result = await this.commonDialogService.open(ConfirmationDialogDelete, {
|
||||
title: 'ui_data_delete_confirmation',
|
||||
message: `You're going to delete these connections: ${connectionNames.map(name => `"${name}"`).join(', ')}. Are you sure?`,
|
||||
message,
|
||||
confirmActionText: 'ui_delete',
|
||||
});
|
||||
|
||||
|
||||
@@ -11,6 +11,7 @@ export default [
|
||||
['connections_administration_configuration_wizard_title', 'Add database connections'],
|
||||
['connections_administration_configuration_wizard_message', 'Here you can create database connections manually or using a database server search.\nYou can skip this step and configure the connections later.'],
|
||||
['connections_administration_connection_no_information', 'No information available'],
|
||||
['connections_administration_delete_confirmation', "You're going to delete these connections: "],
|
||||
['connections_administration_tools_add_tooltip', 'Add new connection'],
|
||||
['connections_administration_tools_refresh_tooltip', 'Refresh connection list'],
|
||||
['connections_administration_tools_delete_tooltip', 'Delete selected connections'],
|
||||
|
||||
@@ -10,6 +10,7 @@ export default [
|
||||
['connections_administration_configuration_wizard_step_description', 'Подключения к базам'],
|
||||
['connections_administration_configuration_wizard_message', 'Here you can create database connections manually or using a database server search.\nYou can skip this step and configure the connections later.'],
|
||||
['connections_administration_connection_no_information', 'Нет доступной информации'],
|
||||
['connections_administration_delete_confirmation', 'Вы собираетесь удалить следующие подключения: '],
|
||||
['connections_administration_tools_add_tooltip', 'Добавить новое подключение'],
|
||||
['connections_administration_tools_refresh_tooltip', 'Обновить список подключений'],
|
||||
['connections_administration_tools_delete_tooltip', 'Удалить выбранные подключения'],
|
||||
|
||||
@@ -49,9 +49,11 @@ export const defaultENLocale = [
|
||||
['ui_reconnect', 'Reconnect'],
|
||||
['ui_forget', 'Forget'],
|
||||
['ui_set', 'Set'],
|
||||
['ui_are_you_sure', 'Are you sure?'],
|
||||
['ui_options', 'Options'],
|
||||
|
||||
['root_permission_denied', 'You have no permissions'],
|
||||
['root_permission_no_permission', 'You have no permission for this action'],
|
||||
['root_permission_denied', "You don't have permissions"],
|
||||
['root_permission_no_permission', "You don't have permission for this action"],
|
||||
['app_root_session_expire_warning_title', 'Session is about to expire'],
|
||||
['app_root_session_expire_warning_message', 'Your session will expire in less than 5 minutes. To keep working, close this popup.'],
|
||||
['app_root_session_expire_warning_button', 'I am here'],
|
||||
|
||||
@@ -47,6 +47,8 @@ export const defaultRULocale = [
|
||||
['ui_reconnect', 'Переподключиться'],
|
||||
['ui_forget', 'Забыть'],
|
||||
['ui_set', 'Установить'],
|
||||
['ui_are_you_sure', 'Вы уверены?'],
|
||||
['ui_options', 'Параметры'],
|
||||
|
||||
['root_permission_denied', 'Отказано в доступе'],
|
||||
['root_permission_no_permission', 'У вас нет разрешения на это действие'],
|
||||
|
||||
+5
-2
@@ -12,6 +12,7 @@ import styled from 'reshadow';
|
||||
|
||||
import { useClipboard, Button, Iframe } from '@cloudbeaver/core-blocks';
|
||||
import { CommonDialogWrapper, DialogComponent } from '@cloudbeaver/core-dialogs';
|
||||
import { useTranslate } from '@cloudbeaver/core-localization';
|
||||
import { useStyles } from '@cloudbeaver/core-theming';
|
||||
|
||||
import { ErrorModel, IErrorInfo } from './ErrorModel';
|
||||
@@ -35,6 +36,8 @@ function DisplayErrorInfo({ error }: {error: IErrorInfo}) {
|
||||
}
|
||||
|
||||
export const ErrorDetailsDialog: DialogComponent<Error | string, null> = observer(function ErrorDetailsDialog(props) {
|
||||
const translate = useTranslate();
|
||||
|
||||
const error = useMemo(
|
||||
() => (props.payload instanceof Error
|
||||
? new ErrorModel({ error: props.payload })
|
||||
@@ -56,9 +59,9 @@ export const ErrorDetailsDialog: DialogComponent<Error | string, null> = observe
|
||||
footer={(
|
||||
<>
|
||||
{error.textToCopy && (
|
||||
<Button type="button" mod={['outlined']} onClick={copyHandler}>Copy</Button>
|
||||
<Button type="button" mod={['outlined']} onClick={copyHandler}>{translate('ui_copy_to_clipboard')}</Button>
|
||||
)}
|
||||
<Button type="button" mod={['unelevated']} onClick={props.rejectDialog}>Close</Button>
|
||||
<Button type="button" mod={['unelevated']} onClick={props.rejectDialog}>{translate('ui_close')}</Button>
|
||||
</>
|
||||
)}
|
||||
style={dialogStyle}
|
||||
|
||||
+1
-1
@@ -39,7 +39,7 @@ export const ServerConfigurationFeaturesForm: PlaceholderComponent<IConfiguratio
|
||||
|
||||
return styled(styles)(
|
||||
<>
|
||||
<GroupTitle>{translate('administration_configuration_wizard_configuration_features_group')}</GroupTitle>
|
||||
<GroupTitle>{translate('administration_configuration_wizard_configuration_services_group')}</GroupTitle>
|
||||
<Loader state={features} inline>
|
||||
{() => styled(styles)(
|
||||
<>
|
||||
|
||||
@@ -6,6 +6,7 @@ export default [
|
||||
|
||||
['administration_configuration_wizard_configuration_server_info', 'Информация о сервере'],
|
||||
['administration_configuration_wizard_configuration_server_name', 'Название сервера'],
|
||||
['administration_configuration_wizard_configuration_server_url', 'URL Сервера'],
|
||||
['administration_configuration_wizard_configuration_server_info_unsaved', 'Есть несохранённые изменения'],
|
||||
['administration_configuration_wizard_configuration_server_session_lifetime', 'Время сессии'],
|
||||
['administration_configuration_wizard_configuration_server_session_lifetime_description', 'В случае бездействия пользователя на протяжении указанного количества минут, его сессия будет закрыта.'],
|
||||
|
||||
+1
-1
@@ -44,7 +44,7 @@ export class AuthConfigurationsAdministrationService extends Bootstrap {
|
||||
});
|
||||
this.administrationItemService.create({
|
||||
name: 'auth-configurations',
|
||||
type: AdministrationItemType.Default,
|
||||
type: AdministrationItemType.Administration,
|
||||
order: 5,
|
||||
configurationWizardOptions: {
|
||||
description: 'administration_identity_providers_wizard_description',
|
||||
|
||||
+7
-4
@@ -13,6 +13,7 @@ import { TableState, useObservableRef } from '@cloudbeaver/core-blocks';
|
||||
import { useService } from '@cloudbeaver/core-di';
|
||||
import { CommonDialogService, ConfirmationDialogDelete, DialogueStateResult } from '@cloudbeaver/core-dialogs';
|
||||
import { NotificationService } from '@cloudbeaver/core-events';
|
||||
import { useTranslate } from '@cloudbeaver/core-localization';
|
||||
import { AdminAuthProviderConfiguration, resourceKeyList } from '@cloudbeaver/core-sdk';
|
||||
|
||||
interface State {
|
||||
@@ -28,6 +29,8 @@ export function useConfigurationsTable(): Readonly<State> {
|
||||
const dialogService = useService(CommonDialogService);
|
||||
const resource = useService(AuthConfigurationsResource);
|
||||
|
||||
const translate = useTranslate();
|
||||
|
||||
return useObservableRef<State>(() => ({
|
||||
tableState: new TableState(),
|
||||
processing: false,
|
||||
@@ -60,13 +63,13 @@ export function useConfigurationsTable(): Readonly<State> {
|
||||
return;
|
||||
}
|
||||
|
||||
const configurationsNames = deletionList
|
||||
.map(id => resource.get(id)?.displayName)
|
||||
.filter(Boolean);
|
||||
const configurationNames = deletionList.map(id => resource.get(id)?.displayName).filter(Boolean);
|
||||
const nameList = configurationNames.map(name => `"${name}"`).join(', ');
|
||||
const message = `${translate('administration_identity_providers_delete_confirmation')}${nameList}. ${translate('ui_are_you_sure')}`;
|
||||
|
||||
const result = await dialogService.open(ConfirmationDialogDelete, {
|
||||
title: 'ui_data_delete_confirmation',
|
||||
message: `You're going to delete these configurations: ${configurationsNames.map(name => `"${name}"`).join(', ')}. Are you sure?`,
|
||||
message,
|
||||
confirmActionText: 'ui_delete',
|
||||
});
|
||||
|
||||
|
||||
+1
-1
@@ -28,7 +28,7 @@ export class AuthConfigurationOptionsTabService extends Bootstrap {
|
||||
register(): void {
|
||||
this.authConfigurationFormService.tabsContainer.add({
|
||||
key: 'options',
|
||||
name: 'Options',
|
||||
name: 'ui_options',
|
||||
order: 1,
|
||||
panel: () => AuthConfigurationOptions,
|
||||
});
|
||||
|
||||
+1
-1
@@ -28,7 +28,7 @@ export class RoleOptionsTabService extends Bootstrap {
|
||||
register(): void {
|
||||
this.roleFormService.tabsContainer.add({
|
||||
key: 'options',
|
||||
name: 'Options',
|
||||
name: 'ui_options',
|
||||
order: 1,
|
||||
panel: () => RoleOptions,
|
||||
});
|
||||
|
||||
+6
-1
@@ -13,6 +13,7 @@ import { TableState, useObservableRef } from '@cloudbeaver/core-blocks';
|
||||
import { useService } from '@cloudbeaver/core-di';
|
||||
import { CommonDialogService, ConfirmationDialogDelete, DialogueStateResult } from '@cloudbeaver/core-dialogs';
|
||||
import { NotificationService } from '@cloudbeaver/core-events';
|
||||
import { useTranslate } from '@cloudbeaver/core-localization';
|
||||
import { resourceKeyList } from '@cloudbeaver/core-sdk';
|
||||
|
||||
interface State {
|
||||
@@ -28,6 +29,8 @@ export function useRolesTable(): Readonly<State> {
|
||||
const dialogService = useService(CommonDialogService);
|
||||
const resource = useService(RolesResource);
|
||||
|
||||
const translate = useTranslate();
|
||||
|
||||
return useObservableRef<State>(() => ({
|
||||
tableState: new TableState(),
|
||||
processing: false,
|
||||
@@ -60,9 +63,11 @@ export function useRolesTable(): Readonly<State> {
|
||||
return;
|
||||
}
|
||||
|
||||
const roleNames = deletionList.map(name => `"${name}"`).join(', ');
|
||||
const message = `${translate('administration_roles_delete_confirmation')}${roleNames}. ${translate('ui_are_you_sure')}`;
|
||||
const result = await dialogService.open(ConfirmationDialogDelete, {
|
||||
title: 'ui_data_delete_confirmation',
|
||||
message: `You're going to delete these roles: ${deletionList.map(name => `"${name}"`).join(', ')}. Are you sure?`,
|
||||
message,
|
||||
confirmActionText: 'ui_delete',
|
||||
});
|
||||
|
||||
|
||||
+6
-1
@@ -12,6 +12,7 @@ import { AdminUser, AuthProvidersResource, AUTH_PROVIDER_LOCAL_ID, UsersResource
|
||||
import { injectable, IInitializableController } from '@cloudbeaver/core-di';
|
||||
import { CommonDialogService, ConfirmationDialogDelete, DialogueStateResult } from '@cloudbeaver/core-dialogs';
|
||||
import { NotificationService } from '@cloudbeaver/core-events';
|
||||
import { LocalizationService } from '@cloudbeaver/core-localization';
|
||||
import { ErrorDetailsDialog } from '@cloudbeaver/core-notifications';
|
||||
import { GQLErrorCatcher, resourceKeyList } from '@cloudbeaver/core-sdk';
|
||||
|
||||
@@ -56,6 +57,7 @@ export class UsersAdministrationController implements IInitializableController {
|
||||
private authProvidersResource: AuthProvidersResource,
|
||||
private usersResource: UsersResource,
|
||||
private commonDialogService: CommonDialogService,
|
||||
private localizationService: LocalizationService
|
||||
) {
|
||||
makeObservable(this, {
|
||||
isDeleting: observable,
|
||||
@@ -92,9 +94,12 @@ export class UsersAdministrationController implements IInitializableController {
|
||||
return;
|
||||
}
|
||||
|
||||
const userNames = deletionList.map(name => `"${name}"`).join(', ');
|
||||
const message = `${this.localizationService.translate('authentication_administration_users_delete_confirmation')}${userNames}. ${this.localizationService.translate('ui_are_you_sure')}`;
|
||||
|
||||
const result = await this.commonDialogService.open(ConfirmationDialogDelete, {
|
||||
title: 'ui_data_delete_confirmation',
|
||||
message: `You're going to delete these users: ${deletionList.map(name => `"${name}"`).join(', ')}. Are you sure?`,
|
||||
message,
|
||||
confirmActionText: 'ui_delete',
|
||||
});
|
||||
|
||||
|
||||
@@ -27,6 +27,8 @@ export default [
|
||||
['authentication_administration_user_updated', 'User updated'],
|
||||
['authentication_administration_user_created', 'User was created successfully'],
|
||||
['authentication_administration_user_create_failed', 'Error creating new user'],
|
||||
['authentication_administration_users_delete_confirmation', "You're going to delete these users: "],
|
||||
|
||||
['authentication_user_name', 'User name'],
|
||||
['authentication_user_credentials', 'Credentials'],
|
||||
['authentication_user_current_password', 'Current password'],
|
||||
@@ -53,7 +55,7 @@ export default [
|
||||
['administration_configuration_wizard_configuration_anonymous_access', 'Allow anonymous access'],
|
||||
['administration_configuration_wizard_configuration_anonymous_access_description', 'Allows to work with CloudBeaver without user authentication'],
|
||||
['administration_configuration_wizard_configuration_authentication_group', 'Authentication settings'],
|
||||
['administration_configuration_wizard_configuration_features_group', 'Features'],
|
||||
['administration_configuration_wizard_configuration_services_group', 'Services'],
|
||||
['administration_configuration_wizard_configuration_services', 'Services'],
|
||||
['administration_configuration_wizard_configuration_authentication', 'Enable users authentication'],
|
||||
['administration_configuration_wizard_configuration_authentication_description', 'Allows users to authenticate. Otherwise only anonymous access is enabled'],
|
||||
@@ -74,6 +76,7 @@ export default [
|
||||
['administration_identity_providers_add_tooltip', 'Add new configuration'],
|
||||
['administration_identity_providers_refresh_tooltip', 'Refresh configuration list'],
|
||||
['administration_identity_providers_delete_tooltip', 'Delete selected configurations'],
|
||||
['administration_identity_providers_delete_confirmation', "You're going to delete these configurations: "],
|
||||
['administration_identity_providers_provider_save_error', 'Save configuration error'],
|
||||
['administration_identity_providers_provider_create_error', 'Create configuration error'],
|
||||
['administration_identity_providers_configuration_list_update_success', 'Configuration list was refreshed'],
|
||||
@@ -93,6 +96,7 @@ export default [
|
||||
['administration_roles_add_tooltip', 'Add new role'],
|
||||
['administration_roles_refresh_tooltip', 'Refresh role list'],
|
||||
['administration_roles_delete_tooltip', 'Delete selected roles'],
|
||||
['administration_roles_delete_confirmation', "You're going to delete these roles: "],
|
||||
|
||||
['administration_roles_role_granted_users_tab_title', 'Users'],
|
||||
['administration_roles_role_granted_users_search_placeholder', 'Search for user ID...'],
|
||||
|
||||
@@ -51,7 +51,6 @@ export default [
|
||||
['administration_configuration_wizard_configuration_anonymous_access', 'Permetti l\'accesso anonimo'],
|
||||
['administration_configuration_wizard_configuration_anonymous_access_description', 'Permetti di lavorare con CloudBeaver senza autenticazione'],
|
||||
['administration_configuration_wizard_configuration_authentication_group', 'Impostazioni di autenticazione'],
|
||||
['administration_configuration_wizard_configuration_features_group', 'Функции'],
|
||||
['administration_configuration_wizard_configuration_services', 'Servizi'],
|
||||
['administration_configuration_wizard_configuration_authentication', 'Abilita l\'autenticazione utente'],
|
||||
['administration_configuration_wizard_configuration_authentication_description', 'Permetti agli utenti di autenticarsi. In alternativa solo l\'accesso anonimo sarà attivo'],
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
export default [
|
||||
['authentication_login_dialog_title', 'Авторизация'],
|
||||
['authentication_login_dialog_title', 'Аутентификация'],
|
||||
['authentication_login', 'Войти'],
|
||||
['authentication_logout', 'Выйти'],
|
||||
['authentication_authenticate', 'Аутентифицироваться'],
|
||||
['authentication_request_token', 'Необходима дополнительная аутентификация'],
|
||||
['authentication_identity_provider_search_placeholder', 'Поиск по имени или описанию конфигурации...'],
|
||||
['authentication_identity_provider_dialog_subtitle', 'Выберите конфигурацию с помощью которой вы хотите войти'],
|
||||
['authentication_administration_user_connections_user_add', 'Создание пользователя'],
|
||||
@@ -25,6 +27,8 @@ export default [
|
||||
['authentication_administration_user_updated', 'Пользователь обновлен'],
|
||||
['authentication_administration_user_created', 'Пользователь создан успешно'],
|
||||
['authentication_administration_user_create_failed', 'Не удалось создать пользователя'],
|
||||
['authentication_administration_users_delete_confirmation', 'Вы собираетесь удалить следующих пользователей: '],
|
||||
|
||||
['authentication_user_name', 'Имя'],
|
||||
['authentication_user_credentials', 'Учетные данные'],
|
||||
['authentication_user_current_password', 'Текущий пароль'],
|
||||
@@ -45,6 +49,16 @@ export default [
|
||||
['authentication_user_icon_tooltip', 'Пользователь'],
|
||||
['authentication_role_icon_tooltip', 'Роль'],
|
||||
|
||||
['administration_configuration_wizard_configuration_admin', 'Учетные данные администратора'],
|
||||
['administration_configuration_wizard_configuration_admin_name', 'Логин'],
|
||||
['administration_configuration_wizard_configuration_admin_password', 'Пароль'],
|
||||
['administration_configuration_wizard_configuration_anonymous_access', 'Разрешить анонимный доступ'],
|
||||
['administration_configuration_wizard_configuration_anonymous_access_description', 'Позволяет работать с CloudBeaver без пользовательской аутентификации'],
|
||||
['administration_configuration_wizard_configuration_authentication_group', 'Настройки аутентификации'],
|
||||
['administration_configuration_wizard_configuration_services_group', 'Сервисы'],
|
||||
['administration_configuration_wizard_configuration_authentication', 'Включить пользовательскую аутентификацию'],
|
||||
['administration_configuration_wizard_configuration_authentication_description', 'Позволяет пользователям аутентифицироваться. Иначе будет включен анонимный доступ'],
|
||||
|
||||
['administration_identity_providers_tab_title', 'Провайдеры идентификации'],
|
||||
['administration_identity_providers_provider', 'Провайдер'],
|
||||
['administration_identity_providers_provider_id', 'Идентификатор'],
|
||||
@@ -56,11 +70,12 @@ export default [
|
||||
['administration_identity_providers_provider_configuration_links', 'Ссылки'],
|
||||
['administration_identity_providers_provider_configuration_links_metadata', 'Скачать файл метаданных'],
|
||||
['administration_identity_providers_wizard_description', 'Добавьте провайдеры идентификации'],
|
||||
['administration_identity_providers_configuration_create', 'Создание конфигурации'],
|
||||
['administration_identity_providers_configuration_add', 'Создание конфигурации'],
|
||||
['administration_identity_providers_choose_provider_placeholder', 'Выберите провайдер...'],
|
||||
['administration_identity_providers_add_tooltip', 'Добавить новую конфигурацию'],
|
||||
['administration_identity_providers_refresh_tooltip', 'Обновить список конфигураций'],
|
||||
['administration_identity_providers_delete_tooltip', 'Удалить выбранные конфигурации'],
|
||||
['administration_identity_providers_delete_confirmation', 'Вы собираетесь удалить следующие конфигурации: '],
|
||||
['administration_identity_providers_provider_save_error', 'Ошибка при сохранении конфигурации'],
|
||||
['administration_identity_providers_provider_create_error', 'Ошибка при создании конфигурации'],
|
||||
['administration_identity_providers_configuration_list_update_success', 'Список конфигураций успешно обновлен'],
|
||||
@@ -79,7 +94,8 @@ export default [
|
||||
['administration_roles_role_list_update_fail', 'Не удалось обновить список ролей'],
|
||||
['administration_roles_add_tooltip', 'Создать новую роль'],
|
||||
['administration_roles_refresh_tooltip', 'Обновить список ролей'],
|
||||
['administration_roles_delete_tooltip', 'Уадлить выбранные роли'],
|
||||
['administration_roles_delete_tooltip', 'Удалить выбранные роли'],
|
||||
['administration_roles_delete_confirmation', 'Вы собираетесь удалить следующие роли: '],
|
||||
|
||||
['administration_roles_role_granted_users_tab_title', 'Пользователи'],
|
||||
['administration_roles_role_granted_users_search_placeholder', 'Поиск по ID пользователя...'],
|
||||
|
||||
Reference in New Issue
Block a user