@esri/hub-common 9.37.0 → 9.40.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (256) hide show
  1. package/dist/es2017/content/HubContent.js +68 -0
  2. package/dist/es2017/content/HubContent.js.map +1 -0
  3. package/dist/es2017/content/_internal.js +83 -0
  4. package/dist/es2017/content/_internal.js.map +1 -1
  5. package/dist/es2017/content/compose.js +7 -11
  6. package/dist/es2017/content/compose.js.map +1 -1
  7. package/dist/es2017/content/index.js +1 -0
  8. package/dist/es2017/content/index.js.map +1 -1
  9. package/dist/es2017/core/types/IHubContent.js +7 -0
  10. package/dist/es2017/core/types/IHubContent.js.map +1 -1
  11. package/dist/es2017/groups/HubGroups.js +63 -0
  12. package/dist/es2017/groups/HubGroups.js.map +1 -0
  13. package/dist/es2017/groups/_internal/enrichments.js +99 -0
  14. package/dist/es2017/groups/_internal/enrichments.js.map +1 -0
  15. package/dist/es2017/groups/index.js +2 -0
  16. package/dist/es2017/groups/index.js.map +1 -1
  17. package/dist/es2017/groups/types/IGroupMembershipSummary.js +1 -0
  18. package/dist/es2017/groups/types/IGroupMembershipSummary.js.map +1 -0
  19. package/dist/es2017/groups/types/index.js +2 -0
  20. package/dist/es2017/groups/types/index.js.map +1 -0
  21. package/dist/es2017/index.js +2 -0
  22. package/dist/es2017/index.js.map +1 -1
  23. package/dist/es2017/items/_enrichments.js +30 -1
  24. package/dist/es2017/items/_enrichments.js.map +1 -1
  25. package/dist/es2017/org/fetch-org.js +21 -0
  26. package/dist/es2017/org/fetch-org.js.map +1 -0
  27. package/dist/es2017/org/index.js +2 -0
  28. package/dist/es2017/org/index.js.map +1 -0
  29. package/dist/es2017/pages/HubPages.js +61 -0
  30. package/dist/es2017/pages/HubPages.js.map +1 -0
  31. package/dist/es2017/pages/index.js +2 -0
  32. package/dist/es2017/pages/index.js.map +1 -0
  33. package/dist/es2017/projects/HubProjects.js +56 -1
  34. package/dist/es2017/projects/HubProjects.js.map +1 -1
  35. package/dist/es2017/search/_internal/hubSearchItems.js +191 -0
  36. package/dist/es2017/search/_internal/hubSearchItems.js.map +1 -0
  37. package/dist/es2017/search/_internal/index.js +3 -0
  38. package/dist/es2017/search/_internal/index.js.map +1 -1
  39. package/dist/es2017/search/_internal/parseInclude.js +27 -0
  40. package/dist/es2017/search/_internal/parseInclude.js.map +1 -0
  41. package/dist/es2017/search/_internal/portalSearchGroups.js +100 -0
  42. package/dist/es2017/search/_internal/portalSearchGroups.js.map +1 -0
  43. package/dist/es2017/search/_internal/portalSearchItems.js +109 -0
  44. package/dist/es2017/search/_internal/portalSearchItems.js.map +1 -0
  45. package/dist/es2017/search/_searchContent.js +3 -0
  46. package/dist/es2017/search/_searchContent.js.map +1 -1
  47. package/dist/es2017/search/_searchGroups.js +3 -1
  48. package/dist/es2017/search/_searchGroups.js.map +1 -1
  49. package/dist/es2017/search/_searchUsers.js +3 -1
  50. package/dist/es2017/search/_searchUsers.js.map +1 -1
  51. package/dist/es2017/search/collectionState.js +1 -1
  52. package/dist/es2017/search/collectionState.js.map +1 -1
  53. package/dist/es2017/search/content-utils.js +36 -4
  54. package/dist/es2017/search/content-utils.js.map +1 -1
  55. package/dist/es2017/search/convertCatalog.js +14 -5
  56. package/dist/es2017/search/convertCatalog.js.map +1 -1
  57. package/dist/es2017/search/filter-utils.js +18 -3
  58. package/dist/es2017/search/filter-utils.js.map +1 -1
  59. package/dist/es2017/search/group-utils.js +8 -1
  60. package/dist/es2017/search/group-utils.js.map +1 -1
  61. package/dist/es2017/search/hubSearch.js +48 -0
  62. package/dist/es2017/search/hubSearch.js.map +1 -0
  63. package/dist/es2017/search/index.js +1 -0
  64. package/dist/es2017/search/index.js.map +1 -1
  65. package/dist/es2017/search/user-utils.js +8 -1
  66. package/dist/es2017/search/user-utils.js.map +1 -1
  67. package/dist/es2017/search/utils.js +5 -0
  68. package/dist/es2017/search/utils.js.map +1 -1
  69. package/dist/es2017/sites/HubSites.js +55 -1
  70. package/dist/es2017/sites/HubSites.js.map +1 -1
  71. package/dist/es2017/urls/getGroupHomeUrl.js +12 -0
  72. package/dist/es2017/urls/getGroupHomeUrl.js.map +1 -0
  73. package/dist/es2017/urls/index.js +1 -0
  74. package/dist/es2017/urls/index.js.map +1 -1
  75. package/dist/esm/content/HubContent.js +75 -0
  76. package/dist/esm/content/HubContent.js.map +1 -0
  77. package/dist/esm/content/_internal.js +85 -0
  78. package/dist/esm/content/_internal.js.map +1 -1
  79. package/dist/esm/content/compose.js +5 -11
  80. package/dist/esm/content/compose.js.map +1 -1
  81. package/dist/esm/content/index.js +1 -0
  82. package/dist/esm/content/index.js.map +1 -1
  83. package/dist/esm/core/types/IHubContent.js +7 -0
  84. package/dist/esm/core/types/IHubContent.js.map +1 -1
  85. package/dist/esm/groups/HubGroups.js +70 -0
  86. package/dist/esm/groups/HubGroups.js.map +1 -0
  87. package/dist/esm/groups/_internal/enrichments.js +100 -0
  88. package/dist/esm/groups/_internal/enrichments.js.map +1 -0
  89. package/dist/esm/groups/index.js +2 -0
  90. package/dist/esm/groups/index.js.map +1 -1
  91. package/dist/esm/groups/types/IGroupMembershipSummary.js +1 -0
  92. package/dist/esm/groups/types/IGroupMembershipSummary.js.map +1 -0
  93. package/dist/esm/groups/types/index.js +2 -0
  94. package/dist/esm/groups/types/index.js.map +1 -0
  95. package/dist/esm/index.js +2 -0
  96. package/dist/esm/index.js.map +1 -1
  97. package/dist/esm/items/_enrichments.js +30 -1
  98. package/dist/esm/items/_enrichments.js.map +1 -1
  99. package/dist/esm/org/fetch-org.js +22 -0
  100. package/dist/esm/org/fetch-org.js.map +1 -0
  101. package/dist/esm/org/index.js +2 -0
  102. package/dist/esm/org/index.js.map +1 -0
  103. package/dist/esm/pages/HubPages.js +68 -0
  104. package/dist/esm/pages/HubPages.js.map +1 -0
  105. package/dist/esm/pages/index.js +2 -0
  106. package/dist/esm/pages/index.js.map +1 -0
  107. package/dist/esm/projects/HubProjects.js +63 -2
  108. package/dist/esm/projects/HubProjects.js.map +1 -1
  109. package/dist/esm/search/_internal/hubSearchItems.js +204 -0
  110. package/dist/esm/search/_internal/hubSearchItems.js.map +1 -0
  111. package/dist/esm/search/_internal/index.js +3 -0
  112. package/dist/esm/search/_internal/index.js.map +1 -1
  113. package/dist/esm/search/_internal/parseInclude.js +27 -0
  114. package/dist/esm/search/_internal/parseInclude.js.map +1 -0
  115. package/dist/esm/search/_internal/portalSearchGroups.js +114 -0
  116. package/dist/esm/search/_internal/portalSearchGroups.js.map +1 -0
  117. package/dist/esm/search/_internal/portalSearchItems.js +123 -0
  118. package/dist/esm/search/_internal/portalSearchItems.js.map +1 -0
  119. package/dist/esm/search/_searchContent.js +3 -0
  120. package/dist/esm/search/_searchContent.js.map +1 -1
  121. package/dist/esm/search/_searchGroups.js +3 -1
  122. package/dist/esm/search/_searchGroups.js.map +1 -1
  123. package/dist/esm/search/_searchUsers.js +3 -1
  124. package/dist/esm/search/_searchUsers.js.map +1 -1
  125. package/dist/esm/search/collectionState.js +1 -1
  126. package/dist/esm/search/collectionState.js.map +1 -1
  127. package/dist/esm/search/content-utils.js +38 -4
  128. package/dist/esm/search/content-utils.js.map +1 -1
  129. package/dist/esm/search/convertCatalog.js +14 -5
  130. package/dist/esm/search/convertCatalog.js.map +1 -1
  131. package/dist/esm/search/filter-utils.js +16 -3
  132. package/dist/esm/search/filter-utils.js.map +1 -1
  133. package/dist/esm/search/group-utils.js +8 -1
  134. package/dist/esm/search/group-utils.js.map +1 -1
  135. package/dist/esm/search/hubSearch.js +52 -0
  136. package/dist/esm/search/hubSearch.js.map +1 -0
  137. package/dist/esm/search/index.js +1 -0
  138. package/dist/esm/search/index.js.map +1 -1
  139. package/dist/esm/search/user-utils.js +8 -1
  140. package/dist/esm/search/user-utils.js.map +1 -1
  141. package/dist/esm/search/utils.js +5 -0
  142. package/dist/esm/search/utils.js.map +1 -1
  143. package/dist/esm/sites/HubSites.js +62 -2
  144. package/dist/esm/sites/HubSites.js.map +1 -1
  145. package/dist/esm/urls/getGroupHomeUrl.js +12 -0
  146. package/dist/esm/urls/getGroupHomeUrl.js.map +1 -0
  147. package/dist/esm/urls/index.js +1 -0
  148. package/dist/esm/urls/index.js.map +1 -1
  149. package/dist/node/content/HubContent.js +72 -0
  150. package/dist/node/content/HubContent.js.map +1 -0
  151. package/dist/node/content/_internal.js +84 -1
  152. package/dist/node/content/_internal.js.map +1 -1
  153. package/dist/node/content/compose.js +6 -10
  154. package/dist/node/content/compose.js.map +1 -1
  155. package/dist/node/content/index.js +1 -0
  156. package/dist/node/content/index.js.map +1 -1
  157. package/dist/node/core/types/IHubContent.js +8 -0
  158. package/dist/node/core/types/IHubContent.js.map +1 -1
  159. package/dist/node/groups/HubGroups.js +67 -0
  160. package/dist/node/groups/HubGroups.js.map +1 -0
  161. package/dist/node/groups/_internal/enrichments.js +103 -0
  162. package/dist/node/groups/_internal/enrichments.js.map +1 -0
  163. package/dist/node/groups/index.js +2 -0
  164. package/dist/node/groups/index.js.map +1 -1
  165. package/dist/node/groups/types/IGroupMembershipSummary.js +3 -0
  166. package/dist/node/groups/types/IGroupMembershipSummary.js.map +1 -0
  167. package/dist/node/groups/types/index.js +5 -0
  168. package/dist/node/groups/types/index.js.map +1 -0
  169. package/dist/node/index.js +2 -0
  170. package/dist/node/index.js.map +1 -1
  171. package/dist/node/items/_enrichments.js +30 -1
  172. package/dist/node/items/_enrichments.js.map +1 -1
  173. package/dist/node/org/fetch-org.js +24 -0
  174. package/dist/node/org/fetch-org.js.map +1 -0
  175. package/dist/node/org/index.js +5 -0
  176. package/dist/node/org/index.js.map +1 -0
  177. package/dist/node/pages/HubPages.js +65 -0
  178. package/dist/node/pages/HubPages.js.map +1 -0
  179. package/dist/node/pages/index.js +5 -0
  180. package/dist/node/pages/index.js.map +1 -0
  181. package/dist/node/projects/HubProjects.js +57 -1
  182. package/dist/node/projects/HubProjects.js.map +1 -1
  183. package/dist/node/search/_internal/hubSearchItems.js +198 -0
  184. package/dist/node/search/_internal/hubSearchItems.js.map +1 -0
  185. package/dist/node/search/_internal/index.js +3 -0
  186. package/dist/node/search/_internal/index.js.map +1 -1
  187. package/dist/node/search/_internal/parseInclude.js +31 -0
  188. package/dist/node/search/_internal/parseInclude.js.map +1 -0
  189. package/dist/node/search/_internal/portalSearchGroups.js +104 -0
  190. package/dist/node/search/_internal/portalSearchGroups.js.map +1 -0
  191. package/dist/node/search/_internal/portalSearchItems.js +113 -0
  192. package/dist/node/search/_internal/portalSearchItems.js.map +1 -0
  193. package/dist/node/search/_searchContent.js +3 -0
  194. package/dist/node/search/_searchContent.js.map +1 -1
  195. package/dist/node/search/_searchGroups.js +2 -0
  196. package/dist/node/search/_searchGroups.js.map +1 -1
  197. package/dist/node/search/_searchUsers.js +2 -0
  198. package/dist/node/search/_searchUsers.js.map +1 -1
  199. package/dist/node/search/collectionState.js +1 -1
  200. package/dist/node/search/collectionState.js.map +1 -1
  201. package/dist/node/search/content-utils.js +38 -5
  202. package/dist/node/search/content-utils.js.map +1 -1
  203. package/dist/node/search/convertCatalog.js +14 -5
  204. package/dist/node/search/convertCatalog.js.map +1 -1
  205. package/dist/node/search/filter-utils.js +18 -3
  206. package/dist/node/search/filter-utils.js.map +1 -1
  207. package/dist/node/search/group-utils.js +7 -0
  208. package/dist/node/search/group-utils.js.map +1 -1
  209. package/dist/node/search/hubSearch.js +52 -0
  210. package/dist/node/search/hubSearch.js.map +1 -0
  211. package/dist/node/search/index.js +1 -0
  212. package/dist/node/search/index.js.map +1 -1
  213. package/dist/node/search/user-utils.js +7 -0
  214. package/dist/node/search/user-utils.js.map +1 -1
  215. package/dist/node/search/utils.js +5 -0
  216. package/dist/node/search/utils.js.map +1 -1
  217. package/dist/node/sites/HubSites.js +56 -1
  218. package/dist/node/sites/HubSites.js.map +1 -1
  219. package/dist/node/urls/getGroupHomeUrl.js +16 -0
  220. package/dist/node/urls/getGroupHomeUrl.js.map +1 -0
  221. package/dist/node/urls/index.js +1 -0
  222. package/dist/node/urls/index.js.map +1 -1
  223. package/dist/types/content/HubContent.d.ts +11 -0
  224. package/dist/types/content/_internal.d.ts +54 -5
  225. package/dist/types/content/index.d.ts +1 -0
  226. package/dist/types/core/types/IHubContent.d.ts +21 -0
  227. package/dist/types/groups/HubGroups.d.ts +11 -0
  228. package/dist/types/groups/_internal/enrichments.d.ts +30 -0
  229. package/dist/types/groups/index.d.ts +2 -0
  230. package/dist/types/groups/types/IGroupMembershipSummary.d.ts +15 -0
  231. package/dist/types/groups/types/index.d.ts +1 -0
  232. package/dist/types/index.d.ts +2 -0
  233. package/dist/types/org/fetch-org.d.ts +9 -0
  234. package/dist/types/org/index.d.ts +1 -0
  235. package/dist/types/pages/HubPages.d.ts +11 -0
  236. package/dist/types/pages/index.d.ts +1 -0
  237. package/dist/types/projects/HubProjects.d.ts +10 -1
  238. package/dist/types/search/_internal/hubSearchItems.d.ts +18 -0
  239. package/dist/types/search/_internal/index.d.ts +3 -0
  240. package/dist/types/search/_internal/parseInclude.d.ts +32 -0
  241. package/dist/types/search/_internal/portalSearchGroups.d.ts +9 -0
  242. package/dist/types/search/_internal/portalSearchItems.d.ts +9 -0
  243. package/dist/types/search/content-utils.d.ts +9 -1
  244. package/dist/types/search/hubSearch.d.ts +11 -0
  245. package/dist/types/search/index.d.ts +1 -0
  246. package/dist/types/search/types/ICatalog.d.ts +14 -3
  247. package/dist/types/search/types/ICollection.d.ts +17 -3
  248. package/dist/types/search/types/IHubSearchOptions.d.ts +46 -5
  249. package/dist/types/search/types/IHubSearchResult.d.ts +46 -2
  250. package/dist/types/search/types/types.d.ts +13 -15
  251. package/dist/types/sites/HubSites.d.ts +9 -1
  252. package/dist/types/urls/getGroupHomeUrl.d.ts +10 -0
  253. package/dist/types/urls/index.d.ts +1 -0
  254. package/dist/umd/common.umd.js +8136 -6977
  255. package/dist/umd/common.umd.js.map +1 -1
  256. package/package.json +1 -1
