core&ui: extensible domain & system manage sidebar

This commit is contained in:
undefined committed 2022-10-20 11:18:26 +08:00
1 parent 7cee2eae4e
commit dc13760852
6 files changed
+31 -30

No files matched your search

+1 -1
View File
@@ -695,7 +695,7 @@ export interface Lib extends Record<string, any> {
problemSearch: ProblemSearch;
}
export type UIInjectableFields = 'ProblemAdd' | 'Nav' | 'UserDropdown';
export type UIInjectableFields = 'ProblemAdd' | 'Nav' | 'UserDropdown' | 'DomainManage' | 'ControlPanel';
export interface UI {
template: Record<string, string>,
nodes: Record<UIInjectableFields, any[]>,
+13
View File
@@ -63,6 +63,19 @@ inject('Nav', 'ranking', { prefix: 'ranking' }, PERM.PERM_VIEW_RANKING);
inject('Nav', 'domain_dashboard', { prefix: 'domain' }, PERM.PERM_EDIT_DOMAIN);
inject('Nav', 'manage_dashboard', { prefix: 'manage' }, PRIV.PRIV_EDIT_SYSTEM);
inject('ProblemAdd', 'problem_create', { icon: 'add', text: 'Create Problem' });
inject('ControlPanel', 'manage_dashboard');
inject('ControlPanel', 'manage_script');
inject('ControlPanel', 'manage_user_import');
inject('ControlPanel', 'manage_user_priv');
inject('ControlPanel', 'manage_setting');
inject('ControlPanel', 'manage_config');
inject('DomainManage', 'domain_dashboard', { family: 'Properties', icon: 'info' });
inject('DomainManage', 'domain_edit', { family: 'Properties', icon: 'info' });
inject('DomainManage', 'domain_join_applications', { family: 'Properties', icon: 'info' });
inject('DomainManage', 'domain_role', { family: 'Access Control', icon: 'user' });
inject('DomainManage', 'domain_user', { family: 'Access Control', icon: 'user' });
inject('DomainManage', 'domain_permission', { family: 'Access Control', icon: 'user' });
inject('DomainManage', 'domain_group', { family: 'Access Control', icon: 'user' });
global.Hydro.ui.inject = inject;
global.Hydro.ui.nodes = nodes as any;