@esri/hub-common 20.5.1 → 20.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (278) hide show
  1. package/dist/esm/access/compareAccess.js +15 -0
  2. package/dist/esm/access/compareAccess.js.map +1 -0
  3. package/dist/esm/channels/_internal/channelEditorTypes.js +9 -0
  4. package/dist/esm/channels/_internal/channelEditorTypes.js.map +1 -0
  5. package/dist/esm/content/HubContent.js +1 -1
  6. package/dist/esm/content/HubContent.js.map +1 -1
  7. package/dist/esm/content/_internal/ContentUiSchemaSettings.js +4 -2
  8. package/dist/esm/content/_internal/ContentUiSchemaSettings.js.map +1 -1
  9. package/dist/esm/content/_internal/contentEditorTypes.js +7 -0
  10. package/dist/esm/content/_internal/contentEditorTypes.js.map +1 -0
  11. package/dist/esm/content/_internal/shouldFetchData.js +29 -0
  12. package/dist/esm/content/_internal/shouldFetchData.js.map +1 -0
  13. package/dist/esm/content/_internal/shouldShowDownloadsConfiguration.js +6 -1
  14. package/dist/esm/content/_internal/shouldShowDownloadsConfiguration.js.map +1 -1
  15. package/dist/esm/content/edit.js +11 -7
  16. package/dist/esm/content/edit.js.map +1 -1
  17. package/dist/esm/content/isSiteType.js +12 -0
  18. package/dist/esm/content/isSiteType.js.map +1 -0
  19. package/dist/esm/core/_internal/getTemplate.js +212 -0
  20. package/dist/esm/core/_internal/getTemplate.js.map +1 -0
  21. package/dist/esm/core/schemas/internal/embed/EmbedSchema.js +8 -0
  22. package/dist/esm/core/schemas/internal/embed/EmbedSchema.js.map +1 -0
  23. package/dist/esm/core/schemas/internal/embed/EmbedUiSchema.js +15 -0
  24. package/dist/esm/core/schemas/internal/embed/EmbedUiSchema.js.map +1 -0
  25. package/dist/esm/core/schemas/internal/getLayoutSetupUiSchemaElement.js +31 -0
  26. package/dist/esm/core/schemas/internal/getLayoutSetupUiSchemaElement.js.map +1 -0
  27. package/dist/esm/core/types/IServiceQueryOptions.js +1 -0
  28. package/dist/esm/core/types/IServiceQueryOptions.js.map +1 -0
  29. package/dist/esm/core/types/ServiceAggregation.js +1 -0
  30. package/dist/esm/core/types/ServiceAggregation.js.map +1 -0
  31. package/dist/esm/discussions/_internal/discussionEditorTypes.js +7 -0
  32. package/dist/esm/discussions/_internal/discussionEditorTypes.js.map +1 -0
  33. package/dist/esm/events/_internal/eventEditorTypes.js +6 -0
  34. package/dist/esm/events/_internal/eventEditorTypes.js.map +1 -0
  35. package/dist/esm/groups/_internal/groupEditorTypes.js +13 -0
  36. package/dist/esm/groups/_internal/groupEditorTypes.js.map +1 -0
  37. package/dist/esm/groups/enrichGroupSearchResult.js +61 -0
  38. package/dist/esm/groups/enrichGroupSearchResult.js.map +1 -0
  39. package/dist/esm/initiative-templates/_internal/initiativeTemplateEditorTypes.js +4 -0
  40. package/dist/esm/initiative-templates/_internal/initiativeTemplateEditorTypes.js.map +1 -0
  41. package/dist/esm/initiatives/_internal/initiativeEditorTypes.js +9 -0
  42. package/dist/esm/initiatives/_internal/initiativeEditorTypes.js.map +1 -0
  43. package/dist/esm/models/createModel.js +28 -0
  44. package/dist/esm/models/createModel.js.map +1 -0
  45. package/dist/esm/models/fetchModelFromItem.js +18 -0
  46. package/dist/esm/models/fetchModelFromItem.js.map +1 -0
  47. package/dist/esm/models/fetchModelResource.js +34 -0
  48. package/dist/esm/models/fetchModelResource.js.map +1 -0
  49. package/dist/esm/models/getModel.js +19 -0
  50. package/dist/esm/models/getModel.js.map +1 -0
  51. package/dist/esm/models/getModelBySlug.js +40 -0
  52. package/dist/esm/models/getModelBySlug.js.map +1 -0
  53. package/dist/esm/models/updateModel.js +55 -0
  54. package/dist/esm/models/updateModel.js.map +1 -0
  55. package/dist/esm/models/upsertModelResource.js +37 -0
  56. package/dist/esm/models/upsertModelResource.js.map +1 -0
  57. package/dist/esm/pages/_internal/pageEditorTypes.js +2 -0
  58. package/dist/esm/pages/_internal/pageEditorTypes.js.map +1 -0
  59. package/dist/esm/permissions/_internal/checkPlatformVersion.js +43 -0
  60. package/dist/esm/permissions/_internal/checkPlatformVersion.js.map +1 -0
  61. package/dist/esm/permissions/_internal/checkReleaseGating.js +61 -0
  62. package/dist/esm/permissions/_internal/checkReleaseGating.js.map +1 -0
  63. package/dist/esm/projects/_internal/projectEditorTypes.js +8 -0
  64. package/dist/esm/projects/_internal/projectEditorTypes.js.map +1 -0
  65. package/dist/esm/search/_internal/applyWellKnownItemPredicates.js +104 -0
  66. package/dist/esm/search/_internal/applyWellKnownItemPredicates.js.map +1 -0
  67. package/dist/esm/search/_internal/bboxStringToGeoJSONPolygon.js +28 -0
  68. package/dist/esm/search/_internal/bboxStringToGeoJSONPolygon.js.map +1 -0
  69. package/dist/esm/search/_internal/constants.js +145 -0
  70. package/dist/esm/search/_internal/constants.js.map +1 -0
  71. package/dist/esm/search/_internal/expandPredicates.js +17 -0
  72. package/dist/esm/search/_internal/expandPredicates.js.map +1 -0
  73. package/dist/esm/search/_internal/hubDiscussionsHelpers/postToSearchResult.js +28 -0
  74. package/dist/esm/search/_internal/hubDiscussionsHelpers/postToSearchResult.js.map +1 -0
  75. package/dist/esm/search/_internal/hubDiscussionsHelpers/processPostFilters.js +87 -0
  76. package/dist/esm/search/_internal/hubDiscussionsHelpers/processPostFilters.js.map +1 -0
  77. package/dist/esm/search/_internal/hubDiscussionsHelpers/processPostOptions.js +48 -0
  78. package/dist/esm/search/_internal/hubDiscussionsHelpers/processPostOptions.js.map +1 -0
  79. package/dist/esm/search/_internal/hubDiscussionsHelpers/processRelations.js +25 -0
  80. package/dist/esm/search/_internal/hubDiscussionsHelpers/processRelations.js.map +1 -0
  81. package/dist/esm/search/_internal/hubSearchPosts.js +83 -0
  82. package/dist/esm/search/_internal/hubSearchPosts.js.map +1 -0
  83. package/dist/esm/search/_internal/isFamilyExpansionType.js +20 -0
  84. package/dist/esm/search/_internal/isFamilyExpansionType.js.map +1 -0
  85. package/dist/esm/search/_internal/isWellKnownTypeFilter.js +18 -0
  86. package/dist/esm/search/_internal/isWellKnownTypeFilter.js.map +1 -0
  87. package/dist/esm/search/_internal/types.js +1 -0
  88. package/dist/esm/search/_internal/types.js.map +1 -0
  89. package/dist/esm/search/getCOrgOrEOrgId.js +17 -0
  90. package/dist/esm/search/getCOrgOrEOrgId.js.map +1 -0
  91. package/dist/esm/search/relativeDateToDateRange.js +44 -0
  92. package/dist/esm/search/relativeDateToDateRange.js.map +1 -0
  93. package/dist/esm/search/types/ICatalogSearchResponse.js +1 -0
  94. package/dist/esm/search/types/ICatalogSearchResponse.js.map +1 -0
  95. package/dist/esm/search/types/IHubSearchResponseHash.js +1 -0
  96. package/dist/esm/search/types/IHubSearchResponseHash.js.map +1 -0
  97. package/dist/esm/search/types/ISearchAssociatedContentOptions.js +1 -0
  98. package/dist/esm/search/types/ISearchAssociatedContentOptions.js.map +1 -0
  99. package/dist/esm/search/valueToMatchOptions.js +26 -0
  100. package/dist/esm/search/valueToMatchOptions.js.map +1 -0
  101. package/dist/esm/sites/_internal/removeCatalogFromUpgradedSite.js +20 -0
  102. package/dist/esm/sites/_internal/removeCatalogFromUpgradedSite.js.map +1 -0
  103. package/dist/esm/sites/_internal/removeCatalogV1FromUpgradedSite.js +20 -0
  104. package/dist/esm/sites/_internal/removeCatalogV1FromUpgradedSite.js.map +1 -0
  105. package/dist/esm/sites/_internal/siteEditorTypes.js +9 -0
  106. package/dist/esm/sites/_internal/siteEditorTypes.js.map +1 -0
  107. package/dist/esm/templates/_internal/templateEditorTypes.js +2 -0
  108. package/dist/esm/templates/_internal/templateEditorTypes.js.map +1 -0
  109. package/dist/esm/urls/feature-service-urls.js +22 -0
  110. package/dist/esm/urls/feature-service-urls.js.map +1 -0
  111. package/dist/esm/users/_internal/userEditorTypes.js +2 -0
  112. package/dist/esm/users/_internal/userEditorTypes.js.map +1 -0
  113. package/dist/node/access/compareAccess.js +19 -0
  114. package/dist/node/access/compareAccess.js.map +1 -0
  115. package/dist/node/channels/_internal/channelEditorTypes.js +12 -0
  116. package/dist/node/channels/_internal/channelEditorTypes.js.map +1 -0
  117. package/dist/node/content/HubContent.js +1 -1
  118. package/dist/node/content/HubContent.js.map +1 -1
  119. package/dist/node/content/_internal/ContentUiSchemaSettings.js +4 -2
  120. package/dist/node/content/_internal/ContentUiSchemaSettings.js.map +1 -1
  121. package/dist/node/content/_internal/contentEditorTypes.js +10 -0
  122. package/dist/node/content/_internal/contentEditorTypes.js.map +1 -0
  123. package/dist/node/content/_internal/shouldFetchData.js +32 -0
  124. package/dist/node/content/_internal/shouldFetchData.js.map +1 -0
  125. package/dist/node/content/_internal/shouldShowDownloadsConfiguration.js +6 -1
  126. package/dist/node/content/_internal/shouldShowDownloadsConfiguration.js.map +1 -1
  127. package/dist/node/content/edit.js +11 -7
  128. package/dist/node/content/edit.js.map +1 -1
  129. package/dist/node/content/isSiteType.js +16 -0
  130. package/dist/node/content/isSiteType.js.map +1 -0
  131. package/dist/node/core/_internal/getTemplate.js +216 -0
  132. package/dist/node/core/_internal/getTemplate.js.map +1 -0
  133. package/dist/node/core/schemas/internal/embed/EmbedSchema.js +11 -0
  134. package/dist/node/core/schemas/internal/embed/EmbedSchema.js.map +1 -0
  135. package/dist/node/core/schemas/internal/embed/EmbedUiSchema.js +18 -0
  136. package/dist/node/core/schemas/internal/embed/EmbedUiSchema.js.map +1 -0
  137. package/dist/node/core/schemas/internal/getLayoutSetupUiSchemaElement.js +35 -0
  138. package/dist/node/core/schemas/internal/getLayoutSetupUiSchemaElement.js.map +1 -0
  139. package/dist/node/core/types/IServiceQueryOptions.js +3 -0
  140. package/dist/node/core/types/IServiceQueryOptions.js.map +1 -0
  141. package/dist/node/core/types/ServiceAggregation.js +3 -0
  142. package/dist/node/core/types/ServiceAggregation.js.map +1 -0
  143. package/dist/node/discussions/_internal/discussionEditorTypes.js +10 -0
  144. package/dist/node/discussions/_internal/discussionEditorTypes.js.map +1 -0
  145. package/dist/node/events/_internal/eventEditorTypes.js +9 -0
  146. package/dist/node/events/_internal/eventEditorTypes.js.map +1 -0
  147. package/dist/node/groups/_internal/groupEditorTypes.js +16 -0
  148. package/dist/node/groups/_internal/groupEditorTypes.js.map +1 -0
  149. package/dist/node/groups/enrichGroupSearchResult.js +65 -0
  150. package/dist/node/groups/enrichGroupSearchResult.js.map +1 -0
  151. package/dist/node/initiative-templates/_internal/initiativeTemplateEditorTypes.js +7 -0
  152. package/dist/node/initiative-templates/_internal/initiativeTemplateEditorTypes.js.map +1 -0
  153. package/dist/node/initiatives/_internal/initiativeEditorTypes.js +12 -0
  154. package/dist/node/initiatives/_internal/initiativeEditorTypes.js.map +1 -0
  155. package/dist/node/models/createModel.js +32 -0
  156. package/dist/node/models/createModel.js.map +1 -0
  157. package/dist/node/models/fetchModelFromItem.js +22 -0
  158. package/dist/node/models/fetchModelFromItem.js.map +1 -0
  159. package/dist/node/models/fetchModelResource.js +38 -0
  160. package/dist/node/models/fetchModelResource.js.map +1 -0
  161. package/dist/node/models/getModel.js +23 -0
  162. package/dist/node/models/getModel.js.map +1 -0
  163. package/dist/node/models/getModelBySlug.js +44 -0
  164. package/dist/node/models/getModelBySlug.js.map +1 -0
  165. package/dist/node/models/updateModel.js +59 -0
  166. package/dist/node/models/updateModel.js.map +1 -0
  167. package/dist/node/models/upsertModelResource.js +41 -0
  168. package/dist/node/models/upsertModelResource.js.map +1 -0
  169. package/dist/node/pages/_internal/pageEditorTypes.js +5 -0
  170. package/dist/node/pages/_internal/pageEditorTypes.js.map +1 -0
  171. package/dist/node/permissions/_internal/checkPlatformVersion.js +47 -0
  172. package/dist/node/permissions/_internal/checkPlatformVersion.js.map +1 -0
  173. package/dist/node/permissions/_internal/checkReleaseGating.js +65 -0
  174. package/dist/node/permissions/_internal/checkReleaseGating.js.map +1 -0
  175. package/dist/node/projects/_internal/projectEditorTypes.js +11 -0
  176. package/dist/node/projects/_internal/projectEditorTypes.js.map +1 -0
  177. package/dist/node/search/_internal/applyWellKnownItemPredicates.js +108 -0
  178. package/dist/node/search/_internal/applyWellKnownItemPredicates.js.map +1 -0
  179. package/dist/node/search/_internal/bboxStringToGeoJSONPolygon.js +32 -0
  180. package/dist/node/search/_internal/bboxStringToGeoJSONPolygon.js.map +1 -0
  181. package/dist/node/search/_internal/constants.js +148 -0
  182. package/dist/node/search/_internal/constants.js.map +1 -0
  183. package/dist/node/search/_internal/expandPredicates.js +21 -0
  184. package/dist/node/search/_internal/expandPredicates.js.map +1 -0
  185. package/dist/node/search/_internal/hubDiscussionsHelpers/postToSearchResult.js +32 -0
  186. package/dist/node/search/_internal/hubDiscussionsHelpers/postToSearchResult.js.map +1 -0
  187. package/dist/node/search/_internal/hubDiscussionsHelpers/processPostFilters.js +91 -0
  188. package/dist/node/search/_internal/hubDiscussionsHelpers/processPostFilters.js.map +1 -0
  189. package/dist/node/search/_internal/hubDiscussionsHelpers/processPostOptions.js +52 -0
  190. package/dist/node/search/_internal/hubDiscussionsHelpers/processPostOptions.js.map +1 -0
  191. package/dist/node/search/_internal/hubDiscussionsHelpers/processRelations.js +29 -0
  192. package/dist/node/search/_internal/hubDiscussionsHelpers/processRelations.js.map +1 -0
  193. package/dist/node/search/_internal/hubSearchPosts.js +87 -0
  194. package/dist/node/search/_internal/hubSearchPosts.js.map +1 -0
  195. package/dist/node/search/_internal/isFamilyExpansionType.js +24 -0
  196. package/dist/node/search/_internal/isFamilyExpansionType.js.map +1 -0
  197. package/dist/node/search/_internal/isWellKnownTypeFilter.js +22 -0
  198. package/dist/node/search/_internal/isWellKnownTypeFilter.js.map +1 -0
  199. package/dist/node/search/_internal/types.js +3 -0
  200. package/dist/node/search/_internal/types.js.map +1 -0
  201. package/dist/node/search/getCOrgOrEOrgId.js +21 -0
  202. package/dist/node/search/getCOrgOrEOrgId.js.map +1 -0
  203. package/dist/node/search/relativeDateToDateRange.js +48 -0
  204. package/dist/node/search/relativeDateToDateRange.js.map +1 -0
  205. package/dist/node/search/types/ICatalogSearchResponse.js +3 -0
  206. package/dist/node/search/types/ICatalogSearchResponse.js.map +1 -0
  207. package/dist/node/search/types/IHubSearchResponseHash.js +3 -0
  208. package/dist/node/search/types/IHubSearchResponseHash.js.map +1 -0
  209. package/dist/node/search/types/ISearchAssociatedContentOptions.js +3 -0
  210. package/dist/node/search/types/ISearchAssociatedContentOptions.js.map +1 -0
  211. package/dist/node/search/valueToMatchOptions.js +30 -0
  212. package/dist/node/search/valueToMatchOptions.js.map +1 -0
  213. package/dist/node/sites/_internal/removeCatalogFromUpgradedSite.js +24 -0
  214. package/dist/node/sites/_internal/removeCatalogFromUpgradedSite.js.map +1 -0
  215. package/dist/node/sites/_internal/removeCatalogV1FromUpgradedSite.js +24 -0
  216. package/dist/node/sites/_internal/removeCatalogV1FromUpgradedSite.js.map +1 -0
  217. package/dist/node/sites/_internal/siteEditorTypes.js +12 -0
  218. package/dist/node/sites/_internal/siteEditorTypes.js.map +1 -0
  219. package/dist/node/templates/_internal/templateEditorTypes.js +5 -0
  220. package/dist/node/templates/_internal/templateEditorTypes.js.map +1 -0
  221. package/dist/node/urls/feature-service-urls.js +25 -0
  222. package/dist/node/urls/feature-service-urls.js.map +1 -0
  223. package/dist/node/users/_internal/userEditorTypes.js +5 -0
  224. package/dist/node/users/_internal/userEditorTypes.js.map +1 -0
  225. package/dist/types/access/compareAccess.d.ts +11 -0
  226. package/dist/types/channels/_internal/channelEditorTypes.d.ts +10 -0
  227. package/dist/types/content/_internal/contentEditorTypes.d.ts +2 -0
  228. package/dist/types/content/_internal/shouldFetchData.d.ts +7 -0
  229. package/dist/types/content/_internal/shouldShowDownloadsConfiguration.d.ts +3 -1
  230. package/dist/types/content/isSiteType.d.ts +7 -0
  231. package/dist/types/core/_internal/getTemplate.d.ts +9 -0
  232. package/dist/types/core/schemas/internal/embed/EmbedSchema.d.ts +2 -0
  233. package/dist/types/core/schemas/internal/embed/EmbedUiSchema.d.ts +4 -0
  234. package/dist/types/core/schemas/internal/getLayoutSetupUiSchemaElement.d.ts +10 -0
  235. package/dist/types/core/types/IServiceQueryOptions.d.ts +22 -0
  236. package/dist/types/core/types/ServiceAggregation.d.ts +4 -0
  237. package/dist/types/discussions/_internal/discussionEditorTypes.d.ts +2 -0
  238. package/dist/types/events/_internal/eventEditorTypes.d.ts +2 -0
  239. package/dist/types/groups/_internal/groupEditorTypes.d.ts +2 -0
  240. package/dist/types/groups/enrichGroupSearchResult.d.ts +11 -0
  241. package/dist/types/initiative-templates/_internal/initiativeTemplateEditorTypes.d.ts +2 -0
  242. package/dist/types/initiatives/_internal/initiativeEditorTypes.d.ts +2 -0
  243. package/dist/types/models/createModel.d.ts +10 -0
  244. package/dist/types/models/fetchModelFromItem.d.ts +10 -0
  245. package/dist/types/models/fetchModelResource.d.ts +17 -0
  246. package/dist/types/models/getModel.d.ts +8 -0
  247. package/dist/types/models/getModelBySlug.d.ts +16 -0
  248. package/dist/types/models/updateModel.d.ts +12 -0
  249. package/dist/types/models/upsertModelResource.d.ts +20 -0
  250. package/dist/types/pages/_internal/pageEditorTypes.d.ts +2 -0
  251. package/dist/types/permissions/_internal/checkPlatformVersion.d.ts +14 -0
  252. package/dist/types/permissions/_internal/checkReleaseGating.d.ts +13 -0
  253. package/dist/types/projects/_internal/projectEditorTypes.d.ts +2 -0
  254. package/dist/types/search/_internal/applyWellKnownItemPredicates.d.ts +19 -0
  255. package/dist/types/search/_internal/bboxStringToGeoJSONPolygon.d.ts +8 -0
  256. package/dist/types/search/_internal/constants.d.ts +2 -0
  257. package/dist/types/search/_internal/expandPredicates.d.ts +8 -0
  258. package/dist/types/search/_internal/hubDiscussionsHelpers/postToSearchResult.d.ts +8 -0
  259. package/dist/types/search/_internal/hubDiscussionsHelpers/processPostFilters.d.ts +8 -0
  260. package/dist/types/search/_internal/hubDiscussionsHelpers/processPostOptions.d.ts +8 -0
  261. package/dist/types/search/_internal/hubDiscussionsHelpers/processRelations.d.ts +7 -0
  262. package/dist/types/search/_internal/hubSearchPosts.d.ts +59 -0
  263. package/dist/types/search/_internal/isFamilyExpansionType.d.ts +9 -0
  264. package/dist/types/search/_internal/isWellKnownTypeFilter.d.ts +11 -0
  265. package/dist/types/search/_internal/types.d.ts +15 -0
  266. package/dist/types/search/getCOrgOrEOrgId.d.ts +8 -0
  267. package/dist/types/search/relativeDateToDateRange.d.ts +8 -0
  268. package/dist/types/search/types/ICatalogSearchResponse.d.ts +9 -0
  269. package/dist/types/search/types/IHubSearchResponseHash.d.ts +7 -0
  270. package/dist/types/search/types/ISearchAssociatedContentOptions.d.ts +32 -0
  271. package/dist/types/search/valueToMatchOptions.d.ts +8 -0
  272. package/dist/types/sites/_internal/removeCatalogFromUpgradedSite.d.ts +13 -0
  273. package/dist/types/sites/_internal/removeCatalogV1FromUpgradedSite.d.ts +13 -0
  274. package/dist/types/sites/_internal/siteEditorTypes.d.ts +2 -0
  275. package/dist/types/templates/_internal/templateEditorTypes.d.ts +2 -0
  276. package/dist/types/urls/feature-service-urls.d.ts +13 -0
  277. package/dist/types/users/_internal/userEditorTypes.d.ts +2 -0
  278. package/package.json +1 -1
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.checkReleaseGating = void 0;
4
+ const getPolicyResponseCode_1 = require("./getPolicyResponseCode");
5
+ /**
6
+ * @internal
7
+ * Verify that the policy.releaseAfter and policy.retireAfter requirements are met.
8
+ * These checks only apply in the "production" environment.
9
+ * @param policy
10
+ * @param context
11
+ * @param entity
12
+ * @returns
13
+ */
14
+ function checkReleaseGating(policy, context, _entity) {
15
+ const checks = [];
16
+ // if neither value is specified, we return an empty array
17
+ if (!policy.releaseAfter && !policy.retireAfter) {
18
+ return checks;
19
+ }
20
+ // We only apply release gating in the production environment
21
+ if (context.environment === "production") {
22
+ const now = new Date();
23
+ if (policy.releaseAfter) {
24
+ const releaseDate = new Date(policy.releaseAfter);
25
+ let result = "release-date-not-reached";
26
+ if (now > releaseDate) {
27
+ result = "granted";
28
+ }
29
+ const check = {
30
+ name: `feature released`,
31
+ value: policy.releaseAfter,
32
+ code: getPolicyResponseCode_1.getPolicyResponseCode(result),
33
+ response: result,
34
+ };
35
+ checks.push(check);
36
+ }
37
+ if (policy.retireAfter) {
38
+ const retireDate = new Date(policy.retireAfter);
39
+ let result = "retire-date-not-reached";
40
+ if (now > retireDate) {
41
+ result = "granted";
42
+ }
43
+ const check = {
44
+ name: `feature retired`,
45
+ value: policy.retireAfter,
46
+ code: getPolicyResponseCode_1.getPolicyResponseCode(result),
47
+ response: result,
48
+ };
49
+ checks.push(check);
50
+ }
51
+ }
52
+ else {
53
+ // if not in production, we always grant access
54
+ const check = {
55
+ name: `release gating only applies to production`,
56
+ value: policy.releaseAfter,
57
+ code: getPolicyResponseCode_1.getPolicyResponseCode("granted"),
58
+ response: "granted",
59
+ };
60
+ checks.push(check);
61
+ }
62
+ return checks;
63
+ }
64
+ exports.checkReleaseGating = checkReleaseGating;
65
+ //# sourceMappingURL=checkReleaseGating.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkReleaseGating.js","sourceRoot":"","sources":["../../../../src/permissions/_internal/checkReleaseGating.ts"],"names":[],"mappings":";;;AAIA,mEAAgE;AAEhE;;;;;;;;GAQG;AACH,SAAgB,kBAAkB,CAChC,MAAyB,EACzB,OAAuB,EACvB,OAA6B;IAE7B,MAAM,MAAM,GAAG,EAAoB,CAAC;IAEpC,0DAA0D;IAC1D,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;QAC/C,OAAO,MAAM,CAAC;KACf;IACD,6DAA6D;IAC7D,IAAI,OAAO,CAAC,WAAW,KAAK,YAAY,EAAE;QACxC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QAEvB,IAAI,MAAM,CAAC,YAAY,EAAE;YACvB,MAAM,WAAW,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAClD,IAAI,MAAM,GAAmB,0BAA0B,CAAC;YACxD,IAAI,GAAG,GAAG,WAAW,EAAE;gBACrB,MAAM,GAAG,SAAS,CAAC;aACpB;YACD,MAAM,KAAK,GAAiB;gBAC1B,IAAI,EAAE,kBAAkB;gBACxB,KAAK,EAAE,MAAM,CAAC,YAAY;gBAC1B,IAAI,EAAE,6CAAqB,CAAC,MAAM,CAAC;gBACnC,QAAQ,EAAE,MAAM;aACjB,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACpB;QAED,IAAI,MAAM,CAAC,WAAW,EAAE;YACtB,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAChD,IAAI,MAAM,GAAmB,yBAAyB,CAAC;YACvD,IAAI,GAAG,GAAG,UAAU,EAAE;gBACpB,MAAM,GAAG,SAAS,CAAC;aACpB;YACD,MAAM,KAAK,GAAiB;gBAC1B,IAAI,EAAE,iBAAiB;gBACvB,KAAK,EAAE,MAAM,CAAC,WAAW;gBACzB,IAAI,EAAE,6CAAqB,CAAC,MAAM,CAAC;gBACnC,QAAQ,EAAE,MAAM;aACjB,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACpB;KACF;SAAM;QACL,+CAA+C;QAC/C,MAAM,KAAK,GAAiB;YAC1B,IAAI,EAAE,2CAA2C;YACjD,KAAK,EAAE,MAAM,CAAC,YAAY;YAC1B,IAAI,EAAE,6CAAqB,CAAC,SAAS,CAAC;YACtC,QAAQ,EAAE,SAAS;SACpB,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACpB;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAxDD,gDAwDC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProjectEditorTypes = void 0;
4
+ exports.ProjectEditorTypes = [
5
+ "hub:project:create",
6
+ "hub:project:create2",
7
+ "hub:project:edit",
8
+ "hub:project:metrics",
9
+ "hub:project:settings",
10
+ ];
11
+ //# sourceMappingURL=projectEditorTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectEditorTypes.js","sourceRoot":"","sources":["../../../../src/projects/_internal/projectEditorTypes.ts"],"names":[],"mappings":";;;AAEa,QAAA,kBAAkB,GAAG;IAChC,oBAAoB;IACpB,qBAAqB;IACrB,kBAAkB;IAClB,qBAAqB;IACrB,sBAAsB;CACd,CAAC"}
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.applyWellKnownItemPredicates = void 0;
4
+ const util_1 = require("../../util");
5
+ const get_family_1 = require("../../content/get-family");
6
+ const constants_1 = require("./constants");
7
+ const isWellKnownTypeFilter_1 = require("./isWellKnownTypeFilter");
8
+ const isFamilyExpansionType_1 = require("./isFamilyExpansionType");
9
+ /**
10
+ * Return the predicates for a well-known type
11
+ * @param key
12
+ * @returns
13
+ */
14
+ function lookupTypePredicates(key) {
15
+ return constants_1.WellKnownItemPredicates[key];
16
+ }
17
+ /**
18
+ * @private
19
+ * Convert a Filter Group to expand well-known type filters
20
+ *
21
+ * The purpose of this function is to allow for the use of short-hand
22
+ * names for commonly used, complex queries.
23
+ *
24
+ * It works by looking for filters using the .type property, the value
25
+ * of which is a key in the WellKnownItemFilters hash. If found in the
26
+ * hash, the filters array of the active filterGroup is replaced with the
27
+ * filters specified in the hash.
28
+ *
29
+ * NOTE: Any other properties specified in a filter will be removed
30
+ *
31
+ * Only exported to enable extensive testing
32
+ * @param query
33
+ */
34
+ function applyWellKnownItemPredicates(query) {
35
+ const queryClone = util_1.cloneObject(query);
36
+ // iterate the filters
37
+ queryClone.filters = queryClone.filters.map((filter) => {
38
+ // replace predicates with well-known types
39
+ let replacedPredicates = false;
40
+ filter.predicates = filter.predicates.reduce((acc, predicate) => {
41
+ // if the predicate has a well-known type
42
+ // we replace it with the set of predicates defined
43
+ // for the well-known type
44
+ if (isWellKnownTypeFilter_1.isWellKnownTypeFilter(predicate.type)) {
45
+ const replacements = lookupTypePredicates(predicate.type);
46
+ acc = [...acc, ...replacements];
47
+ replacedPredicates = true;
48
+ }
49
+ else if (
50
+ /**
51
+ * NOTE: as of Nov. 26 2024, we have elected to start using the family types
52
+ * for a type replacement rather than the entire replacement itself. This updates
53
+ * a well-known predicate to only have type values, rather than types, typekeywords, etc etc.
54
+ * We also use the family types to replace the type values. Almost all of our current type
55
+ * replacements include typekeywords only to also retrieve old items -- i.e. having -- we need to be aware
56
+ * that by using family types, we are not including these old items in results in these cases.
57
+ *
58
+ * This clause is primarily used by custom-build catalogs using the new catalog editor.
59
+ *
60
+ * We specifically do not say that we have replaced filters here either as we want to leave the
61
+ * operator as is.
62
+ */
63
+ predicate.type &&
64
+ typeof predicate.type !== "string" &&
65
+ !Array.isArray(predicate.type)) {
66
+ // we have an IMatchOptions object, so we have to iterate over the all/any/not
67
+ Object.keys(predicate.type).forEach((key) => {
68
+ const types = predicate.type[key];
69
+ // try to reduce the array if it is an array
70
+ if (Array.isArray(types)) {
71
+ // for each type, try to replace it with the family types if it is an expansion
72
+ predicate.type[key] = types.reduce((typesAcc, type) => {
73
+ if (isFamilyExpansionType_1.isFamilyExpansionType(type)) {
74
+ // we need the type keyword without the dollar sign
75
+ const family = type.slice(1);
76
+ // get the family types from the given expansion
77
+ const familyTypes = get_family_1.getFamilyTypes(family);
78
+ typesAcc = [...typesAcc, ...familyTypes];
79
+ }
80
+ else {
81
+ typesAcc.push(type);
82
+ }
83
+ return typesAcc;
84
+ }, []);
85
+ }
86
+ });
87
+ // keep the updated predicate
88
+ acc.push(predicate);
89
+ }
90
+ else {
91
+ // this predicate does not have a well-known type
92
+ // so we just keep it
93
+ acc.push(predicate);
94
+ }
95
+ return acc;
96
+ }, []);
97
+ if (replacedPredicates) {
98
+ // Any filter who's predicates were replaced with
99
+ // well-known predicates, needs to use "OR" to ensure
100
+ // correct query logic
101
+ filter.operation = "OR";
102
+ }
103
+ return filter;
104
+ });
105
+ return queryClone;
106
+ }
107
+ exports.applyWellKnownItemPredicates = applyWellKnownItemPredicates;
108
+ //# sourceMappingURL=applyWellKnownItemPredicates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applyWellKnownItemPredicates.js","sourceRoot":"","sources":["../../../../src/search/_internal/applyWellKnownItemPredicates.ts"],"names":[],"mappings":";;;AACA,qCAAyC;AACzC,yDAA0D;AAE1D,2CAAsD;AACtD,mEAAgE;AAChE,mEAAgE;AAEhE;;;;GAIG;AACH,SAAS,oBAAoB,CAC3B,GAAyC;IAEzC,OAAO,mCAAuB,CAAC,GAAG,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,4BAA4B,CAAC,KAAa;IACxD,MAAM,UAAU,GAAG,kBAAW,CAAC,KAAK,CAAC,CAAC;IACtC,sBAAsB;IACtB,UAAU,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACrD,2CAA2C;QAC3C,IAAI,kBAAkB,GAAG,KAAK,CAAC;QAC/B,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAC1C,CAAC,GAAiB,EAAE,SAAS,EAAE,EAAE;YAC/B,yCAAyC;YACzC,mDAAmD;YACnD,0BAA0B;YAC1B,IAAI,6CAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;gBACzC,MAAM,YAAY,GAAG,oBAAoB,CACvC,SAAS,CAAC,IAA4C,CACvD,CAAC;gBACF,GAAG,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,YAAY,CAAC,CAAC;gBAChC,kBAAkB,GAAG,IAAI,CAAC;aAC3B;iBAAM;YACL;;;;;;;;;;;;eAYG;YACH,SAAS,CAAC,IAAI;gBACd,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ;gBAClC,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,EAC9B;gBACA,8EAA8E;gBAC9E,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;oBAC1C,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAElC,4CAA4C;oBAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;wBACxB,+EAA+E;wBAC/E,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAChC,CAAC,QAAkB,EAAE,IAAY,EAAE,EAAE;4BACnC,IAAI,6CAAqB,CAAC,IAAI,CAAC,EAAE;gCAC/B,mDAAmD;gCACnD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gCAC7B,gDAAgD;gCAChD,MAAM,WAAW,GAAG,2BAAc,CAAC,MAAmB,CAAC,CAAC;gCACxD,QAAQ,GAAG,CAAC,GAAG,QAAQ,EAAE,GAAG,WAAW,CAAC,CAAC;6BAC1C;iCAAM;gCACL,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;6BACrB;4BACD,OAAO,QAAQ,CAAC;wBAClB,CAAC,EACD,EAAE,CACH,CAAC;qBACH;gBACH,CAAC,CAAC,CAAC;gBAEH,6BAA6B;gBAC7B,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACrB;iBAAM;gBACL,iDAAiD;gBACjD,qBAAqB;gBACrB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACrB;YACD,OAAO,GAAG,CAAC;QACb,CAAC,EACD,EAAE,CACH,CAAC;QACF,IAAI,kBAAkB,EAAE;YACtB,iDAAiD;YACjD,qDAAqD;YACrD,sBAAsB;YACtB,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;SACzB;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,OAAO,UAAU,CAAC;AACpB,CAAC;AAjFD,oEAiFC"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.bboxStringToGeoJSONPolygon = void 0;
4
+ /**
5
+ * Given a bounding box string, e.g. "126.2274169922485, -42.559149812106845, -25.647583007805757, 83.1100826092665",
6
+ * convert it into a geojson Polygon object
7
+ * @param bbox The bounding box string
8
+ * @returns a geojson Polygon object derived from the given bounding box string
9
+ */
10
+ function bboxStringToGeoJSONPolygon(bbox) {
11
+ const [lon1, lat1, lon2, lat2] = bbox
12
+ .split(",")
13
+ .map((vertex) => parseFloat(vertex.trim()));
14
+ const minLon = Math.min(lon1, lon2);
15
+ const minLat = Math.min(lat1, lat2);
16
+ const maxLon = Math.max(lon1, lon2);
17
+ const maxLat = Math.max(lat1, lat2);
18
+ return {
19
+ type: "Polygon",
20
+ coordinates: [
21
+ [
22
+ [minLon, minLat],
23
+ [maxLon, minLat],
24
+ [maxLon, maxLat],
25
+ [minLon, maxLat],
26
+ [minLon, minLat],
27
+ ],
28
+ ],
29
+ };
30
+ }
31
+ exports.bboxStringToGeoJSONPolygon = bboxStringToGeoJSONPolygon;
32
+ //# sourceMappingURL=bboxStringToGeoJSONPolygon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bboxStringToGeoJSONPolygon.js","sourceRoot":"","sources":["../../../../src/search/_internal/bboxStringToGeoJSONPolygon.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AACH,SAAgB,0BAA0B,CAAC,IAAY;IACrD,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI;SAClC,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACpC,OAAO;QACL,IAAI,EAAE,SAAS;QACf,WAAW,EAAE;YACX;gBACE,CAAC,MAAM,EAAE,MAAM,CAAC;gBAChB,CAAC,MAAM,EAAE,MAAM,CAAC;gBAChB,CAAC,MAAM,EAAE,MAAM,CAAC;gBAChB,CAAC,MAAM,EAAE,MAAM,CAAC;gBAChB,CAAC,MAAM,EAAE,MAAM,CAAC;aACjB;SACF;KACF,CAAC;AACJ,CAAC;AApBD,gEAoBC"}
@@ -0,0 +1,148 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WellKnownItemPredicates = void 0;
4
+ exports.WellKnownItemPredicates = {
5
+ $application: [
6
+ {
7
+ type: {
8
+ any: [
9
+ "Web Mapping Application",
10
+ "Application",
11
+ "Insights",
12
+ "Web Experience",
13
+ ],
14
+ not: ["Insights Theme", "Insights Model"],
15
+ },
16
+ typekeywords: {
17
+ not: ["hubSite", "Story Map"],
18
+ },
19
+ },
20
+ {
21
+ type: "Web Mapping Experience",
22
+ typekeywords: "EXB Experience",
23
+ },
24
+ ],
25
+ $dashboard: [
26
+ {
27
+ type: {
28
+ any: ["Dashboard"],
29
+ not: ["Operation View"],
30
+ },
31
+ typekeywords: {
32
+ not: ["Extension", "ArcGIS Operation View"],
33
+ },
34
+ },
35
+ ],
36
+ $dataset: [
37
+ {
38
+ type: {
39
+ any: [
40
+ "Scene Service",
41
+ "Feature Collection",
42
+ "Route Layer",
43
+ "Layer",
44
+ "Explorer Layer",
45
+ "Tile Package",
46
+ "Vector Tile Package",
47
+ "Scene Package",
48
+ "Layer Package",
49
+ "Feature Service",
50
+ "Stream Service",
51
+ "Map Service",
52
+ "Vector Tile Service",
53
+ "Image Service",
54
+ "WMS",
55
+ "WFS",
56
+ "WMTS",
57
+ "KML",
58
+ "KML Collection",
59
+ "Globe Service",
60
+ "CSV",
61
+ "Shapefile",
62
+ "GeoJson",
63
+ "Service Definition",
64
+ "File Geodatabase",
65
+ "CAD Drawing",
66
+ "Relational Database Connection",
67
+ ],
68
+ not: ["Web Mapping Application", "Geodata Service"],
69
+ },
70
+ },
71
+ {
72
+ typekeywords: ["OGC", "Geodata Service"],
73
+ },
74
+ ],
75
+ $document: [
76
+ {
77
+ type: [
78
+ "PDF",
79
+ "Microsoft Excel",
80
+ "Microsoft Word",
81
+ "Microsoft Powerpoint",
82
+ "iWork Keynote",
83
+ "iWork Pages",
84
+ "iWork Numbers",
85
+ "Visio Document",
86
+ "Document Link",
87
+ ],
88
+ },
89
+ ],
90
+ $initiative: [
91
+ {
92
+ type: "Hub Initiative",
93
+ typekeywords: "hubInitiativeV2",
94
+ },
95
+ ],
96
+ $experience: [
97
+ {
98
+ type: "Web Experience",
99
+ },
100
+ ],
101
+ $feedback: [
102
+ {
103
+ type: "Form",
104
+ },
105
+ ],
106
+ $page: [
107
+ {
108
+ typekeywords: "hubPage",
109
+ },
110
+ ],
111
+ $site: [
112
+ {
113
+ type: ["Hub Site Application", "Site Application"],
114
+ },
115
+ ],
116
+ $storymap: [
117
+ {
118
+ type: "Storymap",
119
+ },
120
+ {
121
+ type: "Web Mapping Application",
122
+ typekeywords: "Story Map",
123
+ },
124
+ ],
125
+ $template: [
126
+ {
127
+ type: [
128
+ "Web Mapping Application",
129
+ "Hub Initiative",
130
+ "Hub Initiative Template",
131
+ "Solution",
132
+ ],
133
+ typekeywords: {
134
+ any: ["hubInitiativeTemplate", "hubSolutionTemplate", "Template"],
135
+ not: "Deployed",
136
+ },
137
+ },
138
+ ],
139
+ $webmap: [
140
+ {
141
+ type: {
142
+ any: ["Web Map", "Web Scene"],
143
+ not: "Web Mapping Application",
144
+ },
145
+ },
146
+ ],
147
+ };
148
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/search/_internal/constants.ts"],"names":[],"mappings":";;;AAEa,QAAA,uBAAuB,GAA6B;IAC/D,YAAY,EAAE;QACZ;YACE,IAAI,EAAE;gBACJ,GAAG,EAAE;oBACH,yBAAyB;oBACzB,aAAa;oBACb,UAAU;oBACV,gBAAgB;iBACjB;gBACD,GAAG,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;aAC1C;YACD,YAAY,EAAE;gBACZ,GAAG,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC;aAC9B;SACF;QACD;YACE,IAAI,EAAE,wBAAwB;YAC9B,YAAY,EAAE,gBAAgB;SAC/B;KACF;IACD,UAAU,EAAE;QACV;YACE,IAAI,EAAE;gBACJ,GAAG,EAAE,CAAC,WAAW,CAAC;gBAClB,GAAG,EAAE,CAAC,gBAAgB,CAAC;aACxB;YACD,YAAY,EAAE;gBACZ,GAAG,EAAE,CAAC,WAAW,EAAE,uBAAuB,CAAC;aAC5C;SACF;KACF;IACD,QAAQ,EAAE;QACR;YACE,IAAI,EAAE;gBACJ,GAAG,EAAE;oBACH,eAAe;oBACf,oBAAoB;oBACpB,aAAa;oBACb,OAAO;oBACP,gBAAgB;oBAChB,cAAc;oBACd,qBAAqB;oBACrB,eAAe;oBACf,eAAe;oBACf,iBAAiB;oBACjB,gBAAgB;oBAChB,aAAa;oBACb,qBAAqB;oBACrB,eAAe;oBACf,KAAK;oBACL,KAAK;oBACL,MAAM;oBACN,KAAK;oBACL,gBAAgB;oBAChB,eAAe;oBACf,KAAK;oBACL,WAAW;oBACX,SAAS;oBACT,oBAAoB;oBACpB,kBAAkB;oBAClB,aAAa;oBACb,gCAAgC;iBACjC;gBACD,GAAG,EAAE,CAAC,yBAAyB,EAAE,iBAAiB,CAAC;aACpD;SACF;QACD;YACE,YAAY,EAAE,CAAC,KAAK,EAAE,iBAAiB,CAAC;SACzC;KACF;IACD,SAAS,EAAE;QACT;YACE,IAAI,EAAE;gBACJ,KAAK;gBACL,iBAAiB;gBACjB,gBAAgB;gBAChB,sBAAsB;gBACtB,eAAe;gBACf,aAAa;gBACb,eAAe;gBACf,gBAAgB;gBAChB,eAAe;aAChB;SACF;KACF;IACD,WAAW,EAAE;QACX;YACE,IAAI,EAAE,gBAAgB;YACtB,YAAY,EAAE,iBAAiB;SAChC;KACF;IACD,WAAW,EAAE;QACX;YACE,IAAI,EAAE,gBAAgB;SACvB;KACF;IACD,SAAS,EAAE;QACT;YACE,IAAI,EAAE,MAAM;SACb;KACF;IACD,KAAK,EAAE;QACL;YACE,YAAY,EAAE,SAAS;SACxB;KACF;IACD,KAAK,EAAE;QACL;YACE,IAAI,EAAE,CAAC,sBAAsB,EAAE,kBAAkB,CAAC;SACnD;KACF;IACD,SAAS,EAAE;QACT;YACE,IAAI,EAAE,UAAU;SACjB;QACD;YACE,IAAI,EAAE,yBAAyB;YAC/B,YAAY,EAAE,WAAW;SAC1B;KACF;IACD,SAAS,EAAE;QACT;YACE,IAAI,EAAE;gBACJ,yBAAyB;gBACzB,gBAAgB;gBAChB,yBAAyB;gBACzB,UAAU;aACX;YACD,YAAY,EAAE;gBACZ,GAAG,EAAE,CAAC,uBAAuB,EAAE,qBAAqB,EAAE,UAAU,CAAC;gBACjE,GAAG,EAAE,UAAU;aAChB;SACF;KACF;IACD,OAAO,EAAE;QACP;YACE,IAAI,EAAE;gBACJ,GAAG,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC;gBAC7B,GAAG,EAAE,yBAAyB;aAC/B;SACF;KACF;CACF,CAAC"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.expandPredicates = void 0;
4
+ const util_1 = require("../../util");
5
+ const expandPredicate_1 = require("./expandPredicate");
6
+ /**
7
+ * Expand the predicates in a query without applying
8
+ * the well-known type expansions
9
+ * @param query
10
+ * @returns
11
+ */
12
+ function expandPredicates(query) {
13
+ const clonedQuery = util_1.cloneObject(query);
14
+ clonedQuery.filters = clonedQuery.filters.map((filter) => {
15
+ filter.predicates = filter.predicates.map(expandPredicate_1.expandPredicate);
16
+ return filter;
17
+ });
18
+ return clonedQuery;
19
+ }
20
+ exports.expandPredicates = expandPredicates;
21
+ //# sourceMappingURL=expandPredicates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expandPredicates.js","sourceRoot":"","sources":["../../../../src/search/_internal/expandPredicates.ts"],"names":[],"mappings":";;;AAAA,qCAAyC;AAEzC,uDAAoD;AAEpD;;;;;GAKG;AACH,SAAgB,gBAAgB,CAAC,KAAa;IAC5C,MAAM,WAAW,GAAG,kBAAW,CAAC,KAAK,CAAC,CAAC;IACvC,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACvD,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,iCAAe,CAAC,CAAC;QAC3D,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IACH,OAAO,WAAW,CAAC;AACrB,CAAC;AAPD,4CAOC"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.postToSearchResult = void 0;
4
+ /**
5
+ * Resolves an IHubSearchResult for the given IPost record
6
+ * @param post An IPost record
7
+ * @returns a IHubSearchResult for the given IPost record
8
+ */
9
+ function postToSearchResult(post) {
10
+ return {
11
+ access: null,
12
+ createdDate: new Date(post.createdAt),
13
+ createdDateSource: "post.createdAt",
14
+ family: "post",
15
+ id: post.id,
16
+ // Per Tom's advice, deferring supporting locations for posts for now. There are
17
+ // some known typing issues related to the `IHubLocation.geometries` property at
18
+ // this time. We should revisit this once `IHubLocation.geometries` type if fixed
19
+ // and make sure to support translating GeoJSON GeometryCollections appropriately
20
+ location: { type: "none" },
21
+ name: post.title,
22
+ owner: post.creator,
23
+ rawResult: post,
24
+ source: "",
25
+ summary: post.body,
26
+ type: "Post",
27
+ updatedDate: new Date(post.updatedAt),
28
+ updatedDateSource: "post.updatedAt",
29
+ };
30
+ }
31
+ exports.postToSearchResult = postToSearchResult;
32
+ //# sourceMappingURL=postToSearchResult.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postToSearchResult.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubDiscussionsHelpers/postToSearchResult.ts"],"names":[],"mappings":";;;AAGA;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,IAAW;IAC5C,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;QACrC,iBAAiB,EAAE,gBAAgB;QACnC,MAAM,EAAE,MAAM;QACd,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,gFAAgF;QAChF,gFAAgF;QAChF,iFAAiF;QACjF,iFAAiF;QACjF,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QAC1B,IAAI,EAAE,IAAI,CAAC,KAAK;QAChB,KAAK,EAAE,IAAI,CAAC,OAAO;QACnB,SAAS,EAAE,IAAI;QACf,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,IAAI,CAAC,IAAI;QAClB,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;QACrC,iBAAiB,EAAE,gBAAgB;KACpC,CAAC;AACJ,CAAC;AArBD,gDAqBC"}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.processPostFilters = void 0;
4
+ const types_1 = require("../../../discussions/api/types");
5
+ const bboxStringToGeoJSONPolygon_1 = require("../bboxStringToGeoJSONPolygon");
6
+ const toEnumConverters_1 = require("../hubEventsHelpers/toEnumConverters");
7
+ const processChannelFilters_1 = require("./processChannelFilters");
8
+ /**
9
+ * Builds a Partial<ISearchPosts> given an Array of IFilter objects
10
+ * @param filters An Array of IFilter
11
+ * @returns A Partial<ISearchPosts> for the given Array of IFilter objects
12
+ */
13
+ function processPostFilters(filters) {
14
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
15
+ const flattenedFilters = processChannelFilters_1.flattenFilters(filters);
16
+ const processedFilters = {};
17
+ // access
18
+ if ((_a = flattenedFilters.access) === null || _a === void 0 ? void 0 : _a.length) {
19
+ processedFilters.access = toEnumConverters_1.toEnums(flattenedFilters.access, types_1.SharingAccess);
20
+ }
21
+ // bbox
22
+ if ((_b = flattenedFilters.bbox) === null || _b === void 0 ? void 0 : _b.length) {
23
+ // for now, just map bbox to the `geometry` filter. a `featureGeometry` filter
24
+ // also exists, but we cannot use it in combination with `geometry` because
25
+ // the API will `AND` those conditions together. if we desire the ability to
26
+ // match posts whose `geometry` OR `featureGeometry` interesect the provided bbox,
27
+ // we will need a new API parameter, and update this mapping to use it.
28
+ const polygon = bboxStringToGeoJSONPolygon_1.bboxStringToGeoJSONPolygon(flattenedFilters.bbox[0]);
29
+ processedFilters.geometry = polygon;
30
+ }
31
+ // `term` searches against both `title` and `body` so
32
+ // ignore `title` and `body` filters when `term` is provied
33
+ if ((_c = flattenedFilters.term) === null || _c === void 0 ? void 0 : _c.length) {
34
+ processedFilters.term = flattenedFilters.term[0];
35
+ }
36
+ else {
37
+ // title
38
+ if ((_d = flattenedFilters.title) === null || _d === void 0 ? void 0 : _d.length) {
39
+ processedFilters.title = flattenedFilters.title[0];
40
+ }
41
+ // body
42
+ if ((_e = flattenedFilters.body) === null || _e === void 0 ? void 0 : _e.length) {
43
+ processedFilters.body = flattenedFilters.body[0];
44
+ }
45
+ }
46
+ // channels
47
+ if ((_f = flattenedFilters.channel) === null || _f === void 0 ? void 0 : _f.length) {
48
+ processedFilters.channels = flattenedFilters.channel;
49
+ }
50
+ // creator
51
+ if ((_g = flattenedFilters.owner) === null || _g === void 0 ? void 0 : _g.length) {
52
+ processedFilters.creator = flattenedFilters.owner[0];
53
+ }
54
+ // discussion
55
+ if ((_h = flattenedFilters.discussion) === null || _h === void 0 ? void 0 : _h.length) {
56
+ processedFilters.discussion = flattenedFilters.discussion[0];
57
+ }
58
+ // editor
59
+ if ((_j = flattenedFilters.editor) === null || _j === void 0 ? void 0 : _j.length) {
60
+ processedFilters.editor = flattenedFilters.editor[0];
61
+ }
62
+ // status
63
+ if ((_k = flattenedFilters.status) === null || _k === void 0 ? void 0 : _k.length) {
64
+ processedFilters.status = toEnumConverters_1.toEnums(flattenedFilters.status, types_1.PostStatus);
65
+ }
66
+ // parents
67
+ if (Array.isArray(flattenedFilters.parentId)) {
68
+ processedFilters.parents = flattenedFilters.parentId;
69
+ }
70
+ // groups
71
+ if ((_l = flattenedFilters.groups) === null || _l === void 0 ? void 0 : _l.length) {
72
+ processedFilters.groups = flattenedFilters.groups;
73
+ }
74
+ // post type
75
+ if ((_m = flattenedFilters.postType) === null || _m === void 0 ? void 0 : _m.length) {
76
+ processedFilters.postType = toEnumConverters_1.toEnum(flattenedFilters.postType[0], types_1.PostType);
77
+ }
78
+ // created
79
+ if ((_o = flattenedFilters.created) === null || _o === void 0 ? void 0 : _o.length) {
80
+ processedFilters.createdBefore = new Date(flattenedFilters.created[0].to);
81
+ processedFilters.createdAfter = new Date(flattenedFilters.created[0].from);
82
+ }
83
+ // modified
84
+ if ((_p = flattenedFilters.modified) === null || _p === void 0 ? void 0 : _p.length) {
85
+ processedFilters.updatedBefore = new Date(flattenedFilters.modified[0].to);
86
+ processedFilters.updatedAfter = new Date(flattenedFilters.modified[0].from);
87
+ }
88
+ return processedFilters;
89
+ }
90
+ exports.processPostFilters = processPostFilters;
91
+ //# sourceMappingURL=processPostFilters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processPostFilters.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubDiscussionsHelpers/processPostFilters.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.processPostOptions = void 0;
4
+ const types_1 = require("../../../discussions/api/types");
5
+ /**
6
+ * A map of HubSearchPostSortFields to PostSort
7
+ */
8
+ const SORT_BY_MAP = {
9
+ body: types_1.PostSort.BODY,
10
+ channelId: types_1.PostSort.CHANNEL_ID,
11
+ created: types_1.PostSort.CREATED_AT,
12
+ modified: types_1.PostSort.UPDATED_AT,
13
+ owner: types_1.PostSort.CREATOR,
14
+ discussion: types_1.PostSort.DISCUSSION,
15
+ editor: types_1.PostSort.EDITOR,
16
+ id: types_1.PostSort.ID,
17
+ parentId: types_1.PostSort.PARENT_ID,
18
+ status: types_1.PostSort.STATUS,
19
+ title: types_1.PostSort.TITLE,
20
+ };
21
+ const SORT_ORDER_MAP = {
22
+ desc: types_1.SortOrder.DESC,
23
+ asc: types_1.SortOrder.ASC,
24
+ };
25
+ /**
26
+ * Builds a Partial<ISearchPosts> for the given IHubSearchOptions
27
+ * @param options An IHubSearchOptions object
28
+ * @returns a Partial<ISearchPosts> for the given IHubSearchOptions
29
+ */
30
+ function processPostOptions(options) {
31
+ const processedOptions = {};
32
+ // num
33
+ if (options.num > 0) {
34
+ processedOptions.num = options.num;
35
+ }
36
+ // start
37
+ if (options.start > 1) {
38
+ processedOptions.start = options.start;
39
+ }
40
+ // sort order
41
+ if (options.sortOrder && SORT_ORDER_MAP[options.sortOrder]) {
42
+ processedOptions.sortOrder = SORT_ORDER_MAP[options.sortOrder];
43
+ }
44
+ // sort field
45
+ const sortField = SORT_BY_MAP[options.sortField];
46
+ if (sortField) {
47
+ processedOptions.sortBy = sortField;
48
+ }
49
+ return processedOptions;
50
+ }
51
+ exports.processPostOptions = processPostOptions;
52
+ //# sourceMappingURL=processPostOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processPostOptions.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubDiscussionsHelpers/processPostOptions.ts"],"names":[],"mappings":";;;AAAA,0DAIwC;AAmBxC;;GAEG;AACH,MAAM,WAAW,GAA8C;IAC7D,IAAI,EAAE,gBAAQ,CAAC,IAAI;IACnB,SAAS,EAAE,gBAAQ,CAAC,UAAU;IAC9B,OAAO,EAAE,gBAAQ,CAAC,UAAU;IAC5B,QAAQ,EAAE,gBAAQ,CAAC,UAAU;IAC7B,KAAK,EAAE,gBAAQ,CAAC,OAAO;IACvB,UAAU,EAAE,gBAAQ,CAAC,UAAU;IAC/B,MAAM,EAAE,gBAAQ,CAAC,MAAM;IACvB,EAAE,EAAE,gBAAQ,CAAC,EAAE;IACf,QAAQ,EAAE,gBAAQ,CAAC,SAAS;IAC5B,MAAM,EAAE,gBAAQ,CAAC,MAAM;IACvB,KAAK,EAAE,gBAAQ,CAAC,KAAK;CACtB,CAAC;AAEF,MAAM,cAAc,GAAsC;IACxD,IAAI,EAAE,iBAAS,CAAC,IAAI;IACpB,GAAG,EAAE,iBAAS,CAAC,GAAG;CACnB,CAAC;AAEF;;;;GAIG;AACH,SAAgB,kBAAkB,CAChC,OAA0B;IAE1B,MAAM,gBAAgB,GAA0B,EAAE,CAAC;IACnD,MAAM;IACN,IAAI,OAAO,CAAC,GAAG,GAAG,CAAC,EAAE;QACnB,gBAAgB,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;KACpC;IAED,QAAQ;IACR,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,EAAE;QACrB,gBAAgB,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACxC;IAED,aAAa;IACb,IAAI,OAAO,CAAC,SAAS,IAAI,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC1D,gBAAgB,CAAC,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;KAChE;IAED,aAAa;IACb,MAAM,SAAS,GACb,WAAW,CAAC,OAAO,CAAC,SAAoC,CAAC,CAAC;IAC5D,IAAI,SAAS,EAAE;QACb,gBAAgB,CAAC,MAAM,GAAG,SAAS,CAAC;KACrC;IAED,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AA3BD,gDA2BC"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.processRelations = void 0;
4
+ const types_1 = require("../../../discussions/api/types");
5
+ const RELATIONS_MAP = {
6
+ channel: types_1.PostRelation.CHANNEL,
7
+ channelAcl: types_1.PostRelation.CHANNEL_ACL,
8
+ parent: types_1.PostRelation.PARENT,
9
+ reactions: types_1.PostRelation.REACTIONS,
10
+ replies: types_1.PostRelation.REPLIES,
11
+ replyCount: types_1.PostRelation.REPLY_COUNT,
12
+ };
13
+ /**
14
+ * Convert an array of `include` into an array of PostRelation enum values.
15
+ * @param relations array of include (e.g. ["channel", "replies"]).
16
+ * @returns PostRelation[] with order of first appearance preserved and duplicates removed.
17
+ */
18
+ function processRelations(relations = []) {
19
+ const results = [];
20
+ for (const rel of relations) {
21
+ const mapped = RELATIONS_MAP[rel];
22
+ if (mapped && !results.includes(mapped)) {
23
+ results.push(mapped);
24
+ }
25
+ }
26
+ return results;
27
+ }
28
+ exports.processRelations = processRelations;
29
+ //# sourceMappingURL=processRelations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processRelations.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubDiscussionsHelpers/processRelations.ts"],"names":[],"mappings":";;;AAAA,0DAA8D;AAE9D,MAAM,aAAa,GAAiC;IAClD,OAAO,EAAE,oBAAY,CAAC,OAAO;IAC7B,UAAU,EAAE,oBAAY,CAAC,WAAW;IACpC,MAAM,EAAE,oBAAY,CAAC,MAAM;IAC3B,SAAS,EAAE,oBAAY,CAAC,SAAS;IACjC,OAAO,EAAE,oBAAY,CAAC,OAAO;IAC7B,UAAU,EAAE,oBAAY,CAAC,WAAW;CACrC,CAAC;AAEF;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,YAAsB,EAAE;IACvD,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE;QAC3B,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;YACvC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACtB;KACF;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AATD,4CASC"}