@@ -5,6 +5,13 @@ import OperationStack from "../OperationStack";
5
5
  // TODO: move these functions here under /items
6
6
  import { getItemMetadata } from "@esri/arcgis-rest-portal";
7
7
  import { parse } from "fast-xml-parser";
8
+ import { getItemOrgId } from "../content/_internal";
9
+ import { fetchOrg } from "../org";
10
+ /**
11
+ * Parse metadataxml into json object
12
+ * @param metadataXml
13
+ * @returns
14
+ */
8
15
  function parseMetadataXml(metadataXml) {
9
16
  const opts = {
10
17
  // options for fastXmlParser to read tag attrs
@@ -80,6 +87,24 @@ const enrichOwnerUser = (input) => {
80
87
  })
81
88
  .catch((error) => handleEnrichmentError(error, input, opId));
82
89
  };
90
+ // Note, this MUST be run after `enrichOwnerUser` to access the correct orgId during
91
+ // processing. `item.orgId` is only SOMETIMES returned by Portal, so we need to have
92
+ // the ownerUser's orgId as a backup.
93
+ const enrichOrg = (input) => {
94
+ const { data, stack, requestOptions } = input;
95
+ const opId = stack.start("enrichOrg");
96
+ const orgId = getItemOrgId(data.item, data.ownerUser);
97
+ return fetchOrg(orgId, requestOptions)
98
+ .then((org) => {
99
+ stack.finish(opId);
100
+ return {
101
+ data: Object.assign(Object.assign({}, data), { org }),
102
+ stack,
103
+ requestOptions,
104
+ };
105
+ })
106
+ .catch((error) => handleEnrichmentError(error, input, opId));
107
+ };
83
108
  const enrichData = (input) => {
84
109
  const { data, stack, requestOptions } = input;
85
110
  const opId = stack.start("enrichData");
@@ -136,6 +161,7 @@ const enrichmentOperations = {
136
161
  groupIds: enrichGroupIds,
137
162
  metadata: enrichMetadata,
138
163
  ownerUser: enrichOwnerUser,
164
+ org: enrichOrg,
139
165
  data: enrichData,
140
166
  server: enrichServer,
141
167
  layers: enrichLayers,
@@ -186,6 +212,9 @@ export const fetchItemEnrichments = (item, enrichments, requestOptions) => {
186
212
  data: { item },
187
213
  stack: new OperationStack(),
188
214
  requestOptions,
189
- }).then((output) => output.data);
215
+ }).then((output) => {
216
+ // TODO: send telemetry so we have info on what enrichments are requested and possible errors
217
+ return output.data;
218
+ });
190
219
  };
