@esri/hub-common 9.45.2 → 9.45.5

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 (70) hide show
  1. package/dist/es2017/search/_internal/index.js +1 -0
  2. package/dist/es2017/search/_internal/index.js.map +1 -1
  3. package/dist/es2017/search/_internal/ipredicate-utils.js +38 -0
  4. package/dist/es2017/search/_internal/ipredicate-utils.js.map +1 -0
  5. package/dist/es2017/search/_internal/portalSearchGroups.js +3 -57
  6. package/dist/es2017/search/_internal/portalSearchGroups.js.map +1 -1
  7. package/dist/es2017/search/_internal/portalSearchItems.js +3 -88
  8. package/dist/es2017/search/_internal/portalSearchItems.js.map +1 -1
  9. package/dist/es2017/search/_internal/portalSearchUsers.js +2 -44
  10. package/dist/es2017/search/_internal/portalSearchUsers.js.map +1 -1
  11. package/dist/es2017/search/filter-utils.js +0 -197
  12. package/dist/es2017/search/filter-utils.js.map +1 -1
  13. package/dist/es2017/search/hubSearch.js +9 -38
  14. package/dist/es2017/search/hubSearch.js.map +1 -1
  15. package/dist/es2017/search/{_internal/ifilter-utils.js → ifilter-utils.js} +2 -37
  16. package/dist/es2017/search/ifilter-utils.js.map +1 -0
  17. package/dist/es2017/search/index.js +1 -0
  18. package/dist/es2017/search/index.js.map +1 -1
  19. package/dist/esm/search/_internal/index.js +1 -0
  20. package/dist/esm/search/_internal/index.js.map +1 -1
  21. package/dist/esm/search/_internal/ipredicate-utils.js +40 -0
  22. package/dist/esm/search/_internal/ipredicate-utils.js.map +1 -0
  23. package/dist/esm/search/_internal/portalSearchGroups.js +3 -58
  24. package/dist/esm/search/_internal/portalSearchGroups.js.map +1 -1
  25. package/dist/esm/search/_internal/portalSearchItems.js +3 -89
  26. package/dist/esm/search/_internal/portalSearchItems.js.map +1 -1
  27. package/dist/esm/search/_internal/portalSearchUsers.js +2 -46
  28. package/dist/esm/search/_internal/portalSearchUsers.js.map +1 -1
  29. package/dist/esm/search/filter-utils.js +0 -198
  30. package/dist/esm/search/filter-utils.js.map +1 -1
  31. package/dist/esm/search/hubSearch.js +9 -37
  32. package/dist/esm/search/hubSearch.js.map +1 -1
  33. package/dist/esm/search/{_internal/ifilter-utils.js → ifilter-utils.js} +2 -38
  34. package/dist/esm/search/ifilter-utils.js.map +1 -0
  35. package/dist/esm/search/index.js +1 -0
  36. package/dist/esm/search/index.js.map +1 -1
  37. package/dist/node/search/_internal/index.js +1 -0
  38. package/dist/node/search/_internal/index.js.map +1 -1
  39. package/dist/node/search/_internal/ipredicate-utils.js +42 -0
  40. package/dist/node/search/_internal/ipredicate-utils.js.map +1 -0
  41. package/dist/node/search/_internal/portalSearchGroups.js +4 -59
  42. package/dist/node/search/_internal/portalSearchGroups.js.map +1 -1
  43. package/dist/node/search/_internal/portalSearchItems.js +5 -92
  44. package/dist/node/search/_internal/portalSearchItems.js.map +1 -1
  45. package/dist/node/search/_internal/portalSearchUsers.js +4 -47
  46. package/dist/node/search/_internal/portalSearchUsers.js.map +1 -1
  47. package/dist/node/search/filter-utils.js +1 -200
  48. package/dist/node/search/filter-utils.js.map +1 -1
  49. package/dist/node/search/hubSearch.js +12 -41
  50. package/dist/node/search/hubSearch.js.map +1 -1
  51. package/dist/node/search/{_internal/ifilter-utils.js → ifilter-utils.js} +4 -40
  52. package/dist/node/search/ifilter-utils.js.map +1 -0
  53. package/dist/node/search/index.js +1 -0
  54. package/dist/node/search/index.js.map +1 -1
  55. package/dist/types/search/_internal/index.d.ts +1 -0
  56. package/dist/types/search/_internal/ipredicate-utils.d.ts +2 -0
  57. package/dist/types/search/_internal/portalSearchGroups.d.ts +1 -10
  58. package/dist/types/search/_internal/portalSearchItems.d.ts +1 -15
  59. package/dist/types/search/_internal/portalSearchUsers.d.ts +1 -9
  60. package/dist/types/search/filter-utils.d.ts +0 -17
  61. package/dist/types/search/hubSearch.d.ts +7 -4
  62. package/dist/types/search/{_internal/ifilter-utils.d.ts → ifilter-utils.d.ts} +1 -2
  63. package/dist/types/search/index.d.ts +1 -0
  64. package/dist/types/search/types/IHubCatalog.d.ts +38 -2
  65. package/dist/umd/common.umd.js +205 -610
  66. package/dist/umd/common.umd.js.map +1 -1
  67. package/package.json +1 -1
  68. package/dist/es2017/search/_internal/ifilter-utils.js.map +0 -1
  69. package/dist/esm/search/_internal/ifilter-utils.js.map +0 -1
  70. package/dist/node/search/_internal/ifilter-utils.js.map +0 -1
