Горячие клавиши

Чтобы упростить работу с системой Universe на нескольких вкладках браузера, доступно использование горячих клавиш.

UEGlobalHotkey позволяет подключать обработчики сочетаний горячих клавиш.

Описание UEGlobalHotkey

import {UeModuleBase} from '../../userexit/type/UeModuleBase';
import {ComponentType} from 'react';

export type UEGlobalHotkey = UeModuleBase & {
    default: {
        component: ComponentType<{}>;
        meta: {};
    };
}

Пример реализации:

import {IdSearch} from './hotkey/IdSearch';
import {SystemTools} from './hotkey/SystemTools';
import {UEList} from '@unidata/types';

export enum UrlRoutes {
    MainPage = '/main', // Главная страница с виджетами
    SearchPage = '/search', // Основной маршрут страницы поиска
    SearchTable = '/search/:namespace?/:entityName?', // Таблица с результатами
    DataView = '/dataviewlight/:namespace/:entityName/:etalonId', // Страница для просмотра карточки данных
    Compare = '/data/compare/:entityName', // Страница для просмотра таблицы сравнения
    History = '/data/history/:namespace/:entityName/:etalonId' // Страница для просмотра истории записей
}

const hotkeyDefaults = {
    type: UEList.GlobalHotkey,
    active: true,
    system: false,
    resolver: () => true,
    meta: {}
};

export const hotkeys = [
    {
        'default': {
            moduleId: 'idSearch',
            component: IdSearch,
            ...hotkeyDefaults
        }
    },
    {
        'default': {
            moduleId: 'systemTools',
            component: SystemTools,
            ...hotkeyDefaults
        }
    }

];