@esri/hub-common 9.48.0 → 10.0.0-next.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 (248) hide show
  1. package/dist/es2017/core/traits/WithCatalog.js +1 -0
  2. package/dist/es2017/core/traits/WithCatalog.js.map +1 -0
  3. package/dist/es2017/index.js +1 -0
  4. package/dist/es2017/index.js.map +1 -1
  5. package/dist/es2017/projects/HubProjects.js.map +1 -1
  6. package/dist/es2017/search/Catalog.js +346 -0
  7. package/dist/es2017/search/Catalog.js.map +1 -0
  8. package/dist/es2017/search/Collection.js +38 -19
  9. package/dist/es2017/search/Collection.js.map +1 -1
  10. package/dist/es2017/search/_internal/{ipredicate-utils.js → expandPredicate.js} +1 -1
  11. package/dist/es2017/search/_internal/expandPredicate.js.map +1 -0
  12. package/dist/es2017/search/_internal/hubSearchItems.js +3 -137
  13. package/dist/es2017/search/_internal/hubSearchItems.js.map +1 -1
  14. package/dist/es2017/search/_internal/index.js +0 -1
  15. package/dist/es2017/search/_internal/index.js.map +1 -1
  16. package/dist/es2017/search/_internal/portalSearchGroups.js +1 -2
  17. package/dist/es2017/search/_internal/portalSearchGroups.js.map +1 -1
  18. package/dist/es2017/search/_internal/portalSearchItems.js +5 -30
  19. package/dist/es2017/search/_internal/portalSearchItems.js.map +1 -1
  20. package/dist/es2017/search/_internal/portalSearchUsers.js +1 -2
  21. package/dist/es2017/search/_internal/portalSearchUsers.js.map +1 -1
  22. package/dist/es2017/search/fetchCatalog.js +46 -0
  23. package/dist/es2017/search/fetchCatalog.js.map +1 -0
  24. package/dist/es2017/search/hubSearch.js +1 -1
  25. package/dist/es2017/search/hubSearch.js.map +1 -1
  26. package/dist/es2017/search/index.js +3 -9
  27. package/dist/es2017/search/index.js.map +1 -1
  28. package/dist/es2017/search/serializeQueryForPortal.js +1 -1
  29. package/dist/es2017/search/serializeQueryForPortal.js.map +1 -1
  30. package/dist/es2017/search/types/index.js +0 -5
  31. package/dist/es2017/search/types/index.js.map +1 -1
  32. package/dist/es2017/search/upgradeCatalogSchema.js +66 -0
  33. package/dist/es2017/search/upgradeCatalogSchema.js.map +1 -0
  34. package/dist/es2017/search/utils.js +1 -207
  35. package/dist/es2017/search/utils.js.map +1 -1
  36. package/dist/es2017/types/IMessage.js +1 -0
  37. package/dist/es2017/types/IMessage.js.map +1 -0
  38. package/dist/es2017/types/index.js +2 -0
  39. package/dist/es2017/types/index.js.map +1 -0
  40. package/dist/es2017/types.js.map +1 -1
  41. package/dist/esm/core/traits/WithCatalog.js +1 -0
  42. package/dist/esm/core/traits/WithCatalog.js.map +1 -0
  43. package/dist/esm/index.js +1 -0
  44. package/dist/esm/index.js.map +1 -1
  45. package/dist/esm/projects/HubProjects.js.map +1 -1
  46. package/dist/esm/search/Catalog.js +404 -0
  47. package/dist/esm/search/Catalog.js.map +1 -0
  48. package/dist/esm/search/Collection.js +40 -24
  49. package/dist/esm/search/Collection.js.map +1 -1
  50. package/dist/esm/search/_internal/{ipredicate-utils.js → expandPredicate.js} +1 -1
  51. package/dist/esm/search/_internal/expandPredicate.js.map +1 -0
  52. package/dist/esm/search/_internal/hubSearchItems.js +4 -146
  53. package/dist/esm/search/_internal/hubSearchItems.js.map +1 -1
  54. package/dist/esm/search/_internal/index.js +0 -1
  55. package/dist/esm/search/_internal/index.js.map +1 -1
  56. package/dist/esm/search/_internal/portalSearchGroups.js +1 -2
  57. package/dist/esm/search/_internal/portalSearchGroups.js.map +1 -1
  58. package/dist/esm/search/_internal/portalSearchItems.js +6 -30
  59. package/dist/esm/search/_internal/portalSearchItems.js.map +1 -1
  60. package/dist/esm/search/_internal/portalSearchUsers.js +1 -2
  61. package/dist/esm/search/_internal/portalSearchUsers.js.map +1 -1
  62. package/dist/esm/search/fetchCatalog.js +59 -0
  63. package/dist/esm/search/fetchCatalog.js.map +1 -0
  64. package/dist/esm/search/hubSearch.js +1 -1
  65. package/dist/esm/search/hubSearch.js.map +1 -1
  66. package/dist/esm/search/index.js +3 -9
  67. package/dist/esm/search/index.js.map +1 -1
  68. package/dist/esm/search/serializeQueryForPortal.js +1 -1
  69. package/dist/esm/search/serializeQueryForPortal.js.map +1 -1
  70. package/dist/esm/search/types/index.js +0 -5
  71. package/dist/esm/search/types/index.js.map +1 -1
  72. package/dist/esm/search/upgradeCatalogSchema.js +66 -0
  73. package/dist/esm/search/upgradeCatalogSchema.js.map +1 -0
  74. package/dist/esm/search/utils.js +1 -204
  75. package/dist/esm/search/utils.js.map +1 -1
  76. package/dist/esm/types/IMessage.js +1 -0
  77. package/dist/esm/types/IMessage.js.map +1 -0
  78. package/dist/esm/types/index.js +2 -0
  79. package/dist/esm/types/index.js.map +1 -0
  80. package/dist/esm/types.js.map +1 -1
  81. package/dist/node/{search/types/ICollection.js → core/traits/WithCatalog.js} +1 -1
  82. package/dist/node/core/traits/WithCatalog.js.map +1 -0
  83. package/dist/node/index.js +1 -0
  84. package/dist/node/index.js.map +1 -1
  85. package/dist/node/projects/HubProjects.js.map +1 -1
  86. package/dist/node/search/Catalog.js +350 -0
  87. package/dist/node/search/Catalog.js.map +1 -0
  88. package/dist/node/search/Collection.js +37 -18
  89. package/dist/node/search/Collection.js.map +1 -1
  90. package/dist/node/search/_internal/{ipredicate-utils.js → expandPredicate.js} +1 -1
  91. package/dist/node/search/_internal/expandPredicate.js.map +1 -0
  92. package/dist/node/search/_internal/hubSearchItems.js +4 -139
  93. package/dist/node/search/_internal/hubSearchItems.js.map +1 -1
  94. package/dist/node/search/_internal/index.js +0 -1
  95. package/dist/node/search/_internal/index.js.map +1 -1
  96. package/dist/node/search/_internal/portalSearchGroups.js +2 -3
  97. package/dist/node/search/_internal/portalSearchGroups.js.map +1 -1
  98. package/dist/node/search/_internal/portalSearchItems.js +6 -31
  99. package/dist/node/search/_internal/portalSearchItems.js.map +1 -1
  100. package/dist/node/search/_internal/portalSearchUsers.js +2 -3
  101. package/dist/node/search/_internal/portalSearchUsers.js.map +1 -1
  102. package/dist/node/search/fetchCatalog.js +50 -0
  103. package/dist/node/search/fetchCatalog.js.map +1 -0
  104. package/dist/node/search/hubSearch.js +1 -1
  105. package/dist/node/search/hubSearch.js.map +1 -1
  106. package/dist/node/search/index.js +3 -9
  107. package/dist/node/search/index.js.map +1 -1
  108. package/dist/node/search/serializeQueryForPortal.js +2 -2
  109. package/dist/node/search/serializeQueryForPortal.js.map +1 -1
  110. package/dist/node/search/types/index.js +0 -5
  111. package/dist/node/search/types/index.js.map +1 -1
  112. package/dist/node/search/upgradeCatalogSchema.js +71 -0
  113. package/dist/node/search/upgradeCatalogSchema.js.map +1 -0
  114. package/dist/node/search/utils.js +1 -213
  115. package/dist/node/search/utils.js.map +1 -1
  116. package/dist/node/{search/types/ICatalog.js → types/IMessage.js} +1 -1
  117. package/dist/node/types/IMessage.js.map +1 -0
  118. package/dist/node/types/index.js +5 -0
  119. package/dist/node/types/index.js.map +1 -0
  120. package/dist/node/types.js.map +1 -1
  121. package/dist/types/core/traits/WithCatalog.d.ts +7 -0
  122. package/dist/types/index.d.ts +1 -0
  123. package/dist/types/search/Catalog.d.ts +143 -0
  124. package/dist/types/search/Collection.d.ts +23 -2
  125. package/dist/types/search/_internal/{ipredicate-utils.d.ts → expandPredicate.d.ts} +0 -0
  126. package/dist/types/search/_internal/hubSearchItems.d.ts +3 -4
  127. package/dist/types/search/_internal/index.d.ts +0 -1
  128. package/dist/types/search/_internal/portalSearchItems.d.ts +15 -15
  129. package/dist/types/search/fetchCatalog.d.ts +10 -0
  130. package/dist/types/search/index.d.ts +3 -9
  131. package/dist/types/search/types/IHubSearchOptions.d.ts +5 -1
  132. package/dist/types/search/types/IHubSearchResponse.d.ts +3 -3
  133. package/dist/types/search/types/index.d.ts +0 -5
  134. package/dist/types/search/types/types.d.ts +0 -206
  135. package/dist/types/search/upgradeCatalogSchema.d.ts +12 -0
  136. package/dist/types/search/utils.d.ts +2 -58
  137. package/dist/types/types/IMessage.d.ts +32 -0
  138. package/dist/types/types/index.d.ts +1 -0
  139. package/dist/types/types.d.ts +0 -2
  140. package/dist/umd/common.umd.js +1374 -2450
  141. package/dist/umd/common.umd.js.map +1 -1
  142. package/package.json +1 -1
  143. package/dist/es2017/search/_internal/ipredicate-utils.js.map +0 -1
  144. package/dist/es2017/search/_internal/state.js +0 -155
  145. package/dist/es2017/search/_internal/state.js.map +0 -1
  146. package/dist/es2017/search/_searchContent.js +0 -116
  147. package/dist/es2017/search/_searchContent.js.map +0 -1
  148. package/dist/es2017/search/_searchGroups.js +0 -88
  149. package/dist/es2017/search/_searchGroups.js.map +0 -1
  150. package/dist/es2017/search/_searchUsers.js +0 -89
  151. package/dist/es2017/search/_searchUsers.js.map +0 -1
  152. package/dist/es2017/search/collectionState.js +0 -60
  153. package/dist/es2017/search/collectionState.js.map +0 -1
  154. package/dist/es2017/search/content-utils.js +0 -455
  155. package/dist/es2017/search/content-utils.js.map +0 -1
  156. package/dist/es2017/search/convertCatalog.js +0 -33
  157. package/dist/es2017/search/convertCatalog.js.map +0 -1
  158. package/dist/es2017/search/filter-utils.js +0 -31
  159. package/dist/es2017/search/filter-utils.js.map +0 -1
  160. package/dist/es2017/search/group-utils.js +0 -142
  161. package/dist/es2017/search/group-utils.js.map +0 -1
  162. package/dist/es2017/search/types/ICatalog.js +0 -1
  163. package/dist/es2017/search/types/ICatalog.js.map +0 -1
  164. package/dist/es2017/search/types/ICollection.js +0 -1
  165. package/dist/es2017/search/types/ICollection.js.map +0 -1
  166. package/dist/es2017/search/types/IFacet.js +0 -1
  167. package/dist/es2017/search/types/IFacet.js.map +0 -1
  168. package/dist/es2017/search/types/IFacetOption.js +0 -1
  169. package/dist/es2017/search/types/IFacetOption.js.map +0 -1
  170. package/dist/es2017/search/types/IHubApiSearchRequest.js +0 -1
  171. package/dist/es2017/search/types/IHubApiSearchRequest.js.map +0 -1
  172. package/dist/es2017/search/user-utils.js +0 -139
  173. package/dist/es2017/search/user-utils.js.map +0 -1
  174. package/dist/esm/search/_internal/ipredicate-utils.js.map +0 -1
  175. package/dist/esm/search/_internal/state.js +0 -155
  176. package/dist/esm/search/_internal/state.js.map +0 -1
  177. package/dist/esm/search/_searchContent.js +0 -118
  178. package/dist/esm/search/_searchContent.js.map +0 -1
  179. package/dist/esm/search/_searchGroups.js +0 -91
  180. package/dist/esm/search/_searchGroups.js.map +0 -1
  181. package/dist/esm/search/_searchUsers.js +0 -92
  182. package/dist/esm/search/_searchUsers.js.map +0 -1
  183. package/dist/esm/search/collectionState.js +0 -61
  184. package/dist/esm/search/collectionState.js.map +0 -1
  185. package/dist/esm/search/content-utils.js +0 -462
  186. package/dist/esm/search/content-utils.js.map +0 -1
  187. package/dist/esm/search/convertCatalog.js +0 -33
  188. package/dist/esm/search/convertCatalog.js.map +0 -1
  189. package/dist/esm/search/filter-utils.js +0 -31
  190. package/dist/esm/search/filter-utils.js.map +0 -1
  191. package/dist/esm/search/group-utils.js +0 -146
  192. package/dist/esm/search/group-utils.js.map +0 -1
  193. package/dist/esm/search/types/ICatalog.js +0 -1
  194. package/dist/esm/search/types/ICatalog.js.map +0 -1
  195. package/dist/esm/search/types/ICollection.js +0 -1
  196. package/dist/esm/search/types/ICollection.js.map +0 -1
  197. package/dist/esm/search/types/IFacet.js +0 -1
  198. package/dist/esm/search/types/IFacet.js.map +0 -1
  199. package/dist/esm/search/types/IFacetOption.js +0 -1
  200. package/dist/esm/search/types/IFacetOption.js.map +0 -1
  201. package/dist/esm/search/types/IHubApiSearchRequest.js +0 -1
  202. package/dist/esm/search/types/IHubApiSearchRequest.js.map +0 -1
  203. package/dist/esm/search/user-utils.js +0 -143
  204. package/dist/esm/search/user-utils.js.map +0 -1
  205. package/dist/node/search/_internal/ipredicate-utils.js.map +0 -1
  206. package/dist/node/search/_internal/state.js +0 -166
  207. package/dist/node/search/_internal/state.js.map +0 -1
  208. package/dist/node/search/_searchContent.js +0 -120
  209. package/dist/node/search/_searchContent.js.map +0 -1
  210. package/dist/node/search/_searchGroups.js +0 -92
  211. package/dist/node/search/_searchGroups.js.map +0 -1
  212. package/dist/node/search/_searchUsers.js +0 -93
  213. package/dist/node/search/_searchUsers.js.map +0 -1
  214. package/dist/node/search/collectionState.js +0 -65
  215. package/dist/node/search/collectionState.js.map +0 -1
  216. package/dist/node/search/content-utils.js +0 -466
  217. package/dist/node/search/content-utils.js.map +0 -1
  218. package/dist/node/search/convertCatalog.js +0 -37
  219. package/dist/node/search/convertCatalog.js.map +0 -1
  220. package/dist/node/search/filter-utils.js +0 -36
  221. package/dist/node/search/filter-utils.js.map +0 -1
  222. package/dist/node/search/group-utils.js +0 -148
  223. package/dist/node/search/group-utils.js.map +0 -1
  224. package/dist/node/search/types/ICatalog.js.map +0 -1
  225. package/dist/node/search/types/ICollection.js.map +0 -1
  226. package/dist/node/search/types/IFacet.js +0 -3
  227. package/dist/node/search/types/IFacet.js.map +0 -1
  228. package/dist/node/search/types/IFacetOption.js +0 -3
  229. package/dist/node/search/types/IFacetOption.js.map +0 -1
  230. package/dist/node/search/types/IHubApiSearchRequest.js +0 -3
  231. package/dist/node/search/types/IHubApiSearchRequest.js.map +0 -1
  232. package/dist/node/search/user-utils.js +0 -145
  233. package/dist/node/search/user-utils.js.map +0 -1
  234. package/dist/types/search/_internal/state.d.ts +0 -70
  235. package/dist/types/search/_searchContent.d.ts +0 -9
  236. package/dist/types/search/_searchGroups.d.ts +0 -17
  237. package/dist/types/search/_searchUsers.d.ts +0 -31
  238. package/dist/types/search/collectionState.d.ts +0 -19
  239. package/dist/types/search/content-utils.d.ts +0 -83
  240. package/dist/types/search/convertCatalog.d.ts +0 -6
  241. package/dist/types/search/filter-utils.d.ts +0 -13
  242. package/dist/types/search/group-utils.d.ts +0 -36
  243. package/dist/types/search/types/ICatalog.d.ts +0 -87
  244. package/dist/types/search/types/ICollection.d.ts +0 -28
  245. package/dist/types/search/types/IFacet.d.ts +0 -62
  246. package/dist/types/search/types/IFacetOption.d.ts +0 -30
  247. package/dist/types/search/types/IHubApiSearchRequest.d.ts +0 -16
  248. package/dist/types/search/user-utils.d.ts +0 -35
