@esri/hub-common 11.23.3 → 12.0.0-alpha.2

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 (247) hide show
  1. package/dist/esm/ArcGISContext.js +38 -1
  2. package/dist/esm/ArcGISContext.js.map +1 -1
  3. package/dist/esm/ArcGISContextManager.js +48 -0
  4. package/dist/esm/ArcGISContextManager.js.map +1 -1
  5. package/dist/esm/content/_internal.js +8 -18
  6. package/dist/esm/content/_internal.js.map +1 -1
  7. package/dist/esm/content/compose.js +12 -0
  8. package/dist/esm/content/compose.js.map +1 -1
  9. package/dist/esm/core/HubItemEntity.js +39 -57
  10. package/dist/esm/core/HubItemEntity.js.map +1 -1
  11. package/dist/esm/core/_internal/PropertyMapper.js +10 -2
  12. package/dist/esm/core/_internal/PropertyMapper.js.map +1 -1
  13. package/dist/esm/core/_internal/getBasePropertyMap.js +1 -0
  14. package/dist/esm/core/_internal/getBasePropertyMap.js.map +1 -1
  15. package/dist/esm/core/behaviors/IWithPermissionBehavior.js +0 -68
  16. package/dist/esm/core/behaviors/IWithPermissionBehavior.js.map +1 -1
  17. package/dist/esm/core/fetchHubEntity.js +28 -0
  18. package/dist/esm/core/fetchHubEntity.js.map +1 -0
  19. package/dist/esm/core/getTypeFromEntity.js +26 -0
  20. package/dist/esm/core/getTypeFromEntity.js.map +1 -0
  21. package/dist/esm/core/index.js +2 -1
  22. package/dist/esm/core/index.js.map +1 -1
  23. package/dist/esm/core/types/HubEntity.js +1 -0
  24. package/dist/esm/core/types/HubEntity.js.map +1 -0
  25. package/dist/esm/core/types/HubEntityType.js +1 -0
  26. package/dist/esm/core/types/HubEntityType.js.map +1 -0
  27. package/dist/esm/core/types/ISystemStatus.js +21 -0
  28. package/dist/esm/core/types/ISystemStatus.js.map +1 -0
  29. package/dist/esm/core/types/index.js +3 -2
  30. package/dist/esm/core/types/index.js.map +1 -1
  31. package/dist/esm/index.js +1 -0
  32. package/dist/esm/index.js.map +1 -1
  33. package/dist/esm/initiatives/HubInitiative.js +0 -13
  34. package/dist/esm/initiatives/HubInitiative.js.map +1 -1
  35. package/dist/esm/permissions/HubPermissionPolicies.js +71 -0
  36. package/dist/esm/permissions/HubPermissionPolicies.js.map +1 -0
  37. package/dist/esm/permissions/_internal/checkAlphaGating.js +27 -0
  38. package/dist/esm/permissions/_internal/checkAlphaGating.js.map +1 -0
  39. package/dist/esm/permissions/_internal/checkAssertion.js +190 -0
  40. package/dist/esm/permissions/_internal/checkAssertion.js.map +1 -0
  41. package/dist/esm/permissions/_internal/checkAssertions.js +20 -0
  42. package/dist/esm/permissions/_internal/checkAssertions.js.map +1 -0
  43. package/dist/esm/permissions/_internal/checkAuthentication.js +28 -0
  44. package/dist/esm/permissions/_internal/checkAuthentication.js.map +1 -0
  45. package/dist/esm/permissions/_internal/checkEdit.js +38 -0
  46. package/dist/esm/permissions/_internal/checkEdit.js.map +1 -0
  47. package/dist/esm/permissions/_internal/checkEntityPolicy.js +68 -0
  48. package/dist/esm/permissions/_internal/checkEntityPolicy.js.map +1 -0
  49. package/dist/esm/permissions/_internal/checkLicense.js +33 -0
  50. package/dist/esm/permissions/_internal/checkLicense.js.map +1 -0
  51. package/dist/esm/permissions/_internal/checkOwner.js +36 -0
  52. package/dist/esm/permissions/_internal/checkOwner.js.map +1 -0
  53. package/dist/esm/permissions/_internal/checkPrivileges.js +31 -0
  54. package/dist/esm/permissions/_internal/checkPrivileges.js.map +1 -0
  55. package/dist/esm/permissions/_internal/getPolicyResponseCode.js +47 -0
  56. package/dist/esm/permissions/_internal/getPolicyResponseCode.js.map +1 -0
  57. package/dist/esm/permissions/checkPermission.js +89 -0
  58. package/dist/esm/permissions/checkPermission.js.map +1 -0
  59. package/dist/esm/permissions/index.js +5 -0
  60. package/dist/esm/permissions/index.js.map +1 -0
  61. package/dist/esm/permissions/types/HubLicense.js +1 -0
  62. package/dist/esm/permissions/types/HubLicense.js.map +1 -0
  63. package/dist/esm/permissions/types/IAccessResponse.js +1 -0
  64. package/dist/esm/permissions/types/IAccessResponse.js.map +1 -0
  65. package/dist/esm/permissions/types/IEntityPermissionPolicy.js +1 -0
  66. package/dist/esm/permissions/types/IEntityPermissionPolicy.js.map +1 -0
  67. package/dist/esm/permissions/types/IPermissionPolicy.js +1 -0
  68. package/dist/esm/permissions/types/IPermissionPolicy.js.map +1 -0
  69. package/dist/esm/permissions/types/IPolicyCheck.js +1 -0
  70. package/dist/esm/permissions/types/IPolicyCheck.js.map +1 -0
  71. package/dist/esm/permissions/types/Permission.js +17 -0
  72. package/dist/esm/permissions/types/Permission.js.map +1 -0
  73. package/dist/esm/permissions/types/PlatformPrivilege.js +5 -0
  74. package/dist/esm/permissions/types/PlatformPrivilege.js.map +1 -0
  75. package/dist/esm/permissions/types/PolicyResponse.js +4 -0
  76. package/dist/esm/permissions/types/PolicyResponse.js.map +1 -0
  77. package/dist/esm/permissions/types/index.js +9 -0
  78. package/dist/esm/permissions/types/index.js.map +1 -0
  79. package/dist/esm/permissions/utils.js +26 -0
  80. package/dist/esm/permissions/utils.js.map +1 -0
  81. package/dist/esm/projects/HubProject.js +0 -13
  82. package/dist/esm/projects/HubProject.js.map +1 -1
  83. package/dist/esm/projects/_internal/ProjectPermissionPolicies.js +41 -0
  84. package/dist/esm/projects/_internal/ProjectPermissionPolicies.js.map +1 -0
  85. package/dist/esm/projects/defaults.js +1 -0
  86. package/dist/esm/projects/defaults.js.map +1 -1
  87. package/dist/esm/search/Catalog.js.map +1 -1
  88. package/dist/esm/sites/HubSite.js +0 -13
  89. package/dist/esm/sites/HubSite.js.map +1 -1
  90. package/dist/esm/sites/HubSites.js +10 -12
  91. package/dist/esm/sites/HubSites.js.map +1 -1
  92. package/dist/esm/sites/_internal/SitesPermissionPolicies.js +44 -0
  93. package/dist/esm/sites/_internal/SitesPermissionPolicies.js.map +1 -0
  94. package/dist/esm/sites/_internal/applyPermissionMigration.js +52 -0
  95. package/dist/esm/sites/_internal/applyPermissionMigration.js.map +1 -0
  96. package/dist/node/ArcGISContext.js +42 -5
  97. package/dist/node/ArcGISContext.js.map +1 -1
  98. package/dist/node/ArcGISContextManager.js +48 -0
  99. package/dist/node/ArcGISContextManager.js.map +1 -1
  100. package/dist/node/content/_internal.js +8 -18
  101. package/dist/node/content/_internal.js.map +1 -1
  102. package/dist/node/content/compose.js +12 -0
  103. package/dist/node/content/compose.js.map +1 -1
  104. package/dist/node/core/HubItemEntity.js +38 -56
  105. package/dist/node/core/HubItemEntity.js.map +1 -1
  106. package/dist/node/core/_internal/PropertyMapper.js +9 -1
  107. package/dist/node/core/_internal/PropertyMapper.js.map +1 -1
  108. package/dist/node/core/_internal/getBasePropertyMap.js +1 -0
  109. package/dist/node/core/_internal/getBasePropertyMap.js.map +1 -1
  110. package/dist/node/core/behaviors/IWithPermissionBehavior.js +0 -73
  111. package/dist/node/core/behaviors/IWithPermissionBehavior.js.map +1 -1
  112. package/dist/node/core/fetchHubEntity.js +32 -0
  113. package/dist/node/core/fetchHubEntity.js.map +1 -0
  114. package/dist/node/core/getTypeFromEntity.js +30 -0
  115. package/dist/node/core/getTypeFromEntity.js.map +1 -0
  116. package/dist/node/core/index.js +2 -1
  117. package/dist/node/core/index.js.map +1 -1
  118. package/dist/node/core/types/{IHubPermission.js → HubEntity.js} +1 -1
  119. package/dist/node/core/types/HubEntity.js.map +1 -0
  120. package/dist/node/core/types/HubEntityType.js +3 -0
  121. package/dist/node/core/types/HubEntityType.js.map +1 -0
  122. package/dist/node/core/types/ISystemStatus.js +25 -0
  123. package/dist/node/core/types/ISystemStatus.js.map +1 -0
  124. package/dist/node/core/types/index.js +3 -2
  125. package/dist/node/core/types/index.js.map +1 -1
  126. package/dist/node/index.js +1 -0
  127. package/dist/node/index.js.map +1 -1
  128. package/dist/node/initiatives/HubInitiative.js +0 -13
  129. package/dist/node/initiatives/HubInitiative.js.map +1 -1
  130. package/dist/node/permissions/HubPermissionPolicies.js +75 -0
  131. package/dist/node/permissions/HubPermissionPolicies.js.map +1 -0
  132. package/dist/node/permissions/_internal/checkAlphaGating.js +31 -0
  133. package/dist/node/permissions/_internal/checkAlphaGating.js.map +1 -0
  134. package/dist/node/permissions/_internal/checkAssertion.js +194 -0
  135. package/dist/node/permissions/_internal/checkAssertion.js.map +1 -0
  136. package/dist/node/permissions/_internal/checkAssertions.js +24 -0
  137. package/dist/node/permissions/_internal/checkAssertions.js.map +1 -0
  138. package/dist/node/permissions/_internal/checkAuthentication.js +32 -0
  139. package/dist/node/permissions/_internal/checkAuthentication.js.map +1 -0
  140. package/dist/node/permissions/_internal/checkEdit.js +42 -0
  141. package/dist/node/permissions/_internal/checkEdit.js.map +1 -0
  142. package/dist/node/permissions/_internal/checkEntityPolicy.js +72 -0
  143. package/dist/node/permissions/_internal/checkEntityPolicy.js.map +1 -0
  144. package/dist/node/permissions/_internal/checkLicense.js +37 -0
  145. package/dist/node/permissions/_internal/checkLicense.js.map +1 -0
  146. package/dist/node/permissions/_internal/checkOwner.js +40 -0
  147. package/dist/node/permissions/_internal/checkOwner.js.map +1 -0
  148. package/dist/node/permissions/_internal/checkPrivileges.js +35 -0
  149. package/dist/node/permissions/_internal/checkPrivileges.js.map +1 -0
  150. package/dist/node/permissions/_internal/getPolicyResponseCode.js +51 -0
  151. package/dist/node/permissions/_internal/getPolicyResponseCode.js.map +1 -0
  152. package/dist/node/permissions/checkPermission.js +93 -0
  153. package/dist/node/permissions/checkPermission.js.map +1 -0
  154. package/dist/node/permissions/index.js +8 -0
  155. package/dist/node/permissions/index.js.map +1 -0
  156. package/dist/node/permissions/types/HubLicense.js +3 -0
  157. package/dist/node/permissions/types/HubLicense.js.map +1 -0
  158. package/dist/node/permissions/types/IAccessResponse.js +3 -0
  159. package/dist/node/permissions/types/IAccessResponse.js.map +1 -0
  160. package/dist/node/permissions/types/IEntityPermissionPolicy.js +3 -0
  161. package/dist/node/permissions/types/IEntityPermissionPolicy.js.map +1 -0
  162. package/dist/node/permissions/types/IPermissionPolicy.js +3 -0
  163. package/dist/node/permissions/types/IPermissionPolicy.js.map +1 -0
  164. package/dist/node/permissions/types/IPolicyCheck.js +3 -0
  165. package/dist/node/permissions/types/IPolicyCheck.js.map +1 -0
  166. package/dist/node/permissions/types/Permission.js +21 -0
  167. package/dist/node/permissions/types/Permission.js.map +1 -0
  168. package/dist/node/permissions/types/PlatformPrivilege.js +7 -0
  169. package/dist/node/permissions/types/PlatformPrivilege.js.map +1 -0
  170. package/dist/node/permissions/types/PolicyResponse.js +6 -0
  171. package/dist/node/permissions/types/PolicyResponse.js.map +1 -0
  172. package/dist/node/permissions/types/index.js +12 -0
  173. package/dist/node/permissions/types/index.js.map +1 -0
  174. package/dist/node/permissions/utils.js +31 -0
  175. package/dist/node/permissions/utils.js.map +1 -0
  176. package/dist/node/projects/HubProject.js +0 -13
  177. package/dist/node/projects/HubProject.js.map +1 -1
  178. package/dist/node/projects/_internal/ProjectPermissionPolicies.js +44 -0
  179. package/dist/node/projects/_internal/ProjectPermissionPolicies.js.map +1 -0
  180. package/dist/node/projects/defaults.js +1 -0
  181. package/dist/node/projects/defaults.js.map +1 -1
  182. package/dist/node/search/Catalog.js.map +1 -1
  183. package/dist/node/sites/HubSite.js +0 -13
  184. package/dist/node/sites/HubSite.js.map +1 -1
  185. package/dist/node/sites/HubSites.js +10 -12
  186. package/dist/node/sites/HubSites.js.map +1 -1
  187. package/dist/node/sites/_internal/SitesPermissionPolicies.js +47 -0
  188. package/dist/node/sites/_internal/SitesPermissionPolicies.js.map +1 -0
  189. package/dist/node/sites/_internal/applyPermissionMigration.js +56 -0
  190. package/dist/node/sites/_internal/applyPermissionMigration.js.map +1 -0
  191. package/dist/types/ArcGISContext.d.ts +33 -1
  192. package/dist/types/ArcGISContextManager.d.ts +6 -1
  193. package/dist/types/content/_internal.d.ts +15 -5
  194. package/dist/types/core/HubItemEntity.d.ts +29 -4
  195. package/dist/types/core/behaviors/IWithPermissionBehavior.d.ts +23 -35
  196. package/dist/types/core/behaviors/IWithStoreBehavior.d.ts +10 -10
  197. package/dist/types/core/fetchHubEntity.d.ts +11 -0
  198. package/dist/types/core/getTypeFromEntity.d.ts +8 -0
  199. package/dist/types/core/index.d.ts +2 -1
  200. package/dist/types/core/traits/IWithPermissions.d.ts +3 -3
  201. package/dist/types/core/types/HubEntity.d.ts +5 -0
  202. package/dist/types/core/types/HubEntityType.d.ts +1 -0
  203. package/dist/types/core/types/IHubContent.d.ts +2 -1
  204. package/dist/types/core/types/IHubItemEntity.d.ts +19 -2
  205. package/dist/types/core/types/ISystemStatus.d.ts +22 -0
  206. package/dist/types/core/types/index.d.ts +3 -2
  207. package/dist/types/index.d.ts +1 -0
  208. package/dist/types/initiatives/HubInitiative.d.ts +1 -7
  209. package/dist/types/permissions/HubPermissionPolicies.d.ts +11 -0
  210. package/dist/types/permissions/_internal/checkAlphaGating.d.ts +10 -0
  211. package/dist/types/permissions/_internal/checkAssertion.d.ts +11 -0
  212. package/dist/types/permissions/_internal/checkAssertions.d.ts +10 -0
  213. package/dist/types/permissions/_internal/checkAuthentication.d.ts +10 -0
  214. package/dist/types/permissions/_internal/checkEdit.d.ts +10 -0
  215. package/dist/types/permissions/_internal/checkEntityPolicy.d.ts +9 -0
  216. package/dist/types/permissions/_internal/checkLicense.d.ts +10 -0
  217. package/dist/types/permissions/_internal/checkOwner.d.ts +10 -0
  218. package/dist/types/permissions/_internal/checkPrivileges.d.ts +10 -0
  219. package/dist/types/permissions/_internal/getPolicyResponseCode.d.ts +7 -0
  220. package/dist/types/permissions/checkPermission.d.ts +10 -0
  221. package/dist/types/permissions/index.d.ts +4 -0
  222. package/dist/types/permissions/types/HubLicense.d.ts +4 -0
  223. package/dist/types/permissions/types/IAccessResponse.d.ts +34 -0
  224. package/dist/types/permissions/types/IEntityPermissionPolicy.d.ts +22 -0
  225. package/dist/types/permissions/types/IPermissionPolicy.d.ts +57 -0
  226. package/dist/types/permissions/types/IPolicyCheck.d.ts +25 -0
  227. package/dist/types/permissions/types/Permission.d.ts +17 -0
  228. package/dist/types/permissions/types/PlatformPrivilege.d.ts +5 -0
  229. package/dist/types/permissions/types/PolicyResponse.d.ts +4 -0
  230. package/dist/types/permissions/types/index.d.ts +8 -0
  231. package/dist/types/permissions/utils.d.ts +18 -0
  232. package/dist/types/projects/HubProject.d.ts +1 -7
  233. package/dist/types/projects/_internal/ProjectPermissionPolicies.d.ts +8 -0
  234. package/dist/types/sites/HubSite.d.ts +1 -7
  235. package/dist/types/sites/HubSites.d.ts +1 -1
  236. package/dist/types/sites/_internal/SitesPermissionPolicies.d.ts +11 -0
  237. package/dist/types/sites/_internal/applyPermissionMigration.d.ts +7 -0
  238. package/package.json +1 -1
  239. package/dist/esm/core/PermissionManager.js +0 -60
  240. package/dist/esm/core/PermissionManager.js.map +0 -1
  241. package/dist/esm/core/types/IHubPermission.js +0 -1
  242. package/dist/esm/core/types/IHubPermission.js.map +0 -1
  243. package/dist/node/core/PermissionManager.js +0 -64
  244. package/dist/node/core/PermissionManager.js.map +0 -1
  245. package/dist/node/core/types/IHubPermission.js.map +0 -1
  246. package/dist/types/core/PermissionManager.d.ts +0 -43
  247. package/dist/types/core/types/IHubPermission.d.ts +0 -23
