UNPKG

browser-sdk

Version:

javascript SDK for the lightelligence-platform

129 lines (114 loc) 3.87 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _apiService = _interopRequireDefault(require("../tools/apiService")); /** * Methods for roles operations */ var Role = /*#__PURE__*/ function () { function Role() { (0, _classCallCheck2["default"])(this, Role); } (0, _createClass2["default"])(Role, null, [{ key: "getPermissions", /** * Get the permissions of the tenant * * @returns {Promise} */ value: function getPermissions() { return _apiService["default"].call('/permissions'); } /** * Get the roles of the tenant * * @param {object} [params] Search parameters * @param {number} [params.page=0] The number of the page starting with 0 * @param {number} [params.pageSize=10] The number of result per page * @returns {Promise} */ }, { key: "getRoles", value: function getRoles() { var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var urlParams = new URLSearchParams(params); return _apiService["default"].call("/roles?".concat(urlParams.toString())); } /** * Get the role of the tenant * * @param {string} roleId The role's UUID * @returns {Promise} */ }, { key: "getRole", value: function getRole(roleId) { return _apiService["default"].call("/roles/".concat(roleId)); } /** * Create the role of the tenant * * @param {object} role The role data * @param {string} role.name The name of the role * @param {string} [role.description] The description of the role * @param {Array<{ id: string, alias: string }>} [role.permissions] The permissions of the role. Either id or alias must be provided. * @returns {Promise} */ }, { key: "createRole", value: function createRole(role) { return _apiService["default"].call("/roles", 'POST', role); } /** * Delete the role of the tenant * * @param {string} roleId The role's UUID * @returns {Promise} */ }, { key: "deleteRole", value: function deleteRole(roleId) { return _apiService["default"].call("/roles/".concat(roleId), 'DELETE'); } /** * Patch the role of the tenant * * @param {string} roleId The role's UUID * @param {object} role The role data * @param {string} [role.name] The name of the role * @param {string} [role.description] The description of the role * @param {Array<{ id: string, alias: string }>} [role.permissions] The permissions of the role. Either id or alias must be provided. * @returns {Promise} */ }, { key: "patchRole", value: function patchRole(roleId, role) { return _apiService["default"].call("/roles/".concat(roleId), 'PATCH', role); } /** * Get the users of the role * * @param {string} roleId The role's UUID * @param {object} [params] Search parameters * @param {number} [params.page=0] The number of the page starting with 0 * @param {number} [params.pageSize=10] The number of result per page * @returns {Promise} */ }, { key: "getRoleUsers", value: function getRoleUsers(roleId) { var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var urlParams = new URLSearchParams(params); return _apiService["default"].call("/roles/".concat(roleId, "/users?").concat(urlParams.toString())); } }]); return Role; }(); exports["default"] = Role;