coersystem
Version:
Library for Angular projects
29 lines (24 loc) • 1.39 kB
JavaScript
import { User, Strings, Tools, CoerAlert, Menu } from 'coersystem/tools';
import { inject } from '@angular/core';
const loginGuard = () => {
return User.IsLogIn();
};
const pageGuard = (route, state) => {
const module = Strings.CleanUpBlanks(Strings.RemoveAccents(Tools.AvoidNull(route.data?.module, 'string')));
const submodule = Strings.CleanUpBlanks(Strings.RemoveAccents(Tools.AvoidNull(route.data?.submodule, 'string')));
const page = Strings.CleanUpBlanks(Strings.RemoveAccents(Tools.AvoidNull(route.data?.page, 'string')));
if (Tools.IsOnlyWhiteSpace(page)) {
console.log(`[Page] Metadata for route ${state.url} is missing`);
inject(CoerAlert).Warning('Metadata is missing', 'Guard', 'fa-solid fa-file-shield');
return false;
}
//Has access?
return Menu.GetMenuAccess().some(access => Strings.CleanUpBlanks(Strings.RemoveAccents(Tools.AvoidNull(access?.module, 'string').toUpperCase())) === module.toUpperCase()
&& Strings.CleanUpBlanks(Strings.RemoveAccents(Tools.AvoidNull(access?.submodule, 'string').toUpperCase())) === submodule.toUpperCase()
&& Strings.CleanUpBlanks(Strings.RemoveAccents(Tools.AvoidNull(access?.page, 'string').toUpperCase())) === page.toUpperCase());
};
/**
* Generated bundle index. Do not edit.
*/
export { loginGuard, pageGuard };
//# sourceMappingURL=coersystem-guards.mjs.map