@budibase/backend-core 2.21.2 → 2.21.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -60005,14 +60005,13 @@ var roles_exports = {};
60005
60005
  __export(roles_exports, {
60006
60006
  AccessController: () => AccessController,
60007
60007
  BUILTIN_ROLE_IDS: () => BUILTIN_ROLE_IDS,
60008
- BUILTIN_ROLE_ID_ARRAY: () => BUILTIN_ROLE_ID_ARRAY,
60009
- BUILTIN_ROLE_NAME_ARRAY: () => BUILTIN_ROLE_NAME_ARRAY,
60010
60008
  Role: () => Role,
60011
60009
  RoleIDVersion: () => RoleIDVersion,
60012
60010
  builtinRoleToNumber: () => builtinRoleToNumber,
60013
60011
  checkForRoleResourceArray: () => checkForRoleResourceArray,
60014
60012
  getAllRoleIds: () => getAllRoleIds,
60015
60013
  getAllRoles: () => getAllRoles,
60014
+ getBuiltinRole: () => getBuiltinRole,
60016
60015
  getBuiltinRoles: () => getBuiltinRoles,
60017
60016
  getDBRoleID: () => getDBRoleID,
60018
60017
  getExternalRoleID: () => getExternalRoleID,
@@ -60231,14 +60230,17 @@ var BUILTIN_ROLES = {
60231
60230
  function getBuiltinRoles() {
60232
60231
  return (0, import_cloneDeep2.default)(BUILTIN_ROLES);
60233
60232
  }
60234
- var BUILTIN_ROLE_ID_ARRAY = Object.values(BUILTIN_ROLES).map(
60235
- (role) => role._id
60236
- );
60237
- var BUILTIN_ROLE_NAME_ARRAY = Object.values(BUILTIN_ROLES).map(
60238
- (role) => role.name
60239
- );
60240
60233
  function isBuiltin(role) {
60241
- return BUILTIN_ROLE_ID_ARRAY.some((builtin) => role?.includes(builtin));
60234
+ return getBuiltinRole(role) !== void 0;
60235
+ }
60236
+ function getBuiltinRole(roleId) {
60237
+ const role = Object.values(BUILTIN_ROLES).find(
60238
+ (role2) => roleId.includes(role2._id)
60239
+ );
60240
+ if (!role) {
60241
+ return void 0;
60242
+ }
60243
+ return (0, import_cloneDeep2.default)(role);
60242
60244
  }
60243
60245
  function builtinRoleToNumber(id) {
60244
60246
  if (!id) {
@@ -60267,7 +60269,7 @@ async function roleToNumber(id) {
60267
60269
  defaultPublic: true
60268
60270
  });
60269
60271
  for (let role of hierarchy) {
60270
- if (isBuiltin(role?.inherits)) {
60272
+ if (role?.inherits && isBuiltin(role.inherits)) {
60271
60273
  return builtinRoleToNumber(role.inherits) + 1;
60272
60274
  }
60273
60275
  }
@@ -60283,27 +60285,20 @@ function lowerBuiltinRoleID(roleId1, roleId2) {
60283
60285
  return builtinRoleToNumber(roleId1) > builtinRoleToNumber(roleId2) ? roleId2 : roleId1;
60284
60286
  }
60285
60287
  async function getRole(roleId, opts) {
60286
- if (!roleId) {
60287
- return void 0;
60288
- }
60289
- let role = {};
60290
- if (isBuiltin(roleId)) {
60291
- role = (0, import_cloneDeep2.default)(
60292
- Object.values(BUILTIN_ROLES).find((role2) => role2._id === roleId)
60293
- );
60294
- } else {
60288
+ let role = getBuiltinRole(roleId);
60289
+ if (!role) {
60295
60290
  roleId = prefixRoleID(roleId);
60296
60291
  }
60297
60292
  try {
60298
60293
  const db = getAppDB();
60299
60294
  const dbRole = await db.get(getDBRoleID(roleId));
60300
- role = Object.assign(role, dbRole);
60295
+ role = Object.assign(role || {}, dbRole);
60301
60296
  role._id = getExternalRoleID(role._id, role.version);
60302
60297
  } catch (err) {
60303
60298
  if (!isBuiltin(roleId) && opts?.defaultPublic) {
60304
60299
  return (0, import_cloneDeep2.default)(BUILTIN_ROLES.PUBLIC);
60305
60300
  }
60306
- if (Object.keys(role).length === 0) {
60301
+ if (!role || Object.keys(role).length === 0) {
60307
60302
  throw err;
60308
60303
  }
60309
60304
  }