191
220
  //# sourceMappingURL=_enrichments.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_enrichments.js","sourceRoot":"","sources":["../../../src/items/_enrichments.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_enrichments.js","sourceRoot":"","sources":["../../../src/items/_enrichments.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { getProp } from "../objects/get-prop";
2
+ import { getPortalBaseFromOrgUrl } from "../urls/getPortalBaseFromOrgUrl";
3
+ import { getPortal } from "@esri/arcgis-rest-portal";
4
+ /**
5
+ * Fetches the portal for a given org.
6
+ *
7
+ * @param orgId
8
+ * @param options request options
9
+ * @returns
10
+ */
11
+ export const fetchOrg = (orgId, options) => {
12
+ const orgPortalUrl = getProp(options, "portal") ||
13
+ getProp(options, "authentication.portal") ||
14
+ "www.arcgis.com";
15
+ // In order to get the correct response, we must pass options.portal
16
+ // as a base portal url (e.g., www.arcgis.com, qaext.arcgis.com, etc)
17
+ // **not** an org portal (i.e. org.maps.arcgis.com).
18
+ const basePortalUrl = `${getPortalBaseFromOrgUrl(orgPortalUrl)}/sharing/rest`;
19
+ return getPortal(orgId, Object.assign(Object.assign({}, options), { portal: basePortalUrl }));
20
+ };
21
+ //# sourceMappingURL=fetch-org.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch-org.js","sourceRoot":"","sources":["../../../src/org/fetch-org.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,OAAyB,EAAE,EAAE;IACnE,MAAM,YAAY,GAChB,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC;QAC1B,OAAO,CAAC,OAAO,EAAE,uBAAuB,CAAC;QACzC,gBAAgB,CAAC;IAEnB,oEAAoE;IACpE,qEAAqE;IACrE,oDAAoD;IACpD,MAAM,aAAa,GAAG,GAAG,uBAAuB,CAAC,YAAY,CAAC,eAAe,CAAC;IAC9E,OAAO,SAAS,CAAC,KAAK,kCAAO,OAAO,KAAE,MAAM,EAAE,aAAa,IAAG,CAAC;AACjE,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from "./fetch-org";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/org/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC"}
@@ -0,0 +1,61 @@
1
+ import { getFamily } from "../content";
2
+ import { getHubRelativeUrl } from "../content/_internal";
3
+ import { fetchItemEnrichments } from "../items/_enrichments";
4
+ import { getProp } from "../objects";
5
+ import { getItemThumbnailUrl } from "../resources";
6
+ import { parseInclude } from "../search/_internal/parseInclude";
7
+ import { getItemHomeUrl } from "../urls";
8
+ import { unique } from "../util";
9
+ import { mapBy } from "../utils";
10
+ /**
11
+ * Fetch Page specific Enrichments
12
+ * @param item
13
+ * @param include
14
+ * @param requestOptions
15
+ * @returns
16
+ */
17
+ export async function enrichPageSearchResult(item, include, requestOptions) {
18
+ // Create the basic structure
19
+ const result = {
20
+ access: item.access,
21
+ id: item.id,
22
+ type: item.type,
23
+ name: item.title,
24
+ owner: item.owner,
25
+ summary: item.snippet || item.description,
26
+ createdDate: new Date(item.created),
27
+ createdDateSource: "item.created",
28
+ updatedDate: new Date(item.modified),
29
+ updatedDateSource: "item.modified",
30
+ family: getFamily(item.type),
31
+ links: {
32
+ self: "not-implemented",
33
+ siteRelative: "not-implemented",
34
+ thumbnail: "not-implemented",
35
+ },
36
+ };
37
+ // default includes
38
+ const DEFAULTS = [];
39
+ // merge includes
40
+ include = [...DEFAULTS, ...include].filter(unique);
41
+ // Parse the includes into a valid set of enrichments
42
+ const specs = include.map(parseInclude);
43
+ // Extract out the low-level enrichments needed
44
+ const enrichments = mapBy("enrichment", specs).filter(unique);
45
+ // fetch the enrichments
46
+ let enriched = {};
47
+ if (enrichments.length) {
48
+ // TODO: Look into caching for the requests in fetchItemEnrichments
49
+ enriched = await fetchItemEnrichments(item, enrichments, requestOptions);
50
+ }
51
+ // map the enriched props onto the result
52
+ specs.forEach((spec) => {
53
+ result[spec.prop] = getProp(enriched, spec.path);
54
+ });
55
+ // Handle Links
56
+ result.links.thumbnail = getItemThumbnailUrl(item, requestOptions);
57
+ result.links.self = getItemHomeUrl(result.id, requestOptions);
58
+ result.links.siteRelative = getHubRelativeUrl(result.type, result.id, item.typeKeywords);
59
+ return result;
60
+ }
61
+ //# sourceMappingURL=HubPages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HubPages.js","sourceRoot":"","sources":["../../../src/pages/HubPages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAAW,EACX,OAAiB,EACjB,cAAkC;IAElC,6BAA6B;IAC7B,MAAM,MAAM,GAAqB;QAC/B,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,IAAI,EAAE,IAAI,CAAC,KAAK;QAChB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW;QACzC,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QACnC,iBAAiB,EAAE,cAAc;QACjC,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QACpC,iBAAiB,EAAE,eAAe;QAClC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;QAC5B,KAAK,EAAE;YACL,IAAI,EAAE,iBAAiB;YACvB,YAAY,EAAE,iBAAiB;YAC/B,SAAS,EAAE,iBAAiB;SAC7B;KACF,CAAC;IAEF,mBAAmB;IACnB,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,iBAAiB;IACjB,OAAO,GAAG,CAAC,GAAG,QAAQ,EAAE,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnD,qDAAqD;IACrD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACxC,+CAA+C;IAC/C,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9D,wBAAwB;IACxB,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAI,WAAW,CAAC,MAAM,EAAE;QACtB,mEAAmE;QACnE,QAAQ,GAAG,MAAM,oBAAoB,CAAC,IAAI,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;KAC1E;IAED,yCAAyC;IACzC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACrB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,eAAe;IACf,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,mBAAmB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IACnE,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IAC9D,MAAM,CAAC,KAAK,CAAC,YAAY,GAAG,iBAAiB,CAC3C,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,EAAE,EACT,IAAI,CAAC,YAAY,CAClB,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from "./HubPages";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/pages/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
@@ -1,10 +1,13 @@
1
1
  // Note - we separate these imports so we can cleanly spy on things in tests
