UNPKG

jsm-core

Version:
41 lines (40 loc) 1.46 kB
"use strict"; /** * @generator Levelup * @author dr. Salmi <reevosolutions@gmail.com> * @since 24-02-2024 20:47:22 */ Object.defineProperty(exports, "__esModule", { value: true }); exports.roleGroupList = void 0; exports.userHasRoleGroupOrAbove = userHasRoleGroupOrAbove; exports.userMustBeLinkedToCompany = userMustBeLinkedToCompany; const roles_constants_1 = require("../../../constants/roles.constants"); /** * Role groups are in this order: * - 0: master * - 10: system_administrators * - 20: application_account_owners * - 21: application_administrators * - 30: company_account_owners * - 31: company_administrators * - 50: administrators * - 51: agents * - 60: deliverers * - 70: sellers * - 100: users * @param {Jsm.Core.Auth.Entity.TRoleGroup | undefined} currentUserRoleGroup * @param {Jsm.Core.Auth.Entity.TRoleGroup} roleGroup * @returns boolean */ function userHasRoleGroupOrAbove(currentUserRoleGroup, roleGroup) { if (!currentUserRoleGroup || !roleGroup) return false; return roles_constants_1.ROLE_GROUP_ORDER[currentUserRoleGroup] <= roles_constants_1.ROLE_GROUP_ORDER[roleGroup]; } function userMustBeLinkedToCompany(currentUserRoleGroup) { if (!currentUserRoleGroup) return false; return currentUserRoleGroup !== "users" && !userHasRoleGroupOrAbove(currentUserRoleGroup, "application_administrators"); } const roleGroupList = (groups) => groups; exports.roleGroupList = roleGroupList;