@@ -1,201 +1,3 @@
1
- import { __spreadArrays } from "tslib";
2
- import { getProp, setProp } from "../objects";
3
- import { cloneObject } from "../util";
4
- import { relativeDateToDateRange, valueToMatchOptions } from "./utils";
5
- // DEPRECATED - REMOVE THIS FILE
6
- /**
7
- * Expand a Filter into it's more expressive structure so it can be
8
- * serialized deterministically.
9
- *
10
- * Props with type `string | string[] | MatchOptions` expand into `IMatchOptions`
11
- * Props relative-dates are expanded into formal date-ranges
12
- * @param filter
13
- * @returns
14
- */
15
- export function expandFilter(filter) {
16
- var result = {};
17
- var dateProps = ["created", "modified", "lastlogin"];
18
- var copyProps = [
19
- "filterType",
20
- "term",
21
- "searchUserAccess",
22
- "isopendata",
23
- "searchUserName",
24
- ];
25
- var nonMatchOptionsFields = __spreadArrays(dateProps, copyProps);
26
- // Do the conversion
27
- Object.entries(filter).forEach(function (_a) {
28
- var key = _a[0], value = _a[1];
29
- // Handle MatchOptions fields
30
- if (!nonMatchOptionsFields.includes(key)) {
31
- // setProp side-steps typescript complaining
32
- setProp(key, valueToMatchOptions(value), result);
33
- }
34
- // Handle Date fields
35
- if (dateProps.includes(key)) {
36
- var dateFieldValue = cloneObject(getProp(filter, key));
37
- if (getProp(filter, key + ".type") === "relative-date") {
38
- setProp(key, relativeDateToDateRange(dateFieldValue), result);
39
- }
40
- else {
41
- setProp(key, dateFieldValue, result);
42
- }
43
- }
44
- // Handle fields that are just copied forward
45
- if (copyProps.includes(key) && filter.hasOwnProperty(key)) {
46
- setProp(key, value, result);
47
- }
48
- });
49
- return result;
50
- }
51
- /**
52
- * Serialize a FilterGroup of any type for Portal
53
- * @param filterGroups
54
- * @returns
55
- */
56
- export function serializeFilterGroupsForPortal(filterGroups) {
57
- var groupSearchOptions = filterGroups.map(serializeGroup);
58
- var result = mergeSearchOptions(groupSearchOptions, "AND");
59
- return result;
60
- }
61
- /**
62
- * Serialize the filters in a FitlerGroup into a Portal Query
63
- * @param filterGroup
64
- * @returns
65
- */
66
- function serializeGroup(filterGroup) {
67
- var operation = filterGroup.operation || "AND";
68
- var filters = filterGroup.filters.map(expandFilter);
69
- var filterSearchOptions = filters.map(serializeFilter);
70
- // combine these searchOptions
71
- var groupSearchOptions = mergeSearchOptions(filterSearchOptions, operation);
72
- //
73
- if (filters.length > 1) {
74
- groupSearchOptions.q = "(" + groupSearchOptions.q + ")";
75
- }
76
- return groupSearchOptions;
77
- }
78
- /**
79
- * Serialize a Filter into a Portal Query
80
- * @param filter
81
- * @returns
82
- */
83
- function serializeFilter(filter) {
84
- var dateProps = ["created", "modified"];
85
- var boolProps = ["isopendata"];
86
- var passThroughProps = ["searchUserAccess", "searchUserName"];
87
- var specialProps = __spreadArrays([
88
- "filterType",
89
- "term"
90
- ], dateProps, boolProps, passThroughProps);
91
- var qCount = 0;
92
- // TODO: Look at using reduce vs .map and remove the `.filter`
93
- var opts = Object.entries(filter)
94
- .map(function (_a) {
95
- var key = _a[0], value = _a[1];
96
- var so = { q: "" };
97
- if (!specialProps.includes(key)) {
98
- qCount++;
99
- so.q = serializeMatchOptions(key, value);
100
- }
101
- if (dateProps.includes(key)) {
102
- qCount++;
103
- so.q = serializeDateRange(key, value);
104
- }
105
- if (boolProps.includes(key)) {
106
- qCount++;
107
- so.q = key + ":" + value;
108
- }
109
- if (passThroughProps.includes(key)) {
110
- so[key] = value;
111
- }
112
- if (key === "term") {
113
- qCount++;
114
- so.q = value;
115
- }
116
- return so;
117
- })
118
- .filter(function (e) { return e !== undefined; });
119
- // merge up all the searchOptions
120
- var searchOptions = mergeSearchOptions(opts, "AND");
121
- if (qCount > 1) {
122
- searchOptions.q = "(" + searchOptions.q + ")";
123
- }
124
- return searchOptions;
125
- }
126
- function mergeSearchOptions(options, operation) {
127
- var result = options.reduce(function (acc, entry) {
128
- // walk the props
129
- Object.entries(entry).forEach(function (_a) {
130
- var key = _a[0], value = _a[1];
131
- // if prop exists
132
- if (acc[key]) {
133
- // combine via operation
134
- acc[key] = acc[key] + " " + operation + " " + value;
135
- }
136
- else {
137
- // just copy the value
138
- acc[key] = value;
139
- }
140
- });
141
- return acc;
142
- }, { q: "" });
143
- return result;
144
- }
145
- /**
146
- * Serialize MatchOptions into portal syntax
147
- * @param key
148
- * @param value
149
- * @returns
150
- */
151
- function serializeMatchOptions(key, value) {
152
- var result = "";
153
- if (value.any) {
154
- result = "" + serializeStringOrArray("OR", key, value.any);
155
- }
156
- if (value.all) {
157
- result =
158
- (result ? result + " AND " : "") +
159
- ("" + serializeStringOrArray("AND", key, value.all));
160
- }
161
- if (value.not) {
162
- // negate the entries if they are not
163
- result =
164
- (result ? result + " AND " : "") +
165
- ("" + serializeStringOrArray("OR", "-" + key, value.not));
166
- }
167
- // TODO HANDLE EXACT
168
- return result;
169
- }
170
- /**
171
- * Serialize a date-range into Portal syntax
172
- * @param key
173
- * @param range
174
- * @returns
175
- */
176
- function serializeDateRange(key, range) {
177
- return key + ":[" + range.from + " TO " + range.to + "]";
178
- }
179
- /**
180
- * Serialize a `string` or `string[]` into a string
181
- * @param join
182
- * @param key
183
- * @param value
184
- * @returns
185
- */
186
- function serializeStringOrArray(join, key, value) {
187
- var q = "";
188
- if (Array.isArray(value)) {
189
- q = key + ":\"" + value.join("\" " + join + " " + key + ":\"") + "\"";
190
- if (value.length > 1) {
191
- q = "(" + q + ")";
192
- }
193
- }
194
- else {
195
- q = key + ":\"" + value + "\"";
196
- }
197
- return q;
198
- }
199
1
  /**
200
2
  * Determine if a Filter is "empty"
201
3
  * @param filter
@@ -1 +1 @@
1
- {"version":3,"file":"filter-utils.js","sourceRoot":"","sources":["../../../src/search/filter-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filter-utils.js","sourceRoot":"","sources":["../../../src/search/filter-utils.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,MAA0B;IACtD,iDAAiD;IACjD,OAAO,CACL,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,CACxE,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAAqC;IAErC,4BAA4B;IAC5B,IAAI,WAAW,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QACpC,OAAO,IAAI,CAAC;KACb;SAAM;QACL,2BAA2B;QAC3B,IAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,GAAG,EAAE,KAAK;YACnD,IAAI,GAAG,EAAE;gBACP,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;aAC5B;YACD,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,IAAI,CAAC,CAAC;QACT,OAAO,MAAM,CAAC;KACf;AACH,CAAC"}
@@ -3,10 +3,12 @@ import HubError from "../HubError";
3
3
  import { getProp } from "../objects";
4
4
  import { cloneObject } from "../util";
5
5
  import { expandApi } from "./utils";
6
- import { hubSearchItems, portalSearchItems, portalSearchGroups, portalSearchItemsFilterGroups, portalSearchGroupsFilterGroups, } from "./_internal";
7
- import { portalSearchUsers, portalSearchUsersFilterGroups, } from "./_internal/portalSearchUsers";
6
+ import { hubSearchItems, portalSearchItems, portalSearchGroups, portalSearchUsers, } from "./_internal";
8
7
  /**
9
- * Main Search function for ArcGIS Hub
8
+ * @private
9
+ * TEMPORARY - this function only exists to allow incremental
10
+ * changes and should be removed as soon as arcgis-hub-gallery
11
+ * is changed to call `hubSearch(...)` directly
10
12
  *
11
13
  * Default's to search ArcGIS Portal but can delegate
12
14
  * to Hub API when it's available.
@@ -14,41 +16,11 @@ import { portalSearchUsers, portalSearchUsersFilterGroups, } from "./_internal/p
14
16
  * @param options
15
17
  * @returns
16
18
  */
