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