@budibase/backend-core 2.8.30 → 2.8.31-alpha.0

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.
Files changed (132) hide show
  1. package/dist/jest.config.js +10 -4
  2. package/dist/jest.config.js.map +1 -1
  3. package/dist/package.json +14 -26
  4. package/dist/src/auth/auth.js.map +1 -1
  5. package/dist/src/cache/appMetadata.d.ts +7 -1
  6. package/dist/src/cache/appMetadata.js +5 -8
  7. package/dist/src/cache/appMetadata.js.map +1 -1
  8. package/dist/src/cache/user.js.map +1 -1
  9. package/dist/src/constants/db.d.ts +1 -39
  10. package/dist/src/constants/db.js +8 -43
  11. package/dist/src/constants/db.js.map +1 -1
  12. package/dist/src/constants/misc.d.ts +2 -0
  13. package/dist/src/constants/misc.js +2 -0
  14. package/dist/src/constants/misc.js.map +1 -1
  15. package/dist/src/db/constants.d.ts +2 -0
  16. package/dist/src/db/constants.js +13 -0
  17. package/dist/src/db/constants.js.map +1 -0
  18. package/dist/src/db/couch/index.d.ts +1 -0
  19. package/dist/src/db/couch/index.js +1 -0
  20. package/dist/src/db/couch/index.js.map +1 -1
  21. package/dist/src/db/searchIndexes/searchIndexes.js.map +1 -1
  22. package/dist/src/db/utils.js +7 -2
  23. package/dist/src/db/utils.js.map +1 -1
  24. package/dist/src/db/views.d.ts +0 -1
  25. package/dist/src/db/views.js +1 -12
  26. package/dist/src/db/views.js.map +1 -1
  27. package/dist/src/environment.d.ts +11 -4
  28. package/dist/src/environment.js +21 -70
  29. package/dist/src/environment.js.map +1 -1
  30. package/dist/src/events/identification.js +3 -3
  31. package/dist/src/events/identification.js.map +1 -1
  32. package/dist/src/logging/index.d.ts +1 -1
  33. package/dist/src/logging/index.js +2 -3
  34. package/dist/src/logging/index.js.map +1 -1
  35. package/dist/src/logging/pino/logger.js +40 -24
  36. package/dist/src/logging/pino/logger.js.map +1 -1
  37. package/dist/src/logging/system.d.ts +9 -0
  38. package/dist/src/logging/system.js +101 -0
  39. package/dist/src/logging/system.js.map +1 -0
  40. package/dist/src/middleware/adminOnly.d.ts +2 -2
  41. package/dist/src/middleware/adminOnly.js +2 -2
  42. package/dist/src/middleware/adminOnly.js.map +1 -1
  43. package/dist/src/middleware/builderOnly.d.ts +2 -2
  44. package/dist/src/middleware/builderOnly.js +16 -2
  45. package/dist/src/middleware/builderOnly.js.map +1 -1
  46. package/dist/src/middleware/builderOrAdmin.d.ts +2 -2
  47. package/dist/src/middleware/builderOrAdmin.js +17 -4
  48. package/dist/src/middleware/builderOrAdmin.js.map +1 -1
  49. package/dist/src/security/permissions.d.ts +31 -18
  50. package/dist/src/security/permissions.js +46 -57
  51. package/dist/src/security/permissions.js.map +1 -1
  52. package/dist/src/security/roles.js +7 -4
  53. package/dist/src/security/roles.js.map +1 -1
  54. package/dist/src/users/db.d.ts +38 -0
  55. package/dist/src/users/db.js +407 -0
  56. package/dist/src/users/db.js.map +1 -0
  57. package/dist/src/users/events.d.ts +5 -0
  58. package/dist/src/users/events.js +169 -0
  59. package/dist/src/users/events.js.map +1 -0
  60. package/dist/src/users/index.d.ts +4 -0
  61. package/dist/src/users/index.js +23 -0
  62. package/dist/src/users/index.js.map +1 -0
  63. package/dist/src/users/lookup.d.ts +13 -0
  64. package/dist/src/users/lookup.js +112 -0
  65. package/dist/src/users/lookup.js.map +1 -0
  66. package/dist/src/{users.d.ts → users/users.d.ts} +4 -2
  67. package/dist/src/{users.js → users/users.js} +24 -4
  68. package/dist/src/users/users.js.map +1 -0
  69. package/dist/src/users/utils.d.ts +14 -0
  70. package/dist/src/users/utils.js +92 -0
  71. package/dist/src/users/utils.js.map +1 -0
  72. package/dist/tests/core/utilities/jestUtils.d.ts +7 -0
  73. package/dist/tests/core/utilities/jestUtils.js +14 -1
  74. package/dist/tests/core/utilities/jestUtils.js.map +1 -1
  75. package/dist/tests/core/utilities/mocks/events.d.ts +0 -1
  76. package/dist/tests/core/utilities/mocks/events.js +0 -1
  77. package/dist/tests/core/utilities/mocks/events.js.map +1 -1
  78. package/dist/tests/core/utilities/mocks/licenses.d.ts +1 -0
  79. package/dist/tests/core/utilities/mocks/licenses.js +8 -4
  80. package/dist/tests/core/utilities/mocks/licenses.js.map +1 -1
  81. package/dist/tests/core/utilities/structures/accounts.js +3 -3
  82. package/dist/tests/core/utilities/structures/accounts.js.map +1 -1
  83. package/dist/tests/core/utilities/structures/scim.js +1 -5
  84. package/dist/tests/core/utilities/structures/scim.js.map +1 -1
  85. package/dist/tests/core/utilities/structures/sso.js +2 -2
  86. package/dist/tests/core/utilities/structures/sso.js.map +1 -1
  87. package/dist/tests/core/utilities/structures/users.d.ts +3 -1
  88. package/dist/tests/core/utilities/structures/users.js +13 -1
  89. package/dist/tests/core/utilities/structures/users.js.map +1 -1
  90. package/dist/tsconfig.build.tsbuildinfo +1 -1
  91. package/jest.config.ts +1 -2
  92. package/package.json +14 -26
  93. package/scripts/test.sh +2 -2
  94. package/src/auth/auth.ts +1 -1
  95. package/src/cache/appMetadata.ts +10 -8
  96. package/src/cache/tests/writethrough.spec.ts +7 -7
  97. package/src/cache/user.ts +1 -1
  98. package/src/constants/db.ts +4 -42
  99. package/src/constants/misc.ts +2 -0
  100. package/src/db/constants.ts +10 -0
  101. package/src/db/couch/index.ts +1 -0
  102. package/src/db/searchIndexes/searchIndexes.ts +1 -1
  103. package/src/db/utils.ts +9 -3
  104. package/src/db/views.ts +0 -11
  105. package/src/environment.ts +24 -4
  106. package/src/events/identification.ts +3 -2
  107. package/src/logging/index.ts +1 -3
  108. package/src/logging/pino/logger.ts +45 -24
  109. package/src/logging/system.ts +81 -0
  110. package/src/logging/tests/system.spec.ts +61 -0
  111. package/src/middleware/adminOnly.ts +4 -6
  112. package/src/middleware/builderOnly.ts +15 -6
  113. package/src/middleware/builderOrAdmin.ts +16 -8
  114. package/src/middleware/tests/builder.spec.ts +180 -0
  115. package/src/security/permissions.ts +5 -21
  116. package/src/security/roles.ts +1 -1
  117. package/src/security/tests/permissions.spec.ts +1 -1
  118. package/src/users/db.ts +460 -0
  119. package/src/users/events.ts +176 -0
  120. package/src/users/index.ts +4 -0
  121. package/src/users/lookup.ts +102 -0
  122. package/src/{users.ts → users/users.ts} +33 -7
  123. package/src/users/utils.ts +55 -0
  124. package/tests/core/utilities/jestUtils.ts +21 -0
  125. package/tests/core/utilities/mocks/events.ts +0 -2
  126. package/tests/core/utilities/mocks/licenses.ts +7 -3
  127. package/tests/core/utilities/structures/accounts.ts +3 -5
  128. package/tests/core/utilities/structures/scim.ts +4 -5
  129. package/tests/core/utilities/structures/sso.ts +2 -2
  130. package/tests/core/utilities/structures/users.ts +19 -0
  131. package/tsconfig.json +2 -2
  132. package/dist/src/users.js.map +0 -1
