@wepublish/api
Version:
API core for we.publish.
48 lines • 1.81 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.updateUserRole = exports.createUserRole = exports.deleteUserRoleById = void 0;
const tslib_1 = require("tslib");
const permissions_1 = require("../permissions");
const api_1 = require("../../../../permissions-api/src");
const deleteUserRoleById = (id, authenticate, userRole) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
const { roles } = authenticate();
(0, permissions_1.authorise)(api_1.CanDeleteUserRole, roles);
const role = yield userRole.findUnique({
where: { id }
});
if (role === null || role === void 0 ? void 0 : role.systemRole) {
throw new Error('Can not delete SystemRoles');
}
return userRole.delete({
where: {
id
}
});
});
exports.deleteUserRoleById = deleteUserRoleById;
const createUserRole = (input, authenticate, userRole) => {
const { roles } = authenticate();
(0, permissions_1.authorise)(api_1.CanCreateUserRole, roles);
return userRole.create({
data: Object.assign(Object.assign({}, input), { systemRole: false })
});
};
exports.createUserRole = createUserRole;
const updateUserRole = (id, input, authenticate, userRole) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
const { roles } = authenticate();
(0, permissions_1.authorise)(api_1.CanCreateUserRole, roles);
const role = yield userRole.findUnique({
where: { id }
});
if (role === null || role === void 0 ? void 0 : role.systemRole) {
throw new Error('Can not change SystemRoles');
}
return userRole.update({
where: {
id
},
data: input
});
});
exports.updateUserRole = updateUserRole;
//# sourceMappingURL=user-role.private-mutation.js.map