@@ -1,146 +0,0 @@
1
- import { __spreadArrays } from "tslib";
2
- import { mergeDateRange, mergeMatchOptions, mergeSearchOptions, relativeDateToDateRange, serializeDateRange, serializeMatchOptions, valueToMatchOptions, } from ".";
3
- import { cloneObject, getProp, Logger, setProp } from "..";
4
- // TODO: Remove with _searchContent
5
- /**
6
- *
7
- * Merge `Filter<"group">` objects
8
- *
9
- * Useful in components which may get partial filters from a variety of
10
- * sub-components, which are then combined into a single filter prior
11
- * to executing the search.
12
- * @param filters
13
- * @returns
14
- */
15
- export function mergeGroupFilters(filters) {
16
- // TODO: Remove with _searchContent
17
- Logger.warn("DEPRECATION: mergeGroupFilters will be removed. Work with IFilterGroups<\"group\"> and hubSearch() instead");
18
- // expand all the filters so all prop types are consistent
19
- var expanded = filters.map(expandGroupFilter);
20
- // now we can merge based on fields
21
- var dateFields = ["created", "modified"];
22
- var specialFields = __spreadArrays(["filterType", "term"], dateFields);
23
- // acc is initialized as Filter<group> but also needs it
24
- // in the function signature... for reasons?!
25
- var result = expanded.reduce(function (acc, entry) {
26
- // process fields
27
- Object.entries(entry).forEach(function (_a) {
28
- // Note: getProp/setProp are used to get around
29
- // typescript issues with string indexing
30
- var key = _a[0], value = _a[1];
31
- if (acc.hasOwnProperty(key)) {
32
- var existingValue = getProp(acc, key);
33
- // if the key is not to a special field
34
- if (!specialFields.includes(key)) {
35
- // treat as an IMatchOptions
36
- setProp(key, mergeMatchOptions(existingValue, value), acc);
37
- }
38
- else if (dateFields.includes(key)) {
39
- // treat as IDateRange
40
- setProp(key, mergeDateRange(existingValue, value), acc);
41
- }
42
- else if (key === "term") {
43
- // append terms
44
- acc[key] = acc[key] + " " + value;
45
- }
46
- }
47
- else {
48
- // Acc does not have an entry for this yet
49
- // so just clone it
50
- setProp(key, cloneObject(value), acc);
51
- }
52
- });
53
- return acc;
54
- }, {
55
- filterType: "group",
56
- });
57
- return result;
58
- }
59
- /**
60
- * Prior to serialization into the query syntax for the backing APIs, we first expand [Filters](../Filter)
61
- *
62
- * Filter's can express their intent in a very terse form, but to ensure consistent structures
63
- * we expand them into their more verbose form.
64
- *
65
- * i.e. `title: "Water"` expands into `title: { any: ["Water"]}`
66
- *
67
- * - Fields defined as `string | string[] | MatchOptions` will be converted to a `MatchOptions`
68
- * - RelativeDate fields are converted to DateRange<number>
69
- *
70
- * @param filter
71
- * @returns
72
- */
73
- export function expandGroupFilter(filter) {
74
- // TODO: Remove with _searchContent
75
- Logger.warn("DEPRECATION: expandGroupFilters will be removed. Work with IFilterGroups<\"group\"> and hubSearch() instead");
76
- var result = {};
77
- var dateProps = ["created", "modified"];
78
- // Some properties should not get converted to MatchOptions
79
- var specialProps = __spreadArrays(["term", "searchUserAccess"], dateProps);
80
- // Do the conversion
81
- Object.entries(filter).forEach(function (_a) {
82
- var key = _a[0], value = _a[1];
83
- // handle Matchish fields
84
- if (!specialProps.includes(key)) {
85
- // setProp side-steps typescript complaining
86
- setProp(key, valueToMatchOptions(value), result);
87
- }
88
- // Handle date fields
89
- if (dateProps.includes(key)) {
90
- var dateFieldValue = cloneObject(getProp(filter, key));
91
- if (getProp(filter, key + ".type") === "relative-date") {
92
- setProp(key, relativeDateToDateRange(dateFieldValue), result);
93
- }
94
- else {
95
- setProp(key, dateFieldValue, result);
96
- }
97
- }
98
- });
99
- // searchUserAccess is boolean, so we check if the prop exists
100
- // vs checking if the value is truthy
101
- if (filter.hasOwnProperty("searchUserAccess")) {
102
- result.searchUserAccess = filter.searchUserAccess;
103
- }
104
- if (filter.term) {
105
- result.term = filter.term;
106
- }
107
- return result;
108
- }
109
- /**
110
- * @private
111
- * Serialize an `IGroupFilterDefinition` into an `ISearchOptions` for use
112
- * with `searchGroups`
113
- * @param filter
114
- * @returns
115
- */
116
- export function serializeGroupFilterForPortal(filter) {
117
- // TODO: Remove with _searchContent
118
- Logger.warn("DEPRECATION: serializeGroupFilterForPortal will be removed. Work with IFilterGroups<\"group\"> and hubSearch() instead");
119
- var result = {
120
- q: "",
121
- filter: "",
122
- };
123
- var dateProps = ["created", "modified"];
124
- var specialProps = __spreadArrays(["term", "searchUserAccess", "filterType"], dateProps);
125
- Object.entries(filter).forEach(function (_a) {
126
- var key = _a[0], value = _a[1];
127
- // MatchOptions fields
128
- if (!specialProps.includes(key)) {
129
- result = mergeSearchOptions(result, serializeMatchOptions(key, value), "AND");
130
- }
131
- // Dates only go into q
132
- if (dateProps.includes(key)) {
133
- result = mergeSearchOptions(result, serializeDateRange(key, value), "AND");
134
- }
135
- });
136
- // searchUserAccess is also a top-level property
137
- if (filter.hasOwnProperty("searchUserAccess")) {
138
- result.searchUserAccess = filter.searchUserAccess;
139
- }
140
- // add the term
141
- if (filter.term) {
142
- result.q = (filter.term + " " + result.q).trim();
143
- }
144
- return result;
145
- }
146
- //# sourceMappingURL=group-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"group-utils.js","sourceRoot":"","sources":["../../../src/search/group-utils.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=ICatalog.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ICatalog.js","sourceRoot":"","sources":["../../../../src/search/types/ICatalog.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=ICollection.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ICollection.js","sourceRoot":"","sources":["../../../../src/search/types/ICollection.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=IFacet.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IFacet.js","sourceRoot":"","sources":["../../../../src/search/types/IFacet.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=IFacetOption.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IFacetOption.js","sourceRoot":"","sources":["../../../../src/search/types/IFacetOption.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=IHubApiSearchRequest.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IHubApiSearchRequest.js","sourceRoot":"","sources":["../../../../src/search/types/IHubApiSearchRequest.ts"],"names":[],"mappings":""}
@@ -1,143 +0,0 @@
1
- import { __spreadArrays } from "tslib";
2
- import { cloneObject, getProp, Logger, mergeDateRange, mergeMatchOptions, mergeSearchOptions, relativeDateToDateRange, serializeDateRange, serializeMatchOptions, setProp, valueToMatchOptions, } from "..";
3
- // TODO: Remove with _searchContent
4
- /**
5
- *
6
- * Merge `Filter<"user">` objects
7
- *
8
- * Useful in components which may get partial filters from a variety of
9
- * sub-components, which are then combined into a single filter prior
10
- * to executing the search.
11
- * @param filters
12
- * @returns
13
- */
14
- export function mergeUserFilters(filters) {
15
- // TODO: Remove with _searchContent
16
- Logger.warn("DEPRECATION: mergeUserFilters will be removed. Work with IFilterGroups<\"user\"> and hubSearch() instead");
17
- // expand all the filters so all prop types are consistent
18
- var expanded = filters.map(expandUserFilter);
19
- // now we can merge based on fields
20
- var dateFields = ["created", "modified", "lastlogin"];
21
- var specialFields = __spreadArrays(["disabled", "term", "filterType"], dateFields);
22
- // acc is initialized as Filter<group> but also needs it
23
- // in the function signature... for reasons?!
24
- var result = expanded.reduce(function (acc, entry) {
25
- // process fields
26
- Object.entries(entry).forEach(function (_a) {
27
- // Note: getProp/setProp are used to get around
28
- // typescript issues with string indexing
29
- var key = _a[0], value = _a[1];
30
- if (acc.hasOwnProperty(key)) {
31
- var existingValue = getProp(acc, key);
32
- // if the key is not to a special field
33
- if (!specialFields.includes(key)) {
34
- // treat as an IMatchOptions
35
- setProp(key, mergeMatchOptions(existingValue, value), acc);
36
- }
37
- else if (dateFields.includes(key)) {
38
- // treat as IDateRange
39
- setProp(key, mergeDateRange(existingValue, value), acc);
40
- }
41
- else if (key === "term") {
42
- // append terms
43
- acc[key] = acc[key] + " " + value;
44
- }
45
- }
46
- else {
47
- // Acc does not have an entry for this yet
48
- // so just clone it
49
- setProp(key, cloneObject(value), acc);
50
- }
51
- });
52
- return acc;
53
- }, {
54
- filterType: "user",
55
- });
56
- return result;
57
- }
58
- /**
59
- * Prior to serialization into the query syntax for the backing APIs, we first expand [Filters](../Filter)
60
- *
61
- * Filter's can express their intent in a very terse form, but to ensure consistent structures
62
- * we expand them into their more verbose form.
63
- *
64
- * i.e. `firstname: "John"` expands into `firstname: { any: ["John"]}`
65
- *
66
- * - Fields defined as `string | string[] | MatchOptions` will be converted to a `MatchOptions`
67
- * - RelativeDate fields are converted to DateRange<number>
68
- * @param filter
69
- * @returns
70
- */
71
- export function expandUserFilter(filter) {
72
- // TODO: Remove with _searchContent
73
- Logger.warn("DEPRECATION: expandUserFilter will be removed. Work with IFilterGroups<\"user\"> and hubSearch() instead");
74
- var result = {};
75
- var dateProps = ["created", "modified", "lastlogin"];
76
- var specialProps = __spreadArrays(["disabled", "term"], dateProps);
77
- Object.entries(filter).forEach(function (_a) {
78
- var key = _a[0], value = _a[1];
79
- // handle Matchish fields
80
- if (!specialProps.includes(key)) {
81
- // setProp side-steps typescript complaining
82
- setProp(key, valueToMatchOptions(value), result);
83
- }
84
- // Handle date fields
85
- if (dateProps.includes(key)) {
86
- var dateFieldValue = cloneObject(getProp(filter, key));
87
- if (getProp(filter, key + ".type") === "relative-date") {
88
- setProp(key, relativeDateToDateRange(dateFieldValue), result);
89
- }
90
- else {
91
- setProp(key, dateFieldValue, result);
92
- }
93
- }
94
- });
95
- // disabled is boolean, so we check if the prop exists
96
- // vs checking if the value is truthy
97
- if (filter.hasOwnProperty("disabled")) {
98
- result.disabled = filter.disabled;
99
- }
100
- if (filter.term) {
101
- result.term = filter.term;
102
- }
103
- return result;
104
- }
105
- /**
106
- * @private
107
- * Serialize an `IUserFilterDefinition` into an `ISearchOptions` for use
108
- * with `searchUsers`
109
- * @param filter
110
- * @returns
111
- */
112
- export function serializeUserFilterForPortal(filter) {
113
- // TODO: Remove with _searchContent
114
- Logger.warn("DEPRECATION: serializeUserFilterForPortal will be removed. Work with IFilterGroups<\"user\"> and hubSearch() instead");
115
- var result = {
116
- q: "",
117
- filter: "",
118
- };
119
- var dateProps = ["created", "modified", "lastlogin"];
120
- var specialProps = __spreadArrays(["term", "filterType"], dateProps);
121
- Object.entries(filter).forEach(function (_a) {
122
- var key = _a[0], value = _a[1];
123
- // MatchOptions fields
124
- if (!specialProps.includes(key)) {
125
- result = mergeSearchOptions(result, serializeMatchOptions(key, value), "AND");
126
- }
127
- // Dates only go into q
128
- if (dateProps.includes(key)) {
129
- result = mergeSearchOptions(result, serializeDateRange(key, value), "AND");
130
- }
131
- });
132
- // disabled is also a top-level property
133
- if (filter.hasOwnProperty("disabled")) {
134
- result.disabled = filter.disabled;
135
- }
136
- // add the term
137
- if (filter.term) {
138
- // Note: this is slightly different from other types
139
- result.q = ("(" + filter.term + ") " + result.q).trim();
140
- }
141
- return result;
142
- }
143
- //# sourceMappingURL=user-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"user-utils.js","sourceRoot":"","sources":["../../../src/search/user-utils.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ipredicate-utils.js","sourceRoot":"","sources":["../../../../src/search/_internal/ipredicate-utils.ts"],"names":[],"mappings":";;;AAAA,2CAAiD;AACjD,qCAAyC;AAEzC,oCAAwE;AAExE;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,SAAqB;IACnD,MAAM,MAAM,GAAe,EAAE,CAAC;IAC9B,MAAM,SAAS,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG;QAChB,YAAY;QACZ,MAAM;QACN,kBAAkB;QAClB,YAAY;QACZ,gBAAgB;KACjB,CAAC;IACF,MAAM,qBAAqB,GAAG,CAAC,GAAG,SAAS,EAAE,GAAG,SAAS,CAAC,CAAC;IAC3D,oBAAoB;IACpB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACjD,6BAA6B;QAC7B,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACxC,iBAAO,CAAC,GAAG,EAAE,2BAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;SAClD;QACD,qBAAqB;QACrB,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAC3B,MAAM,cAAc,GAAG,kBAAW,CAAC,iBAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;YAC5D,IAAI,iBAAO,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,KAAK,eAAe,EAAE;gBACzD,iBAAO,CAAC,GAAG,EAAE,+BAAuB,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC;aAC/D;iBAAM;gBACL,iBAAO,CAAC,GAAG,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;aACtC;SACF;QACD,6CAA6C;QAC7C,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;YAC5D,iBAAO,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;SAC7B;IACH,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAChB,CAAC;AAhCD,0CAgCC"}
@@ -1,166 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.serializeFacetState = exports.serializeSortState = exports.serializeMultiSelectFacetState = exports.applyMultiSelectFacetState = exports.serializeSingleSelectFacetState = exports.applySingleSelectFacetState = exports.applyFacetState = exports.applySortState = void 0;
4
- const util_1 = require("../../util");
5
- /**
6
- * @private
7
- * Apply the sortState to SortOptions
8
- *
9
- * @param sortOptions
10
- * @param sortState
11
- * @returns
12
- */
13
- function applySortState(sortOptions, sortState) {
14
- const updated = util_1.cloneObject(sortOptions);
15
- if (sortState) {
16
- const [label, attribute, order] = sortState.split("|");
17
- updated.label = label;
18
- updated.attribute = attribute;
19
- updated.order = order;
20
- }
21
- return updated;
22
- }
23
- exports.applySortState = applySortState;
24
- /**
25
- * @private
26
- * Apply FacetState to a Facet
27
- * @param facet
28
- * @param state
29
- * @returns
30
- */
31
- function applyFacetState(facet, state) {
32
- let updated = util_1.cloneObject(facet);
33
- switch (facet.display) {
34
- case "single-select":
35
- updated = applySingleSelectFacetState(facet, state);
36
- break;
37
- case "multi-select":
38
- updated = applyMultiSelectFacetState(facet, state);
39
- break;
40
- case "date-range":
41
- break;
42
- case "histogram":
43
- break;
44
- default:
45
- // no default behavior
46
- break;
47
- }
48
- return updated;
49
- }
50
- exports.applyFacetState = applyFacetState;
51
- /**
52
- * @private
53
- * Apply the Facet State onto a single-select facet
54
- *
55
- * Intentionally mutates the facet.
56
- * @param facet
57
- * @param state
58
- * @returns
59
- */
60
- function applySingleSelectFacetState(facet, state) {
61
- const updated = util_1.cloneObject(facet);
62
- updated.options = updated.options.map((o) => {
63
- o.selected = o.key === state[facet.key];
64
- return o;
65
- });
66
- return updated;
67
- }
68
- exports.applySingleSelectFacetState = applySingleSelectFacetState;
69
- /**
70
- * @private
71
- * Serialize single-select facet into IFacetState
72
- * @param facet
73
- * @returns
74
- */
75
- function serializeSingleSelectFacetState(facet) {
76
- const state = {};
77
- const selected = facet.options.find((o) => o.selected);
78
- if (selected) {
79
- state[facet.key] = selected.key;
80
- }
81
- else {
82
- state[facet.key] = null;
83
- }
84
- return state;
85
- }
86
- exports.serializeSingleSelectFacetState = serializeSingleSelectFacetState;
87
- /**
88
- * @private
89
- * Apply the Facet State onto a multi-select Facet
90
- *
91
- * Intentionally mutates the facet.
92
- * @param facet
93
- * @param state
94
- * @returns
95
- */
96
- function applyMultiSelectFacetState(facet, state) {
97
- var _a;
98
- const updated = util_1.cloneObject(facet);
99
- const selectedKeys = ((_a = state[facet.key]) === null || _a === void 0 ? void 0 : _a.split(",")) || [];
100
- updated.options = updated.options.map((o) => {
101
- o.selected = selectedKeys.includes(o.key);
102
- return o;
103
- });
104
- return updated;
105
- }
106
- exports.applyMultiSelectFacetState = applyMultiSelectFacetState;
107
- /**
108
- * @private
109
- * Serialize multi-select facet into IFacetState
110
- * @param facet
111
- * @returns
112
- */
113
- function serializeMultiSelectFacetState(facet) {
114
- const state = {};
115
- const selected = facet.options.filter((o) => o.selected);
116
- const value = selected.map((o) => o.key).join(",");
117
- if (value.length) {
118
- state[facet.key] = value;
119
- }
120
- else {
121
- state[facet.key] = null;
122
- }
123
- return state;
124
- }
125
- exports.serializeMultiSelectFacetState = serializeMultiSelectFacetState;
126
- /**
127
- * @private
128
- * Serialize the state of the SortOption into a key/value pair
129
- *
130
- * Called from the Sort component
131
- * @param sort
132
- * @returns
133
- */
134
- function serializeSortState(sort) {
135
- return `${sort.label}|${sort.attribute}|${sort.order}`;
136
- }
137
- exports.serializeSortState = serializeSortState;
138
- /**
139
- * @private
140
- * Serialize the state of a facet into a key/value pair
141
- *
142
- * Called from the various facet components
143
- * @param facet
144
- * @returns
145
- */
146
- function serializeFacetState(facet) {
147
- let state = {};
148
- switch (facet.display) {
149
- case "single-select":
150
- state = serializeSingleSelectFacetState(facet);
151
- break;
152
- case "multi-select":
153
- state = serializeMultiSelectFacetState(facet);
154
- break;
155
- case "date-range":
156
- break;
157
- case "histogram":
158
- break;
159
- default:
160
- // no default behavior
161
- break;
162
- }
163
- return state;
164
- }
165
- exports.serializeFacetState = serializeFacetState;
166
- //# sourceMappingURL=state.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../src/search/_internal/state.ts"],"names":[],"mappings":"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"}
@@ -1,120 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports._searchContent = void 0;
4
- const content_utils_1 = require("./content-utils");
5
- const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
6
- const utils_1 = require("./utils");
7
- const __1 = require("..");
8
- const utils_2 = require("../utils");
9
- // TODO: Remove with _searchContent
10
- /**
11
- * @private
12
- * Search for content via the Portal or Hub API
13
- * @param filter
14
- * @param options
15
- */
16
- async function _searchContent(filter, options) {
17
- var _a, _b;
18
- utils_2.Logger.warn(`DEPRECATION: _searchContent will be removed; switch to hubSearch(...)`);
19
- // expand filter so we can serialize to either api
20
- const expanded = content_utils_1.expandContentFilter(filter);
21
- // API
22
- const api = utils_1.expandApi(options.api || "arcgis");
23
- let searchPromise;
24
- // Portal Search
25
- if (api.type === "arcgis") {
26
- // serialize for portal
27
- const so = content_utils_1.serializeContentFilterForPortal(expanded);
28
- // Array of properties we want to copy from IHubSearchOptions
29
- // to the ISearchOptions
30
- const props = [
31
- "authentication",
32
- "num",
33
- "sortField",
34
- "sortOrder",
35
- "site",
36
- "start",
37
- ];
38
- // copy the props over
39
- props.forEach((prop) => {
40
- if (options.hasOwnProperty(prop)) {
41
- so[prop] = options[prop];
42
- }
43
- });
44
- // If we don't have auth, ensure we have .portal
45
- if (!so.authentication) {
46
- so.portal = `${api.url}/sharing/rest`;
47
- }
48
- // DEPRECATION
49
- if ((_a = options.aggregations) === null || _a === void 0 ? void 0 : _a.length) {
50
- // tslint:disable-next-line:no-console
51
- console.warn(`IHubSearchOptions.aggregations is deprecated. Please use .aggFields instead.`);
52
- so.countFields = options.aggregations.join(",");
53
- so.countSize = options.aggLimit || 10;
54
- }
55
- // Aggregations
56
- if ((_b = options.aggFields) === null || _b === void 0 ? void 0 : _b.length) {
57
- so.countFields = options.aggFields.join(",");
58
- so.countSize = options.aggLimit || 10;
59
- }
60
- searchPromise = searchPortal(so);
61
- }
62
- else {
63
- // Hub API Search
64
- // TODO: Implement hub api content search
65
- searchPromise = Promise.resolve({
66
- total: 0,
67
- results: [],
68
- facets: [],
69
- hasNext: false,
70
- next: () => {
71
- // tslint:disable-next-line
72
- Promise.resolve(null);
73
- },
74
- });
75
- }
76
- return searchPromise;
77
- }
78
- exports._searchContent = _searchContent;
79
- /**
80
- * Internal portal search, which then converts items to Content, and
81
- * if a Site was passed, also sets urls
82
- *
83
- * @param searchOptions
84
- * @param site
85
- * @returns
86
- */
87
- function searchPortal(searchOptions) {
88
- var _a;
89
- const portalUrl = ((_a = searchOptions.authentication) === null || _a === void 0 ? void 0 : _a.portal) || searchOptions.portal;
90
- let token;
91
- if (searchOptions.authentication) {
92
- const us = searchOptions.authentication;
93
- token = us.token;
94
- }
95
- const thumbnailify = (content) => {
96
- content.thumbnailUrl = __1.getItemThumbnailUrl(content, portalUrl, token);
97
- return content;
98
- };
99
- return arcgis_rest_portal_1.searchItems(searchOptions).then((resp) => {
100
- const hasNext = resp.nextStart > -1;
101
- // convert items to IHubContent's
102
- let content = resp.results.map(__1.itemToContent);
103
- // if we have a site, add those urls
104
- if (searchOptions.site) {
105
- content = content.map((entry) => __1.setContentSiteUrls(entry, searchOptions.site));
106
- }
107
- // add thumbnailUrl
108
- content = content.map(thumbnailify);
109
- // convert aggregations into facets
110
- const facets = content_utils_1.convertPortalResponseToFacets(resp);
111
- return {
112
- total: resp.total,
113
- results: content,
114
- facets,
115
- hasNext,
116
- next: utils_1.getNextFunction(searchOptions, resp.nextStart, resp.total, searchPortal),
117
- };
118
- });
119
- }
120
- //# sourceMappingURL=_searchContent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_searchContent.js","sourceRoot":"","sources":["../../../src/search/_searchContent.ts"],"names":[],"mappings":"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"}