@@ -1,28 +1,14 @@
1
+ import { PermissionType, PermissionLevel } from "@budibase/types";
2
+ export { PermissionType, PermissionLevel } from "@budibase/types";
1
3
  export declare type RoleHierarchy = {
2
4
  permissionId: string;
3
5
  }[];
4
- export declare enum PermissionLevel {
5
- READ = "read",
6
- WRITE = "write",
7
- EXECUTE = "execute",
8
- ADMIN = "admin"
9
- }
10
- export declare enum PermissionType {
11
- APP = "app",
12
- TABLE = "table",
13
- USER = "user",
14
- AUTOMATION = "automation",
15
- WEBHOOK = "webhook",
16
- BUILDER = "builder",
17
- VIEW = "view",
18
- QUERY = "query"
19
- }
20
6
  export declare class Permission {
21
7
  type: PermissionType;
22
8
  level: PermissionLevel;
23
9
  constructor(type: PermissionType, level: PermissionLevel);
24
10
  }
25
- export declare function levelToNumber(perm: PermissionLevel): 1 | 0 | 2 | -1 | 3;
11
+ export declare function levelToNumber(perm: PermissionLevel): 2 | 1 | 0 | -1 | 3;
26
12
  /**
27
13
  * Given the specified permission level for the user return the levels they are allowed to carry out.
28
14
  * @param {string} userPermLevel The permission level of the user.
@@ -63,7 +49,33 @@ export declare const BUILTIN_PERMISSIONS: {
63
49
  permissions: Permission[];
64
50
  };
65
51
  };
66
- export declare function getBuiltinPermissions(): any;
52
+ export declare function getBuiltinPermissions(): {
53
+ PUBLIC: {
54
+ _id: BuiltinPermissionID;
55
+ name: string;
56
+ permissions: Permission[];
57
+ };
58
+ READ_ONLY: {
59
+ _id: BuiltinPermissionID;
60
+ name: string;
61
+ permissions: Permission[];
62
+ };
63
+ WRITE: {
64
+ _id: BuiltinPermissionID;
65
+ name: string;
66
+ permissions: Permission[];
67
+ };
68
+ POWER: {
69
+ _id: BuiltinPermissionID;
70
+ name: string;
71
+ permissions: Permission[];
72
+ };
73
+ ADMIN: {
74
+ _id: BuiltinPermissionID;
75
+ name: string;
76
+ permissions: Permission[];
77
+ };
78
+ };
67
79
  export declare function getBuiltinPermissionByID(id: string): {
68
80
  _id: BuiltinPermissionID;
69
81
  name: string;
@@ -88,3 +100,4 @@ export declare function getBuiltinPermissionByID(id: string): {
88
100
  export declare function doesHaveBasePermission(permType: PermissionType, permLevel: PermissionLevel, rolesHierarchy: RoleHierarchy): boolean;
89
101
  export declare function isPermissionLevelHigherThanRead(level: PermissionLevel): boolean;
90
102
  export declare const BUILDER = PermissionType.BUILDER;
103
+ export declare const GLOBAL_BUILDER = PermissionType.GLOBAL_BUILDER;
@@ -1,27 +1,15 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BUILDER = exports.isPermissionLevelHigherThanRead = exports.doesHaveBasePermission = exports.getBuiltinPermissionByID = exports.getBuiltinPermissions = exports.BUILTIN_PERMISSIONS = exports.BuiltinPermissionID = exports.getAllowedLevels = exports.levelToNumber = exports.Permission = exports.PermissionType = exports.PermissionLevel = void 0;
4
- const { flatten } = require("lodash");
5
- const { cloneDeep } = require("lodash/fp");
6
- var PermissionLevel;
7
- (function (PermissionLevel) {
8
- PermissionLevel["READ"] = "read";
9
- PermissionLevel["WRITE"] = "write";
10
- PermissionLevel["EXECUTE"] = "execute";
11
- PermissionLevel["ADMIN"] = "admin";
12
- })(PermissionLevel = exports.PermissionLevel || (exports.PermissionLevel = {}));
13
- // these are the global types, that govern the underlying default behaviour
14
- var PermissionType;
15
- (function (PermissionType) {
16
- PermissionType["APP"] = "app";
17
- PermissionType["TABLE"] = "table";
18
- PermissionType["USER"] = "user";
19
- PermissionType["AUTOMATION"] = "automation";
20
- PermissionType["WEBHOOK"] = "webhook";
21
- PermissionType["BUILDER"] = "builder";
22
- PermissionType["VIEW"] = "view";
23
- PermissionType["QUERY"] = "query";
24
- })(PermissionType = exports.PermissionType || (exports.PermissionType = {}));
6
+ exports.GLOBAL_BUILDER = exports.BUILDER = exports.isPermissionLevelHigherThanRead = exports.doesHaveBasePermission = exports.getBuiltinPermissionByID = exports.getBuiltinPermissions = exports.BUILTIN_PERMISSIONS = exports.BuiltinPermissionID = exports.getAllowedLevels = exports.levelToNumber = exports.Permission = exports.PermissionLevel = exports.PermissionType = void 0;
7
+ const types_1 = require("@budibase/types");
8
+ var types_2 = require("@budibase/types");
9
+ Object.defineProperty(exports, "PermissionType", { enumerable: true, get: function () { return types_2.PermissionType; } });
10
+ Object.defineProperty(exports, "PermissionLevel", { enumerable: true, get: function () { return types_2.PermissionLevel; } });
11
+ const flatten_1 = __importDefault(require("lodash/flatten"));
12
+ const cloneDeep_1 = __importDefault(require("lodash/fp/cloneDeep"));
25
13
  class Permission {
26
14
  constructor(type, level) {
27
15
  this.type = type;
@@ -32,13 +20,13 @@ exports.Permission = Permission;
32
20
  function levelToNumber(perm) {
33
21
  switch (perm) {
34
22
  // not everything has execute privileges
35
- case PermissionLevel.EXECUTE:
23
+ case types_1.PermissionLevel.EXECUTE:
36
24
  return 0;
37
- case PermissionLevel.READ:
25
+ case types_1.PermissionLevel.READ:
38
26
  return 1;
39
- case PermissionLevel.WRITE:
27
+ case types_1.PermissionLevel.WRITE:
40
28
  return 2;
41
- case PermissionLevel.ADMIN:
29
+ case types_1.PermissionLevel.ADMIN:
42
30
  return 3;
43
31
  default:
44
32
  return -1;
@@ -52,16 +40,16 @@ exports.levelToNumber = levelToNumber;
52
40
  */
