export const DEFAULT_ACTIONS = { ROW_CREATE: 'Создание строки', ROW_DELETE: 'Удаление строки', ACCESS_WINDOW_CHANGE: 'Изменение окна доступа', ACCESS_EXTEND: 'Расширение доступа', USER_ROLE_CHANGE: 'Изменение роли пользователя', CREATE_TASK: 'Создание задачи', UPDATE_TASK: 'Обновление задачи', DELETE_TASK: 'Удаление задачи', USER_CREATE: 'Создание пользователя', LOGIN: 'Вход в систему', USER_ACCESS_GRANTED: 'Предоставление доступа к ССП/РФ', USER_ACCESS_REVOKED: 'Отмена доступа к ССП/РФ', VSP_CREATE: 'Создание ВСП', }; export const ENTITY_RUSSIAN_NAMES = { LOGIN: 'Вход в систему', ROW: 'строки', PROJECT: 'проекта', TABLE: 'таблицы', STAGE: 'этапа', SSP: 'ССП/РФ', TASKS: 'задач', TASK: 'задачи', USER_ACCESS: 'доступа к ССП/РФ', USER: 'пользователя', ACCESS_WINDOW: 'окна доступа', USER_ROLE: 'роли пользователя', VSP: 'ВСП', }; export const ACTION_RUSSIAN_NAMES = { CREATE: 'Создание', UPDATE: 'Обновление', DELETE: 'Удаление', CHANGE: 'Изменение', GET: 'Получение', GRANTED: 'Предоставление', REVOKED: 'Отмена', }; export const getRussianNamesForType = (name) => { if (!name) return name; let entityTranslation = ''; const sortedEntities = Object.keys(ENTITY_RUSSIAN_NAMES).sort( (a, b) => b.length - a.length, ); for (const entity of sortedEntities) { if (name.includes(entity)) { entityTranslation = ENTITY_RUSSIAN_NAMES[entity]; break; } } let actionTranslation = ''; for (const action of Object.keys(ACTION_RUSSIAN_NAMES)) { if (name.includes(action)) { actionTranslation = ACTION_RUSSIAN_NAMES[action]; break; } } if (!actionTranslation && !entityTranslation) { return name; } return `${actionTranslation} ${entityTranslation}`.trim(); };