@esri/hub-common 13.37.3 → 13.38.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 (173) hide show
  1. package/dist/esm/ArcGISContext.js +31 -0
  2. package/dist/esm/ArcGISContext.js.map +1 -1
  3. package/dist/esm/ArcGISContextManager.js +44 -0
  4. package/dist/esm/ArcGISContextManager.js.map +1 -1
  5. package/dist/esm/capabilities/_internal/checkCapabilityAccess.js +2 -0
  6. package/dist/esm/capabilities/_internal/checkCapabilityAccess.js.map +1 -1
  7. package/dist/esm/capabilities/checkCapability.js +2 -0
  8. package/dist/esm/capabilities/checkCapability.js.map +1 -1
  9. package/dist/esm/capabilities/getWorkspaceCapabilities.js +3 -1
  10. package/dist/esm/capabilities/getWorkspaceCapabilities.js.map +1 -1
  11. package/dist/esm/capabilities/processEntityCapabilities.js +2 -0
  12. package/dist/esm/capabilities/processEntityCapabilities.js.map +1 -1
  13. package/dist/esm/content/_internal/ContentBusinessRules.js +6 -6
  14. package/dist/esm/content/_internal/ContentBusinessRules.js.map +1 -1
  15. package/dist/esm/content/_internal/getPropertyMap.js +1 -0
  16. package/dist/esm/content/_internal/getPropertyMap.js.map +1 -1
  17. package/dist/esm/core/HubItemEntity.js +3 -0
  18. package/dist/esm/core/HubItemEntity.js.map +1 -1
  19. package/dist/esm/core/_internal/getBasePropertyMap.js +1 -0
  20. package/dist/esm/core/_internal/getBasePropertyMap.js.map +1 -1
  21. package/dist/esm/core/types/ISystemStatus.js +20 -0
  22. package/dist/esm/core/types/ISystemStatus.js.map +1 -1
  23. package/dist/esm/core/types/index.js +1 -0
  24. package/dist/esm/core/types/index.js.map +1 -1
  25. package/dist/esm/discussions/_internal/DiscussionBusinessRules.js +11 -4
  26. package/dist/esm/discussions/_internal/DiscussionBusinessRules.js.map +1 -1
  27. package/dist/esm/groups/_internal/GroupBusinessRules.js +12 -6
  28. package/dist/esm/groups/_internal/GroupBusinessRules.js.map +1 -1
  29. package/dist/esm/initiatives/_internal/InitiativeBusinessRules.js +36 -8
  30. package/dist/esm/initiatives/_internal/InitiativeBusinessRules.js.map +1 -1
  31. package/dist/esm/initiatives/_internal/computeProps.js +8 -2
  32. package/dist/esm/initiatives/_internal/computeProps.js.map +1 -1
  33. package/dist/esm/initiatives/defaults.js +2 -0
  34. package/dist/esm/initiatives/defaults.js.map +1 -1
  35. package/dist/esm/pages/_internal/PageBusinessRules.js +17 -11
  36. package/dist/esm/pages/_internal/PageBusinessRules.js.map +1 -1
  37. package/dist/esm/pages/_internal/computeProps.js +9 -2
  38. package/dist/esm/pages/_internal/computeProps.js.map +1 -1
  39. package/dist/esm/permissions/_internal/checkAlphaGating.js +3 -1
  40. package/dist/esm/permissions/_internal/checkAlphaGating.js.map +1 -1
  41. package/dist/esm/permissions/_internal/checkAvailability.js +46 -0
  42. package/dist/esm/permissions/_internal/checkAvailability.js.map +1 -0
  43. package/dist/esm/permissions/_internal/checkEntityFeature.js +26 -0
  44. package/dist/esm/permissions/_internal/checkEntityFeature.js.map +1 -0
  45. package/dist/esm/permissions/_internal/checkEnvironment.js +28 -0
  46. package/dist/esm/permissions/_internal/checkEnvironment.js.map +1 -0
  47. package/dist/esm/permissions/_internal/checkParents.js +23 -0
  48. package/dist/esm/permissions/_internal/checkParents.js.map +1 -0
  49. package/dist/esm/permissions/_internal/checkServiceStatus.js +24 -0
  50. package/dist/esm/permissions/_internal/checkServiceStatus.js.map +1 -0
  51. package/dist/esm/permissions/_internal/getPolicyResponseCode.js +8 -0
  52. package/dist/esm/permissions/_internal/getPolicyResponseCode.js.map +1 -1
  53. package/dist/esm/permissions/_internal/processEntityFeatures.js +26 -0
  54. package/dist/esm/permissions/_internal/processEntityFeatures.js.map +1 -0
  55. package/dist/esm/permissions/checkPermission.js +10 -0
  56. package/dist/esm/permissions/checkPermission.js.map +1 -1
  57. package/dist/esm/projects/_internal/ProjectBusinessRules.js +37 -11
  58. package/dist/esm/projects/_internal/ProjectBusinessRules.js.map +1 -1
  59. package/dist/esm/projects/_internal/computeProps.js +8 -2
  60. package/dist/esm/projects/_internal/computeProps.js.map +1 -1
  61. package/dist/esm/projects/defaults.js +2 -0
  62. package/dist/esm/projects/defaults.js.map +1 -1
  63. package/dist/esm/sites/_internal/SiteBusinessRules.js +37 -8
  64. package/dist/esm/sites/_internal/SiteBusinessRules.js.map +1 -1
  65. package/dist/esm/sites/_internal/computeProps.js +8 -2
  66. package/dist/esm/sites/_internal/computeProps.js.map +1 -1
  67. package/dist/esm/sites/defaults.js +2 -0
  68. package/dist/esm/sites/defaults.js.map +1 -1
  69. package/dist/esm/utils/getEnvironmentFromPortalUrl.js +20 -0
  70. package/dist/esm/utils/getEnvironmentFromPortalUrl.js.map +1 -0
  71. package/dist/esm/utils/index.js +1 -0
  72. package/dist/esm/utils/index.js.map +1 -1
  73. package/dist/node/ArcGISContext.js +31 -0
  74. package/dist/node/ArcGISContext.js.map +1 -1
  75. package/dist/node/ArcGISContextManager.js +44 -0
  76. package/dist/node/ArcGISContextManager.js.map +1 -1
  77. package/dist/node/capabilities/_internal/checkCapabilityAccess.js +2 -0
  78. package/dist/node/capabilities/_internal/checkCapabilityAccess.js.map +1 -1
  79. package/dist/node/capabilities/checkCapability.js +2 -0
  80. package/dist/node/capabilities/checkCapability.js.map +1 -1
  81. package/dist/node/capabilities/getWorkspaceCapabilities.js +3 -1
  82. package/dist/node/capabilities/getWorkspaceCapabilities.js.map +1 -1
  83. package/dist/node/capabilities/processEntityCapabilities.js +2 -0
  84. package/dist/node/capabilities/processEntityCapabilities.js.map +1 -1
  85. package/dist/node/content/_internal/ContentBusinessRules.js +6 -6
  86. package/dist/node/content/_internal/ContentBusinessRules.js.map +1 -1
  87. package/dist/node/content/_internal/getPropertyMap.js +1 -0
  88. package/dist/node/content/_internal/getPropertyMap.js.map +1 -1
  89. package/dist/node/core/HubItemEntity.js +3 -0
  90. package/dist/node/core/HubItemEntity.js.map +1 -1
  91. package/dist/node/core/_internal/getBasePropertyMap.js +1 -0
  92. package/dist/node/core/_internal/getBasePropertyMap.js.map +1 -1
  93. package/dist/node/core/types/ISystemStatus.js +22 -1
  94. package/dist/node/core/types/ISystemStatus.js.map +1 -1
  95. package/dist/node/core/types/index.js +1 -0
  96. package/dist/node/core/types/index.js.map +1 -1
  97. package/dist/node/discussions/_internal/DiscussionBusinessRules.js +11 -4
  98. package/dist/node/discussions/_internal/DiscussionBusinessRules.js.map +1 -1
  99. package/dist/node/groups/_internal/GroupBusinessRules.js +12 -6
  100. package/dist/node/groups/_internal/GroupBusinessRules.js.map +1 -1
  101. package/dist/node/initiatives/_internal/InitiativeBusinessRules.js +37 -9
  102. package/dist/node/initiatives/_internal/InitiativeBusinessRules.js.map +1 -1
  103. package/dist/node/initiatives/_internal/computeProps.js +7 -1
  104. package/dist/node/initiatives/_internal/computeProps.js.map +1 -1
  105. package/dist/node/initiatives/defaults.js +2 -0
  106. package/dist/node/initiatives/defaults.js.map +1 -1
  107. package/dist/node/pages/_internal/PageBusinessRules.js +18 -12
  108. package/dist/node/pages/_internal/PageBusinessRules.js.map +1 -1
  109. package/dist/node/pages/_internal/computeProps.js +8 -1
  110. package/dist/node/pages/_internal/computeProps.js.map +1 -1
  111. package/dist/node/permissions/_internal/checkAlphaGating.js +3 -1
  112. package/dist/node/permissions/_internal/checkAlphaGating.js.map +1 -1
  113. package/dist/node/permissions/_internal/checkAvailability.js +50 -0
  114. package/dist/node/permissions/_internal/checkAvailability.js.map +1 -0
  115. package/dist/node/permissions/_internal/checkEntityFeature.js +30 -0
  116. package/dist/node/permissions/_internal/checkEntityFeature.js.map +1 -0
  117. package/dist/node/permissions/_internal/checkEnvironment.js +32 -0
  118. package/dist/node/permissions/_internal/checkEnvironment.js.map +1 -0
  119. package/dist/node/permissions/_internal/checkParents.js +27 -0
  120. package/dist/node/permissions/_internal/checkParents.js.map +1 -0
  121. package/dist/node/permissions/_internal/checkServiceStatus.js +28 -0
  122. package/dist/node/permissions/_internal/checkServiceStatus.js.map +1 -0
  123. package/dist/node/permissions/_internal/getPolicyResponseCode.js +8 -0
  124. package/dist/node/permissions/_internal/getPolicyResponseCode.js.map +1 -1
  125. package/dist/node/permissions/_internal/processEntityFeatures.js +30 -0
  126. package/dist/node/permissions/_internal/processEntityFeatures.js.map +1 -0
  127. package/dist/node/permissions/checkPermission.js +10 -0
  128. package/dist/node/permissions/checkPermission.js.map +1 -1
  129. package/dist/node/projects/_internal/ProjectBusinessRules.js +38 -12
  130. package/dist/node/projects/_internal/ProjectBusinessRules.js.map +1 -1
  131. package/dist/node/projects/_internal/computeProps.js +7 -1
  132. package/dist/node/projects/_internal/computeProps.js.map +1 -1
  133. package/dist/node/projects/defaults.js +2 -0
  134. package/dist/node/projects/defaults.js.map +1 -1
  135. package/dist/node/sites/_internal/SiteBusinessRules.js +38 -9
  136. package/dist/node/sites/_internal/SiteBusinessRules.js.map +1 -1
  137. package/dist/node/sites/_internal/computeProps.js +7 -1
  138. package/dist/node/sites/_internal/computeProps.js.map +1 -1
  139. package/dist/node/sites/defaults.js +2 -0
  140. package/dist/node/sites/defaults.js.map +1 -1
  141. package/dist/node/utils/getEnvironmentFromPortalUrl.js +24 -0
  142. package/dist/node/utils/getEnvironmentFromPortalUrl.js.map +1 -0
  143. package/dist/node/utils/index.js +1 -0
  144. package/dist/node/utils/index.js.map +1 -1
  145. package/dist/types/ArcGISContext.d.ts +37 -4
  146. package/dist/types/ArcGISContextManager.d.ts +8 -2
  147. package/dist/types/capabilities/getWorkspaceCapabilities.d.ts +1 -1
  148. package/dist/types/content/_internal/ContentBusinessRules.d.ts +3 -0
  149. package/dist/types/content/_internal/internalContentUtils.d.ts +2 -1
  150. package/dist/types/core/HubItemEntity.d.ts +1 -0
  151. package/dist/types/core/behaviors/IWithPermissionBehavior.d.ts +3 -0
  152. package/dist/types/core/traits/IWithPermissions.d.ts +9 -1
  153. package/dist/types/core/types/IHubItemEntity.d.ts +4 -0
  154. package/dist/types/core/types/ISystemStatus.d.ts +17 -0
  155. package/dist/types/core/types/index.d.ts +1 -0
  156. package/dist/types/discussions/_internal/DiscussionBusinessRules.d.ts +3 -1
  157. package/dist/types/groups/_internal/GroupBusinessRules.d.ts +3 -1
  158. package/dist/types/initiatives/_internal/InitiativeBusinessRules.d.ts +6 -2
  159. package/dist/types/pages/_internal/PageBusinessRules.d.ts +8 -2
  160. package/dist/types/permissions/_internal/checkAlphaGating.d.ts +1 -1
  161. package/dist/types/permissions/_internal/checkAvailability.d.ts +13 -0
  162. package/dist/types/permissions/_internal/checkEntityFeature.d.ts +4 -0
  163. package/dist/types/permissions/_internal/checkEnvironment.d.ts +13 -0
  164. package/dist/types/permissions/_internal/checkParents.d.ts +12 -0
  165. package/dist/types/permissions/_internal/checkServiceStatus.d.ts +4 -0
  166. package/dist/types/permissions/_internal/processEntityFeatures.d.ts +9 -0
  167. package/dist/types/permissions/types/IPermissionPolicy.d.ts +55 -4
  168. package/dist/types/permissions/types/PolicyResponse.d.ts +1 -1
  169. package/dist/types/projects/_internal/ProjectBusinessRules.d.ts +8 -2
  170. package/dist/types/sites/_internal/SiteBusinessRules.d.ts +9 -2
  171. package/dist/types/utils/getEnvironmentFromPortalUrl.d.ts +2 -0
  172. package/dist/types/utils/index.d.ts +1 -0
  173. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"checkPermission.js","sourceRoot":"","sources":["../../../src/permissions/checkPermission.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checkPermission.js","sourceRoot":"","sources":["../../../src/permissions/checkPermission.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ProjectPermissionPolicies = exports.ProjectPermissions = exports.ProjectCapabilityPermissions = exports.ProjectDefaultCapabilities = void 0;
3
+ exports.ProjectPermissionPolicies = exports.ProjectPermissions = exports.ProjectDefaultFeatures = exports.ProjectCapabilityPermissions = exports.ProjectDefaultCapabilities = void 0;
4
4
  /**
5
5
  * Default capabilities for a Project. If not listed here, the capability will not be available
6
6
  * This hash is combined with the capabilities hash stored in the item data. Regardless of what
7
7
  * properties are defined in the item data, only the capabilities defined here will be available
8
8
  * @private
9
+ * TODO: Remove capabilities
9
10
  */
10
11
  exports.ProjectDefaultCapabilities = {
11
12
  overview: true,
@@ -19,6 +20,7 @@ exports.ProjectDefaultCapabilities = {
19
20
  * List of all the Project Capability Permissions
20
21
  * These are considered Hub Business Rules and are not intended
21
22
  * to be modified by consumers
23
+ * TODO: Remove capabilities
22
24
  * @private
23
25
  */
24
26
  exports.ProjectCapabilityPermissions = [
@@ -53,56 +55,80 @@ exports.ProjectCapabilityPermissions = [
53
55
  permissions: ["hub:project:edit"],
54
56
  },
55
57
  ];
58
+ /**
59
+ * Default features for a Project. These are the features that can be enabled / disabled by the entity owner
60
+ */
61
+ exports.ProjectDefaultFeatures = {
62
+ "hub:project:events": false,
63
+ "hub:project:content": true,
64
+ "hub:project:discussions": false,
65
+ };
56
66
  /**
57
67
  * Project Permission Policies
58
68
  * These define the requirements any user must meet to perform related actions
59
69
  * @private
60
70
  */
61
71
  exports.ProjectPermissions = [
72
+ "hub:project",
62
73
  "hub:project:create",
63
74
  "hub:project:delete",
64
75
  "hub:project:edit",
65
76
  "hub:project:view",
66
77
  "hub:project:owner",
78
+ "hub:project:events",
79
+ "hub:project:content",
80
+ "hub:project:discussions",
67
81
  ];
68
82
  /**
69
83
  * Project permission policies
70
84
  * @private
71
85
  */
72
86
  exports.ProjectPermissionPolicies = [
87
+ {
88
+ permission: "hub:project",
89
+ services: ["portal"],
90
+ licenses: ["hub-premium"],
91
+ },
73
92
  {
74
93
  permission: "hub:project:create",
75
- subsystems: ["projects"],
76
94
  authenticated: true,
95
+ dependencies: ["hub:project"],
77
96
  privileges: ["portal:user:createItem"],
78
- licenses: ["hub-premium"],
79
97
  },
80
98
  {
99
+ // Anyone can view a project
81
100
  permission: "hub:project:view",
82
- subsystems: ["projects"],
83
- authenticated: false,
84
- licenses: ["hub-basic", "hub-premium"],
101
+ subsystems: ["platform"],
85
102
  },
86
103
  {
87
104
  permission: "hub:project:edit",
105
+ dependencies: ["hub:project"],
88
106
  authenticated: true,
89
- subsystems: ["projects"],
90
107
  entityEdit: true,
91
- licenses: ["hub-basic", "hub-premium"],
92
108
  },
93
109
  {
94
110
  permission: "hub:project:delete",
111
+ dependencies: ["hub:project"],
95
112
  authenticated: true,
96
- subsystems: ["projects"],
97
113
  entityOwner: true,
98
- licenses: ["hub-premium"],
99
114
  },
100
115
  {
101
116
  permission: "hub:project:owner",
117
+ dependencies: ["hub:project"],
102
118
  authenticated: true,
103
- subsystems: ["projects"],
104
119
  entityOwner: true,
105
- licenses: ["hub-premium"],
120
+ },
121
+ {
122
+ permission: "hub:project:events",
123
+ dependencies: ["hub:project:view"],
124
+ },
125
+ {
126
+ permission: "hub:project:content",
127
+ dependencies: ["hub:project:edit"],
128
+ },
129
+ {
130
+ permission: "hub:project:discussions",
131
+ dependencies: ["hub:project:view"],
106
132
  },
107
133
  ];
108
134
  //# sourceMappingURL=ProjectBusinessRules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectBusinessRules.js","sourceRoot":"","sources":["../../../../src/projects/_internal/ProjectBusinessRules.ts"],"names":[],"mappings":";;;AAGA;;;;;GAKG;AACU,QAAA,0BAA0B,GAAuB;IAC5D,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,IAAI;CAChB,CAAC;AAEF;;;;;GAKG;AACU,QAAA,4BAA4B,GAA4B;IACnE;QACE,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,UAAU;QACtB,WAAW,EAAE,CAAC,kBAAkB,CAAC;KAClC;IACD;QACE,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,WAAW,EAAE,CAAC,kBAAkB,CAAC;KAClC;IACD;QACE,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,UAAU;QACtB,WAAW,EAAE,CAAC,mBAAmB,CAAC;KACnC;IACD;QACE,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,WAAW,EAAE,CAAC,kBAAkB,CAAC;KAClC;IACD;QACE,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,WAAW,EAAE,CAAC,kBAAkB,EAAE,yBAAyB,CAAC;KAC7D;IACD;QACE,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,WAAW;QACvB,WAAW,EAAE,CAAC,kBAAkB,CAAC;KAClC;CACF,CAAC;AAEF;;;;GAIG;AACU,QAAA,kBAAkB,GAAG;IAChC,oBAAoB;IACpB,oBAAoB;IACpB,kBAAkB;IAClB,kBAAkB;IAClB,mBAAmB;CACX,CAAC;AAEX;;;GAGG;AACU,QAAA,yBAAyB,GAAwB;IAC5D;QACE,UAAU,EAAE,oBAAoB;QAChC,UAAU,EAAE,CAAC,UAAU,CAAC;QACxB,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,wBAAwB,CAAC;QACtC,QAAQ,EAAE,CAAC,aAAa,CAAC;KAC1B;IACD;QACE,UAAU,EAAE,kBAAkB;QAC9B,UAAU,EAAE,CAAC,UAAU,CAAC;QACxB,aAAa,EAAE,KAAK;QACpB,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC;KACvC;IACD;QACE,UAAU,EAAE,kBAAkB;QAC9B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,UAAU,CAAC;QACxB,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC;KACvC;IACD;QACE,UAAU,EAAE,oBAAoB;QAChC,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,UAAU,CAAC;QACxB,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,CAAC,aAAa,CAAC;KAC1B;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,UAAU,CAAC;QACxB,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,CAAC,aAAa,CAAC;KAC1B;CACF,CAAC"}
1
+ {"version":3,"file":"ProjectBusinessRules.js","sourceRoot":"","sources":["../../../../src/projects/_internal/ProjectBusinessRules.ts"],"names":[],"mappings":";;;AAGA;;;;;;GAMG;AACU,QAAA,0BAA0B,GAAuB;IAC5D,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,IAAI;CAChB,CAAC;AAEF;;;;;;GAMG;AACU,QAAA,4BAA4B,GAA4B;IACnE;QACE,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,UAAU;QACtB,WAAW,EAAE,CAAC,kBAAkB,CAAC;KAClC;IACD;QACE,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,WAAW,EAAE,CAAC,kBAAkB,CAAC;KAClC;IACD;QACE,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,UAAU;QACtB,WAAW,EAAE,CAAC,mBAAmB,CAAC;KACnC;IACD;QACE,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,WAAW,EAAE,CAAC,kBAAkB,CAAC;KAClC;IACD;QACE,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,WAAW,EAAE,CAAC,kBAAkB,EAAE,yBAAyB,CAAC;KAC7D;IACD;QACE,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,WAAW;QACvB,WAAW,EAAE,CAAC,kBAAkB,CAAC;KAClC;CACF,CAAC;AAEF;;GAEG;AACU,QAAA,sBAAsB,GAAoB;IACrD,oBAAoB,EAAE,KAAK;IAC3B,qBAAqB,EAAE,IAAI;IAC3B,yBAAyB,EAAE,KAAK;CACjC,CAAC;AAEF;;;;GAIG;AACU,QAAA,kBAAkB,GAAG;IAChC,aAAa;IACb,oBAAoB;IACpB,oBAAoB;IACpB,kBAAkB;IAClB,kBAAkB;IAClB,mBAAmB;IACnB,oBAAoB;IACpB,qBAAqB;IACrB,yBAAyB;CACjB,CAAC;AAEX;;;GAGG;AACU,QAAA,yBAAyB,GAAwB;IAC5D;QACE,UAAU,EAAE,aAAa;QACzB,QAAQ,EAAE,CAAC,QAAQ,CAAC;QACpB,QAAQ,EAAE,CAAC,aAAa,CAAC;KAC1B;IACD;QACE,UAAU,EAAE,oBAAoB;QAChC,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,CAAC,aAAa,CAAC;QAC7B,UAAU,EAAE,CAAC,wBAAwB,CAAC;KACvC;IACD;QACE,4BAA4B;QAC5B,UAAU,EAAE,kBAAkB;QAC9B,UAAU,EAAE,CAAC,UAAU,CAAC;KACzB;IACD;QACE,UAAU,EAAE,kBAAkB;QAC9B,YAAY,EAAE,CAAC,aAAa,CAAC;QAC7B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,IAAI;KACjB;IACD;QACE,UAAU,EAAE,oBAAoB;QAChC,YAAY,EAAE,CAAC,aAAa,CAAC;QAC7B,aAAa,EAAE,IAAI;QACnB,WAAW,EAAE,IAAI;KAClB;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,CAAC,aAAa,CAAC;QAC7B,aAAa,EAAE,IAAI;QACnB,WAAW,EAAE,IAAI;KAClB;IACD;QACE,UAAU,EAAE,oBAAoB;QAChC,YAAY,EAAE,CAAC,kBAAkB,CAAC;KACnC;IACD;QACE,UAAU,EAAE,qBAAqB;QACjC,YAAY,EAAE,CAAC,kBAAkB,CAAC;KACnC;IACD;QACE,UAAU,EAAE,yBAAyB;QACrC,YAAY,EAAE,CAAC,kBAAkB,CAAC;KACnC;CACF,CAAC"}
@@ -5,6 +5,7 @@ const resources_1 = require("../../resources");
5
5
  const ProjectBusinessRules_1 = require("./ProjectBusinessRules");
6
6
  const capabilities_1 = require("../../capabilities");
7
7
  const discussions_1 = require("../../discussions");
8
+ const processEntityFeatures_1 = require("../../permissions/_internal/processEntityFeatures");
8
9
  /**
9
10
  * Given a model and a project, set various computed properties that can't be directly mapped
10
11
  * @private
@@ -14,7 +15,7 @@ const discussions_1 = require("../../discussions");
14
15
  * @returns
15
16
  */
16
17
  function computeProps(model, project, requestOptions) {
17
- var _a;
18
+ var _a, _b;
18
19
  let token;
19
20
  if (requestOptions.authentication) {
20
21
  const session = requestOptions.authentication;
@@ -29,7 +30,12 @@ function computeProps(model, project, requestOptions) {
29
30
  project.updatedDateSource = "item.modified";
30
31
  project.isDiscussable = discussions_1.isDiscussable(project);
31
32
  // Handle capabilities
33
+ // TODO: Remove capabilities
32
34
  project.capabilities = capabilities_1.processEntityCapabilities(((_a = model.data.settings) === null || _a === void 0 ? void 0 : _a.capabilities) || {}, ProjectBusinessRules_1.ProjectDefaultCapabilities);
35
+ /**
36
+ * Features that can be disabled by the entity owner
37
+ */
38
+ project.features = processEntityFeatures_1.processEntityFeatures(((_b = model.data.settings) === null || _b === void 0 ? void 0 : _b.features) || {}, ProjectBusinessRules_1.ProjectDefaultFeatures);
33
39
  // cast b/c this takes a partial but returns a full project
34
40
  return project;
35
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/projects/_internal/computeProps.ts"],"names":[],"mappings":";;;AAEA,+CAAsD;AAGtD,iEAAoE;AACpE,qDAA+D;AAC/D,mDAAkD;AAElD;;;;;;;GAOG;AACH,SAAgB,YAAY,CAC1B,KAAa,EACb,OAA6B,EAC7B,cAA+B;;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IACD,gBAAgB;IAChB,OAAO,CAAC,YAAY,GAAG,+BAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;IAE9E,eAAe;IACf,OAAO,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,OAAO,CAAC,iBAAiB,GAAG,cAAc,CAAC;IAC3C,OAAO,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,OAAO,CAAC,iBAAiB,GAAG,eAAe,CAAC;IAC5C,OAAO,CAAC,aAAa,GAAG,2BAAa,CAAC,OAAO,CAAC,CAAC;IAE/C,sBAAsB;IACtB,OAAO,CAAC,YAAY,GAAG,wCAAyB,CAC9C,OAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,0CAAE,YAAY,KAAI,EAAE,EACvC,iDAA0B,CAC3B,CAAC;IAEF,2DAA2D;IAC3D,OAAO,OAAsB,CAAC;AAChC,CAAC;AA5BD,oCA4BC"}
1
+ {"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/projects/_internal/computeProps.ts"],"names":[],"mappings":";;;AAEA,+CAAsD;AAGtD,iEAGgC;AAChC,qDAA+D;AAC/D,mDAAkD;AAClD,6FAA0F;AAE1F;;;;;;;GAOG;AACH,SAAgB,YAAY,CAC1B,KAAa,EACb,OAA6B,EAC7B,cAA+B;;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IACD,gBAAgB;IAChB,OAAO,CAAC,YAAY,GAAG,+BAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;IAE9E,eAAe;IACf,OAAO,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,OAAO,CAAC,iBAAiB,GAAG,cAAc,CAAC;IAC3C,OAAO,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,OAAO,CAAC,iBAAiB,GAAG,eAAe,CAAC;IAC5C,OAAO,CAAC,aAAa,GAAG,2BAAa,CAAC,OAAO,CAAC,CAAC;IAE/C,sBAAsB;IACtB,4BAA4B;IAC5B,OAAO,CAAC,YAAY,GAAG,wCAAyB,CAC9C,OAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,0CAAE,YAAY,KAAI,EAAE,EACvC,iDAA0B,CAC3B,CAAC;IAEF;;OAEG;IACH,OAAO,CAAC,QAAQ,GAAG,6CAAqB,CACtC,OAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,0CAAE,QAAQ,KAAI,EAAE,EACnC,6CAAsB,CACvB,CAAC;IAEF,2DAA2D;IAC3D,OAAO,OAAsB,CAAC;AAChC,CAAC;AArCD,oCAqCC"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DEFAULT_PROJECT_MODEL = exports.DEFAULT_PROJECT = exports.HUB_PROJECT_ITEM_TYPE = void 0;
4
4
  const core_1 = require("../core");
5
+ const InitiativeBusinessRules_1 = require("../initiatives/_internal/InitiativeBusinessRules");
5
6
  exports.HUB_PROJECT_ITEM_TYPE = "Hub Project";
6
7
  /**
7
8
  * Default values of a IHubProject
@@ -19,6 +20,7 @@ exports.DEFAULT_PROJECT = {
19
20
  featuredContentIds: [],
20
21
  showMap: true,
21
22
  },
23
+ features: InitiativeBusinessRules_1.InitiativeDefaultFeatures,
22
24
  };
23
25
  /**
24
26
  * Default values for a new HubProject Model
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/projects/defaults.ts"],"names":[],"mappings":";;;AAAA,kCAAwD;AAG3C,QAAA,qBAAqB,GAAG,aAAa,CAAC;AAEnD;;GAEG;AACU,QAAA,eAAe,GAAyB;IACnD,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE;IAC7B,IAAI,EAAE,EAAE;IACR,WAAW,EAAE,EAAE;IACf,aAAa,EAAE,CAAC;IAChB,MAAM,EAAE,uBAAgB,CAAC,UAAU;IACnC,IAAI,EAAE,EAAE;IACR,YAAY,EAAE,CAAC,6BAAqB,CAAC;IACrC,IAAI,EAAE;QACJ,QAAQ,EAAE,EAAE;QACZ,kBAAkB,EAAE,EAAE;QACtB,OAAO,EAAE,IAAI;KACd;CACF,CAAC;AAEF;;GAEG;AACU,QAAA,qBAAqB,GAAW;IAC3C,IAAI,EAAE;QACJ,IAAI,EAAE,6BAAqB;QAC3B,KAAK,EAAE,EAAE;QACT,WAAW,EAAE,EAAE;QACf,OAAO,EAAE,EAAE;QACX,IAAI,EAAE,EAAE;QACR,YAAY,EAAE,CAAC,6BAAqB,CAAC;QACrC,UAAU,EAAE;YACV,IAAI,EAAE,EAAE;YACR,aAAa,EAAE,CAAC;SACjB;KACF;IACD,IAAI,EAAE;QACJ,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,EAAE;QACf,MAAM,EAAE,uBAAgB,CAAC,UAAU;QACnC,IAAI,EAAE;YACJ,QAAQ,EAAE,EAAE;YACZ,kBAAkB,EAAE,EAAE;YACtB,OAAO,EAAE,IAAI;SACd;KACF;CACmB,CAAC"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/projects/defaults.ts"],"names":[],"mappings":";;;AAAA,kCAAwD;AACxD,8FAA6F;AAGhF,QAAA,qBAAqB,GAAG,aAAa,CAAC;AAEnD;;GAEG;AACU,QAAA,eAAe,GAAyB;IACnD,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE;IAC7B,IAAI,EAAE,EAAE;IACR,WAAW,EAAE,EAAE;IACf,aAAa,EAAE,CAAC;IAChB,MAAM,EAAE,uBAAgB,CAAC,UAAU;IACnC,IAAI,EAAE,EAAE;IACR,YAAY,EAAE,CAAC,6BAAqB,CAAC;IACrC,IAAI,EAAE;QACJ,QAAQ,EAAE,EAAE;QACZ,kBAAkB,EAAE,EAAE;QACtB,OAAO,EAAE,IAAI;KACd;IACD,QAAQ,EAAE,mDAAyB;CACpC,CAAC;AAEF;;GAEG;AACU,QAAA,qBAAqB,GAAW;IAC3C,IAAI,EAAE;QACJ,IAAI,EAAE,6BAAqB;QAC3B,KAAK,EAAE,EAAE;QACT,WAAW,EAAE,EAAE;QACf,OAAO,EAAE,EAAE;QACX,IAAI,EAAE,EAAE;QACR,YAAY,EAAE,CAAC,6BAAqB,CAAC;QACrC,UAAU,EAAE;YACV,IAAI,EAAE,EAAE;YACR,aAAa,EAAE,CAAC;SACjB;KACF;IACD,IAAI,EAAE;QACJ,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,EAAE;QACf,MAAM,EAAE,uBAAgB,CAAC,UAAU;QACnC,IAAI,EAAE;YACJ,QAAQ,EAAE,EAAE;YACZ,kBAAkB,EAAE,EAAE;YACtB,OAAO,EAAE,IAAI;SACd;KACF;CACmB,CAAC"}
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SiteVersionIncludeList = exports.SitesPermissionPolicies = exports.SitePermissions = exports.SiteCapabilityPermissions = exports.SiteDefaultCapabilities = void 0;
3
+ exports.SiteVersionIncludeList = exports.SitesPermissionPolicies = exports.SitePermissions = exports.SiteDefaultFeatures = exports.SiteCapabilityPermissions = exports.SiteDefaultCapabilities = void 0;
4
4
  /**
5
+ * DEPRECATED
5
6
  * Default capabilities for a Site. If not listed here, the capability will not be available
6
7
  * This hash is combined with the capabilities hash stored in the item data. Regardless of what
7
8
  * properties are defined in the item data, only the capabilities defined here will be available
@@ -15,9 +16,11 @@ exports.SiteDefaultCapabilities = {
15
16
  dashboard: true,
16
17
  };
17
18
  /**
19
+ * DEPRECATED
18
20
  * List of all the Site Capability Permissions
19
21
  * These are considered Hub Business Rules and are not intended
20
22
  * to be modified by consumers
23
+ * @private
21
24
  */
22
25
  exports.SiteCapabilityPermissions = [
23
26
  {
@@ -46,47 +49,73 @@ exports.SiteCapabilityPermissions = [
46
49
  permissions: ["hub:site:edit"],
47
50
  },
48
51
  ];
52
+ /**
53
+ * Default features for a Site. These are the features that can be enabled / disabled by the entity owner
54
+ */
55
+ exports.SiteDefaultFeatures = {
56
+ "hub:site:events": false,
57
+ "hub:site:content": true,
58
+ "hub:site:discussions": false,
59
+ };
49
60
  /**
50
61
  * Site Permissions
51
62
  * This feeds into the Permissions type
52
63
  */
53
64
  exports.SitePermissions = [
65
+ "hub:site",
54
66
  "hub:site:create",
55
67
  "hub:site:delete",
56
68
  "hub:site:edit",
57
69
  "hub:site:view",
70
+ "hub:site:owner",
71
+ "hub:site:events",
72
+ "hub:site:content",
73
+ "hub:site:discussions",
58
74
  ];
59
75
  /**
60
76
  * Site permission policies
61
77
  * @private
62
78
  */
63
79
  exports.SitesPermissionPolicies = [
80
+ {
81
+ permission: "hub:site",
82
+ services: ["portal"],
83
+ licenses: ["hub-basic", "hub-premium", "enterprise-sites"],
84
+ },
64
85
  {
65
86
  permission: "hub:site:create",
66
- subsystems: ["sites"],
87
+ dependencies: ["hub:site"],
67
88
  authenticated: true,
68
89
  privileges: ["portal:user:createItem"],
69
- licenses: ["hub-basic", "hub-premium", "enterprise-sites"],
70
90
  },
71
91
  {
72
92
  permission: "hub:site:view",
73
- subsystems: ["sites"],
93
+ dependencies: ["hub:site"],
74
94
  authenticated: false,
75
- licenses: ["hub-basic", "hub-premium", "enterprise-sites"],
76
95
  },
77
96
  {
78
97
  permission: "hub:site:delete",
79
- subsystems: ["sites"],
98
+ dependencies: ["hub:site"],
80
99
  authenticated: true,
81
- licenses: ["hub-basic", "hub-premium", "enterprise-sites"],
82
100
  entityOwner: true,
83
101
  },
84
102
  {
85
103
  permission: "hub:site:edit",
86
104
  entityEdit: true,
87
- subsystems: ["sites"],
105
+ dependencies: ["hub:site"],
88
106
  authenticated: true,
89
- licenses: ["hub-basic", "hub-premium", "enterprise-sites"],
107
+ },
108
+ {
109
+ permission: "hub:site:events",
110
+ dependencies: ["hub:site:view"],
111
+ },
112
+ {
113
+ permission: "hub:site:content",
114
+ dependencies: ["hub:site:edit"],
115
+ },
116
+ {
117
+ permission: "hub:site:discussions",
118
+ dependencies: ["hub:site:view"],
90
119
  },
91
120
  ];
92
121
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"SiteBusinessRules.js","sourceRoot":"","sources":["../../../../src/sites/_internal/SiteBusinessRules.ts"],"names":[],"mappings":";;;AAGA;;;;;GAKG;AACU,QAAA,uBAAuB,GAAuB;IACzD,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,IAAI;CAChB,CAAC;AAEF;;;;GAIG;AACU,QAAA,yBAAyB,GAA4B;IAChE;QACE,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,UAAU;QACtB,WAAW,EAAE,CAAC,eAAe,CAAC;KAC/B;IACD;QACE,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,SAAS;QACrB,WAAW,EAAE,CAAC,eAAe,CAAC;KAC/B;IACD;QACE,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,UAAU;QACtB,WAAW,EAAE,CAAC,eAAe,EAAE,eAAe,CAAC;KAChD;IACD;QACE,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,SAAS;QACrB,WAAW,EAAE,CAAC,eAAe,CAAC;KAC/B;IACD;QACE,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,WAAW;QACvB,WAAW,EAAE,CAAC,eAAe,CAAC;KAC/B;CACF,CAAC;AAEF;;;GAGG;AACU,QAAA,eAAe,GAAG;IAC7B,iBAAiB;IACjB,iBAAiB;IACjB,eAAe;IACf,eAAe;CACP,CAAC;AAEX;;;GAGG;AACU,QAAA,uBAAuB,GAAwB;IAC1D;QACE,UAAU,EAAE,iBAAiB;QAC7B,UAAU,EAAE,CAAC,OAAO,CAAC;QACrB,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,wBAAwB,CAAC;QACtC,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,CAAC;KAC3D;IACD;QACE,UAAU,EAAE,eAAe;QAC3B,UAAU,EAAE,CAAC,OAAO,CAAC;QACrB,aAAa,EAAE,KAAK;QACpB,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,CAAC;KAC3D;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,UAAU,EAAE,CAAC,OAAO,CAAC;QACrB,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,CAAC;QAC1D,WAAW,EAAE,IAAI;KAClB;IACD;QACE,UAAU,EAAE,eAAe;QAC3B,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,CAAC,OAAO,CAAC;QACrB,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,CAAC;KAC3D;CACF,CAAC;AAEF;;GAEG;AACU,QAAA,sBAAsB,GAAG;IACpC,oBAAoB;IACpB,mBAAmB;IACnB,yBAAyB;CAC1B,CAAC"}
1
+ {"version":3,"file":"SiteBusinessRules.js","sourceRoot":"","sources":["../../../../src/sites/_internal/SiteBusinessRules.ts"],"names":[],"mappings":";;;AAGA;;;;;;GAMG;AACU,QAAA,uBAAuB,GAAuB;IACzD,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,IAAI;CAChB,CAAC;AAEF;;;;;;GAMG;AACU,QAAA,yBAAyB,GAA4B;IAChE;QACE,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,UAAU;QACtB,WAAW,EAAE,CAAC,eAAe,CAAC;KAC/B;IACD;QACE,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,SAAS;QACrB,WAAW,EAAE,CAAC,eAAe,CAAC;KAC/B;IACD;QACE,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,UAAU;QACtB,WAAW,EAAE,CAAC,eAAe,EAAE,eAAe,CAAC;KAChD;IACD;QACE,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,SAAS;QACrB,WAAW,EAAE,CAAC,eAAe,CAAC;KAC/B;IACD;QACE,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,WAAW;QACvB,WAAW,EAAE,CAAC,eAAe,CAAC;KAC/B;CACF,CAAC;AAEF;;GAEG;AACU,QAAA,mBAAmB,GAAoB;IAClD,iBAAiB,EAAE,KAAK;IACxB,kBAAkB,EAAE,IAAI;IACxB,sBAAsB,EAAE,KAAK;CAC9B,CAAC;AAEF;;;GAGG;AACU,QAAA,eAAe,GAAG;IAC7B,UAAU;IACV,iBAAiB;IACjB,iBAAiB;IACjB,eAAe;IACf,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;IAClB,sBAAsB;CACd,CAAC;AAEX;;;GAGG;AACU,QAAA,uBAAuB,GAAwB;IAC1D;QACE,UAAU,EAAE,UAAU;QACtB,QAAQ,EAAE,CAAC,QAAQ,CAAC;QACpB,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,CAAC;KAC3D;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,YAAY,EAAE,CAAC,UAAU,CAAC;QAC1B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,wBAAwB,CAAC;KACvC;IACD;QACE,UAAU,EAAE,eAAe;QAC3B,YAAY,EAAE,CAAC,UAAU,CAAC;QAC1B,aAAa,EAAE,KAAK;KACrB;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,YAAY,EAAE,CAAC,UAAU,CAAC;QAC1B,aAAa,EAAE,IAAI;QACnB,WAAW,EAAE,IAAI;KAClB;IACD;QACE,UAAU,EAAE,eAAe;QAC3B,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,CAAC,UAAU,CAAC;QAC1B,aAAa,EAAE,IAAI;KACpB;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,YAAY,EAAE,CAAC,eAAe,CAAC;KAChC;IACD;QACE,UAAU,EAAE,kBAAkB;QAC9B,YAAY,EAAE,CAAC,eAAe,CAAC;KAChC;IACD;QACE,UAAU,EAAE,sBAAsB;QAClC,YAAY,EAAE,CAAC,eAAe,CAAC;KAChC;CACF,CAAC;AAEF;;GAEG;AACU,QAAA,sBAAsB,GAAG;IACpC,oBAAoB;IACpB,mBAAmB;IACnB,yBAAyB;CAC1B,CAAC"}
@@ -6,6 +6,7 @@ const SiteBusinessRules_1 = require("./SiteBusinessRules");
6
6
  const capabilities_1 = require("../../capabilities");
7
7
  const upgradeCatalogSchema_1 = require("../../search/upgradeCatalogSchema");
8
8
  const discussions_1 = require("../../discussions");
9
+ const processEntityFeatures_1 = require("../../permissions/_internal/processEntityFeatures");
9
10
  /**
10
11
  * Given a model and a site, set various computed properties that can't be directly mapped
11
12
  * @private
@@ -15,7 +16,7 @@ const discussions_1 = require("../../discussions");
15
16
  * @returns
16
17
  */
17
18
  function computeProps(model, site, requestOptions) {
18
- var _a;
19
+ var _a, _b;
19
20
  let token;
20
21
  if (requestOptions.authentication) {
21
22
  const session = requestOptions.authentication;
@@ -31,7 +32,12 @@ function computeProps(model, site, requestOptions) {
31
32
  site.isDiscussable = discussions_1.isDiscussable(site);
32
33
  // Handle capabilities
33
34
  // NOTE: This does not currently contain the older "capabilities" values!
35
+ // TODO: Remove capabilities
34
36
  site.capabilities = capabilities_1.processEntityCapabilities(((_a = model.data.settings) === null || _a === void 0 ? void 0 : _a.capabilities) || {}, SiteBusinessRules_1.SiteDefaultCapabilities);
37
+ /**
38
+ * Features that can be disabled by the entity owner
39
+ */
40
+ site.features = processEntityFeatures_1.processEntityFeatures(((_b = model.data.settings) === null || _b === void 0 ? void 0 : _b.features) || {}, SiteBusinessRules_1.SiteDefaultFeatures);
35
41
  // Perform schema upgrades on the new catalog structure
36
42
  site.catalog = upgradeCatalogSchema_1.upgradeCatalogSchema(site.catalog);
37
43
  // cast b/c this takes a partial but returns a full site
@@ -1 +1 @@
1
- {"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/sites/_internal/computeProps.ts"],"names":[],"mappings":";;;AAEA,+CAAsD;AAGtD,2DAA8D;AAC9D,qDAA+D;AAC/D,4EAAyE;AACzE,mDAAkD;AAElD;;;;;;;GAOG;AACH,SAAgB,YAAY,CAC1B,KAAa,EACb,IAAuB,EACvB,cAA+B;;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IACD,gBAAgB;IAChB,IAAI,CAAC,YAAY,GAAG,+BAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;IAE3E,eAAe;IACf,IAAI,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChD,IAAI,CAAC,iBAAiB,GAAG,cAAc,CAAC;IACxC,IAAI,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,CAAC,iBAAiB,GAAG,eAAe,CAAC;IACzC,IAAI,CAAC,aAAa,GAAG,2BAAa,CAAC,IAAI,CAAC,CAAC;IAEzC,sBAAsB;IACtB,yEAAyE;IACzE,IAAI,CAAC,YAAY,GAAG,wCAAyB,CAC3C,OAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,0CAAE,YAAY,KAAI,EAAE,EACvC,2CAAuB,CACxB,CAAC;IAEF,uDAAuD;IACvD,IAAI,CAAC,OAAO,GAAG,2CAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAElD,wDAAwD;IACxD,OAAO,IAAgB,CAAC;AAC1B,CAAC;AAhCD,oCAgCC"}
1
+ {"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/sites/_internal/computeProps.ts"],"names":[],"mappings":";;;AAEA,+CAAsD;AAGtD,2DAG6B;AAC7B,qDAA+D;AAC/D,4EAAyE;AACzE,mDAAkD;AAClD,6FAA0F;AAE1F;;;;;;;GAOG;AACH,SAAgB,YAAY,CAC1B,KAAa,EACb,IAAuB,EACvB,cAA+B;;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IACD,gBAAgB;IAChB,IAAI,CAAC,YAAY,GAAG,+BAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;IAE3E,eAAe;IACf,IAAI,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChD,IAAI,CAAC,iBAAiB,GAAG,cAAc,CAAC;IACxC,IAAI,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,CAAC,iBAAiB,GAAG,eAAe,CAAC;IACzC,IAAI,CAAC,aAAa,GAAG,2BAAa,CAAC,IAAI,CAAC,CAAC;IAEzC,sBAAsB;IACtB,yEAAyE;IACzE,4BAA4B;IAC5B,IAAI,CAAC,YAAY,GAAG,wCAAyB,CAC3C,OAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,0CAAE,YAAY,KAAI,EAAE,EACvC,2CAAuB,CACxB,CAAC;IAEF;;OAEG;IACH,IAAI,CAAC,QAAQ,GAAG,6CAAqB,CACnC,OAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,0CAAE,QAAQ,KAAI,EAAE,EACnC,uCAAmB,CACpB,CAAC;IAEF,uDAAuD;IACvD,IAAI,CAAC,OAAO,GAAG,2CAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAElD,wDAAwD;IACxD,OAAO,IAAgB,CAAC;AAC1B,CAAC;AAzCD,oCAyCC"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DEFAULT_SITE_MODEL = exports.DEFAULT_SITE = exports.HUB_SITE_ITEM_TYPE = void 0;
4
+ const SiteBusinessRules_1 = require("./_internal/SiteBusinessRules");
4
5
  exports.HUB_SITE_ITEM_TYPE = "Hub Site Application";
5
6
  /**
6
7
  * Default values of a IHubSite
@@ -12,6 +13,7 @@ exports.DEFAULT_SITE = {
12
13
  catalog: { schemaVersion: 0 },
13
14
  permissions: [],
14
15
  schemaVersion: 1,
16
+ features: SiteBusinessRules_1.SiteDefaultFeatures,
15
17
  };
16
18
  /**
17
19
  * Default values for a new HubProject Model
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/sites/defaults.ts"],"names":[],"mappings":";;;AAGa,QAAA,kBAAkB,GAAG,sBAAsB,CAAC;AAEzD;;GAEG;AACU,QAAA,YAAY,GAAsB;IAC7C,IAAI,EAAE,mBAAmB;IACzB,IAAI,EAAE,EAAE;IACR,YAAY,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;IACrC,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE;IAC7B,WAAW,EAAE,EAAE;IACf,aAAa,EAAE,CAAC;CACjB,CAAC;AAEF;;GAEG;AACU,QAAA,kBAAkB,GAAW;IACxC,IAAI,EAAE;QACJ,IAAI,EAAE,0BAAkB;QACxB,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EAAE,EAAE;QACf,OAAO,EAAE,EAAE;QACX,IAAI,EAAE,EAAE;QACR,YAAY,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;QACrC,UAAU,EAAE;YACV,IAAI,EAAE,EAAE;YACR,aAAa,EAAE,CAAC;SACjB;KACF;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,EAAE;KACX;CACmB,CAAC"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/sites/defaults.ts"],"names":[],"mappings":";;;AAEA,qEAAoE;AAEvD,QAAA,kBAAkB,GAAG,sBAAsB,CAAC;AAEzD;;GAEG;AACU,QAAA,YAAY,GAAsB;IAC7C,IAAI,EAAE,mBAAmB;IACzB,IAAI,EAAE,EAAE;IACR,YAAY,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;IACrC,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE;IAC7B,WAAW,EAAE,EAAE;IACf,aAAa,EAAE,CAAC;IAChB,QAAQ,EAAE,uCAAmB;CAC9B,CAAC;AAEF;;GAEG;AACU,QAAA,kBAAkB,GAAW;IACxC,IAAI,EAAE;QACJ,IAAI,EAAE,0BAAkB;QACxB,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EAAE,EAAE;QACf,OAAO,EAAE,EAAE;QACX,IAAI,EAAE,EAAE;QACR,YAAY,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;QACrC,UAAU,EAAE;YACV,IAAI,EAAE,EAAE;YACR,aAAa,EAAE,CAAC;SACjB;KACF;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,EAAE;KACX;CACmB,CAAC"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getEnvironmentFromPortalUrl = void 0;
4
+ function getEnvironmentFromPortalUrl(portalUrl) {
5
+ // default to enterprise because we don't know the patterns for that
6
+ // other than it's _not_ arcgis.com
7
+ let env = "enterprise";
8
+ // if we're on arcgis.com, we can assume prod...
9
+ if (portalUrl.includes("arcgis.com")) {
10
+ env = "production";
11
+ }
12
+ // unless we're on a subdomain which suggest we might be in a dev or qa environment
13
+ if (portalUrl.includes("qaext.arcgis.com") ||
14
+ portalUrl.includes("mapsqa.arcgis.com")) {
15
+ env = "qaext";
16
+ }
17
+ if (portalUrl.includes("devext.arcgis.com") ||
18
+ portalUrl.includes("mapsdev.arcgis.com")) {
19
+ env = "devext";
20
+ }
21
+ return env;
22
+ }
23
+ exports.getEnvironmentFromPortalUrl = getEnvironmentFromPortalUrl;
24
+ //# sourceMappingURL=getEnvironmentFromPortalUrl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getEnvironmentFromPortalUrl.js","sourceRoot":"","sources":["../../../src/utils/getEnvironmentFromPortalUrl.ts"],"names":[],"mappings":";;;AAEA,SAAgB,2BAA2B,CAAC,SAAiB;IAC3D,oEAAoE;IACpE,mCAAmC;IACnC,IAAI,GAAG,GAAmB,YAAY,CAAC;IACvC,gDAAgD;IAChD,IAAI,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;QACpC,GAAG,GAAG,YAAY,CAAC;KACpB;IACD,mFAAmF;IACnF,IACE,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACtC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EACvC;QACA,GAAG,GAAG,OAAO,CAAC;KACf;IACD,IACE,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QACvC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EACxC;QACA,GAAG,GAAG,QAAQ,CAAC;KAChB;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAvBD,kEAuBC"}
@@ -24,4 +24,5 @@ tslib_1.__exportStar(require("./sessionLocalStorage"), exports);
24
24
  tslib_1.__exportStar(require("./dasherize"), exports);
25
25
  tslib_1.__exportStar(require("./titleize"), exports);
26
26
  tslib_1.__exportStar(require("./memoize"), exports);
27
+ tslib_1.__exportStar(require("./getEnvironmentFromPortalUrl"), exports);
27
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,kDAAwB;AACxB,qDAA2B;AAC3B,iEAAuC;AACvC,sEAA4C;AAC5C,sDAA4B;AAC5B,mEAAyC;AACzC,4DAAkC;AAClC,kEAAwC;AACxC,qDAA2B;AAC3B,oDAA0B;AAC1B,mDAAyB;AACzB,oDAA0B;AAC1B,4DAAkC;AAClC,2DAAiC;AACjC,6DAAmC;AACnC,mDAAyB;AACzB,4DAAkC;AAClC,6DAAmC;AACnC,gEAAsC;AACtC,sDAA4B;AAC5B,qDAA2B;AAC3B,oDAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,kDAAwB;AACxB,qDAA2B;AAC3B,iEAAuC;AACvC,sEAA4C;AAC5C,sDAA4B;AAC5B,mEAAyC;AACzC,4DAAkC;AAClC,kEAAwC;AACxC,qDAA2B;AAC3B,oDAA0B;AAC1B,mDAAyB;AACzB,oDAA0B;AAC1B,4DAAkC;AAClC,2DAAiC;AACjC,6DAAmC;AACnC,mDAAyB;AACzB,4DAAkC;AAClC,6DAAmC;AACnC,gEAAsC;AACtC,sDAA4B;AAC5B,qDAA2B;AAC3B,oDAA0B;AAC1B,wEAA8C"}
@@ -1,8 +1,8 @@
1
1
  import { IUser, IUserRequestOptions, UserSession } from "@esri/arcgis-rest-auth";
2
2
  import { IPortal } from "@esri/arcgis-rest-portal";
3
3
  import { IRequestOptions } from "@esri/arcgis-rest-request";
4
- import { HubSystemStatus } from "./core";
5
- import { HubLicense } from "./permissions/types";
4
+ import { HubServiceStatus, HubSystemStatus } from "./core";
5
+ import { HubEnvironment, HubLicense } from "./permissions/types";
6
6
  import { IHubRequestOptions } from "./types";
7
7
  /**
8
8
  * Defines the properties of the ArcGISContext.
@@ -141,14 +141,27 @@ export interface IArcGISContext {
141
141
  */
142
142
  properties: Record<string, any>;
143
143
  /**
144
- * System status
144
+ * DEPRECATED: System status
145
145
  */
146
146
  systemStatus: HubSystemStatus;
147
+ /**
148
+ * Hub Service Status
149
+ */
150
+ serviceStatus: HubServiceStatus;
147
151
  /**
148
152
  * Is this user in a Hub Alpha org?
149
153
  * Derived from properties.alphaOrgs
150
154
  */
151
155
  isAlphaOrg: boolean;
156
+ /**
157
+ * Is this user in a Hub Beta org?
158
+ * Derived from properties.betaOrgs
159
+ */
160
+ isBetaOrg: boolean;
161
+ /**
162
+ * What environment is this running in?
163
+ */
164
+ environment: HubEnvironment;
152
165
  }
153
166
  /**
154
167
  * Options for the ArcGISContext constructor
@@ -194,9 +207,14 @@ export interface IArcGISContextOptions {
194
207
  */
195
208
  properties?: Record<string, any>;
196
209
  /**
197
- * Option to pass in system status vs fetching it
210
+ * DEPRECATED: Option to pass in system status vs fetching it
211
+ * TODO: Remove with Capabilities
198
212
  */
199
213
  systemStatus?: HubSystemStatus;
214
+ /**
215
+ * Option to pass in service status vs fetching it
216
+ */
217
+ serviceStatus?: HubServiceStatus;
200
218
  }
201
219
  /**
202
220
  * Abstraction that holds a `UserSession`, along with
@@ -225,6 +243,7 @@ export declare class ArcGISContext implements IArcGISContext {
225
243
  private _currentUser;
226
244
  private _properties;
227
245
  private _systemStatus;
246
+ private _serviceStatus;
228
247
  /**
229
248
  * Create a new instance of `ArcGISContext`.
230
249
  *
@@ -244,6 +263,15 @@ export declare class ArcGISContext implements IArcGISContext {
244
263
  * Alpha orgs are passed in via properties.alphaOrgs
245
264
  */
246
265
  get isAlphaOrg(): boolean;
266
+ /**
267
+ * Is the users org in the beta orgs list?
268
+ * Beta orgs are passed in via properties.betaOrgs
269
+ */
270
+ get isBetaOrg(): boolean;
271
+ /**
272
+ * Return the HubEnvironment of the current context
273
+ */
274
+ get environment(): HubEnvironment;
247
275
  /**
248
276
  * Return `IUserRequestOptions`, which is used for REST-JS
249
277
  * functions which require authentication information.
@@ -285,8 +313,13 @@ export declare class ArcGISContext implements IArcGISContext {
285
313
  get hubLicense(): HubLicense;
286
314
  /**
287
315
  * Returns the current hub system status information
316
+ * TODO: Remove with Capabilities
288
317
  */
289
318
  get systemStatus(): HubSystemStatus;
319
+ /**
320
+ * Returns the current hub service status information
321
+ */
322
+ get serviceStatus(): HubServiceStatus;
290
323
  /**
291
324
  * Returns the url to the sharing api composed from portalUrl
292
325
  * i.e. https://myorg.maps.arcgis.com/sharing/rest
@@ -2,7 +2,7 @@ import { IPortal } from "@esri/arcgis-rest-portal";
2
2
  import { IUser, UserSession } from "@esri/arcgis-rest-auth";
3
3
  import { IArcGISContext } from "./ArcGISContext";
4
4
  import { Level } from "./utils/logger";
5
- import { HubSystemStatus } from "./core";
5
+ import { HubServiceStatus, HubSystemStatus } from "./core";
6
6
  /**
7
7
  * Options that can be passed into `ArcGISContextManager.create`
8
8
  */
@@ -48,9 +48,14 @@ export interface IArcGISContextManagerOptions {
48
48
  */
49
49
  logLevel?: Level;
50
50
  /**
51
- * Option to pass in system status vs fetching it
51
+ * DEPRECATED: Option to pass in system status vs fetching it
52
+ * TODO: Remove with Capabilities
52
53
  */
53
54
  systemStatus?: HubSystemStatus;
55
+ /**
56
+ * Option to pass in service status vs fetching it
57
+ */
58
+ serviceStatus?: HubServiceStatus;
54
59
  }
55
60
  /**
56
61
  * The manager exposes context (`IArcGISContext`), which combines a `UserSession` with
@@ -82,6 +87,7 @@ export declare class ArcGISContextManager {
82
87
  private _currentUser;
83
88
  private _logLevel;
84
89
  private _systemStatus;
90
+ private _serviceStatus;
85
91
  /**
86
92
  * Private constructor. Use `ArcGISContextManager.create(...)` to
87
93
  * instantiate an instance
@@ -7,7 +7,7 @@ import { IArcGISContext } from "../ArcGISContext";
7
7
  */
8
8
  export declare const CapabilityPermissions: ICapabilityPermission[];
9
9
  /**
10
- * Return the capabilities that are granted to the current user for a given entity
10
+ * DEPRECATED: Return the capabilities that are granted to the current user for a given entity
11
11
  * This is used by the Hub Components to determine which Workspace Navigation Links to show
12
12
  * @param entity
13
13
  * @param context
@@ -5,12 +5,14 @@ import { IPermissionPolicy } from "../../permissions";
5
5
  * This hash is combined with the capabilities hash stored in the item data. Regardless of what
6
6
  * properties are defined in the item data, only the capabilities defined here will be available
7
7
  * @private
8
+ * TODO: remove with Capabilities
8
9
  */
9
10
  export declare const ContentDefaultCapabilities: EntityCapabilities;
10
11
  /**
11
12
  * List of all the Content Capability Permissions
12
13
  * These are considered Hub Business Rules and are not intended
13
14
  * to be modified by consumers
15
+ * TODO: remove with Capabilities
14
16
  * @private
15
17
  */
16
18
  export declare const ContentCapabilityPermissions: ICapabilityPermission[];
@@ -22,6 +24,7 @@ export declare const ContentCapabilityPermissions: ICapabilityPermission[];
22
24
  export declare const ContentPermissions: readonly ["hub:content:create", "hub:content:edit", "hub:content:view"];
23
25
  /**
24
26
  * Content permission policies
27
+ * No need to specify license for permissions that are available to all licenses
25
28
  * @private
26
29
  */
27
30
  export declare const ContentPermissionPolicies: IPermissionPolicy[];
@@ -95,12 +95,14 @@ export declare const setContentBoundary: (content: IHubContent, boundary: Geogra
95
95
  canEdit: boolean;
96
96
  canDelete: boolean;
97
97
  location?: import("../../core").IHubLocation;
98
+ protected?: boolean;
98
99
  name: string;
99
100
  createdDate: Date;
100
101
  createdDateSource: string;
101
102
  updatedDate: Date;
102
103
  updatedDateSource: string;
103
104
  type: string;
105
+ features?: import("../..").IEntityFeatures;
104
106
  capabilities?: import("../..").EntityCapabilities;
105
107
  isDiscussable?: boolean;
106
108
  statistics?: any;
@@ -120,7 +122,6 @@ export declare const setContentBoundary: (content: IHubContent, boundary: Geogra
120
122
  modified: number;
121
123
  numViews: number;
122
124
  size: number;
123
- protected?: boolean;
124
125
  title: string;
125
126
  snippet?: string;
126
127
  documentation?: string;
@@ -44,6 +44,7 @@ export declare abstract class HubItemEntity<T extends IHubItemEntity> implements
44
44
  */
45
45
  removePermissionPolicy(permission: Permission, id: string): void;
46
46
  /**
47
+ * DEPRECATED: use checkPermission instead
47
48
  * Check if the current user can access a specific capability
48
49
  * @param capability
49
50
  */
@@ -27,6 +27,9 @@ export interface IWithPermissionBehavior {
27
27
  */
28
28
  removePermissionPolicy(permission: Permission, id: string): void;
29
29
  }
30
+ /**
31
+ * DEPRECATED: Composable behavior that adds capabilities to an entity
32
+ */
30
33
  export interface IWithCapabilityBehavior {
31
34
  /**
32
35
  * Is a specific capability available and enabled for the this entity?