@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,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildUiSchema = void 0;
4
+ /**
5
+ * @private
6
+ * constructs the followers uiSchema for Hub Sites.
7
+ * This defines how the schema properties should
8
+ * be rendered in the site followers > settings
9
+ * experience
10
+ */
11
+ exports.buildUiSchema = async (i18nScope, entity, context) => {
12
+ return {
13
+ type: "Layout",
14
+ elements: [
15
+ {
16
+ type: "Section",
17
+ elements: [
18
+ {
19
+ labelKey: `${i18nScope}.fields.followers.groupAccess.label`,
20
+ scope: "/properties/_followers/properties/groupAccess",
21
+ type: "Control",
22
+ options: {
23
+ control: "hub-field-input-tile-select",
24
+ layout: "horizontal",
25
+ helperText: {
26
+ labelKey: `${i18nScope}.fields.followers.groupAccess.helperText`,
27
+ },
28
+ labels: [
29
+ `{{${i18nScope}.fields.followers.groupAccess.private.label:translate}}`,
30
+ `{{${i18nScope}.fields.followers.groupAccess.org.label:translate}}`,
31
+ `{{${i18nScope}.fields.followers.groupAccess.public.label:translate}}`,
32
+ ],
33
+ descriptions: [
34
+ `{{${i18nScope}.fields.followers.groupAccess.private.description:translate}}`,
35
+ `{{${i18nScope}.fields.followers.groupAccess.org.description:translate}}`,
36
+ `{{${i18nScope}.fields.followers.groupAccess.public.description:translate}}`,
37
+ ],
38
+ icons: ["users", "organization", "globe"],
39
+ styles: { "max-width": "45rem" },
40
+ },
41
+ },
42
+ {
43
+ labelKey: `${i18nScope}.fields.followers.showFollowAction.label`,
44
+ scope: "/properties/_followers/properties/showFollowAction",
45
+ type: "Control",
46
+ options: {
47
+ control: "hub-field-input-switch",
48
+ layout: "inline-space-between",
49
+ helperText: {
50
+ labelKey: `${i18nScope}.fields.followers.showFollowAction.helperText`,
51
+ },
52
+ },
53
+ },
54
+ ],
55
+ },
56
+ ],
57
+ };
58
+ };
59
+ //# sourceMappingURL=SiteUiSchemaFollowers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SiteUiSchemaFollowers.js","sourceRoot":"","sources":["../../../../src/sites/_internal/SiteUiSchemaFollowers.ts"],"names":[],"mappings":";;;AAIA;;;;;;GAMG;AACU,QAAA,aAAa,GAAG,KAAK,EAChC,SAAiB,EACjB,MAAgB,EAChB,OAAuB,EACH,EAAE;IACtB,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE;oBACR;wBACE,QAAQ,EAAE,GAAG,SAAS,qCAAqC;wBAC3D,KAAK,EAAE,+CAA+C;wBACtD,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE;4BACP,OAAO,EAAE,6BAA6B;4BACtC,MAAM,EAAE,YAAY;4BACpB,UAAU,EAAE;gCACV,QAAQ,EAAE,GAAG,SAAS,0CAA0C;6BACjE;4BACD,MAAM,EAAE;gCACN,KAAK,SAAS,yDAAyD;gCACvE,KAAK,SAAS,qDAAqD;gCACnE,KAAK,SAAS,wDAAwD;6BACvE;4BACD,YAAY,EAAE;gCACZ,KAAK,SAAS,+DAA+D;gCAC7E,KAAK,SAAS,2DAA2D;gCACzE,KAAK,SAAS,8DAA8D;6BAC7E;4BACD,KAAK,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,CAAC;4BACzC,MAAM,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE;yBACjC;qBACF;oBACD;wBACE,QAAQ,EAAE,GAAG,SAAS,0CAA0C;wBAChE,KAAK,EAAE,oDAAoD;wBAC3D,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE;4BACP,OAAO,EAAE,wBAAwB;4BACjC,MAAM,EAAE,sBAAsB;4BAC9B,UAAU,EAAE;gCACV,QAAQ,EAAE,GAAG,SAAS,+CAA+C;6BACtE;yBACF;qBACF;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,192 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports._migrateSummaryStatCardConfigs = void 0;
4
+ const objects_1 = require("../../objects");
5
+ const util_1 = require("../../util");
6
+ /**
7
+ * Reconfigure summary stat card properties to align with the
8
+ * new web component card.
9
+ * @private
10
+ * @param {Object} model Site Model
11
+ * @returns {Object}
12
+ */
13
+ function _migrateSummaryStatCardConfigs(model) {
14
+ // attempt migration for 1.7 schema version
15
+ const migratedModel = _migrateSummaryStatSchemaVersion1_7(model);
16
+ return migratedModel;
17
+ }
18
+ exports._migrateSummaryStatCardConfigs = _migrateSummaryStatCardConfigs;
19
+ function _migrateSummaryStatSchemaVersion1_7(model) {
20
+ // do nothing if migration already applied
21
+ if (objects_1.getProp(model, "item.properties.schemaVersion") >= 1.7)
22
+ return model;
23
+ // apply migration
24
+ const clone = util_1.cloneObject(model);
25
+ clone.data.values.layout.sections.map((section) => (Object.assign(Object.assign({}, section), { rows: (section.rows || []).map((row) => (Object.assign(Object.assign({}, row), { cards: (row.cards || []).map((card) => {
26
+ var _a;
27
+ if (card.component.name === "summary-statistic-card") {
28
+ const values = card.component.settings;
29
+ const expressionSet = whereToExpressionSet(values.where);
30
+ card.component.settings = {
31
+ type: "dynamic",
32
+ cardTitle: values.title,
33
+ dynamicMetric: {
34
+ itemId: [values.itemId],
35
+ layerId: (_a = values.layerId) === null || _a === void 0 ? void 0 : _a.toString(),
36
+ field: values.statFieldName,
37
+ fieldType: values.statFieldType,
38
+ statistic: values.statType,
39
+ serviceUrl: getServiceUrl(values.url),
40
+ expressionSet,
41
+ allowExpressionSet: !!expressionSet.length,
42
+ },
43
+ serverTimeout: values.timeout,
44
+ textAlign: migrateTextAlign(values.statValueAlign),
45
+ valueColor: values.statValueColor === null
46
+ ? undefined
47
+ : values.statValueColor,
48
+ trailingText: values.trailingText,
49
+ cardId: values.cardId || util_1.createId(),
50
+ // did not exist on old stat card
51
+ allowUnitFormatting: false,
52
+ allowLink: false,
53
+ };
54
+ }
55
+ return card;
56
+ }) }))) })));
57
+ objects_1.setProp("item.properties.schemaVersion", 1.7, clone);
58
+ return clone;
59
+ }
60
+ function getServiceUrl(url) {
61
+ let serviceUrl = url;
62
+ // url has layer id at end
63
+ if ((url === null || url === void 0 ? void 0 : url.lastIndexOf("FeatureServer")) > -1) {
64
+ serviceUrl = url.slice(0, url.lastIndexOf("FeatureServer") + 13);
65
+ // url has layer id at end
66
+ }
67
+ else if ((url === null || url === void 0 ? void 0 : url.lastIndexOf("MapServer")) > -1) {
68
+ serviceUrl = url.slice(0, url.lastIndexOf("MapServer") + 9);
69
+ }
70
+ return serviceUrl;
71
+ }
72
+ function migrateTextAlign(align) {
73
+ switch (align) {
74
+ case "center":
75
+ return "center";
76
+ case "right":
77
+ return "end";
78
+ case "left":
79
+ default:
80
+ return "start";
81
+ }
82
+ }
83
+ /**
84
+ * Takes a where clause from a summary statistic card and transforms it into
85
+ * the new expression set array for usage in the new summary stat card.
86
+ *
87
+ * This is a brittle function to be used just for the migration of the <=1.6 of the summary stat card into
88
+ * the 1.7 version of the summary stat card.
89
+ * @param where A where clause as a string. Ex: "Category = 'abc' AND date <= TIMESTAMP '2023-01-01 00:00:00"
90
+ * @returns IExpression[] expression set of the where clause, broken down into individual expressions
91
+ */
92
+ function whereToExpressionSet(where) {
93
+ let expressionSet = [];
94
+ if (where) {
95
+ const whereClauses = where.split("AND"); // what happens if a user puts "AND" as the matching value?
96
+ expressionSet = whereClauses
97
+ .map((clause) => {
98
+ let expression;
99
+ // could be number or date
100
+ if (clause.includes(">=")) {
101
+ const { fieldName, value } = handleClauseSplit(clause, ">=");
102
+ let finalValue = value;
103
+ let fieldType;
104
+ // handle date
105
+ if (value.includes("TIMESTAMP")) {
106
+ finalValue = handleDateInClause(value);
107
+ fieldType = "esriFieldTypeDate";
108
+ }
109
+ expression = makeExpression(fieldName, fieldType, [finalValue]);
110
+ }
111
+ // could be number or date AND value is second in values array
112
+ else if (clause.includes("<=")) {
113
+ const { fieldName, value } = handleClauseSplit(clause, "<=");
114
+ let finalValue = value;
115
+ let fieldType;
116
+ // handle date
117
+ if (value.includes("TIMESTAMP")) {
118
+ finalValue = handleDateInClause(value);
119
+ fieldType = "esriFieldTypeDate";
120
+ }
121
+ expression = makeExpression(fieldName, fieldType, [
122
+ undefined,
123
+ finalValue,
124
+ ]);
125
+ }
126
+ // string match
127
+ else if (clause.includes("=") && clause !== "1=1") {
128
+ const { fieldName, value } = handleClauseSplit(clause, "=");
129
+ const cleanedValue = removeQuotesAroundValue(value);
130
+ expression = makeExpression(fieldName, "esriFieldTypeString", [
131
+ cleanedValue,
132
+ ]);
133
+ }
134
+ return expression;
135
+ })
136
+ .filter((ex) => !!ex);
137
+ }
138
+ return expressionSet;
139
+ }
140
+ /**
141
+ * Splits a clause by a given parameter.
142
+ * @param clause String to split into pieces
143
+ * @param splitBy How to split the string
144
+ * @returns The field name and value from the clause, split
145
+ */
146
+ function handleClauseSplit(clause, splitBy) {
147
+ const pieces = clause.split(splitBy);
148
+ const fieldName = pieces[0].trim();
149
+ const value = pieces[1].trim();
150
+ return { fieldName, value };
151
+ }
152
+ /**
153
+ * Takes a piece of a where clause with a date in it, and extracts just the YYYY-MM-DD.
154
+ * @param value - where clause piece with value
155
+ * @returns YYYY-MM-DD as string
156
+ */
157
+ function handleDateInClause(value) {
158
+ const dateAndTimePieces = value.split("'");
159
+ const dateAndTime = dateAndTimePieces[1].trim();
160
+ const date = dateAndTime.split(" ")[0].trim();
161
+ return date;
162
+ }
163
+ /**
164
+ * Makes an expression for the expression set.
165
+ * @param fieldName Name of IField
166
+ * @param fieldType Type of IField
167
+ * @param values Values in clause
168
+ * @returns IExpression to be used in an expression set.
169
+ */
170
+ function makeExpression(fieldName, fieldType, values) {
171
+ const field = {
172
+ name: fieldName,
173
+ };
174
+ if (fieldType) {
175
+ field.type = fieldType;
176
+ }
177
+ const expression = {
178
+ field,
179
+ values,
180
+ };
181
+ return expression;
182
+ }
183
+ /**
184
+ * Removes single quotes around a value. Used to remove the leading and trailing
185
+ * single quotes around a string value for a where clause.
186
+ * @param value string value with single quotes around it
187
+ * @returns string value without leading or trailing single quotes
188
+ */
189
+ function removeQuotesAroundValue(value) {
190
+ return value.replace(/^\'+|\'+$/g, "");
191
+ }
192
+ //# sourceMappingURL=_migrate-summary-stat-card-configs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_migrate-summary-stat-card-configs.js","sourceRoot":"","sources":["../../../../src/sites/_internal/_migrate-summary-stat-card-configs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.applyCatalogStructureMigration = void 0;
4
+ /**
5
+ * Add the default catalog structure to the Site model
6
+ * Note: This in-memory migration is only applies via `fetchSite(..):IHubSite` and not
7
+ * the older `getSiteById(...):IModel`. Changes made in this migration will not be
8
+ * persisted to AGO until all other parts of the application stop relying on the legacy
9
+ * catalog implementation
10
+ * @param model
11
+ * @returns
12
+ */
13
+ function applyCatalogStructureMigration(model) {
14
+ let siteCatalog = model.data.catalog || {};
15
+ // This _shouldn't_ happen, but some of our testing sites might have this
16
+ // migration already persisted in AGO. In that case, we ignore and move on
17
+ if (!siteCatalog.schemaVersion) {
18
+ const groups = siteCatalog.groups || [];
19
+ siteCatalog = {
20
+ schemaVersion: 1,
21
+ title: "Default Site Catalog",
22
+ scopes: {
23
+ item: {
24
+ targetEntity: "item",
25
+ filters: [],
26
+ },
27
+ },
28
+ collections: [],
29
+ };
30
+ // groups are used to set the item scope for the whole catalog
31
+ siteCatalog.scopes.item.filters.push({
32
+ predicates: [
33
+ {
34
+ group: [...groups],
35
+ },
36
+ ],
37
+ });
38
+ model.data.catalog = siteCatalog;
39
+ }
40
+ return model;
41
+ }
42
+ exports.applyCatalogStructureMigration = applyCatalogStructureMigration;
43
+ //# sourceMappingURL=applyCatalogStructureMigration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applyCatalogStructureMigration.js","sourceRoot":"","sources":["../../../../src/sites/_internal/applyCatalogStructureMigration.ts"],"names":[],"mappings":";;;AAIA;;;;;;;;GAQG;AACH,SAAgB,8BAA8B,CAAC,KAAa;IAC1D,IAAI,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;IAC3C,yEAAyE;IACzE,0EAA0E;IAC1E,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE;QAC9B,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,IAAI,EAAE,CAAC;QACxC,WAAW,GAAG;YACZ,aAAa,EAAE,CAAC;YAChB,KAAK,EAAE,sBAAsB;YAC7B,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,YAAY,EAAE,MAAM;oBACpB,OAAO,EAAE,EAAE;iBACZ;aACF;YACD,WAAW,EAAE,EAAE;SACD,CAAC;QAEjB,8DAA8D;QAC9D,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACnC,UAAU,EAAE;gBACV;oBACE,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC;iBACnB;aACF;SACF,CAAC,CAAC;QAEH,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC;KAClC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AA/BD,wEA+BC"}
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.applyDefaultCollectionMigration = void 0;
4
+ const types_1 = require("./types");
5
+ /**
6
+ * In-Memory migration that adds default collections to site models that have the
7
+ * new catalog structure. These default collections will have the same names and
8
+ * display order found in `site.data.values.searchCategories`
9
+ *
10
+ * This migration simplifies display logic, as consuming components no longer
11
+ * have to merge `catalog.collections` with the default collection definitions.
12
+ *
13
+ * This migration also lays the foundation for customization, since editors will
14
+ * be able to modify these persisted default objects. For example, editors can
15
+ * change the default labels, display order, or mark a default as "hidden" so the
16
+ * public can't see it.
17
+ *
18
+ * NOTE: The changes made in this migration will not be persisted to AGO at this time
19
+ *
20
+ * @param model site model to migrate
21
+ * @returns a migrated model with default `IHubCollectionPersistance` objects added
22
+ * to the catalog
23
+ */
24
+ function applyDefaultCollectionMigration(model) {
25
+ const baseCollectionKeys = [
26
+ // TODO: add 'all' as a wellknown collection and figure out the
27
+ // ramifications of doing so across the app. (or create a new
28
+ // type that includes 'all')
29
+ "all",
30
+ "dataset",
31
+ "document",
32
+ "site",
33
+ "appAndMap",
34
+ ];
35
+ const baseCollectionMap = baseCollectionKeys.reduce((map, key) => {
36
+ map[key] = {
37
+ // We chose to leave the label as "null" for a couple of reasons. First off,
38
+ // the default collection names are supposed to be translated and we don't
39
+ // have access to i18n services here. Second, because we temporarily have to
40
+ // serialize changes from catalog.collections back to site.data.values.searchCategories
41
+ // for backwards compatibility, we need a way to indicate whether a collection's
42
+ // name has been explicitly set or if it is relying on the default translation.
43
+ // As such, we only set the label on the collection object IFF an explicit
44
+ // override text has been configured.
45
+ label: null,
46
+ key,
47
+ include: [],
48
+ targetEntity: "item",
49
+ scope: {
50
+ targetEntity: "item",
51
+ collection: key,
52
+ filters: [],
53
+ },
54
+ };
55
+ return map;
56
+ }, {});
57
+ const searchCategoryToCollection = {
58
+ [types_1.SearchCategories.DATA]: "dataset",
59
+ // Unfortunately, the "site" search category has different keys depending on if the catalog
60
+ // was created for a hub basic or hub premium site. As such, we just account for both.
61
+ [types_1.SearchCategories.INITIATIVES]: "site",
62
+ [types_1.SearchCategories.SITES]: "site",
63
+ [types_1.SearchCategories.DOCUMENTS]: "document",
64
+ [types_1.SearchCategories.APPS_AND_MAPS]: "appAndMap",
65
+ };
66
+ // Not every site has `data.values.searchCategories` saved, so we have to keep a bare-bones
67
+ // copy of what the default objects are in opendata-ui.
68
+ // NOTE: The `event` search category has been explicitly omitted. While the classic search view
69
+ // allows for the searching of `events`, the new search view does not.
70
+ const DEFAULT_SEARCH_CATEGORIES = [
71
+ { key: types_1.SearchCategories.SITES, hidden: true },
72
+ { key: types_1.SearchCategories.DATA },
73
+ { key: types_1.SearchCategories.DOCUMENTS },
74
+ { key: types_1.SearchCategories.APPS_AND_MAPS },
75
+ ];
76
+ const legacySearchCategories = model.data.values.searchCategories || DEFAULT_SEARCH_CATEGORIES;
77
+ const configuredCollections = legacySearchCategories
78
+ // The new search view doesn't currently allow for searching events
79
+ .filter((searchCategory) => searchCategory.key !== types_1.SearchCategories.EVENTS)
80
+ // Some sites have a borked `data.values.searchCategories` that explicitly includes the `all`
81
+ // collection. We have this check to catch that and any other weird scenarios.
82
+ .filter((searchCategory) => !!searchCategoryToCollection[searchCategory.key])
83
+ .map((searchCategory) => {
84
+ const collectionKey = searchCategoryToCollection[searchCategory.key];
85
+ const collection = baseCollectionMap[collectionKey];
86
+ collection.label = searchCategory.overrideText || null;
87
+ collection.hidden = searchCategory.hidden;
88
+ return collection;
89
+ });
90
+ // the "all" collection always goes first
91
+ configuredCollections.unshift(baseCollectionMap.all);
92
+ model.data.catalog.collections = configuredCollections;
93
+ return model;
94
+ }
95
+ exports.applyDefaultCollectionMigration = applyDefaultCollectionMigration;
96
+ //# sourceMappingURL=applyDefaultCollectionMigration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applyDefaultCollectionMigration.js","sourceRoot":"","sources":["../../../../src/sites/_internal/applyDefaultCollectionMigration.ts"],"names":[],"mappings":";;;AAGA,mCAA2C;AAE3C;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,+BAA+B,CAAC,KAAa;IAC3D,MAAM,kBAAkB,GAA0B;QAChD,+DAA+D;QAC/D,6DAA6D;QAC7D,4BAA4B;QAC5B,KAAY;QACZ,SAAS;QACT,UAAU;QACV,MAAM;QACN,WAAW;KACZ,CAAC;IACF,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC/D,GAAG,CAAC,GAAG,CAAC,GAAG;YACT,4EAA4E;YAC5E,0EAA0E;YAC1E,4EAA4E;YAC5E,uFAAuF;YACvF,gFAAgF;YAChF,+EAA+E;YAC/E,0EAA0E;YAC1E,qCAAqC;YACrC,KAAK,EAAE,IAAI;YACX,GAAG;YACH,OAAO,EAAE,EAAE;YACX,YAAY,EAAE,MAAM;YACpB,KAAK,EAAE;gBACL,YAAY,EAAE,MAAM;gBACpB,UAAU,EAAE,GAAG;gBACf,OAAO,EAAE,EAAE;aACZ;SACF,CAAC;QACF,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAA+C,CAAC,CAAC;IACpD,MAAM,0BAA0B,GAE5B;QACF,CAAC,wBAAgB,CAAC,IAAI,CAAC,EAAE,SAAS;QAClC,2FAA2F;QAC3F,sFAAsF;QACtF,CAAC,wBAAgB,CAAC,WAAW,CAAC,EAAE,MAAM;QACtC,CAAC,wBAAgB,CAAC,KAAK,CAAC,EAAE,MAAM;QAChC,CAAC,wBAAgB,CAAC,SAAS,CAAC,EAAE,UAAU;QACxC,CAAC,wBAAgB,CAAC,aAAa,CAAC,EAAE,WAAW;KAC9C,CAAC;IACF,2FAA2F;IAC3F,uDAAuD;IACvD,+FAA+F;IAC/F,sEAAsE;IACtE,MAAM,yBAAyB,GAAU;QACvC,EAAE,GAAG,EAAE,wBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;QAC7C,EAAE,GAAG,EAAE,wBAAgB,CAAC,IAAI,EAAE;QAC9B,EAAE,GAAG,EAAE,wBAAgB,CAAC,SAAS,EAAE;QACnC,EAAE,GAAG,EAAE,wBAAgB,CAAC,aAAa,EAAE;KACxC,CAAC;IACF,MAAM,sBAAsB,GAC1B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,yBAAyB,CAAC;IAElE,MAAM,qBAAqB,GAAG,sBAAsB;QAClD,mEAAmE;SAClE,MAAM,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,KAAK,wBAAgB,CAAC,MAAM,CAAC;QAC3E,6FAA6F;QAC7F,8EAA8E;SAC7E,MAAM,CACL,CAAC,cAAc,EAAE,EAAE,CACjB,CAAC,CAAC,0BAA0B,CAAC,cAAc,CAAC,GAAuB,CAAC,CACvE;SACA,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE;QACtB,MAAM,aAAa,GACjB,0BAA0B,CAAC,cAAc,CAAC,GAAuB,CAAC,CAAC;QACrE,MAAM,UAAU,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;QACpD,UAAU,CAAC,KAAK,GAAG,cAAc,CAAC,YAAY,IAAI,IAAI,CAAC;QACvD,UAAU,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;QAC1C,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC,CAAC;IAEL,yCAAyC;IACzC,qBAAqB,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACrD,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,qBAAqB,CAAC;IAEvD,OAAO,KAAK,CAAC;AACf,CAAC;AAhFD,0EAgFC"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.capabilityToFeatureMap = void 0;
4
+ /**
5
+ * Returns an array of ICapabilityToFeatureMap objects
6
+ * that define the projection of legacy capabilities
7
+ * to permission features.
8
+ *
9
+ * We use this map to manage foward and backard conversions
10
+ * and migration of legacy capablities to features when a
11
+ * site is fetched or updated
12
+ *
13
+ * NOTE: if you are porting a legacy capability over to
14
+ * workspaces, add it to this map
15
+ */
16
+ exports.capabilityToFeatureMap = [
17
+ {
18
+ /**
19
+ * Currently if the hideFollow capability is present
20
+ * on the site capabilities, the app interprets this
21
+ * to mean following is disabled for the site, and
22
+ * thus, in-page action "Follow" buttons are not
23
+ * displayed. Permissions, however, are structured
24
+ * in the positive, meaning that hub:site:feature:follow
25
+ * should return true if following is enabled, and
26
+ * false if it's disabled. We set "negate" to true
27
+ * to handle this forward/backward discrepancy
28
+ */
29
+ capability: "hideFollow",
30
+ feature: "hub:site:feature:follow",
31
+ negate: true,
32
+ },
33
+ ];
34
+ //# sourceMappingURL=capabilityToFeatureMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilityToFeatureMap.js","sourceRoot":"","sources":["../../../../../src/sites/_internal/capabilities/capabilityToFeatureMap.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;;;GAWG;AACU,QAAA,sBAAsB,GAA8B;IAC/D;QACE;;;;;;;;;;WAUG;QACH,UAAU,EAAE,YAAY;QACxB,OAAO,EAAE,yBAAyB;QAClC,MAAM,EAAE,IAAI;KACb;CACF,CAAC"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.convertFeaturesToLegacyCapabilities = void 0;
4
+ const get_prop_1 = require("../../../objects/get-prop");
5
+ const capabilityToFeatureMap_1 = require("./capabilityToFeatureMap");
6
+ const objects_1 = require("../../../objects");
7
+ /**
8
+ * Site capabilities are currently saved as an array on the
9
+ * site.data.values.capabilities. We want to migragte these
10
+ * legacy capabilities over to features in the new permissions
11
+ * system; however, we must continue persisting updates to
12
+ * these features in the legacy capabilities array until the
13
+ * existing site capabilities in our application are plumbed
14
+ * to work off of permissions
15
+ *
16
+ * This function is called within updateSite to ensure
17
+ * the legacy capabilities array is kept up-to-date
18
+ *
19
+ * TODO: Remove once site capabilities use permissions
20
+ *
21
+ * @param modelToUpdate
22
+ * @param currentModel
23
+ */
24
+ exports.convertFeaturesToLegacyCapabilities = (modelToUpdate, currentModel) => {
25
+ let legacyCapabilityFeatureFlags = {};
26
+ // 1. convert legacy capabilities to a feature flag hash
27
+ (get_prop_1.getProp(currentModel, "data.values.capabilities") || []).forEach((capability) => {
28
+ legacyCapabilityFeatureFlags[capability] = true;
29
+ });
30
+ // 2. override legacy capabilities that are driven by features
31
+ const features = get_prop_1.getProp(modelToUpdate, "data.settings.features") || {};
32
+ legacyCapabilityFeatureFlags = capabilityToFeatureMap_1.capabilityToFeatureMap.reduce((capabilities, map) => {
33
+ // TODO: remove istanbul exception once we include a
34
+ // legacy capability that satisfies the second condition
35
+ /* istanbul ignore next */
36
+ const featureFlag = map.negate
37
+ ? !features[map.feature]
38
+ : features[map.feature];
39
+ return Object.assign(Object.assign({}, capabilities), { [map.capability]: featureFlag });
40
+ }, legacyCapabilityFeatureFlags);
41
+ // 3. convert legacy capabilities back to an array and persist on model
42
+ const updatedCapabilities = Object.entries(legacyCapabilityFeatureFlags).reduce((acc, [key, value]) => {
43
+ value && acc.push(key);
44
+ return acc;
45
+ }, []);
46
+ objects_1.setProp("data.values.capabilities", updatedCapabilities, modelToUpdate);
47
+ return modelToUpdate;
48
+ };
49
+ //# sourceMappingURL=convertFeaturesToLegacyCapabilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertFeaturesToLegacyCapabilities.js","sourceRoot":"","sources":["../../../../../src/sites/_internal/capabilities/convertFeaturesToLegacyCapabilities.ts"],"names":[],"mappings":";;;AACA,wDAAoD;AACpD,qEAAkE;AAMlE,8CAA2C;AAE3C;;;;;;;;;;;;;;;;GAgBG;AACU,QAAA,mCAAmC,GAAG,CACjD,aAAqB,EACrB,YAAoB,EACZ,EAAE;IACV,IAAI,4BAA4B,GAAkC,EAAE,CAAC;IAErE,wDAAwD;IACxD,CAAC,kBAAO,CAAC,YAAY,EAAE,0BAA0B,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAC/D,CAAC,UAA4B,EAAE,EAAE;QAC/B,4BAA4B,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;IAClD,CAAC,CACF,CAAC;IAEF,8DAA8D;IAC9D,MAAM,QAAQ,GAAG,kBAAO,CAAC,aAAa,EAAE,wBAAwB,CAAC,IAAI,EAAE,CAAC;IACxE,4BAA4B,GAAG,+CAAsB,CAAC,MAAM,CAC1D,CACE,YAA2C,EAC3C,GAA4B,EAC5B,EAAE;QACF,oDAAoD;QACpD,wDAAwD;QACxD,0BAA0B;QAC1B,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM;YAC5B,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;YACxB,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAE1B,uCACK,YAAY,KACf,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,WAAW,IAC7B;IACJ,CAAC,EACD,4BAA4B,CAC7B,CAAC;IAEF,uEAAuE;IACvE,MAAM,mBAAmB,GAAG,MAAM,CAAC,OAAO,CACxC,4BAA4B,CAC7B,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC7B,KAAK,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvB,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,iBAAO,CAAC,0BAA0B,EAAE,mBAAmB,EAAE,aAAa,CAAC,CAAC;IACxE,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.migrateLegacyCapabilitiesToFeatures = void 0;
4
+ const objects_1 = require("../../../objects");
5
+ const capabilityToFeatureMap_1 = require("./capabilityToFeatureMap");
6
+ /**
7
+ * Site capabilities are currently saved as an array on the
8
+ * site.data.values.capabilities. We want to migragte these
9
+ * legacy capabilities over to features in the new permissions
10
+ * system and expose them on the entity
11
+ *
12
+ * This function is called within fetchSite to ensure all
13
+ * sites have features that are kept up-to-date with the
14
+ * legacy capabilities array
15
+ */
16
+ exports.migrateLegacyCapabilitiesToFeatures = (model) => {
17
+ const legacyCapabilityFeatureFlags = {};
18
+ let updatedFeatures = {};
19
+ // 1. convert legacy capabilities to a feature flag hash
20
+ (objects_1.getProp(model, "data.values.capabilities") || []).forEach((capability) => {
21
+ legacyCapabilityFeatureFlags[capability] = true;
22
+ });
23
+ // 2. update/add features based on the legacy capabilities array
24
+ const currentFeatures = objects_1.getProp(model, "data.settings.features") || {};
25
+ updatedFeatures = capabilityToFeatureMap_1.capabilityToFeatureMap.reduce((features, map) => {
26
+ // TODO: remove istanbul exception once we include a
27
+ // legacy capability that satisfies the second condition
28
+ /* istanbul ignore next */
29
+ const capabilityFlag = map.negate
30
+ ? !legacyCapabilityFeatureFlags[map.capability]
31
+ : legacyCapabilityFeatureFlags[map.capability];
32
+ return Object.assign(Object.assign({}, features), { [map.feature]: capabilityFlag });
33
+ }, currentFeatures);
34
+ objects_1.setProp("data.settings.features", updatedFeatures, model);
35
+ return model;
36
+ };
37
+ //# sourceMappingURL=migrateLegacyCapabilitiesToFeatures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrateLegacyCapabilitiesToFeatures.js","sourceRoot":"","sources":["../../../../../src/sites/_internal/capabilities/migrateLegacyCapabilitiesToFeatures.ts"],"names":[],"mappings":";;;AAAA,8CAAoD;AAGpD,qEAAkE;AAOlE;;;;;;;;;GASG;AACU,QAAA,mCAAmC,GAAG,CAAC,KAAa,EAAU,EAAE;IAC3E,MAAM,4BAA4B,GAAkC,EAAE,CAAC;IACvE,IAAI,eAAe,GAAkB,EAAE,CAAC;IAExC,wDAAwD;IACxD,CAAC,iBAAO,CAAC,KAAK,EAAE,0BAA0B,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CACxD,CAAC,UAA4B,EAAE,EAAE;QAC/B,4BAA4B,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;IAClD,CAAC,CACF,CAAC;IAEF,gEAAgE;IAChE,MAAM,eAAe,GAAG,iBAAO,CAAC,KAAK,EAAE,wBAAwB,CAAC,IAAI,EAAE,CAAC;IACvE,eAAe,GAAG,+CAAsB,CAAC,MAAM,CAC7C,CAAC,QAAuB,EAAE,GAA4B,EAAE,EAAE;QACxD,oDAAoD;QACpD,wDAAwD;QACxD,0BAA0B;QAC1B,MAAM,cAAc,GAAG,GAAG,CAAC,MAAM;YAC/B,CAAC,CAAC,CAAC,4BAA4B,CAAC,GAAG,CAAC,UAAU,CAAC;YAC/C,CAAC,CAAC,4BAA4B,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAEjD,uCACK,QAAQ,KACX,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,cAAc,IAC7B;IACJ,CAAC,EACD,eAAe,CAChB,CAAC;IAEF,iBAAO,CAAC,wBAAwB,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;IAC1D,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/sites/_internal/capabilities/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.convertCatalogToLegacyFormat = void 0;
4
+ const objects_1 = require("../../objects");
5
+ const utils_1 = require("../../search/utils");
6
+ const util_1 = require("../../util");
7
+ /**
8
+ * Converts the migrated catalog of a site model back into a legacy catalog format.
9
+ * As the new catalog format is much more flexible than the legacy format, only supported
10
+ * fields configurations (i.e., group ids) are transferred.
11
+ *
12
+ * @param modelToUpdate modified site model with a migrated catalog
13
+ * @param currentModel currently persisted site model with a legacy catalog
14
+ * @returns site model with any catalog group changes reflected in a legacy format
15
+ */
16
+ function convertCatalogToLegacyFormat(modelToUpdate, currentModel) {
17
+ const updatedModel = util_1.cloneObject(modelToUpdate);
18
+ const updatedItemScope = objects_1.getProp(modelToUpdate, "data.catalog.scopes.item");
19
+ const updatedGroupPredicate = utils_1.getScopeGroupPredicate(updatedItemScope);
20
+ if (updatedGroupPredicate) {
21
+ const updatedLegacyCatalog = util_1.cloneObject(currentModel.data.catalog);
22
+ // TODO: Do we need to worry about whether predicate.group is an IMatchOption?
23
+ const updatedGroupIds = Array.isArray(updatedGroupPredicate.group)
24
+ ? updatedGroupPredicate.group
25
+ : [updatedGroupPredicate.group];
26
+ updatedLegacyCatalog.groups = updatedGroupIds;
27
+ updatedModel.data.catalog = updatedLegacyCatalog;
28
+ }
29
+ else {
30
+ // This shouldn't happen, but in case something is malformed we protect the data integrity
31
+ // by reverting to the catalog of the most recently fetched model
32
+ updatedModel.data.catalog = util_1.cloneObject(currentModel.data.catalog);
33
+ }
34
+ return updatedModel;
35
+ }
36
+ exports.convertCatalogToLegacyFormat = convertCatalogToLegacyFormat;
37
+ //# sourceMappingURL=convertCatalogToLegacyFormat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertCatalogToLegacyFormat.js","sourceRoot":"","sources":["../../../../src/sites/_internal/convertCatalogToLegacyFormat.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AACxC,8CAA4D;AAE5D,qCAAyC;AAEzC;;;;;;;;GAQG;AACH,SAAgB,4BAA4B,CAC1C,aAAqB,EACrB,YAAoB;IAEpB,MAAM,YAAY,GAAG,kBAAW,CAAC,aAAa,CAAC,CAAC;IAChD,MAAM,gBAAgB,GAAG,iBAAO,CAAC,aAAa,EAAE,0BAA0B,CAAC,CAAC;IAC5E,MAAM,qBAAqB,GAAG,8BAAsB,CAAC,gBAAgB,CAAC,CAAC;IACvE,IAAI,qBAAqB,EAAE;QACzB,MAAM,oBAAoB,GAAG,kBAAW,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpE,8EAA8E;QAC9E,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC,KAAK,CAAC;YAChE,CAAC,CAAC,qBAAqB,CAAC,KAAK;YAC7B,CAAC,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAClC,oBAAoB,CAAC,MAAM,GAAG,eAAe,CAAC;QAC9C,YAAY,CAAC,IAAI,CAAC,OAAO,GAAG,oBAAoB,CAAC;KAClD;SAAM;QACL,0FAA0F;QAC1F,iEAAiE;QACjE,YAAY,CAAC,IAAI,CAAC,OAAO,GAAG,kBAAW,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACpE;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AArBD,oEAqBC"}