@stamhoofd/structures 2.73.3 → 2.75.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 (217) hide show
  1. package/dist/index.d.ts +3 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +18 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/AccessRight.d.ts.map +1 -1
  6. package/dist/src/AccessRight.js +2 -0
  7. package/dist/src/AccessRight.js.map +1 -1
  8. package/dist/src/Event.d.ts +2 -1
  9. package/dist/src/Event.d.ts.map +1 -1
  10. package/dist/src/Event.js +6 -2
  11. package/dist/src/Event.js.map +1 -1
  12. package/dist/src/EventNotification.d.ts +36 -0
  13. package/dist/src/EventNotification.d.ts.map +1 -0
  14. package/dist/src/EventNotification.js +103 -0
  15. package/dist/src/EventNotification.js.map +1 -0
  16. package/dist/src/EventNotificationStatus.d.ts +10 -0
  17. package/dist/src/EventNotificationStatus.d.ts.map +1 -0
  18. package/dist/src/EventNotificationStatus.js +26 -0
  19. package/dist/src/EventNotificationStatus.js.map +1 -0
  20. package/dist/src/EventNotificationType.d.ts +4 -29
  21. package/dist/src/EventNotificationType.d.ts.map +1 -1
  22. package/dist/src/EventNotificationType.js +8 -59
  23. package/dist/src/EventNotificationType.js.map +1 -1
  24. package/dist/src/LoadedPermissions.d.ts +17 -8
  25. package/dist/src/LoadedPermissions.d.ts.map +1 -1
  26. package/dist/src/LoadedPermissions.js +157 -112
  27. package/dist/src/LoadedPermissions.js.map +1 -1
  28. package/dist/src/PermissionRole.d.ts +12 -0
  29. package/dist/src/PermissionRole.d.ts.map +1 -1
  30. package/dist/src/PermissionRole.js +22 -1
  31. package/dist/src/PermissionRole.js.map +1 -1
  32. package/dist/src/PermissionsByRole.d.ts +0 -5
  33. package/dist/src/PermissionsByRole.d.ts.map +1 -1
  34. package/dist/src/PermissionsByRole.js +0 -42
  35. package/dist/src/PermissionsByRole.js.map +1 -1
  36. package/dist/src/ResourcePermissions.d.ts +1 -0
  37. package/dist/src/ResourcePermissions.d.ts.map +1 -1
  38. package/dist/src/ResourcePermissions.js +3 -0
  39. package/dist/src/ResourcePermissions.js.map +1 -1
  40. package/dist/src/UserPermissions.d.ts +1 -0
  41. package/dist/src/UserPermissions.d.ts.map +1 -1
  42. package/dist/src/UserPermissions.js +70 -32
  43. package/dist/src/UserPermissions.js.map +1 -1
  44. package/dist/src/Version.d.ts +1 -1
  45. package/dist/src/Version.js +1 -1
  46. package/dist/src/addresses/Address.d.ts.map +1 -1
  47. package/dist/src/addresses/Address.js +7 -0
  48. package/dist/src/addresses/Address.js.map +1 -1
  49. package/dist/src/circular-dependencies/ExampleReplacementsDependencies.js +3 -3
  50. package/dist/src/circular-dependencies/ExampleReplacementsDependencies.js.map +1 -1
  51. package/dist/src/email/EditorSmartButton.d.ts.map +1 -1
  52. package/dist/src/email/EditorSmartButton.js +6 -0
  53. package/dist/src/email/EditorSmartButton.js.map +1 -1
  54. package/dist/src/email/EditorSmartVariable.d.ts.map +1 -1
  55. package/dist/src/email/EditorSmartVariable.js +32 -5
  56. package/dist/src/email/EditorSmartVariable.js.map +1 -1
  57. package/dist/src/email/EmailTemplate.d.ts +8 -1
  58. package/dist/src/email/EmailTemplate.d.ts.map +1 -1
  59. package/dist/src/email/EmailTemplate.js +36 -0
  60. package/dist/src/email/EmailTemplate.js.map +1 -1
  61. package/dist/src/email/exampleReplacements.d.ts +5 -0
  62. package/dist/src/email/exampleReplacements.d.ts.map +1 -1
  63. package/dist/src/email/exampleReplacements.js +210 -186
  64. package/dist/src/email/exampleReplacements.js.map +1 -1
  65. package/dist/src/endpoints/ChargeMembershipsSummary.d.ts.map +1 -1
  66. package/dist/src/endpoints/ChargeMembershipsSummary.js +1 -0
  67. package/dist/src/endpoints/ChargeMembershipsSummary.js.map +1 -1
  68. package/dist/src/files/File.d.ts +23 -0
  69. package/dist/src/files/File.d.ts.map +1 -1
  70. package/dist/src/files/File.js +75 -3
  71. package/dist/src/files/File.js.map +1 -1
  72. package/dist/src/files/Resolution.d.ts +3 -0
  73. package/dist/src/files/Resolution.d.ts.map +1 -1
  74. package/dist/src/filters/InMemoryFilter.d.ts +4 -2
  75. package/dist/src/filters/InMemoryFilter.d.ts.map +1 -1
  76. package/dist/src/filters/InMemoryFilter.js +58 -14
  77. package/dist/src/filters/InMemoryFilter.js.map +1 -1
  78. package/dist/src/filters/inMemoryFilterDefinitions.d.ts +2 -0
  79. package/dist/src/filters/inMemoryFilterDefinitions.d.ts.map +1 -1
  80. package/dist/src/filters/inMemoryFilterDefinitions.js +19 -1
  81. package/dist/src/filters/inMemoryFilterDefinitions.js.map +1 -1
  82. package/dist/src/helpers/EventPermissionChecker.js +1 -1
  83. package/dist/src/helpers/EventPermissionChecker.js.map +1 -1
  84. package/dist/src/members/MemberPlatformMembership.d.ts +1 -0
  85. package/dist/src/members/MemberPlatformMembership.d.ts.map +1 -1
  86. package/dist/src/members/MemberPlatformMembership.js +5 -0
  87. package/dist/src/members/MemberPlatformMembership.js.map +1 -1
  88. package/dist/src/members/ObjectWithRecords.d.ts +3 -0
  89. package/dist/src/members/ObjectWithRecords.d.ts.map +1 -1
  90. package/dist/src/members/checkout/RegisterCart.d.ts.map +1 -1
  91. package/dist/src/members/checkout/RegisterCart.js +8 -0
  92. package/dist/src/members/checkout/RegisterCart.js.map +1 -1
  93. package/dist/src/members/checkout/RegisterItem.d.ts +1 -0
  94. package/dist/src/members/checkout/RegisterItem.d.ts.map +1 -1
  95. package/dist/src/members/checkout/RegisterItem.js +3 -0
  96. package/dist/src/members/checkout/RegisterItem.js.map +1 -1
  97. package/dist/src/members/records/RecordAnswer.d.ts +18 -0
  98. package/dist/src/members/records/RecordAnswer.d.ts.map +1 -1
  99. package/dist/src/members/records/RecordAnswer.js +36 -1
  100. package/dist/src/members/records/RecordAnswer.js.map +1 -1
  101. package/dist/src/members/records/RecordCategory.d.ts +13 -17
  102. package/dist/src/members/records/RecordCategory.d.ts.map +1 -1
  103. package/dist/src/members/records/RecordCategory.js +88 -39
  104. package/dist/src/members/records/RecordCategory.js.map +1 -1
  105. package/dist/src/members/records/RecordSettings.d.ts +22 -6
  106. package/dist/src/members/records/RecordSettings.d.ts.map +1 -1
  107. package/dist/src/members/records/RecordSettings.js +56 -15
  108. package/dist/src/members/records/RecordSettings.js.map +1 -1
  109. package/esm/dist/index.d.ts +3 -1
  110. package/esm/dist/index.d.ts.map +1 -1
  111. package/esm/dist/index.js +18 -1
  112. package/esm/dist/index.js.map +1 -1
  113. package/esm/dist/src/AccessRight.d.ts.map +1 -1
  114. package/esm/dist/src/AccessRight.js +2 -0
  115. package/esm/dist/src/AccessRight.js.map +1 -1
  116. package/esm/dist/src/Event.d.ts +2 -1
  117. package/esm/dist/src/Event.d.ts.map +1 -1
  118. package/esm/dist/src/Event.js +6 -2
  119. package/esm/dist/src/Event.js.map +1 -1
  120. package/esm/dist/src/EventNotification.d.ts +36 -0
  121. package/esm/dist/src/EventNotification.d.ts.map +1 -0
  122. package/esm/dist/src/EventNotification.js +99 -0
  123. package/esm/dist/src/EventNotification.js.map +1 -0
  124. package/esm/dist/src/EventNotificationStatus.d.ts +10 -0
  125. package/esm/dist/src/EventNotificationStatus.d.ts.map +1 -0
  126. package/esm/dist/src/EventNotificationStatus.js +22 -0
  127. package/esm/dist/src/EventNotificationStatus.js.map +1 -0
  128. package/esm/dist/src/EventNotificationType.d.ts +4 -29
  129. package/esm/dist/src/EventNotificationType.d.ts.map +1 -1
  130. package/esm/dist/src/EventNotificationType.js +8 -58
  131. package/esm/dist/src/EventNotificationType.js.map +1 -1
  132. package/esm/dist/src/LoadedPermissions.d.ts +17 -8
  133. package/esm/dist/src/LoadedPermissions.d.ts.map +1 -1
  134. package/esm/dist/src/LoadedPermissions.js +158 -113
  135. package/esm/dist/src/LoadedPermissions.js.map +1 -1
  136. package/esm/dist/src/PermissionRole.d.ts +12 -0
  137. package/esm/dist/src/PermissionRole.d.ts.map +1 -1
  138. package/esm/dist/src/PermissionRole.js +22 -1
  139. package/esm/dist/src/PermissionRole.js.map +1 -1
  140. package/esm/dist/src/PermissionsByRole.d.ts +0 -5
  141. package/esm/dist/src/PermissionsByRole.d.ts.map +1 -1
  142. package/esm/dist/src/PermissionsByRole.js +1 -43
  143. package/esm/dist/src/PermissionsByRole.js.map +1 -1
  144. package/esm/dist/src/ResourcePermissions.d.ts +1 -0
  145. package/esm/dist/src/ResourcePermissions.d.ts.map +1 -1
  146. package/esm/dist/src/ResourcePermissions.js +3 -0
  147. package/esm/dist/src/ResourcePermissions.js.map +1 -1
  148. package/esm/dist/src/UserPermissions.d.ts +1 -0
  149. package/esm/dist/src/UserPermissions.d.ts.map +1 -1
  150. package/esm/dist/src/UserPermissions.js +70 -32
  151. package/esm/dist/src/UserPermissions.js.map +1 -1
  152. package/esm/dist/src/Version.d.ts +1 -1
  153. package/esm/dist/src/Version.js +1 -1
  154. package/esm/dist/src/addresses/Address.d.ts.map +1 -1
  155. package/esm/dist/src/addresses/Address.js +7 -0
  156. package/esm/dist/src/addresses/Address.js.map +1 -1
  157. package/esm/dist/src/circular-dependencies/ExampleReplacementsDependencies.js +3 -3
  158. package/esm/dist/src/circular-dependencies/ExampleReplacementsDependencies.js.map +1 -1
  159. package/esm/dist/src/email/EditorSmartButton.d.ts.map +1 -1
  160. package/esm/dist/src/email/EditorSmartButton.js +6 -0
  161. package/esm/dist/src/email/EditorSmartButton.js.map +1 -1
  162. package/esm/dist/src/email/EditorSmartVariable.d.ts.map +1 -1
  163. package/esm/dist/src/email/EditorSmartVariable.js +32 -5
  164. package/esm/dist/src/email/EditorSmartVariable.js.map +1 -1
  165. package/esm/dist/src/email/EmailTemplate.d.ts +8 -1
  166. package/esm/dist/src/email/EmailTemplate.d.ts.map +1 -1
  167. package/esm/dist/src/email/EmailTemplate.js +36 -0
  168. package/esm/dist/src/email/EmailTemplate.js.map +1 -1
  169. package/esm/dist/src/email/exampleReplacements.d.ts +5 -0
  170. package/esm/dist/src/email/exampleReplacements.d.ts.map +1 -1
  171. package/esm/dist/src/email/exampleReplacements.js +210 -186
  172. package/esm/dist/src/email/exampleReplacements.js.map +1 -1
  173. package/esm/dist/src/endpoints/ChargeMembershipsSummary.d.ts.map +1 -1
  174. package/esm/dist/src/endpoints/ChargeMembershipsSummary.js +1 -0
  175. package/esm/dist/src/endpoints/ChargeMembershipsSummary.js.map +1 -1
  176. package/esm/dist/src/files/File.d.ts +23 -0
  177. package/esm/dist/src/files/File.d.ts.map +1 -1
  178. package/esm/dist/src/files/File.js +75 -3
  179. package/esm/dist/src/files/File.js.map +1 -1
  180. package/esm/dist/src/files/Resolution.d.ts +3 -0
  181. package/esm/dist/src/files/Resolution.d.ts.map +1 -1
  182. package/esm/dist/src/filters/InMemoryFilter.d.ts +4 -2
  183. package/esm/dist/src/filters/InMemoryFilter.d.ts.map +1 -1
  184. package/esm/dist/src/filters/InMemoryFilter.js +57 -14
  185. package/esm/dist/src/filters/InMemoryFilter.js.map +1 -1
  186. package/esm/dist/src/filters/inMemoryFilterDefinitions.d.ts +2 -0
  187. package/esm/dist/src/filters/inMemoryFilterDefinitions.d.ts.map +1 -1
  188. package/esm/dist/src/filters/inMemoryFilterDefinitions.js +19 -1
  189. package/esm/dist/src/filters/inMemoryFilterDefinitions.js.map +1 -1
  190. package/esm/dist/src/helpers/EventPermissionChecker.js +1 -1
  191. package/esm/dist/src/helpers/EventPermissionChecker.js.map +1 -1
  192. package/esm/dist/src/members/MemberPlatformMembership.d.ts +1 -0
  193. package/esm/dist/src/members/MemberPlatformMembership.d.ts.map +1 -1
  194. package/esm/dist/src/members/MemberPlatformMembership.js +5 -0
  195. package/esm/dist/src/members/MemberPlatformMembership.js.map +1 -1
  196. package/esm/dist/src/members/ObjectWithRecords.d.ts +3 -0
  197. package/esm/dist/src/members/ObjectWithRecords.d.ts.map +1 -1
  198. package/esm/dist/src/members/checkout/RegisterCart.d.ts.map +1 -1
  199. package/esm/dist/src/members/checkout/RegisterCart.js +8 -0
  200. package/esm/dist/src/members/checkout/RegisterCart.js.map +1 -1
  201. package/esm/dist/src/members/checkout/RegisterItem.d.ts +1 -0
  202. package/esm/dist/src/members/checkout/RegisterItem.d.ts.map +1 -1
  203. package/esm/dist/src/members/checkout/RegisterItem.js +3 -0
  204. package/esm/dist/src/members/checkout/RegisterItem.js.map +1 -1
  205. package/esm/dist/src/members/records/RecordAnswer.d.ts +18 -0
  206. package/esm/dist/src/members/records/RecordAnswer.d.ts.map +1 -1
  207. package/esm/dist/src/members/records/RecordAnswer.js +34 -0
  208. package/esm/dist/src/members/records/RecordAnswer.js.map +1 -1
  209. package/esm/dist/src/members/records/RecordCategory.d.ts +13 -17
  210. package/esm/dist/src/members/records/RecordCategory.d.ts.map +1 -1
  211. package/esm/dist/src/members/records/RecordCategory.js +89 -40
  212. package/esm/dist/src/members/records/RecordCategory.js.map +1 -1
  213. package/esm/dist/src/members/records/RecordSettings.d.ts +22 -6
  214. package/esm/dist/src/members/records/RecordSettings.d.ts.map +1 -1
  215. package/esm/dist/src/members/records/RecordSettings.js +54 -14
  216. package/esm/dist/src/members/records/RecordSettings.js.map +1 -1
  217. package/package.json +2 -2