53
41
  function getAllowedLevels(userPermLevel) {
54
42
  switch (userPermLevel) {
55
- case PermissionLevel.EXECUTE:
56
- return [PermissionLevel.EXECUTE];
57
- case PermissionLevel.READ:
58
- return [PermissionLevel.EXECUTE, PermissionLevel.READ];
59
- case PermissionLevel.WRITE:
60
- case PermissionLevel.ADMIN:
43
+ case types_1.PermissionLevel.EXECUTE:
44
+ return [types_1.PermissionLevel.EXECUTE];
45
+ case types_1.PermissionLevel.READ:
46
+ return [types_1.PermissionLevel.EXECUTE, types_1.PermissionLevel.READ];
47
+ case types_1.PermissionLevel.WRITE:
48
+ case types_1.PermissionLevel.ADMIN:
61
49
  return [
62
- PermissionLevel.EXECUTE,
63
- PermissionLevel.READ,
64
- PermissionLevel.WRITE,
50
+ types_1.PermissionLevel.EXECUTE,
51
+ types_1.PermissionLevel.READ,
52
+ types_1.PermissionLevel.WRITE,
65
53
  ];
66
54
  default:
67
55
  return [];
@@ -81,54 +69,54 @@ exports.BUILTIN_PERMISSIONS = {
81
69
  _id: BuiltinPermissionID.PUBLIC,
82
70
  name: "Public",
83
71
  permissions: [
84
- new Permission(PermissionType.WEBHOOK, PermissionLevel.EXECUTE),
72
+ new Permission(types_1.PermissionType.WEBHOOK, types_1.PermissionLevel.EXECUTE),
85
73
  ],
86
74
  },
87
75
  READ_ONLY: {
88
76
  _id: BuiltinPermissionID.READ_ONLY,
89
77
  name: "Read only",
90
78
  permissions: [
91
- new Permission(PermissionType.QUERY, PermissionLevel.READ),
92
- new Permission(PermissionType.TABLE, PermissionLevel.READ),
93
- new Permission(PermissionType.VIEW, PermissionLevel.READ),
79
+ new Permission(types_1.PermissionType.QUERY, types_1.PermissionLevel.READ),
80
+ new Permission(types_1.PermissionType.TABLE, types_1.PermissionLevel.READ),
81
+ new Permission(types_1.PermissionType.VIEW, types_1.PermissionLevel.READ),
94
82
  ],
95
83
  },
96
84
  WRITE: {
97
85
  _id: BuiltinPermissionID.WRITE,
98
86
  name: "Read/Write",
99
87
  permissions: [
100
- new Permission(PermissionType.QUERY, PermissionLevel.WRITE),
101
- new Permission(PermissionType.TABLE, PermissionLevel.WRITE),
102
- new Permission(PermissionType.VIEW, PermissionLevel.READ),
103
- new Permission(PermissionType.AUTOMATION, PermissionLevel.EXECUTE),
88
+ new Permission(types_1.PermissionType.QUERY, types_1.PermissionLevel.WRITE),
89
+ new Permission(types_1.PermissionType.TABLE, types_1.PermissionLevel.WRITE),
90
+ new Permission(types_1.PermissionType.VIEW, types_1.PermissionLevel.READ),
91
+ new Permission(types_1.PermissionType.AUTOMATION, types_1.PermissionLevel.EXECUTE),
104
92
  ],
105
93
  },
106
94
  POWER: {
107
95
  _id: BuiltinPermissionID.POWER,
108
96
  name: "Power",
109
97
  permissions: [
110
- new Permission(PermissionType.TABLE, PermissionLevel.WRITE),
111
- new Permission(PermissionType.USER, PermissionLevel.READ),
112
- new Permission(PermissionType.AUTOMATION, PermissionLevel.EXECUTE),
113
- new Permission(PermissionType.VIEW, PermissionLevel.READ),
114
- new Permission(PermissionType.WEBHOOK, PermissionLevel.READ),
98
+ new Permission(types_1.PermissionType.TABLE, types_1.PermissionLevel.WRITE),
99
+ new Permission(types_1.PermissionType.USER, types_1.PermissionLevel.READ),
100
+ new Permission(types_1.PermissionType.AUTOMATION, types_1.PermissionLevel.EXECUTE),
101
+ new Permission(types_1.PermissionType.VIEW, types_1.PermissionLevel.READ),
102
+ new Permission(types_1.PermissionType.WEBHOOK, types_1.PermissionLevel.READ),
115
103
  ],
116
104
  },
117
105
  ADMIN: {
118
106
  _id: BuiltinPermissionID.ADMIN,
119
107
  name: "Admin",
120
108
  permissions: [
121
- new Permission(PermissionType.TABLE, PermissionLevel.ADMIN),
122
- new Permission(PermissionType.USER, PermissionLevel.ADMIN),
123
- new Permission(PermissionType.AUTOMATION, PermissionLevel.ADMIN),
124
- new Permission(PermissionType.VIEW, PermissionLevel.ADMIN),
125
- new Permission(PermissionType.WEBHOOK, PermissionLevel.READ),
126
- new Permission(PermissionType.QUERY, PermissionLevel.ADMIN),
109
+ new Permission(types_1.PermissionType.TABLE, types_1.PermissionLevel.ADMIN),
110
+ new Permission(types_1.PermissionType.USER, types_1.PermissionLevel.ADMIN),
111
+ new Permission(types_1.PermissionType.AUTOMATION, types_1.PermissionLevel.ADMIN),
112
+ new Permission(types_1.PermissionType.VIEW, types_1.PermissionLevel.ADMIN),
113
+ new Permission(types_1.PermissionType.WEBHOOK, types_1.PermissionLevel.READ),
114
+ new Permission(types_1.PermissionType.QUERY, types_1.PermissionLevel.ADMIN),
127
115
  ],
128
116
  },
129
117
  };
130
118
  function getBuiltinPermissions() {
131
- return cloneDeep(exports.BUILTIN_PERMISSIONS);
119
+ return (0, cloneDeep_1.default)(exports.BUILTIN_PERMISSIONS);
132
120
  }
133
121
  exports.getBuiltinPermissions = getBuiltinPermissions;
134
122
  function getBuiltinPermissionByID(id) {
@@ -141,7 +129,7 @@ function doesHaveBasePermission(permType, permLevel, rolesHierarchy) {
141
129
  ...new Set(rolesHierarchy.map(role => role.permissionId)),
142
130
  ];
143
131
  const builtins = Object.values(exports.BUILTIN_PERMISSIONS);
144
- let permissions = flatten(builtins
132
+ let permissions = (0, flatten_1.default)(builtins
145
133
  .filter(builtin => basePermissions.indexOf(builtin._id) !== -1)
146
134
  .map(builtin => builtin.permissions));
147
135
  for (let permission of permissions) {
@@ -158,5 +146,6 @@ function isPermissionLevelHigherThanRead(level) {
158
146
  }
159
147
  exports.isPermissionLevelHigherThanRead = isPermissionLevelHigherThanRead;
160
148
  // utility as a lot of things need simply the builder permission
161
- exports.BUILDER = PermissionType.BUILDER;
149
+ exports.BUILDER = types_1.PermissionType.BUILDER;
150
+ exports.GLOBAL_BUILDER = types_1.PermissionType.GLOBAL_BUILDER;
162
151
  //# sourceMappingURL=permissions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../../src/security/permissions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../../src/security/permissions.ts"],"names":[],"mappings":"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"}
@@ -8,13 +8,16 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
15
  exports.getExternalRoleID = exports.getDBRoleID = exports.AccessController = exports.getRequiredResourceRole = exports.getAllRoles = exports.checkForRoleResourceArray = exports.getUserRoleHierarchy = exports.getRole = exports.lowerBuiltinRoleID = exports.roleToNumber = exports.builtinRoleToNumber = exports.isBuiltin = exports.BUILTIN_ROLE_NAME_ARRAY = exports.BUILTIN_ROLE_ID_ARRAY = exports.getBuiltinRoles = exports.Role = exports.RoleIDVersion = exports.BUILTIN_ROLE_IDS = void 0;
13
16
  const permissions_1 = require("./permissions");
14
17
  const db_1 = require("../db");
15
18
  const context_1 = require("../context");
16
19
  const db_2 = require("../db");
17
- const { cloneDeep } = require("lodash/fp");
20
+ const cloneDeep_1 = __importDefault(require("lodash/fp/cloneDeep"));
18
21
  exports.BUILTIN_ROLE_IDS = {
19
22
  ADMIN: "ADMIN",
20
23
  POWER: "POWER",
@@ -58,7 +61,7 @@ const BUILTIN_ROLES = {
58
61
  BUILDER: new Role(BUILTIN_IDS.BUILDER, "Builder", permissions_1.BuiltinPermissionID.ADMIN),
59
62
  };
60
63
  function getBuiltinRoles() {
61
- return cloneDeep(BUILTIN_ROLES);
64
+ return (0, cloneDeep_1.default)(BUILTIN_ROLES);
62
65
  }
63
66
  exports.getBuiltinRoles = getBuiltinRoles;
64
67
  exports.BUILTIN_ROLE_ID_ARRAY = Object.values(BUILTIN_ROLES).map(role => role._id);
@@ -139,7 +142,7 @@ function getRole(roleId, opts) {
139
142
  // built in roles mostly come from the in-code implementation,
140
143
  // but can be extended by a doc stored about them (e.g. permissions)
141
144
  if (isBuiltin(roleId)) {
142
- role = cloneDeep(Object.values(BUILTIN_ROLES).find(role => role._id === roleId));
145
+ role = (0, cloneDeep_1.default)(Object.values(BUILTIN_ROLES).find(role => role._id === roleId));
143
146
  }
144
147
  else {
145
148
  // make sure has the prefix (if it has it then it won't be added)
@@ -154,7 +157,7 @@ function getRole(roleId, opts) {
154
157
  }
155
158
  catch (err) {
156
159
  if (!isBuiltin(roleId) && (opts === null || opts === void 0 ? void 0 : opts.defaultPublic)) {
157
- return cloneDeep(BUILTIN_ROLES.PUBLIC);
160
+ return (0, cloneDeep_1.default)(BUILTIN_ROLES.PUBLIC);
158
161
  }
159
162
  // only throw an error if there is no role at all
160
163
  if (Object.keys(role).length === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"roles.js","sourceRoot":"","sources":["../../../src/security/roles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"roles.js","sourceRoot":"","sources":["../../../src/security/roles.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { BulkUserCreated, BulkUserDeleted, SaveUserOpts, User, Account } from "@budibase/types";
2
+ declare type QuotaUpdateFn = (change: number, cb?: () => Promise<any>) => Promise<any>;
3
+ declare type GroupUpdateFn = (groupId: string, userIds: string[]) => Promise<any>;
4
+ declare type FeatureFn = () => Promise<Boolean>;
5
+ declare type QuotaFns = {
6
+ addUsers: QuotaUpdateFn;
7
+ removeUsers: QuotaUpdateFn;
8
+ };
9
+ declare type GroupFns = {
10
+ addUsers: GroupUpdateFn;
11
+ };
12
+ declare type FeatureFns = {
13
+ isSSOEnforced: FeatureFn;
14
+ isAppBuildersEnabled: FeatureFn;
15
+ };
16
+ export declare class UserDB {
17
+ static quotas: QuotaFns;
18
+ static groups: GroupFns;
19
+ static features: FeatureFns;
20
+ static init(quotaFns: QuotaFns, groupFns: GroupFns, featureFns: FeatureFns): void;
21
+ static isPreventPasswordActions(user: User, account?: Account): Promise<boolean>;
22
+ static buildUser(user: User, opts: SaveUserOpts | undefined, tenantId: string, dbUser?: any, account?: Account): Promise<User>;
23
+ static allUsers(): Promise<any[]>;
24
+ static countUsersByApp(appId: string): Promise<{
25
+ userCount: any;
26
+ }>;
27
+ static getUsersByAppAccess(appId?: string): Promise<User[]>;
28
+ static getUserByEmail(email: string): Promise<User | undefined>;
29
+ /**
30
+ * Gets a user by ID from the global database, based on the current tenancy.
31
+ */
32
+ static getUser(userId: string): Promise<User>;
33
+ static save(user: User, opts?: SaveUserOpts): Promise<User>;
34
+ static bulkCreate(newUsersRequested: User[], groups: string[]): Promise<BulkUserCreated>;
35
+ static bulkDelete(userIds: string[]): Promise<BulkUserDeleted>;
36
+ static destroy(id: string): Promise<void>;
37
+ }
38
+ export {};