import { checkPrivil } from '@/apps/app-bmc/router/routes';
import { UserPrivil } from '@/model/base-enum';
export function privilDirective(app: any) {
app.directive('privil', {
mounted(el: HTMLElement, binding: any) {
const needPrivils: string[] = [];
Object.keys(binding.modifiers).forEach(key => {
switch (key) {
case 'baseConfig':
needPrivils.push(UserPrivil.baseConfig);
break;
case 'diagnos':
needPrivils.push(UserPrivil.diagnosis);
break;
case 'userConfig':
needPrivils.push(UserPrivil.userConfig);
break;
case 'security':
needPrivils.push(UserPrivil.securityConfig);
break;
case 'powerConfig':
needPrivils.push(UserPrivil.powerControl);
break;
case 'vmm':
needPrivils.push(UserPrivil.vmm);
break;
case 'remote':
needPrivils.push(UserPrivil.remoteControl);
break;
case 'selfConfig':
needPrivils.push(UserPrivil.configSelf);
break;
default:
break;
}
});
const result = checkPrivil(needPrivils);
if (!result) {
el.style.display = 'none';
}
}
});
}