17
- export function hubSearch(filterGroups, options) {
19
+ export function hubSearchQuery(query, options) {
18
20
  return __awaiter(this, void 0, void 0, function () {
19
- var filterType, apiType, fnHash, fn;
20
21
  return __generator(this, function (_a) {
21
- // Validate inputs
22
- if (!filterGroups || !Array.isArray(filterGroups)) {
23
- throw new HubError("hubSearch", "FilterGroups are required and must be an array.");
24
- }
25
- if (!filterGroups.length) {
26
- throw new HubError("hubSearch", "FilterGrous array must contain at least one entry.");
27
- }
28
- if (!options.requestOptions) {
29
- throw new HubError("hubSearch", "requestOptions: IHubRequestOptions is required.");
30
- }
31
- // Ensure includes is an array
32
- if (!options.include) {
33
- options.include = [];
34
- }
35
- filterType = filterGroups[0].filterType;
36
- apiType = expandApi(options.api || "arcgis").type;
37
- fnHash = {
38
- arcgis: {
39
- item: portalSearchItemsFilterGroups,
40
- group: portalSearchGroupsFilterGroups,
41
- user: portalSearchUsersFilterGroups,
42
- },
43
- "arcgis-hub": {
44
- item: hubSearchItems,
45
- },
46
- };
47
- fn = getProp(fnHash, apiType + "." + filterType);
48
- if (!fn) {
49
- throw new HubError("hubSearch", "Search via \"" + filterType + "\" filter against \"" + apiType + "\" api is not implemented");
50
- }
51
- return [2 /*return*/, fn(cloneObject(filterGroups), options)];
22
+ // delegate
23
+ return [2 /*return*/, hubSearch(query, options)];
52
24
  });
53
25
  });
54
26
  }
@@ -61,7 +33,7 @@ export function hubSearch(filterGroups, options) {
61
33
  * @param options
62
34
  * @returns
63
35
  */
64
- export function hubSearchQuery(query, options) {
36
+ export function hubSearch(query, options) {
65
37
  return __awaiter(this, void 0, void 0, function () {
66
38
  var filterType, apiType, fnHash, fn;
67
39
  return __generator(this, function (_a) {
@@ -1 +1 @@
1
- {"version":3,"file":"hubSearch.js","sourceRoot":"","sources":["../../../src/search/hubSearch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hubSearch.js","sourceRoot":"","sources":["../../../src/search/hubSearch.ts"],"names":[],"mappings":";AAAA,OAAO,QAAQ,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAQtC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,aAAa,CAAC;AAErB;;;;;;;;;;;GAWG;AACH,MAAM,UAAgB,cAAc,CAClC,KAAa,EACb,OAA0B;;;YAE1B,WAAW;YACX,sBAAO,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,EAAC;;;CAClC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAgB,SAAS,CAC7B,KAAa,EACb,OAA0B;;;;YAE1B,kBAAkB;YAClB,IAAI,CAAC,KAAK,EAAE;gBACV,MAAM,IAAI,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;aACvD;YACD,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE;gBAC3C,MAAM,IAAI,QAAQ,CAAC,WAAW,EAAE,yCAAyC,CAAC,CAAC;aAC5E;YAED,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;gBAC3B,MAAM,IAAI,QAAQ,CAChB,WAAW,EACX,iDAAiD,CAClD,CAAC;aACH;YAED,8BAA8B;YAC9B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;gBACpB,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;aACtB;YAGK,UAAU,GAAG,KAAK,CAAC,YAAY,CAAC;YAEhC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC,IAAI,CAAC;YAElD,MAAM,GAAG;gBACb,MAAM,EAAE;oBACN,IAAI,EAAE,iBAAiB;oBACvB,KAAK,EAAE,kBAAkB;oBACzB,IAAI,EAAE,iBAAiB;iBACxB;gBACD,YAAY,EAAE;oBACZ,IAAI,EAAE,cAAc;iBACrB;aACF,CAAC;YAEI,EAAE,GAAG,OAAO,CAAC,MAAM,EAAK,OAAO,SAAI,UAAY,CAAC,CAAC;YACvD,IAAI,CAAC,EAAE,EAAE;gBACP,MAAM,IAAI,QAAQ,CAChB,WAAW,EACX,kBAAe,UAAU,4BAAqB,OAAO,8BAA0B,CAChF,CAAC;aACH;YACD,sBAAO,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,EAAC;;;CACxC"}
@@ -1,42 +1,5 @@
1
1
  import { __spreadArrays } from "tslib";
2
- import { setProp, getProp } from "../../objects";
3
- import { cloneObject } from "../../util";
4
- import { valueToMatchOptions, relativeDateToDateRange } from "../utils";
5
- export function expandPredicate(predicate) {
6
- var result = {};
7
- var dateProps = ["created", "modified", "lastlogin"];
8
- var copyProps = [
9
- "filterType",
10
- "term",
11
- "searchUserAccess",
12
- "isopendata",
13
- "searchUserName",
14
- ];
15
- var nonMatchOptionsFields = __spreadArrays(dateProps, copyProps);
16
- // Do the conversion
17
- Object.entries(predicate).forEach(function (_a) {
18
- var key = _a[0], value = _a[1];
19
- // Handle MatchOptions fields
20
- if (!nonMatchOptionsFields.includes(key)) {
21
- setProp(key, valueToMatchOptions(value), result);
22
- }
23
- // Handle Date fields
24
- if (dateProps.includes(key)) {
25
- var dateFieldValue = cloneObject(getProp(predicate, key));
26
- if (getProp(predicate, key + ".type") === "relative-date") {
27
- setProp(key, relativeDateToDateRange(dateFieldValue), result);
28
- }
29
- else {
30
- setProp(key, dateFieldValue, result);
31
- }
32
- }
33
- // Handle fields that are just copied forward
34
- if (copyProps.includes(key) && predicate.hasOwnProperty(key)) {
35
- setProp(key, value, result);
36
- }
37
- });
38
- return result;
39
- }
2
+ import { expandPredicate } from "./_internal/ipredicate-utils";
40
3
  export function serializeQueryForPortal(query) {
41
4
  var filterSearchOptions = query.filters.map(serializeFilter);
42
5
  var result = mergeSearchOptions(filterSearchOptions, "AND");
@@ -121,6 +84,7 @@ function serializePredicate(predicate) {
121
84
  "snippet",
122
85
  "tags",
123
86
  "term",
87
+ "title",
124
88
  "type",
125
89
  "typekeywords",
126
90
  "userlicensetype",
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ifilter-utils.js","sourceRoot":"","sources":["../../../src/search/ifilter-utils.ts"],"names":[],"mappings":"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"}
@@ -10,5 +10,6 @@ export * from "./types";
10
10
  export * from "./collectionState";
11
11
  export * from "./convertCatalog";
12
12
  export * from "./filter-utils";
13
+ export * from "./ifilter-utils";
13
14
  export * from "./hubSearch";
14
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/search/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/search/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC"}
@@ -6,4 +6,5 @@ tslib_1.__exportStar(require("./state"), exports);
6
6
  tslib_1.__exportStar(require("./portalSearchItems"), exports);
7
7
  tslib_1.__exportStar(require("./hubSearchItems"), exports);
8
8
  tslib_1.__exportStar(require("./portalSearchGroups"), exports);
9
+ tslib_1.__exportStar(require("./portalSearchUsers"), exports);
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/search/_internal/index.ts"],"names":[],"mappings":";;;AAAA,kEAAwC;AACxC,kDAAwB;AACxB,8DAAoC;AACpC,2DAAiC;AACjC,+DAAqC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/search/_internal/index.ts"],"names":[],"mappings":";;;AAAA,kEAAwC;AACxC,kDAAwB;AACxB,8DAAoC;AACpC,2DAAiC;AACjC,+DAAqC;AACrC,8DAAoC"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.expandPredicate = void 0;
4
+ const objects_1 = require("../../objects");
5
+ const util_1 = require("../../util");
6
+ const utils_1 = require("../utils");
7
+ function expandPredicate(predicate) {
8
+ const result = {};
9
+ const dateProps = ["created", "modified", "lastlogin"];
10
+ const copyProps = [
11
+ "filterType",
12
+ "term",
13
+ "searchUserAccess",
14
+ "isopendata",
15
+ "searchUserName",
16
+ ];
17
+ const nonMatchOptionsFields = [...dateProps, ...copyProps];
18
+ // Do the conversion
19
+ Object.entries(predicate).forEach(([key, value]) => {
20
+ // Handle MatchOptions fields
21
+ if (!nonMatchOptionsFields.includes(key)) {
22
+ objects_1.setProp(key, utils_1.valueToMatchOptions(value), result);
23
+ }
24
+ // Handle Date fields
25
+ if (dateProps.includes(key)) {
26
+ const dateFieldValue = util_1.cloneObject(objects_1.getProp(predicate, key));
27
+ if (objects_1.getProp(predicate, `${key}.type`) === "relative-date") {
28
+ objects_1.setProp(key, utils_1.relativeDateToDateRange(dateFieldValue), result);
29
+ }
30
+ else {
31
+ objects_1.setProp(key, dateFieldValue, result);
32
+ }
33
+ }
34
+ // Handle fields that are just copied forward
35
+ if (copyProps.includes(key) && predicate.hasOwnProperty(key)) {
36
+ objects_1.setProp(key, value, result);
37
+ }
38
+ });
39
+ return result;
40
+ }
41
+ exports.expandPredicate = expandPredicate;
42
+ //# sourceMappingURL=ipredicate-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ipredicate-utils.js","sourceRoot":"","sources":["../../../../src/search/_internal/ipredicate-utils.ts"],"names":[],"mappings":";;;AAAA,2CAAiD;AACjD,qCAAyC;AAEzC,oCAAwE;AAExE,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,67 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.portalSearchGroups = exports.portalSearchGroupsFilterGroups = void 0;
3
+ exports.portalSearchGroups = void 0;
4
4
  const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
5
5
  const index_1 = require("../../index");
6
6
  const HubGroups_1 = require("../../groups/HubGroups");
7
- const filter_utils_1 = require("../filter-utils");
8
- const ifilter_utils_1 = require("./ifilter-utils");
7
+ const ifilter_utils_1 = require("../ifilter-utils");
9
8
  const utils_1 = require("../utils");
10
- /**
11
- * @private
12
- * DEPRECATED: Use `portalSerchGroups`
13
- * Portal Search Implementation for Groups
14
- * @param filterGroups
15
- * @param options
16
- * @returns
17
- */
18
- async function portalSearchGroupsFilterGroups(filterGroups, options) {
19
- // API
20
- const api = utils_1.expandApi(options.api || "arcgis");
21
- if (!options.requestOptions) {
22
- if (options.authentication) {
23
- // create minimal requestOptions
24
- options.requestOptions = {
25
- authentication: options.authentication,
26
- portal: options.authentication.portal,
27
- };
28
- }
29
- else {
30
- options.requestOptions = {
31
- portal: `${api.url}/sharing/rest`,
32
- };
33
- }
34
- }
35
- // Expand the individual filters in each of the groups
36
- const expandedGroups = filterGroups.map((fg) => {
37
- fg.filters = fg.filters.map(filter_utils_1.expandFilter);
38
- return fg;
39
- });
40
- // Serialize the all the groups for portal
41
- const so = filter_utils_1.serializeFilterGroupsForPortal(expandedGroups);
42
- // Array of properties we want to copy from IHubSearchOptions to the ISearchOptions
43
- const props = [
44
- "authentication",
45
- "num",
46
- "sortField",
47
- "sortOrder",
48
- "include",
49
- "start",
50
- "requestOptions",
51
- ];
52
- // copy the props over
53
- props.forEach((prop) => {
54
- if (options.hasOwnProperty(prop)) {
55
- so[prop] = options[prop];
56
- }
57
- });
58
- // If we don't have auth, ensure we have .portal
59
- if (!so.authentication) {
60
- so.portal = so.requestOptions.portal || `${api.url}/sharing/rest`;
61
- }
62
- return searchPortal(so);
63
- }
64
- exports.portalSearchGroupsFilterGroups = portalSearchGroupsFilterGroups;
9
+ const ipredicate_utils_1 = require("./ipredicate-utils");
65
10
  /**
66
11
  * @private
67
12
  * Portal Search Implementation for Groups
@@ -75,7 +20,7 @@ async function portalSearchGroups(query, options) {
75
20
  }
76
21
  // Expand the individual predicates in each filter
77
22
  query.filters = query.filters.map((filter) => {
78
- filter.predicates = filter.predicates.map(ifilter_utils_1.expandPredicate);
23
+ filter.predicates = filter.predicates.map(ipredicate_utils_1.expandPredicate);
79
24
  return filter;
80
25
  });
81
26
  // Serialize the all the groups for portal
@@ -1 +1 @@
1
- {"version":3,"file":"portalSearchGroups.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchGroups.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"portalSearchGroups.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchGroups.ts"],"names":[],"mappings":";;;AAAA,iEAAwE;AAExE,uCAAuC;AACvC,sDAAiE;AAEjE,oDAA2D;AAO3D,oCAA2C;AAC3C,yDAAqD;AAErD;;;;;;GAMG;AACI,KAAK,UAAU,kBAAkB,CACtC,KAAa,EACb,OAA0B;IAE1B,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;QAC3B,MAAM,IAAI,gBAAQ,CAChB,oBAAoB,EACpB,qCAAqC,CACtC,CAAC;KACH;IAED,kDAAkD;IAClD,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC3C,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,kCAAe,CAAC,CAAC;QAC3D,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,0CAA0C;IAC1C,MAAM,EAAE,GAAG,uCAAuB,CAAC,KAAK,CAAC,CAAC;IAC1C,mFAAmF;IACnF,MAAM,KAAK,GAAmC;QAC5C,KAAK;QACL,WAAW;QACX,WAAW;QACX,SAAS;QACT,OAAO;QACP,gBAAgB;KACjB,CAAC;IACF,sBAAsB;IACtB,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACrB,IAAI,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;YAChC,EAAE,CAAC,IAA4B,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;SAClD;IACH,CAAC,CAAC,CAAC;IAEH,gDAAgD;IAChD,IAAI,OAAO,CAAC,cAAc,CAAC,cAAc,EAAE;QACzC,EAAE,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC;KAC3D;SAAM;QACL,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC;KAC3C;IAED,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;AAC1B,CAAC;AA3CD,gDA2CC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,YAAY,CACzB,aAA6B;IAE7B,wBAAwB;IACxB,MAAM,IAAI,GAAG,MAAM,iCAAY,CAAC,aAAa,CAAC,CAAC;IAE/C,qCAAqC;IACrC,uCAAuC;IACvC,MAAM,EAAE,GAAG,CAAC,IAAY,EAAE,EAAE;QAC1B,OAAO,mBAAmB,CACxB,IAAI,EACJ,aAAa,CAAC,OAAO,EACrB,aAAa,CAAC,cAAc,CAC7B,CAAC;IACJ,CAAC,CAAC;IAEF,mBAAmB;IACnB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAExD,6CAA6C;IAC7C,uBAAuB;IACvB,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO;QACP,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QAC5B,IAAI,EAAE,uBAAe,CACnB,aAAa,EACb,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,KAAK,EACV,YAAY,CACb;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,mBAAmB,CAChC,KAAa,EACb,WAAqB,EAAE,EACvB,cAAmC;IAEnC,+BAA+B;IAC/B,iDAAiD;IACjD,6CAA6C;IAC7C,mCAAmC;IACnC,OAAO,mCAAuB,CAAC,KAAK,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;AAClE,CAAC"}