2
2
  import { createModel, fetchModelFromItem, getModel, updateModel, } from "../models";
3
3
  import { constructSlug, getItemBySlug, getUniqueSlug, setSlugKeyword, } from "../items/slugs";
4
- import { isGuid, cloneObject, mergeContentFilter, getItemThumbnailUrl, } from "..";
4
+ import { isGuid, cloneObject, mergeContentFilter, getItemThumbnailUrl, unique, mapBy, getProp, getFamily, getItemHomeUrl, } from "..";
5
5
  import { removeItem, getItem, } from "@esri/arcgis-rest-portal";
6
6
  import { searchContentEntities } from "../search/_internal/searchContentEntities";
7
7
  import { PropertyMapper } from "../core/_internal/PropertyMapper";
8
+ import { parseInclude } from "../search/_internal/parseInclude";
9
+ import { fetchItemEnrichments } from "../items/_enrichments";
10
+ import { getHubRelativeUrl } from "../content/_internal";
8
11
  export const HUB_PROJECT_ITEM_TYPE = "Hub Project";
9
12
  /**
10
13
  * Default values of a IHubProject
@@ -217,4 +220,56 @@ export async function convertItemToProject(item, requestOptions) {
217
220
  prj.thumbnailUrl = getItemThumbnailUrl(model.item, requestOptions, token);
218
221
  return prj;
219
222
  }
223
+ /**
224
+ * Fetch project specific enrichments
225
+ * @param item
226
+ * @param include
227
+ * @param requestOptions
228
+ * @returns
229
+ */
230
+ export async function enrichProjectSearchResult(item, include, requestOptions) {
231
+ // Create the basic structure
232
+ const result = {
233
+ access: item.access,
234
+ id: item.id,
235
+ type: item.type,
236
+ name: item.title,
237
+ owner: item.owner,
238
+ summary: item.snippet || item.description,
239
+ createdDate: new Date(item.created),
240
+ createdDateSource: "item.created",
241
+ updatedDate: new Date(item.modified),
242
+ updatedDateSource: "item.modified",
243
+ family: getFamily(item.type),
244
+ links: {
245
+ self: "not-implemented",
246
+ siteRelative: "not-implemented",
247
+ thumbnail: "not-implemented",
248
+ },
249
+ };
250
+ // default includes
251
+ const DEFAULTS = [];
252
+ // merge includes
253
+ include = [...DEFAULTS, ...include].filter(unique);
254
+ // Parse the includes into a valid set of enrichments
255
+ const specs = include.map(parseInclude);
256
+ // Extract out the low-level enrichments needed
257
+ const enrichments = mapBy("enrichment", specs).filter(unique);
258
+ // fetch the enrichments
259
+ let enriched = {};
260
+ if (enrichments.length) {
261
+ // TODO: Look into caching for the requests in fetchItemEnrichments
262
+ enriched = await fetchItemEnrichments(item, enrichments, requestOptions);
263
+ }
264
+ // map the enriched props onto the result
265
+ specs.forEach((spec) => {
266
+ result[spec.prop] = getProp(enriched, spec.path);
267
+ });
268
+ // Handle links
269
+ // TODO: Link handling should be an enrichment
270
+ result.links.thumbnail = getItemThumbnailUrl(item, requestOptions);
271
+ result.links.self = getItemHomeUrl(result.id, requestOptions);
272
+ result.links.siteRelative = getHubRelativeUrl(result.type, result.id, item.typeKeywords);
273
+ return result;
274
+ }
220
275
  //# sourceMappingURL=HubProjects.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HubProjects.js","sourceRoot":"","sources":["../../../src/projects/HubProjects.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HubProjects.js","sourceRoot":"","sources":["../../../src/projects/HubProjects.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,191 @@