@@ -1,75 +1,119 @@
1
+ import { Formatter } from '@stamhoofd/utility';
1
2
  import { AccessRightHelper } from './AccessRight.js';
2
3
  import { PermissionLevel, getPermissionLevelNumber } from './PermissionLevel.js';
3
- import { PermissionRoleForResponsibility } from './PermissionRole.js';
4
- import { PermissionsResourceType } from './PermissionsResourceType.js';
5
- import { ResourcePermissions } from './ResourcePermissions.js';
4
+ import { getPermissionResourceTypeName, PermissionsResourceType } from './PermissionsResourceType.js';
6
5
  /**
7
6
  * Identical to Permissions but with detailed roles, loaded from the organization or platform
8
7
  */
9
8
  export class LoadedPermissions {
10
9
  constructor(data) {
11
10
  this.level = PermissionLevel.None;
12
- this.roles = [];
13
11
  this.resources = new Map();
12
+ this.accessRights = [];
14
13
  Object.assign(this, data);
15
14
  }
16
15
  static create(data) {
17
16
  return new LoadedPermissions(data);
18
17
  }
19
- static buildRoleForResponsibility(groupId, responsibilityData, inheritedResponsibilityRoles) {
20
- var _a, _b;
21
- const role = inheritedResponsibilityRoles.find(r => r.responsibilityId === responsibilityData.id && r.responsibilityGroupId === groupId);
22
- const r = (_b = (_a = responsibilityData.permissions) === null || _a === void 0 ? void 0 : _a.clone()) !== null && _b !== void 0 ? _b : PermissionRoleForResponsibility.create({
23
- id: responsibilityData.id,
24
- name: responsibilityData.name,
25
- level: PermissionLevel.None,
26
- responsibilityId: responsibilityData.id,
27
- responsibilityGroupId: groupId,
18
+ static fromResource(permissions) {
19
+ return LoadedPermissions.create({
20
+ level: permissions.level,
21
+ resources: new Map(),
22
+ accessRights: permissions.accessRights,
23
+ });
24
+ }
25
+ clone() {
26
+ const permissions = LoadedPermissions.create({
27
+ level: this.level,
28
+ resources: new Map(),
29
+ accessRights: this.accessRights,
30
+ });
31
+ for (const [type, r] of this.resources) {
32
+ if (!permissions.resources.has(type)) {
33
+ permissions.resources.set(type, new Map());
34
+ }
35
+ for (const [id, resource] of r) {
36
+ permissions.resources.get(type).set(id, resource.clone());
37
+ }
38
+ }
39
+ return permissions;
40
+ }
41
+ static fromRole(role) {
42
+ const permissions = LoadedPermissions.create({
43
+ level: role.level,
28
44
  resources: new Map(),
45
+ accessRights: role.accessRights,
29
46
  });
30
- r.name = responsibilityData.name;
31
- r.id = responsibilityData.id + (groupId ? '-' + groupId : '');
32
- r.responsibilityId = responsibilityData.id;
33
- r.responsibilityGroupId = groupId;
34
- if (groupId && responsibilityData.groupPermissionLevel !== PermissionLevel.None) {
47
+ for (const [type, r] of role.resources) {
48
+ if (!permissions.resources.has(type)) {
49
+ permissions.resources.set(type, new Map());
50
+ }
51
+ for (const [id, resource] of r) {
52
+ permissions.resources.get(type).set(id, LoadedPermissions.fromResource(resource));
53
+ }
54
+ }
55
+ return permissions;
56
+ }
57
+ static fromResponsibilityRecord(responsibilityRecord, inheritedResponsibilityRoles, allResponsibilites) {
58
+ const responsibility = allResponsibilites.find(r => r.id === responsibilityRecord.responsibilityId);
59
+ if (!responsibility) {
60
+ return LoadedPermissions.create({});
61
+ }
62
+ return this.fromResponsibility(responsibility, responsibilityRecord.groupId, inheritedResponsibilityRoles);
63
+ }
64
+ /**
65
+ * old name: buildRoleForResponsibility
66
+ */
67
+ static fromResponsibility(responsibility, groupId, inheritedResponsibilityRoles) {
68
+ const permissions = responsibility.permissions
69
+ ? this.fromRole(responsibility.permissions)
70
+ : LoadedPermissions.create({});
71
+ if (groupId && responsibility.groupPermissionLevel !== PermissionLevel.None) {
35
72
  const map = new Map();
36
- map.set(groupId, ResourcePermissions.create({ level: responsibilityData.groupPermissionLevel }));
37
- r.resources.set(PermissionsResourceType.Groups, map);
73
+ map.set(groupId, LoadedPermissions.create({ level: responsibility.groupPermissionLevel }));
74
+ permissions.resources.set(PermissionsResourceType.Groups, map);
38
75
  }
76
+ const role = inheritedResponsibilityRoles.find(r => r.responsibilityId === responsibility.id && r.responsibilityGroupId === groupId);
39
77
  if (role) {
40
- r.id = role.id;
41
- r.add(role);
78
+ permissions.add(LoadedPermissions.fromRole(role));
42
79
  }
43
- return r;
80
+ return permissions;
44
81
  }
45
82
  static from(permissions, allRoles, inheritedResponsibilityRoles, allResponsibilites) {
46
- const roles = permissions.roles.flatMap((role) => {
47
- const d = allRoles.find(a => a.id === role.id);
48
- if (d) {
49
- return [d];
50
- }
51
- return [];
83
+ const loaded = LoadedPermissions.create({
84
+ level: permissions.level,
85
+ accessRights: [],
86
+ resources: new Map(),
52
87
  });
53
- for (const responsibility of permissions.responsibilities) {
54
- if (responsibility.endDate !== null && responsibility.endDate < new Date()) {
88
+ for (const [type, r] of permissions.resources) {
89
+ if (!loaded.resources.has(type)) {
90
+ loaded.resources.set(type, new Map());
91
+ }
92
+ for (const [id, resource] of r) {
93
+ loaded.resources.get(type).set(id, LoadedPermissions.fromResource(resource));
94
+ }
95
+ }
96
+ for (const roleRecord of permissions.roles) {
97
+ const role = allRoles.find(a => a.id === roleRecord.id);
98
+ if (role) {
99
+ loaded.add(LoadedPermissions.fromRole(role));
100
+ }
101
+ }
102
+ for (const responsibilityRecord of permissions.responsibilities) {
103
+ if (responsibilityRecord.endDate !== null && responsibilityRecord.endDate < new Date()) {
55
104
  continue;
56
105
  }
57
- if (responsibility.startDate > new Date()) {
106
+ if (responsibilityRecord.startDate > new Date()) {
58
107
  continue;
59
108
  }
60
- const responsibilityData = allResponsibilites.find(r => r.id === responsibility.responsibilityId);
61
- if (!responsibilityData) {
109
+ const responsibility = allResponsibilites.find(r => r.id === responsibilityRecord.responsibilityId);
110
+ if (!responsibility) {
62
111
  continue;
63
112
  }
64
- const r = this.buildRoleForResponsibility(responsibility.groupId, responsibilityData, inheritedResponsibilityRoles);
65
- roles.push(r);
113
+ const r = this.fromResponsibility(responsibility, responsibilityRecord.groupId, inheritedResponsibilityRoles);
114
+ loaded.add(r);
66
115
  }
67
- const result = this.create({
68
- level: permissions.level,
69
- roles,
70
- resources: permissions.resources,
71
- });
72
- return result;
116
+ return loaded;
73
117
  }
74
118
  getResourcePermissions(type, id) {
75
119
  const resource = this.resources.get(type);
@@ -90,40 +134,20 @@ export class LoadedPermissions {
90
134
  return rInstance;
91
135
  }
92
136
  getMergedResourcePermissions(type, id) {
93
- var _a;
94
- let base = this.getResourcePermissions(type, id);
95
- for (const role of this.roles) {
96
- const r = role.getMergedResourcePermissions(type, id);
97
- if (r) {
98
- if (base) {
99
- base.merge(r);
100
- }
101
- else {
102
- base = r;
103
- }
104
- }
137
+ const clone = this.clone();
138
+ // Remove this type from resources
139
+ clone.resources.delete(type);
140
+ const r = this.getResourcePermissions(type, id);
141
+ if (r) {
142
+ clone.add(r);
105
143
  }
106
- if (getPermissionLevelNumber(this.level) > getPermissionLevelNumber((_a = base === null || base === void 0 ? void 0 : base.level) !== null && _a !== void 0 ? _a : PermissionLevel.None)) {
107
- if (!base) {
108
- base = ResourcePermissions.create({ level: this.level });
109
- }
110
- base.level = this.level;
111
- }
112
- return base;
113
- }
114
- hasRole(role) {
115
- return this.roles.find(r => r.id === role.id) !== undefined;
144
+ return clone;
116
145
  }
117
146
  hasAccess(level) {
118
147
  if (getPermissionLevelNumber(this.level) >= getPermissionLevelNumber(level)) {
119
148
  // Someone with read / write access for the whole organization, also the same access for each group
120
149
  return true;
121
150
  }
122
- for (const f of this.roles) {
123
- if (f.hasAccess(level)) {
124
- return true;
125
- }
126
- }
127
151
  return false;
128
152
  }
129
153
  hasResourceAccess(type, id, level) {
@@ -134,11 +158,6 @@ export class LoadedPermissions {
134
158
  if ((_b = (_a = this.getResourcePermissions(type, id)) === null || _a === void 0 ? void 0 : _a.hasAccess(level)) !== null && _b !== void 0 ? _b : false) {
135
159
  return true;
136
160
  }
137
- for (const r of this.roles) {
138
- if (r.hasResourceAccess(type, id, level)) {
139
- return true;
140
- }
141
- }
142
161
  return false;
143
162
  }
144
163
  hasResourceAccessRight(type, id, right) {
@@ -149,11 +168,6 @@ export class LoadedPermissions {
149
168
  if ((_b = (_a = this.getResourcePermissions(type, id)) === null || _a === void 0 ? void 0 : _a.hasAccessRight(right)) !== null && _b !== void 0 ? _b : false) {
150
169
  return true;
151
170
  }
152
- for (const r of this.roles) {
153
- if (r.hasResourceAccessRight(type, id, right)) {
154
- return true;
155
- }
156
- }
157
171
  const autoInherit = AccessRightHelper.autoInheritFrom(right);
158
172
  for (const r of autoInherit) {
159
173
  if (this.hasResourceAccessRight(type, id, r)) {
@@ -177,11 +191,6 @@ export class LoadedPermissions {
177
191
  }
178
192
  }
179
193
  }
180
- for (const r of this.roles) {
181
- if (r.hasAccessRightForSomeResource(type, right)) {
182
- return true;
183
- }
184
- }
185
194
  return false;
186
195
  }
187
196
  hasReadAccess() {
@@ -195,14 +204,9 @@ export class LoadedPermissions {
195
204
  }
196
205
  hasAccessRight(right) {
197
206
  const gl = AccessRightHelper.autoGrantRightForLevel(right);
198
- if (gl && this.hasAccess(gl)) {
207
+ if ((gl && this.hasAccess(gl)) || this.accessRights.includes(right)) {
199
208
  return true;
200
209
  }
201
- for (const f of this.roles) {
202
- if (f.hasAccessRight(right)) {
203
- return true;
204
- }
205
- }
206
210
  const autoInherit = AccessRightHelper.autoInheritFrom(right);
207
211
  for (const r of autoInherit) {
208
212
  if (this.hasAccessRight(r)) {
@@ -211,40 +215,37 @@ export class LoadedPermissions {
211
215
  }
212
216
  return false;
213
217
  }
214
- merge(other) {
215
- const p = LoadedPermissions.create({});
216
- p.level = this.level;
217
- p.roles = this.roles.slice();
218
- p.resources = new Map(this.resources);
219
- if (getPermissionLevelNumber(other.level) > getPermissionLevelNumber(p.level)) {
220
- p.level = other.level;
218
+ add(other) {
219
+ if (getPermissionLevelNumber(other.level) > getPermissionLevelNumber(this.level)) {
220
+ this.level = other.level;
221
+ }
222
+ for (const right of other.accessRights) {
223
+ if (!this.accessRights.includes(right)) {
224
+ this.accessRights.push(right);
225
+ }
221
226
  }
222
227
  for (const [type, r] of other.resources) {
223
228
  for (const [id, resource] of r) {
224
- if (!p.resources.has(type)) {
225
- p.resources.set(type, new Map());
229
+ if (!this.resources.has(type)) {
230
+ this.resources.set(type, new Map());
226
231
  }
227
- const current = p.resources.get(type).get(id);
232
+ const current = this.resources.get(type).get(id);
228
233
  if (!current) {
229
- p.resources.get(type).set(id, resource);
234
+ this.resources.get(type).set(id, resource);
230
235
  }
231
236
  else {
232
- p.resources.get(type).set(id, current.merge(resource));
237
+ current.add(resource);
233
238
  }
234
239
  }
235
240
  }
236
- for (const role of other.roles) {
237
- const current = p.roles.find(r => r.id === role.id);
238
- if (!current) {
239
- p.roles.push(role);
240
- }
241
- }
242
- return p;
241
+ }
242
+ merge(other) {
243
+ const cloned = this.clone();
244
+ cloned.add(other);
245
+ return cloned;
243
246
  }
244
247
  removeAccessRights(rights) {
245
- for (const role of this.roles) {
246
- role.removeAccessRights(rights);
247
- }
248
+ this.accessRights = this.accessRights.filter(r => !rights.includes(r));
248
249
  for (const resource of this.resources.values()) {
249
250
  for (const r of resource.values()) {
250
251
  r.removeAccessRights(rights);
@@ -252,7 +253,51 @@ export class LoadedPermissions {
252
253
  }
253
254
  }
254
255
  get isEmpty() {
255
- return this.level === PermissionLevel.None && (this.roles.length === 0 || this.roles.every(r => r.isEmpty)) && this.resources.size === 0;
256
+ if (this.accessRights.length || this.level !== PermissionLevel.None) {
257
+ return false;
258
+ }
259
+ for (const resource of this.resources.values()) {
260
+ for (const r of resource.values()) {
261
+ if (!r.isEmpty) {
262
+ return false;
263
+ }
264
+ }
265
+ }
266
+ return true;
267
+ }
268
+ getDescription() {
269
+ const stack = [];
270
+ if (this.level === PermissionLevel.Read) {
271
+ stack.push('alles lezen');
272
+ }
273
+ if (this.level === PermissionLevel.Write) {
274
+ stack.push('alles bewerken');
275
+ }
276
+ if (this.level === PermissionLevel.Full) {
277
+ stack.push('volledige toegang');
278
+ }
279
+ for (const right of this.accessRights) {
280
+ stack.push(AccessRightHelper.getDescription(right));
281
+ }
282
+ for (const [type, resources] of this.resources) {
283
+ let count = 0;
284
+ if (resources.has('')) {
285
+ stack.push('alle ' + getPermissionResourceTypeName(type, true));
286
+ continue;
287
+ }
288
+ for (const resource of resources.values()) {
289
+ if (resource.hasAccess(PermissionLevel.Read) || resource.accessRights.length > 0) {
290
+ count += 1;
291
+ }
292
+ }
293
+ if (count > 0) {
294
+ stack.push(count + ' ' + getPermissionResourceTypeName(type, count > 1));
295
+ }
296
+ }
297
+ if (stack.length === 0) {
298
+ return 'geen rechten';
299
+ }
300
+ return Formatter.capitalizeFirstLetter(Formatter.joinLast(stack, ', ', ' en '));
256
301
  }
257
302
  }
258
303
  //# sourceMappingURL=LoadedPermissions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LoadedPermissions.js","sourceRoot":"","sources":["../../../src/LoadedPermissions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LoadedPermissions.js","sourceRoot":"","sources":["../../../src/LoadedPermissions.ts"],"names":[],"mappings":"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"}
@@ -14,8 +14,20 @@ export declare class PermissionRoleDetailed extends PermissionRole {
14
14
  level: PermissionLevel;
15
15
  accessRights: AccessRight[];
16
16
  resources: Map<PermissionsResourceType, Map<string, ResourcePermissions>>;
17
+ /**
18
+ * @deprecated
19
+ * Required for migration
20
+ */
17
21
  legacyManagePayments: boolean;
22
+ /**
23
+ * @deprecated
24
+ * Required for migration
25
+ */
18
26
  legacyFinanceDirector: boolean;
27
+ /**
28
+ * @deprecated
29
+ * Required for migration
30
+ */
19
31
  legacyCreateWebshops: boolean;
20
32
  getDiffValue(): string;
21
33
  getDescription(): string;
@@ -1 +1 @@
1
- {"version":3,"file":"PermissionRole.d.ts","sourceRoot":"","sources":["../../../src/PermissionRole.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,WAAW,EAAiE,MAAM,6BAA6B,CAAC;AAGvI,OAAO,EAAE,WAAW,EAAqB,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,eAAe,EAA4B,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAiC,MAAM,8BAA8B,CAAC;AACtG,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,qBAAa,cAAe,SAAQ,WAAW;IAE3C,EAAE,EAAE,MAAM,CAAC;IAGX,IAAI,SAAM;CACb;AAED,qBAAa,sBAAuB,SAAQ,cAAc;IACtD;;OAEG;IAEH,KAAK,EAAE,eAAe,CAAwB;IAqB9C,YAAY,EAAE,WAAW,EAAE,CAAM;IAajC,SAAS,EAAE,GAAG,CAAC,uBAAuB,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAa;IAGtF,oBAAoB,UAAS;IAG7B,qBAAqB,UAAS;IAG9B,oBAAoB,UAAS;IAE7B,YAAY;IAIZ,cAAc;IA0Cd,SAAS,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO;IAI1C,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;IAgB3C,sBAAsB,CAAC,IAAI,EAAE,uBAAuB,EAAE,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI;IAsB7F,4BAA4B,CAAC,IAAI,EAAE,uBAAuB,EAAE,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI;IAanG,iBAAiB,CAAC,IAAI,EAAE,uBAAuB,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO;IAQ7F,sBAAsB,CAAC,IAAI,EAAE,uBAAuB,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO;IAQ9F,6BAA6B,CAAC,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO;IAmBzF,GAAG,CAAC,KAAK,EAAE,sBAAsB;IA4BjC,IAAI,OAAO,YAEV;IAED,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE;CAS3C;AAED,qBAAa,+BAAgC,SAAQ,sBAAsB;IAEvE,gBAAgB,EAAE,MAAM,CAAC;IAGzB,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAQ;CAC/C"}
1
+ {"version":3,"file":"PermissionRole.d.ts","sourceRoot":"","sources":["../../../src/PermissionRole.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,WAAW,EAAiE,MAAM,6BAA6B,CAAC;AAGvI,OAAO,EAAE,WAAW,EAAqB,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,eAAe,EAA4B,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAiC,MAAM,8BAA8B,CAAC;AACtG,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,qBAAa,cAAe,SAAQ,WAAW;IAE3C,EAAE,EAAE,MAAM,CAAC;IAGX,IAAI,SAAM;CACb;AAED,qBAAa,sBAAuB,SAAQ,cAAc;IACtD;;OAEG;IAEH,KAAK,EAAE,eAAe,CAAwB;IAqB9C,YAAY,EAAE,WAAW,EAAE,CAAM;IAajC,SAAS,EAAE,GAAG,CAAC,uBAAuB,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAa;IAEtF;;;OAGG;IAEH,oBAAoB,UAAS;IAE7B;;;OAGG;IAEH,qBAAqB,UAAS;IAE9B;;;OAGG;IAEH,oBAAoB,UAAS;IAE7B,YAAY;IAIZ,cAAc;IA0Cd,SAAS,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO;IAI1C,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;IAgB3C,sBAAsB,CAAC,IAAI,EAAE,uBAAuB,EAAE,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI;IAsB7F,4BAA4B,CAAC,IAAI,EAAE,uBAAuB,EAAE,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI;IAanG,iBAAiB,CAAC,IAAI,EAAE,uBAAuB,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO;IAQ7F,sBAAsB,CAAC,IAAI,EAAE,uBAAuB,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO;IAQ9F,6BAA6B,CAAC,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO;IAmBzF,GAAG,CAAC,KAAK,EAAE,sBAAsB;IA4BjC,IAAI,OAAO,YAWV;IAED,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE;CAS3C;AAED,qBAAa,+BAAgC,SAAQ,sBAAsB;IAEvE,gBAAgB,EAAE,MAAM,CAAC;IAGzB,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAQ;CAC/C"}
@@ -27,8 +27,20 @@ export class PermissionRoleDetailed extends PermissionRole {
27
27
  this.level = PermissionLevel.None;
28
28
  this.accessRights = [];
29
29
  this.resources = new Map();
30
+ /**
31
+ * @deprecated
32
+ * Required for migration
33
+ */
30
34
  this.legacyManagePayments = false;
35
+ /**
36
+ * @deprecated
37
+ * Required for migration
38
+ */
31
39
  this.legacyFinanceDirector = false;
40
+ /**
41
+ * @deprecated
42
+ * Required for migration
43
+ */
32
44
  this.legacyCreateWebshops = false;
33
45
  }
34
46
  getDiffValue() {
@@ -167,7 +179,16 @@ export class PermissionRoleDetailed extends PermissionRole {
167
179
  }
168
180
  }
169
181
  get isEmpty() {
170
- return this.level === PermissionLevel.None && this.accessRights.length === 0 && this.resources.size === 0;
182
+ let resourcesEmpty = true;
183
+ for (const resource of this.resources.values()) {
184
+ for (const r of resource.values()) {
185
+ if (!r.isEmpty) {
186
+ resourcesEmpty = false;
187
+ break;
188
+ }
189
+ }
190
+ }
191
+ return this.level === PermissionLevel.None && this.accessRights.length === 0 && resourcesEmpty;
171
192
  }
172
193
  removeAccessRights(rights) {
173
194
  this.accessRights = this.accessRights.filter(r => !rights.includes(r));
@@ -1 +1 @@
1
- {"version":3,"file":"PermissionRole.js","sourceRoot":"","sources":["../../../src/PermissionRole.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PermissionRole.js","sourceRoot":"","sources":["../../../src/PermissionRole.ts"],"names":[],"mappings":"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"}
@@ -10,15 +10,10 @@ export declare class PermissionsByRole extends AutoEncoder {
10
10
  read: PermissionRole[];
11
11
  write: PermissionRole[];
12
12
  full: PermissionRole[];
13
- getPermissionLevel(permissions: import('./LoadedPermissions.js').LoadedPermissions): PermissionLevel;
14
13
  /**
15
14
  * Whetever a given user has access to the members in this group.
16
15
  */
17
16
  getRolePermissionLevel(role: PermissionRole): PermissionLevel;
18
- hasAccess(permissions: import('./LoadedPermissions.js').LoadedPermissions | undefined | null, level: PermissionLevel): boolean;
19
17
  roleHasAccess(role: PermissionRole, level?: PermissionLevel): boolean;
20
- hasFullAccess(permissions: import('./LoadedPermissions.js').LoadedPermissions | undefined | null): boolean;
21
- hasWriteAccess(permissions: import('./LoadedPermissions.js').LoadedPermissions | undefined | null): boolean;
22
- hasReadAccess(permissions: import('./LoadedPermissions.js').LoadedPermissions | undefined | null): boolean;
23
18
  }
24
19
  //# sourceMappingURL=PermissionsByRole.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PermissionsByRole.d.ts","sourceRoot":"","sources":["../../../src/PermissionsByRole.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAuB,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,eAAe,EAA4B,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,WAAW;IAE9C,IAAI,EAAE,cAAc,EAAE,CAAM;IAG5B,KAAK,EAAE,cAAc,EAAE,CAAM;IAG7B,IAAI,EAAE,cAAc,EAAE,CAAM;IAE5B,kBAAkB,CAAC,WAAW,EAAE,OAAO,wBAAwB,EAAE,iBAAiB,GAAG,eAAe;IAkCpG;;OAEG;IACH,sBAAsB,CAAC,IAAI,EAAE,cAAc,GAAG,eAAe;IAqB7D,SAAS,CAAC,WAAW,EAAE,OAAO,wBAAwB,EAAE,iBAAiB,GAAG,SAAS,GAAG,IAAI,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO;IAO9H,aAAa,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,GAAE,eAAsC,GAAG,OAAO;IAI3F,aAAa,CAAC,WAAW,EAAE,OAAO,wBAAwB,EAAE,iBAAiB,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO;IAI1G,cAAc,CAAC,WAAW,EAAE,OAAO,wBAAwB,EAAE,iBAAiB,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO;IAI3G,aAAa,CAAC,WAAW,EAAE,OAAO,wBAAwB,EAAE,iBAAiB,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO;CAG7G"}
1
+ {"version":3,"file":"PermissionsByRole.d.ts","sourceRoot":"","sources":["../../../src/PermissionsByRole.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,WAAW,EAAS,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,eAAe,EAA4B,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,WAAW;IAE9C,IAAI,EAAE,cAAc,EAAE,CAAM;IAG5B,KAAK,EAAE,cAAc,EAAE,CAAM;IAG7B,IAAI,EAAE,cAAc,EAAE,CAAM;IAE5B;;OAEG;IACH,sBAAsB,CAAC,IAAI,EAAE,cAAc,GAAG,eAAe;IAqB7D,aAAa,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,GAAE,eAAsC,GAAG,OAAO;CAG9F"}
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import { AutoEncoder, field, ArrayDecoder } from '@simonbackx/simple-encoding';
2
+ import { ArrayDecoder, AutoEncoder, field } from '@simonbackx/simple-encoding';
3
3
  import { PermissionLevel, getPermissionLevelNumber } from './PermissionLevel.js';
4
4
  import { PermissionRole } from './PermissionRole.js';
5
5
  /**
@@ -14,33 +14,6 @@ export class PermissionsByRole extends AutoEncoder {
14
14
  this.write = [];
15
15
  this.full = [];
16
16
  }
17
- getPermissionLevel(permissions) {
18
- if (permissions.hasFullAccess()) {
19
- return PermissionLevel.Full;
20
- }
21
- for (const role of this.full) {
22
- if (permissions.roles.find(r => r.id === role.id)) {
23
- return PermissionLevel.Full;
24
- }
25
- }
26
- if (permissions.hasWriteAccess()) {
27
- return PermissionLevel.Write;
28
- }
29
- for (const role of this.write) {
30
- if (permissions.roles.find(r => r.id === role.id)) {
31
- return PermissionLevel.Write;
32
- }
33
- }
34
- if (permissions.hasReadAccess()) {
35
- return PermissionLevel.Read;
36
- }
37
- for (const role of this.read) {
38
- if (permissions.roles.find(r => r.id === role.id)) {
39
- return PermissionLevel.Read;
40
- }
41
- }
42
- return PermissionLevel.None;
43
- }
44
17
  /**
45
18
  * Whetever a given user has access to the members in this group.
46
19
  */
@@ -62,24 +35,9 @@ export class PermissionsByRole extends AutoEncoder {
62
35
  }
63
36
  return PermissionLevel.None;
64
37
  }
65
- hasAccess(permissions, level) {
66
- if (!permissions) {
67
- return false;
68
- }
69
- return getPermissionLevelNumber(this.getPermissionLevel(permissions)) >= getPermissionLevelNumber(level);
70
- }
71
38
  roleHasAccess(role, level = PermissionLevel.Read) {
72
39
  return getPermissionLevelNumber(this.getRolePermissionLevel(role)) >= getPermissionLevelNumber(level);
73
40
  }
74
- hasFullAccess(permissions) {
75
- return this.hasAccess(permissions, PermissionLevel.Full);
76
- }
77
- hasWriteAccess(permissions) {
78
- return this.hasAccess(permissions, PermissionLevel.Write);
79
- }
80
- hasReadAccess(permissions) {
81
- return this.hasAccess(permissions, PermissionLevel.Read);
82
- }
83
41
  }
84
42
  __decorate([
85
43
  field({ decoder: new ArrayDecoder(PermissionRole) })
@@ -1 +1 @@
1
- {"version":3,"file":"PermissionsByRole.js","sourceRoot":"","sources":["../../../src/PermissionsByRole.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PermissionsByRole.js","sourceRoot":"","sources":["../../../src/PermissionsByRole.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;GAIG;AACH,MAAM,OAAO,iBAAkB,SAAQ,WAAW;IAAlD;;QAEI,SAAI,GAAqB,EAAE,CAAC;QAG5B,UAAK,GAAqB,EAAE,CAAC;QAG7B,SAAI,GAAqB,EAAE,CAAC;IA6BhC,CAAC;IA3BG;;OAEG;IACH,sBAAsB,CAAC,IAAoB;QACvC,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACxB,IAAI,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC;gBACnB,OAAO,eAAe,CAAC,IAAI,CAAC;YAChC,CAAC;QACL,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC;gBACnB,OAAO,eAAe,CAAC,KAAK,CAAC;YACjC,CAAC;QACL,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACxB,IAAI,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC;gBACnB,OAAO,eAAe,CAAC,IAAI,CAAC;YAChC,CAAC;QACL,CAAC;QAED,OAAO,eAAe,CAAC,IAAI,CAAC;IAChC,CAAC;IAED,aAAa,CAAC,IAAoB,EAAE,QAAyB,eAAe,CAAC,IAAI;QAC7E,OAAO,wBAAwB,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,IAAI,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAC1G,CAAC;CACJ;AAnCG;IADC,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,YAAY,CAAC,cAAc,CAAC,EAAE,CAAC;+CACzB;AAG5B;IADC,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,YAAY,CAAC,cAAc,CAAC,EAAE,CAAC;gDACxB;AAG7B;IADC,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,YAAY,CAAC,cAAc,CAAC,EAAE,CAAC;+CACzB"}
@@ -27,5 +27,6 @@ export declare class ResourcePermissions extends AutoEncoder {
27
27
  createInsertPatch(type: PermissionsResourceType, resourceId: string, roleOrPermissions: import('./Permissions.js').Permissions): AutoEncoderPatchType<import('./Permissions.js').Permissions>;
28
28
  merge(other: ResourcePermissions): ResourcePermissions;
29
29
  removeAccessRights(rights: AccessRight[]): void;
30
+ get isEmpty(): boolean;
30
31
  }
31
32
  //# sourceMappingURL=ResourcePermissions.d.ts.map