@stackend/api
Version:
JS bindings to api.stackend.com
110 lines • 4.01 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var _a;
Object.defineProperty(exports, "__esModule", { value: true });
exports.VISITOR_READ_ONLY_AUTH_OBJECT = exports.isAdminUser = exports.isSuperUser = exports.getPrivilegeName = exports.PRIVILEGE_TYPE_IDS = exports.PrivilegeTypeId = exports.Privilege = exports.CMS_COMPONENT_CLASS = void 0;
var index_1 = require("./index");
var groupApi = __importStar(require("../group"));
exports.CMS_COMPONENT_CLASS = 'se.josh.xcap.cms.CmsManager';
/**
* Privilege types (new enum based version)
*/
var Privilege;
(function (Privilege) {
Privilege["VISITOR"] = "VISITOR";
Privilege["IDENTIFIED"] = "IDENTIFIED";
Privilege["VERIFIED"] = "VERIFIED";
Privilege["BLOCKED"] = "BLOCKED";
Privilege["TRUSTED"] = "TRUSTED";
Privilege["ADMIN"] = "ADMIN";
Privilege["SUPER_ADMIN"] = "SUPER_ADMIN";
})(Privilege = exports.Privilege || (exports.Privilege = {}));
var PrivilegeTypeId;
(function (PrivilegeTypeId) {
PrivilegeTypeId[PrivilegeTypeId["VISITOR"] = 1] = "VISITOR";
PrivilegeTypeId[PrivilegeTypeId["IDENTIFIED"] = 2] = "IDENTIFIED";
PrivilegeTypeId[PrivilegeTypeId["VERIFIED"] = 4] = "VERIFIED";
PrivilegeTypeId[PrivilegeTypeId["BLOCKED"] = 8] = "BLOCKED";
PrivilegeTypeId[PrivilegeTypeId["TRUSTED"] = 16] = "TRUSTED";
PrivilegeTypeId[PrivilegeTypeId["ADMIN"] = 32] = "ADMIN";
PrivilegeTypeId[PrivilegeTypeId["SUPER_ADMIN"] = 64] = "SUPER_ADMIN";
})(PrivilegeTypeId = exports.PrivilegeTypeId || (exports.PrivilegeTypeId = {}));
/**
* Privilege types (old id based version)
*/
exports.PRIVILEGE_TYPE_IDS = (_a = {},
_a[Privilege.VISITOR] = 1,
_a[Privilege.IDENTIFIED] = 2,
_a[Privilege.VERIFIED] = 4,
_a[Privilege.BLOCKED] = 8,
_a[Privilege.TRUSTED] = 16,
_a[Privilege.ADMIN] = 32,
_a[Privilege.SUPER_ADMIN] = 64,
_a);
/**
* Privilege type names
*/
var PRIVILEGE_NAMES = {
'1': 'Visitor',
'2': 'Identified',
'4': 'Verified',
'8': 'Blocked',
'16': 'Author',
'32': 'Admin',
'64': 'Super-Admin'
};
/**
* Get the name of a privilege type
*/
function getPrivilegeName(privilegeTypeId) {
var s = PRIVILEGE_NAMES[String(privilegeTypeId)];
return s || 'Visitor';
}
exports.getPrivilegeName = getPrivilegeName;
function isSuperUser(_a) {
var user = _a.user;
return (0, index_1.hasElevatedPrivilege)(user, 'groups', groupApi.COMPONENT_CLASS, PrivilegeTypeId.TRUSTED);
}
exports.isSuperUser = isSuperUser;
function isAdminUser(_a) {
var user = _a.user;
return (0, index_1.hasElevatedPrivilege)(user, 'cms', exports.CMS_COMPONENT_CLASS, PrivilegeTypeId.TRUSTED);
}
exports.isAdminUser = isAdminUser;
/**
* Default AuthObject for visitors
*/
exports.VISITOR_READ_ONLY_AUTH_OBJECT = {
userPrivilege: Privilege.VISITOR,
comment: false,
create: false,
moderate: false,
read: true,
postModerateRequired: false,
textFilteredPre: true,
textFilteringRequired: true,
ruleId: 0
};
//# sourceMappingURL=privileges.js.map