@@ -1,60 +0,0 @@
1
- import { cloneObject, createId } from "../util";
2
- import { checkPermission, getPermissions, addPermission, removePermission, } from "./behaviors/IWithPermissionBehavior";
3
- /**
4
- * Permission Manager class that provides permission behavior for a given entity
5
- */
6
- export class PermissionManager {
7
- constructor(permissions, context) {
8
- this._permissions = permissions;
9
- this._context = context;
10
- }
11
- /**
12
- * Create a new PermissionManager instance from configuration and context
13
- * @param permissions
14
- * @param context
15
- * @returns
16
- */
17
- static fromJson(permissions, context) {
18
- return new PermissionManager(permissions, context);
19
- }
20
- /**
21
- * Check if the user has a specific permission in the context of an entity
22
- * @param permission
23
- */
24
- check(permission) {
25
- return checkPermission(permission, this._context.currentUser, this._permissions);
26
- }
27
- /**
28
- * Get all the permission definitions for the specific permission
29
- * @param key permission to check for
30
- */
31
- get(permission) {
32
- return getPermissions(permission, this._permissions);
33
- }
34
- /**
35
- * Set a permission for the given entity
36
- * @param permission
37
- */
38
- add(permission) {
39
- if (!permission.id) {
40
- permission.id = createId("p");
41
- }
42
- this._permissions = addPermission(permission, this._permissions);
43
- }
44
- /**
45
- * Remove a permission by targetId
46
- * @param permission
47
- * @param targetId
48
- */
49
- remove(permission, targetId) {
50
- this._permissions = removePermission(permission, targetId, this._permissions);
51
- }
52
- /**
53
- * Return the current permissions as a JSON object
54
- * @returns {IHubPermission[]}
55
- */
56
- toJson() {
57
- return cloneObject(this._permissions);
58
- }
59
- }
60
- //# sourceMappingURL=PermissionManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PermissionManager.js","sourceRoot":"","sources":["../../../src/core/PermissionManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EACL,eAAe,EACf,cAAc,EACd,aAAa,EACb,gBAAgB,GACjB,MAAM,qCAAqC,CAAC;AAG7C;;GAEG;AACH,MAAM,OAAO,iBAAiB;IAI5B,YAAoB,WAA6B,EAAE,OAAuB;QACxE,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CACb,WAA6B,EAC7B,OAAuB;QAEvB,OAAO,IAAI,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAyB;QAC7B,OAAO,eAAe,CACpB,UAAU,EACV,IAAI,CAAC,QAAQ,CAAC,WAAW,EACzB,IAAI,CAAC,YAAY,CAClB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,UAAyB;QAC3B,OAAO,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACvD,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,UAA0B;QAC5B,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE;YAClB,UAAU,CAAC,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;SAC/B;QACD,IAAI,CAAC,YAAY,GAAG,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACnE,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAyB,EAAE,QAAgB;QAChD,IAAI,CAAC,YAAY,GAAG,gBAAgB,CAClC,UAAU,EACV,QAAQ,EACR,IAAI,CAAC,YAAY,CAClB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,OAAO,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACxC,CAAC;CACF"}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=IHubPermission.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IHubPermission.js","sourceRoot":"","sources":["../../../../src/core/types/IHubPermission.ts"],"names":[],"mappings":""}
@@ -1,64 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PermissionManager = void 0;
4
- const util_1 = require("../util");
5
- const IWithPermissionBehavior_1 = require("./behaviors/IWithPermissionBehavior");
6
- /**
7
- * Permission Manager class that provides permission behavior for a given entity
8
- */
9
- class PermissionManager {
10
- constructor(permissions, context) {
11
- this._permissions = permissions;
12
- this._context = context;
13
- }
14
- /**
15
- * Create a new PermissionManager instance from configuration and context
16
- * @param permissions
17
- * @param context
18
- * @returns
19
- */
20
- static fromJson(permissions, context) {
21
- return new PermissionManager(permissions, context);
22
- }
23
- /**
24
- * Check if the user has a specific permission in the context of an entity
25
- * @param permission
26
- */
27
- check(permission) {
28
- return IWithPermissionBehavior_1.checkPermission(permission, this._context.currentUser, this._permissions);
29
- }
30
- /**
31
- * Get all the permission definitions for the specific permission
32
- * @param key permission to check for
33
- */
34
- get(permission) {
35
- return IWithPermissionBehavior_1.getPermissions(permission, this._permissions);
36
- }
37
- /**
38
- * Set a permission for the given entity
39
- * @param permission
40
- */
41
- add(permission) {
42
- if (!permission.id) {
43
- permission.id = util_1.createId("p");
44
- }
45
- this._permissions = IWithPermissionBehavior_1.addPermission(permission, this._permissions);
46
- }
47
- /**
48
- * Remove a permission by targetId
49
- * @param permission
50
- * @param targetId
51
- */
52
- remove(permission, targetId) {
53
- this._permissions = IWithPermissionBehavior_1.removePermission(permission, targetId, this._permissions);
54
- }
55
- /**
56
- * Return the current permissions as a JSON object
57
- * @returns {IHubPermission[]}
58
- */
59
- toJson() {
60
- return util_1.cloneObject(this._permissions);
61
- }
62
- }
63
- exports.PermissionManager = PermissionManager;
64
- //# sourceMappingURL=PermissionManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PermissionManager.js","sourceRoot":"","sources":["../../../src/core/PermissionManager.ts"],"names":[],"mappings":";;;AACA,kCAAgD;AAChD,iFAK6C;AAG7C;;GAEG;AACH,MAAa,iBAAiB;IAI5B,YAAoB,WAA6B,EAAE,OAAuB;QACxE,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CACb,WAA6B,EAC7B,OAAuB;QAEvB,OAAO,IAAI,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAyB;QAC7B,OAAO,yCAAe,CACpB,UAAU,EACV,IAAI,CAAC,QAAQ,CAAC,WAAW,EACzB,IAAI,CAAC,YAAY,CAClB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,UAAyB;QAC3B,OAAO,wCAAc,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACvD,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,UAA0B;QAC5B,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE;YAClB,UAAU,CAAC,EAAE,GAAG,eAAQ,CAAC,GAAG,CAAC,CAAC;SAC/B;QACD,IAAI,CAAC,YAAY,GAAG,uCAAa,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACnE,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAyB,EAAE,QAAgB;QAChD,IAAI,CAAC,YAAY,GAAG,0CAAgB,CAClC,UAAU,EACV,QAAQ,EACR,IAAI,CAAC,YAAY,CAClB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,OAAO,kBAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACxC,CAAC;CACF;AAzED,8CAyEC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"IHubPermission.js","sourceRoot":"","sources":["../../../../src/core/types/IHubPermission.ts"],"names":[],"mappings":""}
@@ -1,43 +0,0 @@
1
- import { IArcGISContext } from "../ArcGISContext";
2
- import { HubPermission, IHubPermission } from "./types/IHubPermission";
3
- /**
4
- * Permission Manager class that provides permission behavior for a given entity
5
- */
6
- export declare class PermissionManager {
7
- private _permissions;
8
- private _context;
9
- private constructor();
10
- /**
11
- * Create a new PermissionManager instance from configuration and context
12
- * @param permissions
13
- * @param context
14
- * @returns
15
- */
16
- static fromJson(permissions: IHubPermission[], context: IArcGISContext): PermissionManager;
17
- /**
18
- * Check if the user has a specific permission in the context of an entity
19
- * @param permission
20
- */
21
- check(permission: HubPermission): boolean;
22
- /**
23
- * Get all the permission definitions for the specific permission
24
- * @param key permission to check for
25
- */
26
- get(permission: HubPermission): IHubPermission[];
27
- /**
28
- * Set a permission for the given entity
29
- * @param permission
30
- */
31
- add(permission: IHubPermission): void;
32
- /**
33
- * Remove a permission by targetId
34
- * @param permission
35
- * @param targetId
36
- */
37
- remove(permission: HubPermission, targetId: string): void;
38
- /**
39
- * Return the current permissions as a JSON object
40
- * @returns {IHubPermission[]}
41
- */
42
- toJson(): IHubPermission[];
43
- }
@@ -1,23 +0,0 @@
1
- /**
2
- * Structure of a Hub Permission
3
- */
4
- export interface IHubPermission {
5
- /**
6
- * Unique identifier of the permission
7
- */
8
- id?: string;
9
- /**
10
- * What action is being enabled for the target
11
- */
12
- permission: HubPermission;
13
- /**
14
- * What is the target of the permission
15
- */
16
- target: PermissionTarget;
17
- /**
18
- * Id of the entity that this permission is granted for
19
- */
20
- targetId: string;
21
- }
22
- export declare type HubPermission = "addEvent" | "createEvent" | "editEvent" | "deleteEvent" | "addInitiative" | "createInitiative" | "editInitiative" | "deleteInitiative" | "addProject" | "createProject" | "editProject" | "deleteProject";
23
- export declare type PermissionTarget = "org" | "group" | "user";