1
+ import { setProp } from "../../objects";
2
+ import { cloneObject } from "../../util";
3
+ import { expandApi } from "../utils";
4
+ // ## ## ####### ######## ########
5
+ // ### ## ## ## ## ##
6
+ // #### ## ## ## ## ##
7
+ // ## ## ## ## ## ## ######
8
+ // ## #### ## ## ## ##
9
+ // ## ### ## ## ## ##
10
+ // ## ## ####### ## ########
11
+ //
12
+ // Since Hub API is still in flux, there is no code coverage for this file
13
+ /**
14
+ * Execute item search against the Hub API
15
+ * @param filter
16
+ * @param options
17
+ * @returns
18
+ */
19
+ /* istanbul ignore next */
20
+ export async function hubSearchItems(filters, options) {
21
+ var _a;
22
+ // TODO: better mapping from api to apiUrl
23
+ const api = expandApi(options.api || "hub");
24
+ const apiUrl = `${api.url}/api/items/beta/search`;
25
+ // Purge filterType from the filters array
26
+ const cleanFilters = [];
27
+ filters.forEach((block) => {
28
+ const b = {
29
+ operation: block.operation,
30
+ filters: block.filters.map((f) => {
31
+ const c = cloneObject(f);
32
+ delete c.filterType;
33
+ return c;
34
+ }),
35
+ };
36
+ cleanFilters.push(b);
37
+ });
38
+ const searchRequest = {
39
+ q: cleanFilters,
40
+ options: {
41
+ num: options.num || 10,
42
+ start: options.start || 1,
43
+ sortField: options.sortField,
44
+ sortOrder: options.sortOrder,
45
+ },
46
+ };
47
+ // Add optional props via setProp b/c typescript really does not like
48
+ // adding properties after defining an object
49
+ if ((_a = options.aggFields) === null || _a === void 0 ? void 0 : _a.length) {
50
+ const aggs = [
51
+ {
52
+ mode: "terms",
53
+ fields: options.aggFields,
54
+ num: options.aggLimit || 10,
55
+ },
56
+ ];
57
+ setProp("aggregations", aggs, searchRequest.options);
58
+ }
59
+ if (options.authentication) {
60
+ const session = {
61
+ token: options.authentication.token,
62
+ portal: options.authentication.portal,
63
+ };
64
+ setProp("session", session, searchRequest.options);
65
+ }
66
+ const opts = {
67
+ method: "POST",
68
+ mode: "cors",
69
+ cache: "no-cache",
70
+ headers: {
71
+ "Content-Type": "application/json",
72
+ },
73
+ body: JSON.stringify(searchRequest),
74
+ };
75
+ try {
76
+ const raw = await fetch(apiUrl, opts);
77
+ const json = await raw.json();
78
+ let token;
79
+ if (options.authentication) {
80
+ const us = options.authentication;
81
+ token = us.token;
82
+ }
83
+ const tokenizeThubmnailUrl = (entry) => {
84
+ if (token && entry.attributes.access !== "public") {
85
+ entry.attributes.thumbnailUrl = `${entry.attributes.thumbnailUrl}?token=${token}`;
86
+ }
87
+ return entry;
88
+ };
89
+ json.data = json.data.map(tokenizeThubmnailUrl);
90
+ // convert items to IHubSerchResult
91
+ const conversion = (entry) => {
92
+ return hubContentToSearchResult(jsonApiToHubContent(entry));
93
+ };
94
+ const results = await Promise.all(json.data.map(conversion));
95
+ const facets = convertHubResponseToFacets(json);
96
+ // now transform into a IHubSearchResponse
97
+ const response = {
98
+ total: json.meta.total,
99
+ results,
100
+ facets,
101
+ hasNext: json.meta.hasNext,
102
+ next: () => {
103
+ // tslint:disable-next-line
104
+ Promise.resolve(null);
105
+ },
106
+ };
107
+ return Promise.resolve(response);
108
+ }
109
+ catch (ex) {
110
+ // TODO: Turn into a formal error
111
+ throw ex;
112
+ }
113
+ }
114
+ /**
115
+ * Re-structure a jsonApi data entry into a flat object cast into
116
+ * IHubContent
117
+ * @param data
118
+ * @returns
119
+ */
120
+ /* istanbul ignore next */
121
+ export function jsonApiToHubContent(data) {
122
+ const content = cloneObject(data.attributes);
123
+ content.id = data.id;
124
+ return content;
125
+ }
126
+ /* istanbul ignore next */
127
+ export function hubContentToSearchResult(content) {
128
+ const result = {
129
+ access: content.access,
130
+ id: content.id,
131
+ type: content.type,
132
+ name: content.name,
133
+ owner: content.owner,
134
+ summary: content.snippet || content.description,
135
+ createdDate: new Date(content.createdDate),
136
+ createdDateSource: content.createdDateSource,
137
+ updatedDate: new Date(content.updatedDate),
138
+ updatedDateSource: content.updatedDateSource,
139
+ thumbnailUrl: content.thumbnailUrl,
140
+ metadata: [],
141
+ family: content.family,
142
+ urls: {
143
+ portalHome: "not-implemented",
144
+ relative: "not-implemented",
145
+ },
146
+ };
147
+ // TODO: Per-type plucking of props into the `meta` hash for use in the card components
148
+ return Promise.resolve(result);
149
+ }
150
+ /* istanbul ignore next */
151
+ export function convertHubResponseToFacets(response, operation = "OR") {
152
+ var _a;
153
+ const result = [];
154
+ if ((_a = response.meta) === null || _a === void 0 ? void 0 : _a.aggregations) {
155
+ const meta = response.meta;
156
+ meta.aggregations.forEach((entry) => {
157
+ // Dyanmic facets typically "AND" so we are refining
158
+ const facet = {
159
+ label: entry.field,
160
+ key: entry.field,
161
+ aggField: entry.field,
162
+ display: "multi-select",
163
+ operation,
164
+ };
165
+ const options = [];
166
+ entry.values.forEach((fv) => {
167
+ const filter = {
168
+ filterType: "item",
169
+ };
170
+ // construct the filter based on the operation
171
+ const matchKey = operation === "OR" ? "any" : "all";
172
+ const filterMatchOption = {};
173
+ filterMatchOption[matchKey] = [fv.value];
174
+ filter[entry.field] = filterMatchOption;
175
+ // construct the FacetOption
176
+ const fo = {
177
+ label: `${fv.value} (${fv.count})`,
178
+ key: fv.value,
179
+ count: fv.count,
180
+ selected: false,
181
+ filters: [filter],
182
+ };
183
+ options.push(fo);
184
+ });
185
+ facet.options = options;
186
+ result.push(facet);
187
+ });
188
+ }
189
+ return result;
190
+ }
191
+ //# sourceMappingURL=hubSearchItems.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hubSearchItems.js","sourceRoot":"","sources":["../../../../src/search/_internal/hubSearchItems.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,6 @@
1
1
  export * from "./searchContentEntities";
