@esri/hub-common 13.17.2 → 13.17.4

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 (585) hide show
  1. package/dist/esm/associations/addAssociation.js +16 -0
  2. package/dist/esm/associations/addAssociation.js.map +1 -0
  3. package/dist/esm/associations/index.js +5 -0
  4. package/dist/esm/associations/index.js.map +1 -0
  5. package/dist/esm/associations/internal/getTargetEntityFromAssociationType.js +18 -0
  6. package/dist/esm/associations/internal/getTargetEntityFromAssociationType.js.map +1 -0
  7. package/dist/esm/associations/internal/getTypeByIdsQuery.js +28 -0
  8. package/dist/esm/associations/internal/getTypeByIdsQuery.js.map +1 -0
  9. package/dist/esm/associations/internal/getTypeFromAssociationType.js +18 -0
  10. package/dist/esm/associations/internal/getTypeFromAssociationType.js.map +1 -0
  11. package/dist/esm/associations/internal/getTypeWithKeywordQuery.js +27 -0
  12. package/dist/esm/associations/internal/getTypeWithKeywordQuery.js.map +1 -0
  13. package/dist/esm/associations/internal/getTypeWithoutKeywordQuery.js +27 -0
  14. package/dist/esm/associations/internal/getTypeWithoutKeywordQuery.js.map +1 -0
  15. package/dist/esm/associations/listAssociations.js +17 -0
  16. package/dist/esm/associations/listAssociations.js.map +1 -0
  17. package/dist/esm/associations/removeAssociation.js +17 -0
  18. package/dist/esm/associations/removeAssociation.js.map +1 -0
  19. package/dist/esm/associations/types.js +2 -0
  20. package/dist/esm/associations/types.js.map +1 -0
  21. package/dist/esm/content/_internal/ContentSchema.js +16 -0
  22. package/dist/esm/content/_internal/ContentSchema.js.map +1 -0
  23. package/dist/esm/content/_internal/ContentUiSchemaEdit.js +148 -0
  24. package/dist/esm/content/_internal/ContentUiSchemaEdit.js.map +1 -0
  25. package/dist/esm/content/_internal/ContentUiSchemaSettings.js +59 -0
  26. package/dist/esm/content/_internal/ContentUiSchemaSettings.js.map +1 -0
  27. package/dist/esm/content/_internal/computeProps.js +57 -0
  28. package/dist/esm/content/_internal/computeProps.js.map +1 -0
  29. package/dist/esm/content/hostedServiceUtils.js +91 -0
  30. package/dist/esm/content/hostedServiceUtils.js.map +1 -0
  31. package/dist/esm/core/EntityEditor.js +56 -0
  32. package/dist/esm/core/EntityEditor.js.map +1 -0
  33. package/dist/esm/core/behaviors/IWIthAssociationBehavior.js +1 -0
  34. package/dist/esm/core/behaviors/IWIthAssociationBehavior.js.map +1 -0
  35. package/dist/esm/core/behaviors/IWithFollowersBehavior.js +1 -0
  36. package/dist/esm/core/behaviors/IWithFollowersBehavior.js.map +1 -0
  37. package/dist/esm/core/enrichEntity.js +66 -0
  38. package/dist/esm/core/enrichEntity.js.map +1 -0
  39. package/dist/esm/core/schemas/getEditorConfig.js +13 -0
  40. package/dist/esm/core/schemas/getEditorConfig.js.map +1 -0
  41. package/dist/esm/core/schemas/internal/ConfigurableEntity.js +1 -0
  42. package/dist/esm/core/schemas/internal/ConfigurableEntity.js.map +1 -0
  43. package/dist/esm/core/schemas/internal/configOptionHelpers.js +88 -0
  44. package/dist/esm/core/schemas/internal/configOptionHelpers.js.map +1 -0
  45. package/dist/esm/core/schemas/internal/getCategoryItems.js +34 -0
  46. package/dist/esm/core/schemas/internal/getCategoryItems.js.map +1 -0
  47. package/dist/esm/core/schemas/internal/getConfigOptions.js +15 -0
  48. package/dist/esm/core/schemas/internal/getConfigOptions.js.map +1 -0
  49. package/dist/esm/core/schemas/internal/getEditorConfigOptions.js +37 -0
  50. package/dist/esm/core/schemas/internal/getEditorConfigOptions.js.map +1 -0
  51. package/dist/esm/core/schemas/internal/getEntityEditorSchemas.js +93 -0
  52. package/dist/esm/core/schemas/internal/getEntityEditorSchemas.js.map +1 -0
  53. package/dist/esm/core/schemas/internal/getFeaturedContentCatalogs.js +21 -0
  54. package/dist/esm/core/schemas/internal/getFeaturedContentCatalogs.js.map +1 -0
  55. package/dist/esm/core/schemas/internal/getFeaturedImageUrl.js +11 -0
  56. package/dist/esm/core/schemas/internal/getFeaturedImageUrl.js.map +1 -0
  57. package/dist/esm/core/schemas/internal/getLocationExtent.js +11 -0
  58. package/dist/esm/core/schemas/internal/getLocationExtent.js.map +1 -0
  59. package/dist/esm/core/schemas/internal/getLocationOptions.js +64 -0
  60. package/dist/esm/core/schemas/internal/getLocationOptions.js.map +1 -0
  61. package/dist/esm/core/schemas/internal/getSharableGroupsComboBoxItems.js +27 -0
  62. package/dist/esm/core/schemas/internal/getSharableGroupsComboBoxItems.js.map +1 -0
  63. package/dist/esm/core/schemas/internal/getTagItems.js +61 -0
  64. package/dist/esm/core/schemas/internal/getTagItems.js.map +1 -0
  65. package/dist/esm/core/traits/IWithAssociations.js +1 -0
  66. package/dist/esm/core/traits/IWithAssociations.js.map +1 -0
  67. package/dist/esm/core/traits/IWithFollowers.js +1 -0
  68. package/dist/esm/core/traits/IWithFollowers.js.map +1 -0
  69. package/dist/esm/core/types/HubEntityEditor.js +1 -0
  70. package/dist/esm/core/types/HubEntityEditor.js.map +1 -0
  71. package/dist/esm/core/types/IHubGroup.js +1 -0
  72. package/dist/esm/core/types/IHubGroup.js.map +1 -0
  73. package/dist/esm/discussions/api/channels/channels.js +14 -0
  74. package/dist/esm/discussions/api/channels/channels.js.map +1 -0
  75. package/dist/esm/discussions/api/channels/index.js +2 -0
  76. package/dist/esm/discussions/api/channels/index.js.map +1 -0
  77. package/dist/esm/discussions/api/index.js +3 -0
  78. package/dist/esm/discussions/api/index.js.map +1 -0
  79. package/dist/esm/discussions/api/request.js +20 -0
  80. package/dist/esm/discussions/api/request.js.map +1 -0
  81. package/dist/esm/discussions/api/types.js +245 -0
  82. package/dist/esm/discussions/api/types.js.map +1 -0
  83. package/dist/esm/discussions/api/utils/request.js +77 -0
  84. package/dist/esm/discussions/api/utils/request.js.map +1 -0
  85. package/dist/esm/features/_internal/checkCapabilityAccess.js +54 -0
  86. package/dist/esm/features/_internal/checkCapabilityAccess.js.map +1 -0
  87. package/dist/esm/features/_internal/checkFeatureAccess.js +99 -0
  88. package/dist/esm/features/_internal/checkFeatureAccess.js.map +1 -0
  89. package/dist/esm/features/_internal/index.js +3 -0
  90. package/dist/esm/features/_internal/index.js.map +1 -0
  91. package/dist/esm/features/checkFeature.js +107 -0
  92. package/dist/esm/features/checkFeature.js.map +1 -0
  93. package/dist/esm/features/index.js +5 -0
  94. package/dist/esm/features/index.js.map +1 -0
  95. package/dist/esm/features/types.js +28 -0
  96. package/dist/esm/features/types.js.map +1 -0
  97. package/dist/esm/groups/HubGroup.js +258 -0
  98. package/dist/esm/groups/HubGroup.js.map +1 -0
  99. package/dist/esm/groups/_internal/AddOrInviteUsersToGroupUtils.js +195 -0
  100. package/dist/esm/groups/_internal/AddOrInviteUsersToGroupUtils.js.map +1 -0
  101. package/dist/esm/groups/_internal/GroupBusinessRules.js +94 -0
  102. package/dist/esm/groups/_internal/GroupBusinessRules.js.map +1 -0
  103. package/dist/esm/groups/_internal/GroupSchema.js +31 -0
  104. package/dist/esm/groups/_internal/GroupSchema.js.map +1 -0
  105. package/dist/esm/groups/_internal/GroupUiSchemaEdit.js +62 -0
  106. package/dist/esm/groups/_internal/GroupUiSchemaEdit.js.map +1 -0
  107. package/dist/esm/groups/_internal/GroupUiSchemaSettings.js +46 -0
  108. package/dist/esm/groups/_internal/GroupUiSchemaSettings.js.map +1 -0
  109. package/dist/esm/groups/_internal/autoAddUsersAsAdmins.js +24 -0
  110. package/dist/esm/groups/_internal/autoAddUsersAsAdmins.js.map +1 -0
  111. package/dist/esm/groups/_internal/computeProps.js +45 -0
  112. package/dist/esm/groups/_internal/computeProps.js.map +1 -0
  113. package/dist/esm/groups/_internal/convertGroupToHubGroup.js +14 -0
  114. package/dist/esm/groups/_internal/convertGroupToHubGroup.js.map +1 -0
  115. package/dist/esm/groups/_internal/convertHubGroupToGroup.js +26 -0
  116. package/dist/esm/groups/_internal/convertHubGroupToGroup.js.map +1 -0
  117. package/dist/esm/groups/_internal/getPropertyMap.js +40 -0
  118. package/dist/esm/groups/_internal/getPropertyMap.js.map +1 -0
  119. package/dist/esm/groups/_internal/processAutoAddUsers.js +62 -0
  120. package/dist/esm/groups/_internal/processAutoAddUsers.js.map +1 -0
  121. package/dist/esm/groups/_internal/processEmailUsers.js +50 -0
  122. package/dist/esm/groups/_internal/processEmailUsers.js.map +1 -0
  123. package/dist/esm/groups/_internal/processInviteUsers.js +51 -0
  124. package/dist/esm/groups/_internal/processInviteUsers.js.map +1 -0
  125. package/dist/esm/groups/addOrInviteUsersToGroup.js +67 -0
  126. package/dist/esm/groups/addOrInviteUsersToGroup.js.map +1 -0
  127. package/dist/esm/groups/addOrInviteUsersToGroups.js +51 -0
  128. package/dist/esm/groups/addOrInviteUsersToGroups.js.map +1 -0
  129. package/dist/esm/groups/autoAddUsers.js +24 -0
  130. package/dist/esm/groups/autoAddUsers.js.map +1 -0
  131. package/dist/esm/groups/defaults.js +21 -0
  132. package/dist/esm/groups/defaults.js.map +1 -0
  133. package/dist/esm/groups/deleteGroupThumbnail.js +14 -0
  134. package/dist/esm/groups/deleteGroupThumbnail.js.map +1 -0
  135. package/dist/esm/groups/emailOrgUsers.js +29 -0
  136. package/dist/esm/groups/emailOrgUsers.js.map +1 -0
  137. package/dist/esm/groups/inviteUsers.js +30 -0
  138. package/dist/esm/groups/inviteUsers.js.map +1 -0
  139. package/dist/esm/groups/setGroupThumbnail.js +32 -0
  140. package/dist/esm/groups/setGroupThumbnail.js.map +1 -0
  141. package/dist/esm/groups/types/types.js +1 -0
  142. package/dist/esm/groups/types/types.js.map +1 -0
  143. package/dist/esm/initiatives/_internal/InitiativeUiSchemaCreate.js +134 -0
  144. package/dist/esm/initiatives/_internal/InitiativeUiSchemaCreate.js.map +1 -0
  145. package/dist/esm/initiatives/view.js +81 -0
  146. package/dist/esm/initiatives/view.js.map +1 -0
  147. package/dist/esm/items/deleteItemThumbnail.js +14 -0
  148. package/dist/esm/items/deleteItemThumbnail.js.map +1 -0
  149. package/dist/esm/pages/HubPage.js +201 -0
  150. package/dist/esm/pages/HubPage.js.map +1 -0
  151. package/dist/esm/pages/_internal/PageSchema.js +31 -0
  152. package/dist/esm/pages/_internal/PageSchema.js.map +1 -0
  153. package/dist/esm/pages/_internal/PageUiSchemaEdit.js +126 -0
  154. package/dist/esm/pages/_internal/PageUiSchemaEdit.js.map +1 -0
  155. package/dist/esm/pages/_internal/computeProps.js +45 -0
  156. package/dist/esm/pages/_internal/computeProps.js.map +1 -0
  157. package/dist/esm/pages/_internal/getPropertyMap.js +20 -0
  158. package/dist/esm/pages/_internal/getPropertyMap.js.map +1 -0
  159. package/dist/esm/pages/defaults.js +41 -0
  160. package/dist/esm/pages/defaults.js.map +1 -0
  161. package/dist/esm/permissions/PlatformPermissionPolicies.js +711 -0
  162. package/dist/esm/permissions/PlatformPermissionPolicies.js.map +1 -0
  163. package/dist/esm/permissions/_internal/PermissionCheckFunction.js +1 -0
  164. package/dist/esm/permissions/_internal/PermissionCheckFunction.js.map +1 -0
  165. package/dist/esm/permissions/_internal/checkAvailability.js +46 -0
  166. package/dist/esm/permissions/_internal/checkAvailability.js.map +1 -0
  167. package/dist/esm/permissions/_internal/checkEntityFeature.js +29 -0
  168. package/dist/esm/permissions/_internal/checkEntityFeature.js.map +1 -0
  169. package/dist/esm/permissions/_internal/checkEnvironment.js +28 -0
  170. package/dist/esm/permissions/_internal/checkEnvironment.js.map +1 -0
  171. package/dist/esm/permissions/_internal/checkFeature.js +65 -0
  172. package/dist/esm/permissions/_internal/checkFeature.js.map +1 -0
  173. package/dist/esm/permissions/_internal/checkFeatures.js +42 -0
  174. package/dist/esm/permissions/_internal/checkFeatures.js.map +1 -0
  175. package/dist/esm/permissions/_internal/checkParents.js +23 -0
  176. package/dist/esm/permissions/_internal/checkParents.js.map +1 -0
  177. package/dist/esm/permissions/_internal/checkServiceStatus.js +24 -0
  178. package/dist/esm/permissions/_internal/checkServiceStatus.js.map +1 -0
  179. package/dist/esm/permissions/_internal/processEntityFeatures.js +26 -0
  180. package/dist/esm/permissions/_internal/processEntityFeatures.js.map +1 -0
  181. package/dist/esm/projects/_internal/getProjectEditorConfigOptions.js +63 -0
  182. package/dist/esm/projects/_internal/getProjectEditorConfigOptions.js.map +1 -0
  183. package/dist/esm/search/_internal/commonHelpers/getDiscussionsApiDefinition.js +10 -0
  184. package/dist/esm/search/_internal/commonHelpers/getDiscussionsApiDefinition.js.map +1 -0
  185. package/dist/esm/search/_internal/commonHelpers/shouldUseDiscussionsApi.js +13 -0
  186. package/dist/esm/search/_internal/commonHelpers/shouldUseDiscussionsApi.js.map +1 -0
  187. package/dist/esm/search/_internal/explainFilter.js +34 -0
  188. package/dist/esm/search/_internal/explainFilter.js.map +1 -0
  189. package/dist/esm/search/_internal/explainHelpers.js +193 -0
  190. package/dist/esm/search/_internal/explainHelpers.js.map +1 -0
  191. package/dist/esm/search/_internal/explainPredicate.js +35 -0
  192. package/dist/esm/search/_internal/explainPredicate.js.map +1 -0
  193. package/dist/esm/search/_internal/getEntityTypeFromType.js +21 -0
  194. package/dist/esm/search/_internal/getEntityTypeFromType.js.map +1 -0
  195. package/dist/esm/search/_internal/hubSearchChannels.js +137 -0
  196. package/dist/esm/search/_internal/hubSearchChannels.js.map +1 -0
  197. package/dist/esm/search/_internal/negateGroupPredicates.js +28 -0
  198. package/dist/esm/search/_internal/negateGroupPredicates.js.map +1 -0
  199. package/dist/esm/search/_internal/portalSearchGroupMembers.js +10 -1
  200. package/dist/esm/search/_internal/portalSearchGroupMembers.js.map +1 -1
  201. package/dist/esm/search/explainQueryResult.js +53 -0
  202. package/dist/esm/search/explainQueryResult.js.map +1 -0
  203. package/dist/esm/sites/HubSite.js +2 -1
  204. package/dist/esm/sites/HubSite.js.map +1 -1
  205. package/dist/esm/sites/_internal/SiteUiSchemaFollowers.js +56 -0
  206. package/dist/esm/sites/_internal/SiteUiSchemaFollowers.js.map +1 -0
  207. package/dist/esm/sites/_internal/_migrate-summary-stat-card-configs.js +188 -0
  208. package/dist/esm/sites/_internal/_migrate-summary-stat-card-configs.js.map +1 -0
  209. package/dist/esm/sites/_internal/applyCatalogStructureMigration.js +39 -0
  210. package/dist/esm/sites/_internal/applyCatalogStructureMigration.js.map +1 -0
  211. package/dist/esm/sites/_internal/applyDefaultCollectionMigration.js +92 -0
  212. package/dist/esm/sites/_internal/applyDefaultCollectionMigration.js.map +1 -0
  213. package/dist/esm/sites/_internal/capabilities/capabilityToFeatureMap.js +31 -0
  214. package/dist/esm/sites/_internal/capabilities/capabilityToFeatureMap.js.map +1 -0
  215. package/dist/esm/sites/_internal/capabilities/convertFeaturesToLegacyCapabilities.js +46 -0
  216. package/dist/esm/sites/_internal/capabilities/convertFeaturesToLegacyCapabilities.js.map +1 -0
  217. package/dist/esm/sites/_internal/capabilities/migrateLegacyCapabilitiesToFeatures.js +34 -0
  218. package/dist/esm/sites/_internal/capabilities/migrateLegacyCapabilitiesToFeatures.js.map +1 -0
  219. package/dist/esm/sites/_internal/capabilities/types.js +1 -0
  220. package/dist/esm/sites/_internal/capabilities/types.js.map +1 -0
  221. package/dist/esm/sites/_internal/convertCatalogToLegacyFormat.js +33 -0
  222. package/dist/esm/sites/_internal/convertCatalogToLegacyFormat.js.map +1 -0
  223. package/dist/esm/sites/_internal/reflectCollectionsToSearchCategories.js +55 -0
  224. package/dist/esm/sites/_internal/reflectCollectionsToSearchCategories.js.map +1 -0
  225. package/dist/esm/sites/_internal/types.js +11 -0
  226. package/dist/esm/sites/_internal/types.js.map +1 -0
  227. package/dist/esm/urls/cacheBustUrl.js +13 -0
  228. package/dist/esm/urls/cacheBustUrl.js.map +1 -0
  229. package/dist/esm/urls/getCardModelUrl.js +76 -0
  230. package/dist/esm/urls/getCardModelUrl.js.map +1 -0
  231. package/dist/esm/users/view.js +71 -0
  232. package/dist/esm/users/view.js.map +1 -0
  233. package/dist/esm/utils/getEnvironmentFromPortalUrl.js +20 -0
  234. package/dist/esm/utils/getEnvironmentFromPortalUrl.js.map +1 -0
  235. package/dist/node/associations/addAssociation.js +20 -0
  236. package/dist/node/associations/addAssociation.js.map +1 -0
  237. package/dist/node/associations/index.js +8 -0
  238. package/dist/node/associations/index.js.map +1 -0
  239. package/dist/node/associations/internal/getTargetEntityFromAssociationType.js +22 -0
  240. package/dist/node/associations/internal/getTargetEntityFromAssociationType.js.map +1 -0
  241. package/dist/node/associations/internal/getTypeByIdsQuery.js +32 -0
  242. package/dist/node/associations/internal/getTypeByIdsQuery.js.map +1 -0
  243. package/dist/node/associations/internal/getTypeFromAssociationType.js +22 -0
  244. package/dist/node/associations/internal/getTypeFromAssociationType.js.map +1 -0
  245. package/dist/node/associations/internal/getTypeWithKeywordQuery.js +31 -0
  246. package/dist/node/associations/internal/getTypeWithKeywordQuery.js.map +1 -0
  247. package/dist/node/associations/internal/getTypeWithoutKeywordQuery.js +31 -0
  248. package/dist/node/associations/internal/getTypeWithoutKeywordQuery.js.map +1 -0
  249. package/dist/node/associations/listAssociations.js +21 -0
  250. package/dist/node/associations/listAssociations.js.map +1 -0
  251. package/dist/node/associations/removeAssociation.js +21 -0
  252. package/dist/node/associations/removeAssociation.js.map +1 -0
  253. package/dist/node/associations/types.js +4 -0
  254. package/dist/node/associations/types.js.map +1 -0
  255. package/dist/node/content/_internal/ContentSchema.js +19 -0
  256. package/dist/node/content/_internal/ContentSchema.js.map +1 -0
  257. package/dist/node/content/_internal/ContentUiSchemaEdit.js +151 -0
  258. package/dist/node/content/_internal/ContentUiSchemaEdit.js.map +1 -0
  259. package/dist/node/content/_internal/ContentUiSchemaSettings.js +62 -0
  260. package/dist/node/content/_internal/ContentUiSchemaSettings.js.map +1 -0
  261. package/dist/node/content/_internal/computeProps.js +62 -0
  262. package/dist/node/content/_internal/computeProps.js.map +1 -0
  263. package/dist/node/content/hostedServiceUtils.js +98 -0
  264. package/dist/node/content/hostedServiceUtils.js.map +1 -0
  265. package/dist/node/core/EntityEditor.js +60 -0
  266. package/dist/node/core/EntityEditor.js.map +1 -0
  267. package/dist/node/core/behaviors/IWIthAssociationBehavior.js +3 -0
  268. package/dist/node/core/behaviors/IWIthAssociationBehavior.js.map +1 -0
  269. package/dist/node/core/behaviors/IWithFollowersBehavior.js +3 -0
  270. package/dist/node/core/behaviors/IWithFollowersBehavior.js.map +1 -0
  271. package/dist/node/core/enrichEntity.js +69 -0
  272. package/dist/node/core/enrichEntity.js.map +1 -0
  273. package/dist/node/core/schemas/getEditorConfig.js +17 -0
  274. package/dist/node/core/schemas/getEditorConfig.js.map +1 -0
  275. package/dist/node/core/schemas/internal/ConfigurableEntity.js +3 -0
  276. package/dist/node/core/schemas/internal/ConfigurableEntity.js.map +1 -0
  277. package/dist/node/core/schemas/internal/configOptionHelpers.js +91 -0
  278. package/dist/node/core/schemas/internal/configOptionHelpers.js.map +1 -0
  279. package/dist/node/core/schemas/internal/getCategoryItems.js +38 -0
  280. package/dist/node/core/schemas/internal/getCategoryItems.js.map +1 -0
  281. package/dist/node/core/schemas/internal/getConfigOptions.js +19 -0
  282. package/dist/node/core/schemas/internal/getConfigOptions.js.map +1 -0
  283. package/dist/node/core/schemas/internal/getEditorConfigOptions.js +41 -0
  284. package/dist/node/core/schemas/internal/getEditorConfigOptions.js.map +1 -0
  285. package/dist/node/core/schemas/internal/getEntityEditorSchemas.js +97 -0
  286. package/dist/node/core/schemas/internal/getEntityEditorSchemas.js.map +1 -0
  287. package/dist/node/core/schemas/internal/getFeaturedContentCatalogs.js +25 -0
  288. package/dist/node/core/schemas/internal/getFeaturedContentCatalogs.js.map +1 -0
  289. package/dist/node/core/schemas/internal/getFeaturedImageUrl.js +15 -0
  290. package/dist/node/core/schemas/internal/getFeaturedImageUrl.js.map +1 -0
  291. package/dist/node/core/schemas/internal/getLocationExtent.js +15 -0
  292. package/dist/node/core/schemas/internal/getLocationExtent.js.map +1 -0
  293. package/dist/node/core/schemas/internal/getLocationOptions.js +68 -0
  294. package/dist/node/core/schemas/internal/getLocationOptions.js.map +1 -0
  295. package/dist/node/core/schemas/internal/getSharableGroupsComboBoxItems.js +31 -0
  296. package/dist/node/core/schemas/internal/getSharableGroupsComboBoxItems.js.map +1 -0
  297. package/dist/node/core/schemas/internal/getTagItems.js +65 -0
  298. package/dist/node/core/schemas/internal/getTagItems.js.map +1 -0
  299. package/dist/node/core/traits/IWithAssociations.js +3 -0
  300. package/dist/node/core/traits/IWithAssociations.js.map +1 -0
  301. package/dist/node/core/traits/IWithFollowers.js +3 -0
  302. package/dist/node/core/traits/IWithFollowers.js.map +1 -0
  303. package/dist/node/core/types/HubEntityEditor.js +3 -0
  304. package/dist/node/core/types/HubEntityEditor.js.map +1 -0
  305. package/dist/node/core/types/IHubGroup.js +3 -0
  306. package/dist/node/core/types/IHubGroup.js.map +1 -0
  307. package/dist/node/discussions/api/channels/channels.js +18 -0
  308. package/dist/node/discussions/api/channels/channels.js.map +1 -0
  309. package/dist/node/discussions/api/channels/index.js +5 -0
  310. package/dist/node/discussions/api/channels/index.js.map +1 -0
  311. package/dist/node/discussions/api/index.js +6 -0
  312. package/dist/node/discussions/api/index.js.map +1 -0
  313. package/dist/node/discussions/api/request.js +24 -0
  314. package/dist/node/discussions/api/request.js.map +1 -0
  315. package/dist/node/discussions/api/types.js +248 -0
  316. package/dist/node/discussions/api/types.js.map +1 -0
  317. package/dist/node/discussions/api/utils/request.js +83 -0
  318. package/dist/node/discussions/api/utils/request.js.map +1 -0
  319. package/dist/node/features/_internal/checkCapabilityAccess.js +54 -0
  320. package/dist/node/features/_internal/checkCapabilityAccess.js.map +1 -0
  321. package/dist/node/features/_internal/checkFeatureAccess.js +99 -0
  322. package/dist/node/features/_internal/checkFeatureAccess.js.map +1 -0
  323. package/dist/node/features/_internal/index.js +3 -0
  324. package/dist/node/features/_internal/index.js.map +1 -0
  325. package/dist/node/features/checkFeature.js +111 -0
  326. package/dist/node/features/checkFeature.js.map +1 -0
  327. package/dist/node/features/index.js +8 -0
  328. package/dist/node/features/index.js.map +1 -0
  329. package/dist/node/features/types.js +32 -0
  330. package/dist/node/features/types.js.map +1 -0
  331. package/dist/node/groups/HubGroup.js +262 -0
  332. package/dist/node/groups/HubGroup.js.map +1 -0
  333. package/dist/node/groups/_internal/AddOrInviteUsersToGroupUtils.js +205 -0
  334. package/dist/node/groups/_internal/AddOrInviteUsersToGroupUtils.js.map +1 -0
  335. package/dist/node/groups/_internal/GroupBusinessRules.js +97 -0
  336. package/dist/node/groups/_internal/GroupBusinessRules.js.map +1 -0
  337. package/dist/node/groups/_internal/GroupSchema.js +34 -0
  338. package/dist/node/groups/_internal/GroupSchema.js.map +1 -0
  339. package/dist/node/groups/_internal/GroupUiSchemaEdit.js +65 -0
  340. package/dist/node/groups/_internal/GroupUiSchemaEdit.js.map +1 -0
  341. package/dist/node/groups/_internal/GroupUiSchemaSettings.js +49 -0
  342. package/dist/node/groups/_internal/GroupUiSchemaSettings.js.map +1 -0
  343. package/dist/node/groups/_internal/autoAddUsersAsAdmins.js +28 -0
  344. package/dist/node/groups/_internal/autoAddUsersAsAdmins.js.map +1 -0
  345. package/dist/node/groups/_internal/computeProps.js +49 -0
  346. package/dist/node/groups/_internal/computeProps.js.map +1 -0
  347. package/dist/node/groups/_internal/convertGroupToHubGroup.js +18 -0
  348. package/dist/node/groups/_internal/convertGroupToHubGroup.js.map +1 -0
  349. package/dist/node/groups/_internal/convertHubGroupToGroup.js +30 -0
  350. package/dist/node/groups/_internal/convertHubGroupToGroup.js.map +1 -0
  351. package/dist/node/groups/_internal/getPropertyMap.js +44 -0
  352. package/dist/node/groups/_internal/getPropertyMap.js.map +1 -0
  353. package/dist/node/groups/_internal/processAutoAddUsers.js +66 -0
  354. package/dist/node/groups/_internal/processAutoAddUsers.js.map +1 -0
  355. package/dist/node/groups/_internal/processEmailUsers.js +54 -0
  356. package/dist/node/groups/_internal/processEmailUsers.js.map +1 -0
  357. package/dist/node/groups/_internal/processInviteUsers.js +55 -0
  358. package/dist/node/groups/_internal/processInviteUsers.js.map +1 -0
  359. package/dist/node/groups/addOrInviteUsersToGroup.js +71 -0
  360. package/dist/node/groups/addOrInviteUsersToGroup.js.map +1 -0
  361. package/dist/node/groups/addOrInviteUsersToGroups.js +55 -0
  362. package/dist/node/groups/addOrInviteUsersToGroups.js.map +1 -0
  363. package/dist/node/groups/autoAddUsers.js +28 -0
  364. package/dist/node/groups/autoAddUsers.js.map +1 -0
  365. package/dist/node/groups/defaults.js +24 -0
  366. package/dist/node/groups/defaults.js.map +1 -0
  367. package/dist/node/groups/deleteGroupThumbnail.js +18 -0
  368. package/dist/node/groups/deleteGroupThumbnail.js.map +1 -0
  369. package/dist/node/groups/emailOrgUsers.js +33 -0
  370. package/dist/node/groups/emailOrgUsers.js.map +1 -0
  371. package/dist/node/groups/inviteUsers.js +34 -0
  372. package/dist/node/groups/inviteUsers.js.map +1 -0
  373. package/dist/node/groups/setGroupThumbnail.js +36 -0
  374. package/dist/node/groups/setGroupThumbnail.js.map +1 -0
  375. package/dist/node/groups/types/types.js +3 -0
  376. package/dist/node/groups/types/types.js.map +1 -0
  377. package/dist/node/initiatives/_internal/InitiativeUiSchemaCreate.js +137 -0
  378. package/dist/node/initiatives/_internal/InitiativeUiSchemaCreate.js.map +1 -0
  379. package/dist/node/initiatives/view.js +84 -0
  380. package/dist/node/initiatives/view.js.map +1 -0
  381. package/dist/node/items/deleteItemThumbnail.js +18 -0
  382. package/dist/node/items/deleteItemThumbnail.js.map +1 -0
  383. package/dist/node/pages/HubPage.js +205 -0
  384. package/dist/node/pages/HubPage.js.map +1 -0
  385. package/dist/node/pages/_internal/PageSchema.js +34 -0
  386. package/dist/node/pages/_internal/PageSchema.js.map +1 -0
  387. package/dist/node/pages/_internal/PageUiSchemaEdit.js +129 -0
  388. package/dist/node/pages/_internal/PageUiSchemaEdit.js.map +1 -0
  389. package/dist/node/pages/_internal/computeProps.js +49 -0
  390. package/dist/node/pages/_internal/computeProps.js.map +1 -0
  391. package/dist/node/pages/_internal/getPropertyMap.js +24 -0
  392. package/dist/node/pages/_internal/getPropertyMap.js.map +1 -0
  393. package/dist/node/pages/defaults.js +44 -0
  394. package/dist/node/pages/defaults.js.map +1 -0
  395. package/dist/node/permissions/PlatformPermissionPolicies.js +714 -0
  396. package/dist/node/permissions/PlatformPermissionPolicies.js.map +1 -0
  397. package/dist/node/permissions/_internal/PermissionCheckFunction.js +3 -0
  398. package/dist/node/permissions/_internal/PermissionCheckFunction.js.map +1 -0
  399. package/dist/node/permissions/_internal/checkAvailability.js +50 -0
  400. package/dist/node/permissions/_internal/checkAvailability.js.map +1 -0
  401. package/dist/node/permissions/_internal/checkEntityFeature.js +33 -0
  402. package/dist/node/permissions/_internal/checkEntityFeature.js.map +1 -0
  403. package/dist/node/permissions/_internal/checkEnvironment.js +32 -0
  404. package/dist/node/permissions/_internal/checkEnvironment.js.map +1 -0
  405. package/dist/node/permissions/_internal/checkFeature.js +69 -0
  406. package/dist/node/permissions/_internal/checkFeature.js.map +1 -0
  407. package/dist/node/permissions/_internal/checkFeatures.js +46 -0
  408. package/dist/node/permissions/_internal/checkFeatures.js.map +1 -0
  409. package/dist/node/permissions/_internal/checkParents.js +27 -0
  410. package/dist/node/permissions/_internal/checkParents.js.map +1 -0
  411. package/dist/node/permissions/_internal/checkServiceStatus.js +28 -0
  412. package/dist/node/permissions/_internal/checkServiceStatus.js.map +1 -0
  413. package/dist/node/permissions/_internal/processEntityFeatures.js +30 -0
  414. package/dist/node/permissions/_internal/processEntityFeatures.js.map +1 -0
  415. package/dist/node/projects/_internal/getProjectEditorConfigOptions.js +67 -0
  416. package/dist/node/projects/_internal/getProjectEditorConfigOptions.js.map +1 -0
  417. package/dist/node/search/_internal/commonHelpers/getDiscussionsApiDefinition.js +14 -0
  418. package/dist/node/search/_internal/commonHelpers/getDiscussionsApiDefinition.js.map +1 -0
  419. package/dist/node/search/_internal/commonHelpers/shouldUseDiscussionsApi.js +17 -0
  420. package/dist/node/search/_internal/commonHelpers/shouldUseDiscussionsApi.js.map +1 -0
  421. package/dist/node/search/_internal/explainFilter.js +38 -0
  422. package/dist/node/search/_internal/explainFilter.js.map +1 -0
  423. package/dist/node/search/_internal/explainHelpers.js +202 -0
  424. package/dist/node/search/_internal/explainHelpers.js.map +1 -0
  425. package/dist/node/search/_internal/explainPredicate.js +39 -0
  426. package/dist/node/search/_internal/explainPredicate.js.map +1 -0
  427. package/dist/node/search/_internal/getEntityTypeFromType.js +25 -0
  428. package/dist/node/search/_internal/getEntityTypeFromType.js.map +1 -0
  429. package/dist/node/search/_internal/hubSearchChannels.js +140 -0
  430. package/dist/node/search/_internal/hubSearchChannels.js.map +1 -0
  431. package/dist/node/search/_internal/negateGroupPredicates.js +32 -0
  432. package/dist/node/search/_internal/negateGroupPredicates.js.map +1 -0
  433. package/dist/node/search/_internal/portalSearchGroupMembers.js +10 -1
  434. package/dist/node/search/_internal/portalSearchGroupMembers.js.map +1 -1
  435. package/dist/node/search/explainQueryResult.js +57 -0
  436. package/dist/node/search/explainQueryResult.js.map +1 -0
  437. package/dist/node/sites/HubSite.js +2 -1
  438. package/dist/node/sites/HubSite.js.map +1 -1
  439. package/dist/node/sites/_internal/SiteUiSchemaFollowers.js +59 -0
  440. package/dist/node/sites/_internal/SiteUiSchemaFollowers.js.map +1 -0
  441. package/dist/node/sites/_internal/_migrate-summary-stat-card-configs.js +192 -0
  442. package/dist/node/sites/_internal/_migrate-summary-stat-card-configs.js.map +1 -0
  443. package/dist/node/sites/_internal/applyCatalogStructureMigration.js +43 -0
  444. package/dist/node/sites/_internal/applyCatalogStructureMigration.js.map +1 -0
  445. package/dist/node/sites/_internal/applyDefaultCollectionMigration.js +96 -0
  446. package/dist/node/sites/_internal/applyDefaultCollectionMigration.js.map +1 -0
  447. package/dist/node/sites/_internal/capabilities/capabilityToFeatureMap.js +34 -0
  448. package/dist/node/sites/_internal/capabilities/capabilityToFeatureMap.js.map +1 -0
  449. package/dist/node/sites/_internal/capabilities/convertFeaturesToLegacyCapabilities.js +49 -0
  450. package/dist/node/sites/_internal/capabilities/convertFeaturesToLegacyCapabilities.js.map +1 -0
  451. package/dist/node/sites/_internal/capabilities/migrateLegacyCapabilitiesToFeatures.js +37 -0
  452. package/dist/node/sites/_internal/capabilities/migrateLegacyCapabilitiesToFeatures.js.map +1 -0
  453. package/dist/node/sites/_internal/capabilities/types.js +3 -0
  454. package/dist/node/sites/_internal/capabilities/types.js.map +1 -0
  455. package/dist/node/sites/_internal/convertCatalogToLegacyFormat.js +37 -0
  456. package/dist/node/sites/_internal/convertCatalogToLegacyFormat.js.map +1 -0
  457. package/dist/node/sites/_internal/reflectCollectionsToSearchCategories.js +59 -0
  458. package/dist/node/sites/_internal/reflectCollectionsToSearchCategories.js.map +1 -0
  459. package/dist/node/sites/_internal/types.js +14 -0
  460. package/dist/node/sites/_internal/types.js.map +1 -0
  461. package/dist/node/urls/cacheBustUrl.js +16 -0
  462. package/dist/node/urls/cacheBustUrl.js.map +1 -0
  463. package/dist/node/urls/getCardModelUrl.js +81 -0
  464. package/dist/node/urls/getCardModelUrl.js.map +1 -0
  465. package/dist/node/users/view.js +74 -0
  466. package/dist/node/users/view.js.map +1 -0
  467. package/dist/node/utils/getEnvironmentFromPortalUrl.js +24 -0
  468. package/dist/node/utils/getEnvironmentFromPortalUrl.js.map +1 -0
  469. package/dist/types/associations/addAssociation.d.ts +9 -0
  470. package/dist/types/associations/index.d.ts +4 -0
  471. package/dist/types/associations/internal/getTargetEntityFromAssociationType.d.ts +8 -0
  472. package/dist/types/associations/internal/getTypeByIdsQuery.d.ts +10 -0
  473. package/dist/types/associations/internal/getTypeFromAssociationType.d.ts +7 -0
  474. package/dist/types/associations/internal/getTypeWithKeywordQuery.d.ts +10 -0
  475. package/dist/types/associations/internal/getTypeWithoutKeywordQuery.d.ts +10 -0
  476. package/dist/types/associations/listAssociations.d.ts +8 -0
  477. package/dist/types/associations/removeAssociation.d.ts +9 -0
  478. package/dist/types/associations/types.d.ts +19 -0
  479. package/dist/types/content/_internal/ContentSchema.d.ts +7 -0
  480. package/dist/types/content/_internal/ContentUiSchemaEdit.d.ts +10 -0
  481. package/dist/types/content/_internal/ContentUiSchemaSettings.d.ts +10 -0
  482. package/dist/types/content/_internal/computeProps.d.ts +9 -0
  483. package/dist/types/content/hostedServiceUtils.d.ts +35 -0
  484. package/dist/types/core/EntityEditor.d.ts +13 -0
  485. package/dist/types/core/behaviors/IWIthAssociationBehavior.d.ts +23 -0
  486. package/dist/types/core/behaviors/IWithFollowersBehavior.d.ts +15 -0
  487. package/dist/types/core/enrichEntity.d.ts +16 -0
  488. package/dist/types/core/schemas/getEditorConfig.d.ts +13 -0
  489. package/dist/types/core/schemas/internal/ConfigurableEntity.d.ts +4 -0
  490. package/dist/types/core/schemas/internal/configOptionHelpers.d.ts +6 -0
  491. package/dist/types/core/schemas/internal/getCategoryItems.d.ts +11 -0
  492. package/dist/types/core/schemas/internal/getConfigOptions.d.ts +12 -0
  493. package/dist/types/core/schemas/internal/getEditorConfigOptions.d.ts +11 -0
  494. package/dist/types/core/schemas/internal/getEntityEditorSchemas.d.ts +15 -0
  495. package/dist/types/core/schemas/internal/getFeaturedContentCatalogs.d.ts +8 -0
  496. package/dist/types/core/schemas/internal/getFeaturedImageUrl.d.ts +3 -0
  497. package/dist/types/core/schemas/internal/getLocationExtent.d.ts +7 -0
  498. package/dist/types/core/schemas/internal/getLocationOptions.d.ts +16 -0
  499. package/dist/types/core/schemas/internal/getSharableGroupsComboBoxItems.d.ts +7 -0
  500. package/dist/types/core/schemas/internal/getTagItems.d.ts +12 -0
  501. package/dist/types/core/traits/IWithAssociations.d.ts +4 -0
  502. package/dist/types/core/traits/IWithFollowers.d.ts +7 -0
  503. package/dist/types/core/types/HubEntityEditor.d.ts +11 -0
  504. package/dist/types/core/types/IHubGroup.d.ts +109 -0
  505. package/dist/types/discussions/api/channels/channels.d.ts +10 -0
  506. package/dist/types/discussions/api/channels/index.d.ts +1 -0
  507. package/dist/types/discussions/api/index.d.ts +2 -0
  508. package/dist/types/discussions/api/request.d.ts +11 -0
  509. package/dist/types/discussions/api/types.d.ts +1007 -0
  510. package/dist/types/discussions/api/utils/request.d.ts +25 -0
  511. package/dist/types/features/_internal/checkCapabilityAccess.d.ts +0 -0
  512. package/dist/types/features/_internal/checkFeatureAccess.d.ts +0 -0
  513. package/dist/types/features/_internal/index.d.ts +0 -0
  514. package/dist/types/features/checkFeature.d.ts +10 -0
  515. package/dist/types/features/index.d.ts +2 -0
  516. package/dist/types/features/types.d.ts +31 -0
  517. package/dist/types/groups/HubGroup.d.ts +114 -0
  518. package/dist/types/groups/_internal/AddOrInviteUsersToGroupUtils.d.ts +82 -0
  519. package/dist/types/groups/_internal/GroupBusinessRules.d.ts +12 -0
  520. package/dist/types/groups/_internal/GroupSchema.d.ts +7 -0
  521. package/dist/types/groups/_internal/GroupUiSchemaEdit.d.ts +10 -0
  522. package/dist/types/groups/_internal/GroupUiSchemaSettings.d.ts +10 -0
  523. package/dist/types/groups/_internal/autoAddUsersAsAdmins.d.ts +13 -0
  524. package/dist/types/groups/_internal/computeProps.d.ts +12 -0
  525. package/dist/types/groups/_internal/convertGroupToHubGroup.d.ts +9 -0
  526. package/dist/types/groups/_internal/convertHubGroupToGroup.d.ts +7 -0
  527. package/dist/types/groups/_internal/getPropertyMap.d.ts +8 -0
  528. package/dist/types/groups/_internal/processAutoAddUsers.d.ts +15 -0
  529. package/dist/types/groups/_internal/processEmailUsers.d.ts +14 -0
  530. package/dist/types/groups/_internal/processInviteUsers.d.ts +13 -0
  531. package/dist/types/groups/addOrInviteUsersToGroup.d.ts +18 -0
  532. package/dist/types/groups/addOrInviteUsersToGroups.d.ts +30 -0
  533. package/dist/types/groups/autoAddUsers.d.ts +14 -0
  534. package/dist/types/groups/defaults.d.ts +11 -0
  535. package/dist/types/groups/deleteGroupThumbnail.d.ts +9 -0
  536. package/dist/types/groups/emailOrgUsers.d.ts +15 -0
  537. package/dist/types/groups/inviteUsers.d.ts +17 -0
  538. package/dist/types/groups/setGroupThumbnail.d.ts +9 -0
  539. package/dist/types/groups/types/types.d.ts +72 -0
  540. package/dist/types/initiatives/_internal/InitiativeUiSchemaCreate.d.ts +13 -0
  541. package/dist/types/initiatives/view.d.ts +19 -0
  542. package/dist/types/items/deleteItemThumbnail.d.ts +9 -0
  543. package/dist/types/pages/HubPage.d.ts +71 -0
  544. package/dist/types/pages/_internal/PageSchema.d.ts +7 -0
  545. package/dist/types/pages/_internal/PageUiSchemaEdit.d.ts +10 -0
  546. package/dist/types/pages/_internal/computeProps.d.ts +12 -0
  547. package/dist/types/pages/_internal/getPropertyMap.d.ts +8 -0
  548. package/dist/types/pages/defaults.d.ts +13 -0
  549. package/dist/types/permissions/PlatformPermissionPolicies.d.ts +9 -0
  550. package/dist/types/permissions/_internal/PermissionCheckFunction.d.ts +7 -0
  551. package/dist/types/permissions/_internal/checkAvailability.d.ts +13 -0
  552. package/dist/types/permissions/_internal/checkEntityFeature.d.ts +4 -0
  553. package/dist/types/permissions/_internal/checkEnvironment.d.ts +13 -0
  554. package/dist/types/permissions/_internal/checkFeature.d.ts +16 -0
  555. package/dist/types/permissions/_internal/checkFeatures.d.ts +10 -0
  556. package/dist/types/permissions/_internal/checkParents.d.ts +12 -0
  557. package/dist/types/permissions/_internal/checkServiceStatus.d.ts +4 -0
  558. package/dist/types/permissions/_internal/processEntityFeatures.d.ts +9 -0
  559. package/dist/types/projects/_internal/getProjectEditorConfigOptions.d.ts +10 -0
  560. package/dist/types/search/_internal/commonHelpers/getDiscussionsApiDefinition.d.ts +2 -0
  561. package/dist/types/search/_internal/commonHelpers/shouldUseDiscussionsApi.d.ts +11 -0
  562. package/dist/types/search/_internal/explainFilter.d.ts +11 -0
  563. package/dist/types/search/_internal/explainHelpers.d.ts +38 -0
  564. package/dist/types/search/_internal/explainPredicate.d.ts +12 -0
  565. package/dist/types/search/_internal/getEntityTypeFromType.d.ts +9 -0
  566. package/dist/types/search/_internal/hubSearchChannels.d.ts +30 -0
  567. package/dist/types/search/_internal/negateGroupPredicates.d.ts +9 -0
  568. package/dist/types/search/_internal/portalSearchGroupMembers.d.ts +2 -1
  569. package/dist/types/search/explainQueryResult.d.ts +102 -0
  570. package/dist/types/sites/_internal/SiteUiSchemaFollowers.d.ts +11 -0
  571. package/dist/types/sites/_internal/_migrate-summary-stat-card-configs.d.ts +9 -0
  572. package/dist/types/sites/_internal/applyCatalogStructureMigration.d.ts +11 -0
  573. package/dist/types/sites/_internal/applyDefaultCollectionMigration.d.ts +21 -0
  574. package/dist/types/sites/_internal/capabilities/capabilityToFeatureMap.d.ts +14 -0
  575. package/dist/types/sites/_internal/capabilities/convertFeaturesToLegacyCapabilities.d.ts +19 -0
  576. package/dist/types/sites/_internal/capabilities/migrateLegacyCapabilitiesToFeatures.d.ts +12 -0
  577. package/dist/types/sites/_internal/capabilities/types.d.ts +29 -0
  578. package/dist/types/sites/_internal/convertCatalogToLegacyFormat.d.ts +11 -0
  579. package/dist/types/sites/_internal/reflectCollectionsToSearchCategories.d.ts +11 -0
  580. package/dist/types/sites/_internal/types.d.ts +8 -0
  581. package/dist/types/urls/cacheBustUrl.d.ts +5 -0
  582. package/dist/types/urls/getCardModelUrl.d.ts +21 -0
  583. package/dist/types/users/view.d.ts +9 -0
  584. package/dist/types/utils/getEnvironmentFromPortalUrl.d.ts +2 -0
  585. package/package.json +1 -1
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isHubFeature = void 0;
4
+ /**
5
+ * Hub System Features
6
+ */
7
+ const validFeaures = [
8
+ "workspaces",
9
+ ];
10
+ /**
11
+ * Validate a feature. This is used because the libary can be used outside of typescript and we want to be able to return a message is the string passed in is not a valid capability
12
+ * @param Feature
13
+ * @returns
14
+ */
15
+ function isHubFeature(maybeFeature) {
16
+ return validFeaures.includes(maybeFeature);
17
+ }
18
+ exports.isHubFeature = isHubFeature;
19
+ // /**
20
+ // * All capability checks for an Entity's workspace
21
+ // */
22
+ // export interface IWorkspaceCapabilityResponse {
23
+ // /**
24
+ // * Array of capabilities the current user has access to, in the context of a given entity
25
+ // */
26
+ // granted: Capability[];
27
+ // /**
28
+ // * Detailed checks for each capability. Used for observability
29
+ // */
30
+ // details: ICapabilityAccessResponse[];
31
+ // }
32
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/features/types.ts"],"names":[],"mappings":";;;AAOA;;GAEG;AACH,MAAM,YAAY,GAAG;IACnB,YAAY;CACJ,CAAC;AAcX;;;;GAIG;AACH,SAAgB,YAAY,CAAC,YAAoB;IAC/C,OAAO,YAAY,CAAC,QAAQ,CAAC,YAA0B,CAAC,CAAC;AAC3D,CAAC;AAFD,oCAEC;AAyBD,MAAM;AACN,qDAAqD;AACrD,MAAM;AACN,kDAAkD;AAClD,QAAQ;AACR,8FAA8F;AAC9F,QAAQ;AACR,2BAA2B;AAC3B,QAAQ;AACR,mEAAmE;AACnE,QAAQ;AACR,0CAA0C;AAC1C,IAAI"}
@@ -0,0 +1,262 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HubGroup = void 0;
4
+ const HubGroups_1 = require("./HubGroups");
5
+ const convertHubGroupToGroup_1 = require("./_internal/convertHubGroupToGroup");
6
+ const defaults_1 = require("./defaults");
7
+ const permissions_1 = require("../permissions");
8
+ const util_1 = require("../util");
9
+ const getEditorConfig_1 = require("../core/schemas/getEditorConfig");
10
+ const setGroupThumbnail_1 = require("./setGroupThumbnail");
11
+ const utils_1 = require("../search/utils");
12
+ const deleteGroupThumbnail_1 = require("./deleteGroupThumbnail");
13
+ const enrichEntity_1 = require("../core/enrichEntity");
14
+ /**
15
+ * Hub Group Class
16
+ */
17
+ class HubGroup {
18
+ constructor(group, context) {
19
+ this.isDestroyed = false;
20
+ this.thumbnailCache = null;
21
+ this.entity = group;
22
+ this.context = context;
23
+ }
24
+ /**
25
+ * Whether the user can edit the group,
26
+ * only the owner or admins of the group can
27
+ */
28
+ get canEdit() {
29
+ return ((this.entity.memberType &&
30
+ (this.entity.memberType === "owner" ||
31
+ this.entity.memberType === "admin")) ||
32
+ this.entity.owner === this.context.currentUser.username);
33
+ }
34
+ /**
35
+ * Whether the user can delete the group
36
+ * only the owner or admins of the group can
37
+ */
38
+ get canDelete() {
39
+ return this.canEdit;
40
+ }
41
+ /**
42
+ * Whether the group is protected, if so, it can't be deleted
43
+ */
44
+ get isProtected() {
45
+ return this.entity.protected;
46
+ }
47
+ /**
48
+ * Create an instance from an IHubGroup object
49
+ * @param json - JSON object to create a HubGroup from
50
+ * @param context - ArcGIS context
51
+ * @returns
52
+ */
53
+ static fromJson(json, context) {
54
+ // merge what we have with the default values
55
+ const pojo = this.applyDefaults(json);
56
+ return new HubGroup(pojo, context);
57
+ }
58
+ /**
59
+ * Create a new HubGroup, returning a HubGroup instance.
60
+ * Note: This does not persist the Group into the backing store
61
+ * @param partialGroup
62
+ * @param context
63
+ * @returns
64
+ */
65
+ static async create(partialGroup, context, save = false) {
66
+ const pojo = this.applyDefaults(partialGroup);
67
+ // return an instance of HubGroup
68
+ const instance = HubGroup.fromJson(pojo, context);
69
+ if (save) {
70
+ await instance.save();
71
+ }
72
+ return instance;
73
+ }
74
+ /**
75
+ * Fetch a Group from the backing store and return a HubGroup instance.
76
+ * @param identifier - Identifier of the group to load
77
+ * @param context
78
+ * @returns
79
+ */
80
+ static async fetch(identifier, context) {
81
+ try {
82
+ const group = await HubGroups_1.fetchHubGroup(identifier, context.userRequestOptions);
83
+ // create an instance of HubGroup from the group
84
+ return HubGroup.fromJson(group, context);
85
+ }
86
+ catch (ex) {
87
+ if (ex.message ===
88
+ "COM_0003: Group does not exist or is inaccessible.") {
89
+ throw new Error(`Group not found.`);
90
+ }
91
+ else {
92
+ throw ex;
93
+ }
94
+ }
95
+ }
96
+ static applyDefaults(partialGroup) {
97
+ // extend the partial over the defaults
98
+ return Object.assign(Object.assign({}, defaults_1.DEFAULT_GROUP), partialGroup);
99
+ }
100
+ /**
101
+ * Return the backing entity as an object literal
102
+ */
103
+ toJson() {
104
+ if (this.isDestroyed) {
105
+ throw new Error("HubGroup is already destroyed.");
106
+ }
107
+ return util_1.cloneObject(this.entity);
108
+ }
109
+ /**
110
+ * Apply a new state to the instance
111
+ * @param changes
112
+ */
113
+ update(changes) {
114
+ if (this.isDestroyed) {
115
+ throw new Error("HubGroup is already destroyed.");
116
+ }
117
+ // merge partial onto existing entity
118
+ this.entity = Object.assign(Object.assign({}, this.entity), changes);
119
+ }
120
+ /**
121
+ * Save the HubGroup to the backing store
122
+ * @returns
123
+ */
124
+ async save() {
125
+ if (this.isDestroyed) {
126
+ throw new Error("HubGroup is already destroyed.");
127
+ }
128
+ if (this.entity.id) {
129
+ // update it
130
+ this.entity = await HubGroups_1.updateHubGroup(this.entity, this.context.userRequestOptions);
131
+ }
132
+ else {
133
+ // create it
134
+ this.entity = await HubGroups_1.createHubGroup(this.entity, this.context.userRequestOptions);
135
+ }
136
+ return;
137
+ }
138
+ /**
139
+ * Delete the HubGroup from the store
140
+ * set a flag to indicate that it is destroyed
141
+ * @returns
142
+ */
143
+ async delete() {
144
+ if (this.isDestroyed) {
145
+ throw new Error("HubGroup is already destroyed.");
146
+ }
147
+ this.isDestroyed = true;
148
+ // Delegate to module fn
149
+ await HubGroups_1.deleteHubGroup(this.entity.id, this.context.userRequestOptions);
150
+ }
151
+ /**
152
+ * Check if current user has a specific permission, accounting for
153
+ * both system and entity level policies
154
+ * @param permission
155
+ * @returns
156
+ */
157
+ checkPermission(permission) {
158
+ return permissions_1.checkPermission(permission, this.context, this.entity);
159
+ }
160
+ /**
161
+ * Get all policies related to a specific permission
162
+ * @param permission
163
+ * @returns
164
+ */
165
+ getPermissionPolicies(permission) {
166
+ const permissions = this.entity.permissions;
167
+ return permissions.filter((p) => p.permission === permission);
168
+ }
169
+ /**
170
+ * Add a policy to the entity
171
+ * @param policy
172
+ */
173
+ addPermissionPolicy(policy) {
174
+ this.entity.permissions = permissions_1.addPermissionPolicy(this.entity.permissions, policy);
175
+ }
176
+ /**
177
+ * Remove a policy from the entity
178
+ * @param permission
179
+ * @param id
180
+ */
181
+ removePermissionPolicy(permission, id) {
182
+ this.entity.permissions = permissions_1.removePermissionPolicy(this.entity.permissions, permission, id);
183
+ }
184
+ /*
185
+ * Get the editor config for the HubGroup entity.
186
+ * @param i18nScope translation scope to be interpolated into the uiSchema
187
+ * @param type editor type - corresonds to the returned uiSchema
188
+ * @param options optional hash of dynamic uiSchema element options
189
+ */
190
+ async getEditorConfig(i18nScope, type) {
191
+ // delegate to the schema subsystem
192
+ return getEditorConfig_1.getEditorConfig(i18nScope, type, this.entity, this.context);
193
+ }
194
+ /**
195
+ * Return the group as an editor object
196
+ */
197
+ async toEditor(editorContext = {}, include = []) {
198
+ // 1. optionally enrich entity and cast to editor
199
+ const editor = include.length
200
+ ? (await enrichEntity_1.enrichEntity(util_1.cloneObject(this.entity), include, this.context.hubRequestOptions))
201
+ : util_1.cloneObject(this.entity);
202
+ // 2. Apply transforms to relevant entity values so they
203
+ // can be consumed by the editor
204
+ return editor;
205
+ }
206
+ /**
207
+ * Load the group from the editor object
208
+ * @param editor
209
+ * @returns
210
+ */
211
+ async fromEditor(editor) {
212
+ const isCreate = !editor.id;
213
+ // Setting the thumbnailCache will ensure that
214
+ // the thumbnail is updated on next save
215
+ if (editor._thumbnail) {
216
+ if (editor._thumbnail.blob) {
217
+ this.thumbnailCache = {
218
+ file: editor._thumbnail.blob,
219
+ filename: editor._thumbnail.fileName,
220
+ clear: false,
221
+ };
222
+ }
223
+ else {
224
+ this.thumbnailCache = {
225
+ clear: true,
226
+ };
227
+ }
228
+ }
229
+ delete editor._thumbnail;
230
+ if (this.thumbnailCache) {
231
+ if (this.thumbnailCache.clear) {
232
+ await deleteGroupThumbnail_1.deleteGroupThumbnail(this.entity.id, this.context.userRequestOptions);
233
+ }
234
+ else {
235
+ await setGroupThumbnail_1.setGroupThumbnail(this.entity.id, this.thumbnailCache.file, this.thumbnailCache.filename, this.context.userRequestOptions, this.entity.owner);
236
+ // Note: updating the thumbnail alone does not update the modified date of the group
237
+ // thus we can just set props on the entity w/o re-fetching
238
+ this.entity.thumbnail = `thumbnail/${this.thumbnailCache.filename}`;
239
+ // Cover the Hub Group to an IGoup
240
+ const group = convertHubGroupToGroup_1.convertHubGroupToGroup(this.entity);
241
+ this.entity.thumbnailUrl = utils_1.getGroupThumbnailUrl(this.context.userRequestOptions.portal, group);
242
+ // clear the thumbnail cache
243
+ this.thumbnailCache = null;
244
+ }
245
+ }
246
+ // convert back to an entity. Apply any reverse transforms used in
247
+ // of the toEditor method
248
+ const entity = util_1.cloneObject(editor);
249
+ // create it if it does not yet exist...
250
+ if (isCreate) {
251
+ throw new Error("Cannot create group using the Editor.");
252
+ }
253
+ else {
254
+ // ...otherwise, update the in-memory entity and save it
255
+ this.entity = entity;
256
+ await this.save();
257
+ }
258
+ return this.entity;
259
+ }
260
+ }
261
+ exports.HubGroup = HubGroup;
262
+ //# sourceMappingURL=HubGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HubGroup.js","sourceRoot":"","sources":["../../../src/groups/HubGroup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,205 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.groupUsersByOrgRelationship = exports.handleNoUsers = exports.addOrInviteWorldUsers = exports.addOrInvitePartneredUsers = exports.addOrInviteOrgUsers = exports.addOrInviteCommunityUsers = exports.addOrInviteCollaborationCoordinators = void 0;
4
+ const processAutoAddUsers_1 = require("./processAutoAddUsers");
5
+ const processInviteUsers_1 = require("./processInviteUsers");
6
+ // Add or invite flow based on the type of user begins here
7
+ /**
8
+ * @private
9
+ * Handles add/invite logic for collaboration coordinators inside partnered orgs.
10
+ * This is intentionally split out from the invitation of partnered org normal members,
11
+ * because the two types of partnered org usres (regular and collaboration coordinator)
12
+ * always come from the same 'bucket', however have distinctly different add paths Invite vs auto add.
13
+ * It returns either an empty instance of the addOrInviteResponse
14
+ * object, or their response from auto adding users.
15
+ *
16
+ * @export
17
+ * @param {IAddOrInviteContext} context context object
18
+ * @return {IAddOrInviteResponse} response object
19
+ */
20
+ async function addOrInviteCollaborationCoordinators(context) {
21
+ // If there are no org users return handling no users
22
+ if (!context.collaborationCoordinator ||
23
+ context.collaborationCoordinator.length === 0) {
24
+ // we return an empty object because
25
+ // if you leave out any of the props
26
+ // from the final object and you are concatting together arrays you can concat
27
+ // an undeifined inside an array which will throw off array lengths.
28
+ return handleNoUsers();
29
+ }
30
+ return processAutoAddUsers_1.processAutoAddUsers(context, "collaborationCoordinator");
31
+ }
32
+ exports.addOrInviteCollaborationCoordinators = addOrInviteCollaborationCoordinators;
33
+ /**
34
+ * @private
35
+ * Handles add/invite logic for community users
36
+ * It returns either an empty instance of the addOrInviteResponse
37
+ * object, or either ther esponse from processing auto adding
38
+ * users or inviting users. If an email has been passed in it also notifies
39
+ * processAutoAddUsers that emails should be sent.
40
+ *
41
+ * @export
42
+ * @param {IAddOrInviteContext} context context object
43
+ * @return {IAddOrInviteResponse} response object
44
+ */
45
+ async function addOrInviteCommunityUsers(context) {
46
+ // We default to handleNoUsers
47
+ // we return an empty object because
48
+ // if you leave out any of the props
49
+ // from the final object and you are concatting together arrays you can concat
50
+ // an undeifined inside an array which will throw off array lengths.
51
+ let fnToCall = handleNoUsers;
52
+ let shouldEmail = false;
53
+ // If community users were passed in...
54
+ if (context.community && context.community.length > 0) {
55
+ // Default to either autoAdd or invite based on canAutoAddUser.
56
+ fnToCall = context.canAutoAddUser
57
+ ? processAutoAddUsers_1.processAutoAddUsers
58
+ : processInviteUsers_1.processInviteUsers;
59
+ // If we have an email object
60
+ // Then we will auto add...
61
+ // But whether or not we email is still in question
62
+ if (context.email) {
63
+ // If the email object has the groupId property...
64
+ if (context.email.hasOwnProperty("groupId")) {
65
+ // If the email objects groupId property is the same as the current groupId in context...
66
+ // (This function is part of a flow that could work for N groupIds)
67
+ if (context.email.groupId === context.groupId) {
68
+ // Then we auto add and send email
69
+ fnToCall = processAutoAddUsers_1.processAutoAddUsers;
70
+ shouldEmail = true;
71
+ } // ELSE if the groupId's do NOT match, we will fall back
72
+ // To autoAdd or invite as per line 32.
73
+ // We are doing the above logic (lines 43 - 47) because
74
+ // We wish to add users to core groups, followers, and content groups
75
+ // but only to email the core group.
76
+ }
77
+ else {
78
+ // If it does not have a groupId at all then we will autoAdd and email.
79
+ fnToCall = processAutoAddUsers_1.processAutoAddUsers;
80
+ shouldEmail = true;
81
+ }
82
+ }
83
+ }
84
+ // Return/call the function
85
+ return fnToCall(context, "community", shouldEmail);
86
+ }
87
+ exports.addOrInviteCommunityUsers = addOrInviteCommunityUsers;
88
+ /**
89
+ * @private
90
+ * Handles add/invite logic for Org users
91
+ * It returns either an empty instance of the addOrInviteResponse
92
+ * object, or either ther esponse from processing auto adding a users or inviting a user
93
+ *
94
+ * @export
95
+ * @param {IAddOrInviteContext} context context object
96
+ * @return {IAddOrInviteResponse} response object
97
+ */
98
+ async function addOrInviteOrgUsers(context) {
99
+ // If there are no org users return handling no users
100
+ if (!context.org || context.org.length === 0) {
101
+ // we return an empty object because
102
+ // if you leave out any of the props
103
+ // from the final object and you are concatting together arrays you can concat
104
+ // an undeifined inside an array which will throw off array lengths.
105
+ return handleNoUsers();
106
+ }
107
+ // for org user if you have assignUsers then auto add the user
108
+ // if not then invite the user
109
+ return context.canAutoAddUser
110
+ ? processAutoAddUsers_1.processAutoAddUsers(context, "org")
111
+ : processInviteUsers_1.processInviteUsers(context, "org");
112
+ }
113
+ exports.addOrInviteOrgUsers = addOrInviteOrgUsers;
114
+ /**
115
+ * @private
116
+ * Handles add/invite logic for partnered org users.
117
+ * It returns either an empty instance of the addOrInviteResponse
118
+ * object, or their response from inviting users.
119
+ *
120
+ * @export
121
+ * @param {IAddOrInviteContext} context context object
122
+ * @return {IAddOrInviteResponse} response object
123
+ */
124
+ async function addOrInvitePartneredUsers(context) {
125
+ // If there are no org users return handling no users
126
+ if (!context.partnered || context.partnered.length === 0) {
127
+ // we return an empty object because
128
+ // if you leave out any of the props
129
+ // from the final object and you are concatting together arrays you can concat
130
+ // an undeifined inside an array which will throw off array lengths.
131
+ return handleNoUsers();
132
+ }
133
+ // process invite
134
+ return processInviteUsers_1.processInviteUsers(context, "partnered");
135
+ }
136
+ exports.addOrInvitePartneredUsers = addOrInvitePartneredUsers;
137
+ /**
138
+ * @private
139
+ * Handles add/invite logic for world users
140
+ * It either returns an empty instance of the add/invite response
141
+ * object, or a populated version from processInviteUsers
142
+ *
143
+ * @export
144
+ * @param {IAddOrInviteContext} context Context object
145
+ * @return {IAddOrInviteResponse} Response object
146
+ */
147
+ async function addOrInviteWorldUsers(context) {
148
+ // If there are no world users return handling no users
149
+ if (!context.world || context.world.length === 0) {
150
+ // we return an empty object because
151
+ // if you leave out any of the props
152
+ // from the final object and you are concatting together arrays you can concat
153
+ // an undeifined inside an array which will throw off array lengths.
154
+ return handleNoUsers();
155
+ }
156
+ // process invite
157
+ return processInviteUsers_1.processInviteUsers(context, "world");
158
+ }
159
+ exports.addOrInviteWorldUsers = addOrInviteWorldUsers;
160
+ // Add or invite flow based on the type of user ends here
161
+ /**
162
+ * @private
163
+ * Returns an empty instance of the addorinviteresponse object.
164
+ * We are using this because if you leave out any of the props
165
+ * from the final object and you are concatting together arrays you can concat
166
+ * an undeifined inside an array which will throw off array lengths.
167
+ *
168
+ * @export
169
+ * @return {IAddOrInviteResponse}
170
+ */
171
+ async function handleNoUsers(context, userType, shouldEmail) {
172
+ return {
173
+ notAdded: [],
174
+ notEmailed: [],
175
+ notInvited: [],
176
+ users: [],
177
+ errors: [],
178
+ };
179
+ }
180
+ exports.handleNoUsers = handleNoUsers;
181
+ /**
182
+ * @private
183
+ * Takes users array and sorts them into an object by the type of user they are
184
+ * based on the orgType prop (world|org|community)
185
+ *
186
+ * @export
187
+ * @param {IUserWithOrgType[]} users array of users
188
+ * @return {IUserOrgRelationship} Object of users sorted by type (world, org, community)
189
+ */
190
+ function groupUsersByOrgRelationship(users) {
191
+ return users.reduce((acc, user) => {
192
+ // keyof needed to make bracket notation work without TS throwing a wobbly.
193
+ const orgType = user.orgType;
194
+ acc[orgType].push(user);
195
+ return acc;
196
+ }, {
197
+ world: [],
198
+ org: [],
199
+ community: [],
200
+ partnered: [],
201
+ collaborationCoordinator: [],
202
+ });
203
+ }
204
+ exports.groupUsersByOrgRelationship = groupUsersByOrgRelationship;
205
+ //# sourceMappingURL=AddOrInviteUsersToGroupUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AddOrInviteUsersToGroupUtils.js","sourceRoot":"","sources":["../../../../src/groups/_internal/AddOrInviteUsersToGroupUtils.ts"],"names":[],"mappings":";;;AAOA,+DAA4D;AAC5D,6DAA0D;AAE1D,2DAA2D;AAE3D;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,oCAAoC,CACxD,OAA4B;IAE5B,qDAAqD;IACrD,IACE,CAAC,OAAO,CAAC,wBAAwB;QACjC,OAAO,CAAC,wBAAwB,CAAC,MAAM,KAAK,CAAC,EAC7C;QACA,oCAAoC;QACpC,oCAAoC;QACpC,8EAA8E;QAC9E,oEAAoE;QACpE,OAAO,aAAa,EAAE,CAAC;KACxB;IACD,OAAO,yCAAmB,CAAC,OAAO,EAAE,0BAA0B,CAAC,CAAC;AAClE,CAAC;AAfD,oFAeC;AAED;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,yBAAyB,CAC7C,OAA4B;IAE5B,8BAA8B;IAC9B,oCAAoC;IACpC,oCAAoC;IACpC,8EAA8E;IAC9E,oEAAoE;IACpE,IAAI,QAAQ,GAAG,aAAa,CAAC;IAC7B,IAAI,WAAW,GAAG,KAAK,CAAC;IAExB,uCAAuC;IACvC,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;QACrD,+DAA+D;QAC/D,QAAQ,GAAG,OAAO,CAAC,cAAc;YAC/B,CAAC,CAAC,yCAAmB;YACrB,CAAC,CAAC,uCAAkB,CAAC;QACvB,6BAA6B;QAC7B,2BAA2B;QAC3B,mDAAmD;QACnD,IAAI,OAAO,CAAC,KAAK,EAAE;YACjB,kDAAkD;YAClD,IAAI,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE;gBAC3C,yFAAyF;gBACzF,mEAAmE;gBACnE,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,EAAE;oBAC7C,kCAAkC;oBAClC,QAAQ,GAAG,yCAAmB,CAAC;oBAC/B,WAAW,GAAG,IAAI,CAAC;iBACpB,CAAC,wDAAwD;gBAC1D,uCAAuC;gBACvC,uDAAuD;gBACvD,qEAAqE;gBACrE,oCAAoC;aACrC;iBAAM;gBACL,uEAAuE;gBACvE,QAAQ,GAAG,yCAAmB,CAAC;gBAC/B,WAAW,GAAG,IAAI,CAAC;aACpB;SACF;KACF;IACD,2BAA2B;IAC3B,OAAO,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;AACrD,CAAC;AA3CD,8DA2CC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,mBAAmB,CACvC,OAA4B;IAE5B,qDAAqD;IACrD,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;QAC5C,oCAAoC;QACpC,oCAAoC;QACpC,8EAA8E;QAC9E,oEAAoE;QACpE,OAAO,aAAa,EAAE,CAAC;KACxB;IACD,8DAA8D;IAC9D,8BAA8B;IAC9B,OAAO,OAAO,CAAC,cAAc;QAC3B,CAAC,CAAC,yCAAmB,CAAC,OAAO,EAAE,KAAK,CAAC;QACrC,CAAC,CAAC,uCAAkB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAhBD,kDAgBC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,yBAAyB,CAC7C,OAA4B;IAE5B,qDAAqD;IACrD,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;QACxD,oCAAoC;QACpC,oCAAoC;QACpC,8EAA8E;QAC9E,oEAAoE;QACpE,OAAO,aAAa,EAAE,CAAC;KACxB;IACD,iBAAiB;IACjB,OAAO,uCAAkB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;AAClD,CAAC;AAbD,8DAaC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,qBAAqB,CACzC,OAA4B;IAE5B,uDAAuD;IACvD,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QAChD,oCAAoC;QACpC,oCAAoC;QACpC,8EAA8E;QAC9E,oEAAoE;QACpE,OAAO,aAAa,EAAE,CAAC;KACxB;IACD,iBAAiB;IACjB,OAAO,uCAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC;AAbD,sDAaC;AAED,yDAAyD;AAEzD;;;;;;;;;GASG;AACI,KAAK,UAAU,aAAa,CACjC,OAA6B,EAC7B,QAAsD,EACtD,WAAqB;IAErB,OAAO;QACL,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,EAAE;QACd,UAAU,EAAE,EAAE;QACd,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;KACX,CAAC;AACJ,CAAC;AAZD,sCAYC;AAED;;;;;;;;GAQG;AACH,SAAgB,2BAA2B,CACzC,KAAyB;IAEzB,OAAO,KAAK,CAAC,MAAM,CACjB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QACZ,2EAA2E;QAC3E,MAAM,OAAO,GAAG,IAAI,CAAC,OAAqC,CAAC;QAC3D,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,OAAO,GAAG,CAAC;IACb,CAAC,EACD;QACE,KAAK,EAAE,EAAE;QACT,GAAG,EAAE,EAAE;QACP,SAAS,EAAE,EAAE;QACb,SAAS,EAAE,EAAE;QACb,wBAAwB,EAAE,EAAE;KAC7B,CACF,CAAC;AACJ,CAAC;AAlBD,kEAkBC"}
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GroupPermissionPolicies = exports.GroupPermissions = void 0;
4
+ /**
5
+ * Group Permission Policies
6
+ * These define the requirements any user must meet to perform related actions
7
+ * @private
8
+ */
9
+ exports.GroupPermissions = [
10
+ "hub:group",
11
+ "hub:group:create",
12
+ "hub:group:delete",
13
+ "hub:group:edit",
14
+ "hub:group:view",
15
+ "hub:group:owner",
16
+ "hub:group:workspace:overview",
17
+ "hub:group:workspace:dashboard",
18
+ "hub:group:workspace:details",
19
+ "hub:group:workspace:settings",
20
+ "hub:group:workspace:collaborators",
21
+ "hub:group:workspace:content",
22
+ "hub:group:workspace:members",
23
+ "hub:group:shareContent",
24
+ "hub:group:manage",
25
+ ];
26
+ /**
27
+ * Group permission policies
28
+ * @private
29
+ */
30
+ exports.GroupPermissionPolicies = [
31
+ {
32
+ permission: "hub:group",
33
+ services: ["portal"],
34
+ },
35
+ {
36
+ permission: "hub:group:create",
37
+ dependencies: ["hub:group"],
38
+ authenticated: true,
39
+ privileges: ["portal:user:createGroup"],
40
+ },
41
+ {
42
+ permission: "hub:group:view",
43
+ dependencies: ["hub:group"],
44
+ },
45
+ {
46
+ permission: "hub:group:edit",
47
+ dependencies: ["hub:group"],
48
+ authenticated: true,
49
+ entityEdit: true,
50
+ },
51
+ {
52
+ permission: "hub:group:delete",
53
+ dependencies: ["hub:group"],
54
+ authenticated: true,
55
+ entityOwner: true,
56
+ },
57
+ {
58
+ permission: "hub:group:owner",
59
+ dependencies: ["hub:group"],
60
+ authenticated: true,
61
+ entityOwner: true,
62
+ },
63
+ {
64
+ permission: "hub:group:workspace:details",
65
+ dependencies: ["hub:group:edit"],
66
+ },
67
+ {
68
+ permission: "hub:group:workspace:settings",
69
+ dependencies: ["hub:group:edit"],
70
+ },
71
+ {
72
+ permission: "hub:group:workspace:content",
73
+ dependencies: ["hub:group:view"],
74
+ },
75
+ {
76
+ permission: "hub:group:workspace:members",
77
+ dependencies: ["hub:group:view"],
78
+ },
79
+ {
80
+ permission: "hub:group:shareContent",
81
+ dependencies: ["hub:group"],
82
+ authenticated: true,
83
+ privileges: ["portal:user:shareToGroup"],
84
+ assertions: [
85
+ {
86
+ property: "context:currentUser",
87
+ type: "is-group-member",
88
+ value: "entity:id",
89
+ },
90
+ ],
91
+ },
92
+ {
93
+ permission: "hub:group:manage",
94
+ dependencies: ["hub:group:edit"],
95
+ },
96
+ ];
97
+ //# sourceMappingURL=GroupBusinessRules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupBusinessRules.js","sourceRoot":"","sources":["../../../../src/groups/_internal/GroupBusinessRules.ts"],"names":[],"mappings":";;;AAEA;;;;GAIG;AACU,QAAA,gBAAgB,GAAG;IAC9B,WAAW;IACX,kBAAkB;IAClB,kBAAkB;IAClB,gBAAgB;IAChB,gBAAgB;IAChB,iBAAiB;IACjB,8BAA8B;IAC9B,+BAA+B;IAC/B,6BAA6B;IAC7B,8BAA8B;IAC9B,mCAAmC;IACnC,6BAA6B;IAC7B,6BAA6B;IAC7B,wBAAwB;IACxB,kBAAkB;CACV,CAAC;AAEX;;;GAGG;AACU,QAAA,uBAAuB,GAAwB;IAC1D;QACE,UAAU,EAAE,WAAW;QACvB,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD;QACE,UAAU,EAAE,kBAAkB;QAC9B,YAAY,EAAE,CAAC,WAAW,CAAC;QAC3B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,yBAAyB,CAAC;KACxC;IACD;QACE,UAAU,EAAE,gBAAgB;QAC5B,YAAY,EAAE,CAAC,WAAW,CAAC;KAC5B;IACD;QACE,UAAU,EAAE,gBAAgB;QAC5B,YAAY,EAAE,CAAC,WAAW,CAAC;QAC3B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,IAAI;KACjB;IACD;QACE,UAAU,EAAE,kBAAkB;QAC9B,YAAY,EAAE,CAAC,WAAW,CAAC;QAC3B,aAAa,EAAE,IAAI;QACnB,WAAW,EAAE,IAAI;KAClB;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,YAAY,EAAE,CAAC,WAAW,CAAC;QAC3B,aAAa,EAAE,IAAI;QACnB,WAAW,EAAE,IAAI;KAClB;IACD;QACE,UAAU,EAAE,6BAA6B;QACzC,YAAY,EAAE,CAAC,gBAAgB,CAAC;KACjC;IACD;QACE,UAAU,EAAE,8BAA8B;QAC1C,YAAY,EAAE,CAAC,gBAAgB,CAAC;KACjC;IACD;QACE,UAAU,EAAE,6BAA6B;QACzC,YAAY,EAAE,CAAC,gBAAgB,CAAC;KACjC;IACD;QACE,UAAU,EAAE,6BAA6B;QACzC,YAAY,EAAE,CAAC,gBAAgB,CAAC;KACjC;IACD;QACE,UAAU,EAAE,wBAAwB;QACpC,YAAY,EAAE,CAAC,WAAW,CAAC;QAC3B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,0BAA0B,CAAC;QACxC,UAAU,EAAE;YACV;gBACE,QAAQ,EAAE,qBAAqB;gBAC/B,IAAI,EAAE,iBAAiB;gBACvB,KAAK,EAAE,WAAW;aACnB;SACF;KACF;IACD;QACE,UAAU,EAAE,kBAAkB;QAC9B,YAAY,EAAE,CAAC,gBAAgB,CAAC;KACjC;CACF,CAAC"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GroupSchema = exports.GroupEditorTypes = void 0;
4
+ const shared_1 = require("../../core/schemas/shared");
5
+ exports.GroupEditorTypes = [
6
+ "hub:group:edit",
7
+ "hub:group:settings",
8
+ ];
9
+ /**
10
+ * Defines the JSON schema for a Hub Group's editable fields
11
+ */
12
+ exports.GroupSchema = {
13
+ required: ["name"],
14
+ type: "object",
15
+ properties: {
16
+ name: shared_1.ENTITY_NAME_SCHEMA,
17
+ summary: Object.assign(Object.assign({}, shared_1.ENTITY_SUMMARY_SCHEMA), {
18
+ // group snippets (mapped to summary on the entity) have
19
+ // a max char limit of 250
20
+ maxLength: 250 }),
21
+ _thumbnail: shared_1.ENTITY_IMAGE_SCHEMA,
22
+ membershipAccess: {
23
+ type: "string",
24
+ enum: ["organization", "collaborators", "anyone"],
25
+ default: "anyone",
26
+ },
27
+ isViewOnly: {
28
+ type: "boolean",
29
+ enum: [false, true],
30
+ default: false,
31
+ },
32
+ },
33
+ };
34
+ //# sourceMappingURL=GroupSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupSchema.js","sourceRoot":"","sources":["../../../../src/groups/_internal/GroupSchema.ts"],"names":[],"mappings":";;;AACA,sDAImC;AAGtB,QAAA,gBAAgB,GAAG;IAC9B,gBAAgB;IAChB,oBAAoB;CACZ,CAAC;AAEX;;GAEG;AACU,QAAA,WAAW,GAAyB;IAC/C,QAAQ,EAAE,CAAC,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,IAAI,EAAE,2BAAkB;QACxB,OAAO,kCACF,8BAAqB;YACxB,wDAAwD;YACxD,0BAA0B;YAC1B,SAAS,EAAE,GAAG,GACf;QACD,UAAU,EAAE,4BAAmB;QAC/B,gBAAgB,EAAE;YAChB,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,QAAQ,CAAC;YACjD,OAAO,EAAE,QAAQ;SAClB;QACD,UAAU,EAAE;YACV,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC;YACnB,OAAO,EAAE,KAAK;SACf;KACF;CACsB,CAAC"}