react-permissions-dynamic
Version:
This is a package with react-permissions
27 lines (26 loc) • 1.13 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.processOldPermissions = void 0;
const _1 = require(".");
const expandAllowedPermissions = ({ oldPermissions, result = [], }) => {
const allowedPermissions = result.filter(p => !!p.allowed).map(p => p.action);
return (0, _1.expand)(oldPermissions.allowedPermissions, allowedPermissions);
};
const expandCheckedPermissions = ({ oldPermissions, actionsToCheck = [], }) => {
const checkedPermissions = actionsToCheck;
return (0, _1.expand)(oldPermissions.checkedPermissions, checkedPermissions);
};
const processOldPermissions = ({ setPermissions, result = [], actionsToCheck = [], }) => {
return setPermissions(oldPermissions => ({
allowedPermissions: expandAllowedPermissions({
oldPermissions,
result,
}),
checkedPermissions: expandCheckedPermissions({
oldPermissions,
// result might not have these permissions, if they don't send not allowed back
actionsToCheck,
}),
}));
};
exports.processOldPermissions = processOldPermissions;