2
2
  export * from "./state";
3
+ export * from "./portalSearchItems";
4
+ export * from "./hubSearchItems";
5
+ export * from "./portalSearchGroups";
3
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/search/_internal/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/search/_internal/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,SAAS,CAAC;AACxB,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Parse an IncludeSpec from the include string
3
+ * Include String structure:
4
+ * - `enrichment{.deep.path} AS propertyName`
5
+ *
6
+ * Examples
7
+ * - `server.layers.0.name as layerName` -> use the `server` enrichment, extract the name of the first layer and attach that as `layerName`
8
+ * - `server.layers` -> use the `server` enrichment, attach the `layers` array as `layers`
9
+ * @param include
10
+ * @returns
11
+ */
12
+ export function parseInclude(include) {
13
+ // TODO: Validate enrichment? Not clear how we'd do that other than a manully maintained string list
14
+ const parts = include.split(" AS ");
15
+ const path = parts[0];
16
+ const prop = parts[1] || path.split(".").reverse()[0];
17
+ const enrichment = path.split(".")[0];
18
+ // We need the actual list of string values so we can verify
19
+ // what we get in, is infact a valid enrichment.
20
+ const spec = {
21
+ enrichment,
22
+ path,
23
+ prop,
24
+ };
25
+ return spec;
26
+ }
27
+ //# sourceMappingURL=parseInclude.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseInclude.js","sourceRoot":"","sources":["../../../../src/search/_internal/parseInclude.ts"],"names":[],"mappings":"AAsBA;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,oGAAoG;IACpG,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAsC,CAAC;IAC3E,4DAA4D;IAC5D,gDAAgD;IAChD,MAAM,IAAI,GAAiB;QACzB,UAAU;QACV,IAAI;QACJ,IAAI;KACL,CAAC;IAEF,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,100 @@
1
+ import { searchGroups } from "@esri/arcgis-rest-portal";
2
+ import { enrichGroupSearchResult } from "../../groups/HubGroups";
3
+ import { expandFilter, serializeFilterGroupsForPortal } from "../filter-utils";
4
+ import { expandApi, getNextFunction } from "../utils";
5
+ /**
6
+ * @private
7
+ * Portal Search Implementation for Items
8
+ * @param filterGroups
9
+ * @param options
10
+ * @returns
11
+ */
12
+ export async function portalSearchGroups(filterGroups, options) {
13
+ // API
14
+ const api = expandApi(options.api || "arcgis");
15
+ if (!options.requestOptions) {
16
+ if (options.authentication) {
17
+ // create minimal requestOptions
18
+ options.requestOptions = {
19
+ authentication: options.authentication,
20
+ portal: options.authentication.portal,
21
+ };
22
+ }
23
+ else {
24
+ options.requestOptions = {
25
+ portal: `${api.url}/sharing/rest`,
26
+ };
27
+ }
28
+ }
29
+ // Expand the individual filters in each of the groups
30
+ const expandedGroups = filterGroups.map((fg) => {
31
+ fg.filters = fg.filters.map(expandFilter);
32
+ return fg;
33
+ });
34
+ // Serialize the all the groups for portal
35
+ const so = serializeFilterGroupsForPortal(expandedGroups);
36
+ // Array of properties we want to copy from IHubSearchOptions to the ISearchOptions
37
+ const props = [
38
+ "authentication",
39
+ "num",
40
+ "sortField",
41
+ "sortOrder",
42
+ "include",
43
+ "start",
44
+ "requestOptions",
45
+ ];
46
+ // copy the props over
47
+ props.forEach((prop) => {
48
+ if (options.hasOwnProperty(prop)) {
49
+ so[prop] = options[prop];
50
+ }
51
+ });
52
+ // If we don't have auth, ensure we have .portal
53
+ if (!so.authentication) {
54
+ so.portal = so.requestOptions.portal || `${api.url}/sharing/rest`;
55
+ }
56
+ return searchPortal(so);
57
+ }
58
+ /**
59
+ * Internal portal search, which then converts `IGroup`s to `IHubSearchResult`s
60
+ * handling enrichments & includes along the way
61
+ *
62
+ * @param searchOptions
63
+ * @returns
64
+ */
65
+ async function searchPortal(searchOptions) {
66
+ // Execute portal search
67
+ const resp = await searchGroups(searchOptions);
68
+ // create mappable fn that will close
69
+ // over the includes and requestOptions
70
+ const fn = (item) => {
71
+ return groupToSearchResult(item, searchOptions.include, searchOptions.requestOptions);
72
+ };
73
+ // map over results
74
+ const results = await Promise.all(resp.results.map(fn));
75
+ // Group Search does not support aggregations
76
+ // Construct the return
77
+ return {
78
+ total: resp.total,
79
+ results,
80
+ facets: [],
81
+ hasNext: resp.nextStart > -1,
82
+ next: getNextFunction(searchOptions, resp.nextStart, resp.total, searchPortal),
83
+ };
84
+ }
85
+ /**
86
+ * Convert an Item to a IHubSearchResult
87
+ * Fetches the includes and attaches them to the item
88
+ * @param item
89
+ * @param includes
90
+ * @param requestOptions
91
+ * @returns
92
+ */
93
+ async function groupToSearchResult(group, includes = [], requestOptions) {
94
+ // Delegate to HubGroups module
95
+ // This layer of indirection is not necessary but
96
+ // aligns with how the items search works and
97
+ // allows for future specialization
98
+ return enrichGroupSearchResult(group, includes, requestOptions);
99
+ }
100
+ //# sourceMappingURL=portalSearchGroups.js.map