@esri/hub-common 9.32.1 → 9.33.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 (39) hide show
  1. package/dist/es2017/search/filter-utils.js +149 -0
  2. package/dist/es2017/search/filter-utils.js.map +1 -0
  3. package/dist/es2017/search/index.js +1 -0
  4. package/dist/es2017/search/index.js.map +1 -1
  5. package/dist/es2017/search/types/IHubSearchResponse.js +1 -0
  6. package/dist/es2017/search/types/IHubSearchResponse.js.map +1 -0
  7. package/dist/es2017/search/types/index.js +1 -0
  8. package/dist/es2017/search/types/index.js.map +1 -1
  9. package/dist/es2017/search/utils.js +5 -1
  10. package/dist/es2017/search/utils.js.map +1 -1
  11. package/dist/esm/search/filter-utils.js +152 -0
  12. package/dist/esm/search/filter-utils.js.map +1 -0
  13. package/dist/esm/search/index.js +1 -0
  14. package/dist/esm/search/index.js.map +1 -1
  15. package/dist/esm/search/types/IHubSearchResponse.js +1 -0
  16. package/dist/esm/search/types/IHubSearchResponse.js.map +1 -0
  17. package/dist/esm/search/types/index.js +1 -0
  18. package/dist/esm/search/types/index.js.map +1 -1
  19. package/dist/esm/search/utils.js +5 -1
  20. package/dist/esm/search/utils.js.map +1 -1
  21. package/dist/node/search/filter-utils.js +154 -0
  22. package/dist/node/search/filter-utils.js.map +1 -0
  23. package/dist/node/search/index.js +1 -0
  24. package/dist/node/search/index.js.map +1 -1
  25. package/dist/node/search/types/IHubSearchResponse.js +3 -0
  26. package/dist/node/search/types/IHubSearchResponse.js.map +1 -0
  27. package/dist/node/search/types/index.js +1 -0
  28. package/dist/node/search/types/index.js.map +1 -1
  29. package/dist/node/search/utils.js +5 -1
  30. package/dist/node/search/utils.js.map +1 -1
  31. package/dist/types/search/filter-utils.d.ts +18 -0
  32. package/dist/types/search/index.d.ts +1 -0
  33. package/dist/types/search/types/IHubSearchResponse.d.ts +17 -0
  34. package/dist/types/search/types/index.d.ts +1 -0
  35. package/dist/types/search/types/types.d.ts +7 -0
  36. package/dist/types/search/utils.d.ts +1 -0
  37. package/dist/umd/common.umd.js +172 -18
  38. package/dist/umd/common.umd.js.map +1 -1
  39. package/package.json +1 -1
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.serializeFilterGroupsForPortal = exports.expandFilter = void 0;
4
+ const objects_1 = require("../objects");
5
+ const util_1 = require("../util");
6
+ const utils_1 = require("./utils");
7
+ /**
8
+ * Expand a Filter into it's more expressive structure so it can be
9
+ * serialized deterministically.
10
+ *
11
+ * Props with type `string | string[] | MatchOptions` expand into `IMatchOptions`
12
+ * Props relative-dates are expanded into formal date-ranges
13
+ * @param filter
14
+ * @returns
15
+ */
16
+ function expandFilter(filter) {
17
+ const result = {};
18
+ const dateProps = ["created", "modified", "lastlogin"];
19
+ const copyProps = ["filterType", "term", "searchUserAccess"];
20
+ const nonMatchOptionsFields = [...dateProps, ...copyProps];
21
+ // Do the conversion
22
+ Object.entries(filter).forEach(([key, value]) => {
23
+ // Handle MatchOptions fields
24
+ if (!nonMatchOptionsFields.includes(key)) {
25
+ // setProp side-steps typescript complaining
26
+ objects_1.setProp(key, utils_1.valueToMatchOptions(value), result);
27
+ }
28
+ // Handle Date fields
29
+ if (dateProps.includes(key)) {
30
+ const dateFieldValue = util_1.cloneObject(objects_1.getProp(filter, key));
31
+ if (objects_1.getProp(filter, `${key}.type`) === "relative-date") {
32
+ objects_1.setProp(key, utils_1.relativeDateToDateRange(dateFieldValue), result);
33
+ }
34
+ else {
35
+ objects_1.setProp(key, dateFieldValue, result);
36
+ }
37
+ }
38
+ // Handle fields that are just copied forward
39
+ if (copyProps.includes(key) && filter.hasOwnProperty(key)) {
40
+ objects_1.setProp(key, value, result);
41
+ }
42
+ });
43
+ return result;
44
+ }
45
+ exports.expandFilter = expandFilter;
46
+ /**
47
+ * Serialize a FilterGroup of any type for Portal
48
+ * @param filterGroups
49
+ * @returns
50
+ */
51
+ function serializeFilterGroupsForPortal(filterGroups) {
52
+ const result = {
53
+ q: "",
54
+ filter: "",
55
+ };
56
+ result.q = filterGroups.map(serializeGroup).join(" AND ");
57
+ return result;
58
+ }
59
+ exports.serializeFilterGroupsForPortal = serializeFilterGroupsForPortal;
60
+ /**
61
+ * Serialize the filters in a FitlerGroup into a Portal Query
62
+ * @param group
63
+ * @returns
64
+ */
65
+ function serializeGroup(group) {
66
+ const operation = group.operation || "AND";
67
+ const filters = group.filters.map(expandFilter);
68
+ return filters.map(serializeFilter).join(` ${operation} `);
69
+ }
70
+ /**
71
+ * Serialize a Filter into a Portal Query
72
+ * @param filter
73
+ * @returns
74
+ */
75
+ function serializeFilter(filter) {
76
+ const dateProps = ["created", "modified"];
77
+ const specialProps = ["filterType", "searchUserAccess", "term", ...dateProps];
78
+ // TODO: Look at using reduce vs .map and remove the `.filter`
79
+ const stringFilters = Object.entries(filter)
80
+ .map(([key, value]) => {
81
+ if (!specialProps.includes(key)) {
82
+ return serializeMatchOptions(key, value);
83
+ }
84
+ if (dateProps.includes(key)) {
85
+ return serializeDateRange(key, value);
86
+ }
87
+ if (key === "term") {
88
+ return value;
89
+ }
90
+ })
91
+ .filter((e) => e !== undefined);
92
+ // eslint-disable-next-line unicorn/prefer-ternary
93
+ if (stringFilters.length > 1) {
94
+ return `(${stringFilters.join(" AND ")})`;
95
+ }
96
+ else {
97
+ return stringFilters[0];
98
+ }
99
+ }
100
+ /**
101
+ * Serialize MatchOptions into portal syntax
102
+ * @param key
103
+ * @param value
104
+ * @returns
105
+ */
106
+ function serializeMatchOptions(key, value) {
107
+ let result = "";
108
+ if (value.any) {
109
+ result = `${serializeStringOrArray("OR", key, value.any)}`;
110
+ }
111
+ if (value.all) {
112
+ result =
113
+ (result ? result + " AND " : "") +
114
+ `${serializeStringOrArray("AND", key, value.all)}`;
115
+ }
116
+ if (value.not) {
117
+ // negate the entries if they are not
118
+ result =
119
+ (result ? result + " AND " : "") +
120
+ `${serializeStringOrArray("OR", `-${key}`, value.not)}`;
121
+ }
122
+ // TODO HANDLE EXACT
123
+ return result;
124
+ }
125
+ /**
126
+ * Serialize a date-range into Portal syntax
127
+ * @param key
128
+ * @param range
129
+ * @returns
130
+ */
131
+ function serializeDateRange(key, range) {
132
+ return `${key}:[${range.from} TO ${range.to}]`;
133
+ }
134
+ /**
135
+ * Serialize a `string` or `string[]` into a string
136
+ * @param join
137
+ * @param key
138
+ * @param value
139
+ * @returns
140
+ */
141
+ function serializeStringOrArray(join, key, value) {
142
+ let q = "";
143
+ if (Array.isArray(value)) {
144
+ q = `${key}:"${value.join(`" ${join} ${key}:"`)}"`;
145
+ if (value.length > 1) {
146
+ q = `(${q})`;
147
+ }
148
+ }
149
+ else {
150
+ q = `${key}:"${value}"`;
151
+ }
152
+ return q;
153
+ }
154
+ //# sourceMappingURL=filter-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-utils.js","sourceRoot":"","sources":["../../../src/search/filter-utils.ts"],"names":[],"mappings":"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"}
@@ -12,4 +12,5 @@ tslib_1.__exportStar(require("./_searchUsers"), exports);
12
12
  tslib_1.__exportStar(require("./types"), exports);
13
13
  tslib_1.__exportStar(require("./collectionState"), exports);
14
14
  tslib_1.__exportStar(require("./convertCatalog"), exports);
15
+ tslib_1.__exportStar(require("./filter-utils"), exports);
15
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/search/index.ts"],"names":[],"mappings":";;;AAAA,2DAAiC;AACjC,0DAAgC;AAChC,wDAA8B;AAC9B,uDAA6B;AAC7B,kDAAwB;AACxB,2DAAiC;AACjC,0DAAgC;AAChC,yDAA+B;AAC/B,kDAAwB;AACxB,4DAAkC;AAClC,2DAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/search/index.ts"],"names":[],"mappings":";;;AAAA,2DAAiC;AACjC,0DAAgC;AAChC,wDAA8B;AAC9B,uDAA6B;AAC7B,kDAAwB;AACxB,2DAAiC;AACjC,0DAAgC;AAChC,yDAA+B;AAC/B,kDAAwB;AACxB,4DAAkC;AAClC,2DAAiC;AACjC,yDAA+B"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IHubSearchResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IHubSearchResponse.js","sourceRoot":"","sources":["../../../../src/search/types/IHubSearchResponse.ts"],"names":[],"mappings":""}
@@ -8,5 +8,6 @@ tslib_1.__exportStar(require("./IFacetOption"), exports);
8
8
  tslib_1.__exportStar(require("./IHubApiSearchRequest"), exports);
9
9
  tslib_1.__exportStar(require("./IHubSearchOptions"), exports);
10
10
  tslib_1.__exportStar(require("./IHubSearchResult"), exports);
11
+ tslib_1.__exportStar(require("./IHubSearchResponse"), exports);
11
12
  tslib_1.__exportStar(require("./types"), exports);
12
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/search/types/index.ts"],"names":[],"mappings":";;;AAAA,qDAA2B;AAC3B,wDAA8B;AAC9B,mDAAyB;AACzB,yDAA+B;AAC/B,iEAAuC;AACvC,8DAAoC;AACpC,6DAAmC;AACnC,kDAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/search/types/index.ts"],"names":[],"mappings":";;;AAAA,qDAA2B;AAC3B,wDAA8B;AAC9B,mDAAyB;AACzB,yDAA+B;AAC/B,iEAAuC;AACvC,8DAAoC;AACpC,6DAAmC;AACnC,+DAAqC;AACrC,kDAAwB"}
@@ -233,6 +233,7 @@ exports.mergeSearchOptions = mergeSearchOptions;
233
233
  /**
234
234
  * @private
235
235
  * Serialize a `MatchOptions` into `q` or `filter` on an `ISearchOptions`
236
+ * DEPRECATED: Serialization should be handled in filter-utils.ts
236
237
  * @param key
237
238
  * @param opts
238
239
  * @returns
@@ -333,7 +334,10 @@ exports.serializeDateRange = serializeDateRange;
333
334
  function serializeStringOrArray(join, key, value) {
334
335
  let q = "";
335
336
  if (Array.isArray(value)) {
336
- q = `(${key}:"${value.join(`" ${join} ${key}:"`)}")`;
337
+ q = `${key}:"${value.join(`" ${join} ${key}:"`)}"`;
338
+ if (value.length > 1) {
339
+ q = `(${q})`;
340
+ }
337
341
  }
338
342
  else {
339
343
  q = `${key}:"${value}"`;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/search/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/search/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { ISearchOptions } from "@esri/arcgis-rest-portal";
2
+ import { IFilterGroup, FilterType } from "./types";
3
+ /**
4
+ * Expand a Filter into it's more expressive structure so it can be
5
+ * serialized deterministically.
6
+ *
7
+ * Props with type `string | string[] | MatchOptions` expand into `IMatchOptions`
8
+ * Props relative-dates are expanded into formal date-ranges
9
+ * @param filter
10
+ * @returns
11
+ */
12
+ export declare function expandFilter<T>(filter: T): T;
13
+ /**
14
+ * Serialize a FilterGroup of any type for Portal
15
+ * @param filterGroups
16
+ * @returns
17
+ */
18
+ export declare function serializeFilterGroupsForPortal(filterGroups: Array<IFilterGroup<FilterType>>): ISearchOptions;
@@ -9,3 +9,4 @@ export * from "./_searchUsers";
9
9
  export * from "./types";
10
10
  export * from "./collectionState";
11
11
  export * from "./convertCatalog";
12
+ export * from "./filter-utils";
@@ -0,0 +1,17 @@
1
+ import { IFacet } from "./IFacet";
2
+ /**
3
+ * Defines a generic search response interface with parameterized result type
4
+ * for different types of searches
5
+ *
6
+ * total - total number of results
7
+ * results - potentially paginated list of results
8
+ * hasNext - boolean flag for if there are any more pages ofresults
9
+ * next - invokable function for obtaining next page of results
10
+ */
11
+ export interface IHubSearchResponse<T> {
12
+ total: number;
13
+ results: T[];
14
+ hasNext: boolean;
15
+ next: (params?: any) => Promise<IHubSearchResponse<T>>;
16
+ facets?: IFacet[];
17
+ }
@@ -5,4 +5,5 @@ export * from "./IFacetOption";
5
5
  export * from "./IHubApiSearchRequest";
6
6
  export * from "./IHubSearchOptions";
7
7
  export * from "./IHubSearchResult";
8
+ export * from "./IHubSearchResponse";
8
9
  export * from "./types";
@@ -24,6 +24,10 @@ import { IFacet } from "./IFacet";
24
24
  export declare type Filter<T extends FilterType> = IFilterTypeMap[T] & {
25
25
  filterType: T;
26
26
  };
27
+ export interface IFilterGroup<T extends FilterType> {
28
+ operation?: "AND" | "OR";
29
+ filters: Array<Filter<T>>;
30
+ }
27
31
  /**
28
32
  * Groups of filters with an operation specifying how the
29
33
  * filters should be connected when serialized
@@ -38,6 +42,9 @@ export interface IFilterGroup<T extends FilterType> {
38
42
  */
39
43
  export interface IFilterTypeMap {
40
44
  item: IItemFilter;
45
+ /**
46
+ * DEPRECATED use item
47
+ */
41
48
  content: IContentFilterDefinition;
42
49
  user: IUserFilterDefinition;
43
50
  group: IGroupFilterDefinition;
@@ -69,6 +69,7 @@ export declare function mergeSearchOptions(so1: ISearchOptions, so2: ISearchOpti
69
69
  /**
70
70
  * @private
71
71
  * Serialize a `MatchOptions` into `q` or `filter` on an `ISearchOptions`
72
+ * DEPRECATED: Serialization should be handled in filter-utils.ts
72
73
  * @param key
73
74
  * @param opts
74
75
  * @returns
@@ -1,5 +1,5 @@
1
1
  /* @preserve
2
- * @esri/hub-common - v9.32.0 - Wed May 18 2022 18:25:39 GMT+0000 (Coordinated Universal Time)
2
+ * @esri/hub-common - v9.32.1 - Thu May 19 2022 17:14:39 GMT+0000 (Coordinated Universal Time)
3
3
  * Copyright (c) 2022 Environmental Systems Research Institute, Inc.
4
4
  * Apache-2.0
5
5
  */
@@ -13141,11 +13141,12 @@
13141
13141
  /**
13142
13142
  * @private
13143
13143
  * Serialize a `MatchOptions` into `q` or `filter` on an `ISearchOptions`
13144
+ * DEPRECATED: Serialization should be handled in filter-utils.ts
13144
13145
  * @param key
13145
13146
  * @param opts
13146
13147
  * @returns
13147
13148
  */
13148
- function serializeMatchOptions(key, opts) {
13149
+ function serializeMatchOptions$1(key, opts) {
13149
13150
  var result = {
13150
13151
  q: "",
13151
13152
  filter: "",
@@ -13170,7 +13171,7 @@
13170
13171
  var groupFilterableFields = ["title", "typekeywords", "owner"];
13171
13172
  var filterableFields = __spreadArrays(userFilterableFields, itemFilterableFields, groupFilterableFields);
13172
13173
  if (filterableFields.includes(key)) {
13173
- result.filter = serializeStringOrArray("AND", key, opts.exact);
13174
+ result.filter = serializeStringOrArray$1("AND", key, opts.exact);
13174
13175
  }
13175
13176
  else {
13176
13177
  // Treat it the same as .all
@@ -13196,18 +13197,18 @@
13196
13197
  }
13197
13198
  // Handle the other props
13198
13199
  if (opts.any) {
13199
- result.q = serializeStringOrArray("OR", key, opts.any);
13200
+ result.q = serializeStringOrArray$1("OR", key, opts.any);
13200
13201
  }
13201
13202
  if (opts.all) {
13202
13203
  result.q =
13203
13204
  (result.q ? result.q + " AND " : "") +
13204
- serializeStringOrArray("AND", key, opts.all);
13205
+ serializeStringOrArray$1("AND", key, opts.all);
13205
13206
  }
13206
13207
  if (opts.not) {
13207
13208
  // negate the entries if they are not
13208
13209
  result.q =
13209
13210
  (result.q ? result.q + " AND " : "") +
13210
- serializeStringOrArray("OR", "-" + key, opts.not);
13211
+ serializeStringOrArray$1("OR", "-" + key, opts.not);
13211
13212
  }
13212
13213
  return result;
13213
13214
  }
@@ -13218,7 +13219,7 @@
13218
13219
  * @param range
13219
13220
  * @returns
13220
13221
  */
13221
- function serializeDateRange(key, range) {
13222
+ function serializeDateRange$1(key, range) {
13222
13223
  return {
13223
13224
  q: key + ":[" + range.from + " TO " + range.to + "]",
13224
13225
  filter: "",
@@ -13232,10 +13233,13 @@
13232
13233
  * @param value
13233
13234
  * @returns
13234
13235
  */
13235
- function serializeStringOrArray(join, key, value) {
13236
+ function serializeStringOrArray$1(join, key, value) {
13236
13237
  var q = "";
13237
13238
  if (Array.isArray(value)) {
13238
- q = "(" + key + ":\"" + value.join("\" " + join + " " + key + ":\"") + "\")";
13239
+ q = key + ":\"" + value.join("\" " + join + " " + key + ":\"") + "\"";
13240
+ if (value.length > 1) {
13241
+ q = "(" + q + ")";
13242
+ }
13239
13243
  }
13240
13244
  else {
13241
13245
  q = key + ":\"" + value + "\"";
@@ -13716,11 +13720,11 @@
13716
13720
  var key = _a[0], value = _a[1];
13717
13721
  // MatchOptions may go into either q or filter
13718
13722
  if (!specialProps.includes(key)) {
13719
- result = mergeSearchOptions(result, serializeMatchOptions(key, value), "AND");
13723
+ result = mergeSearchOptions(result, serializeMatchOptions$1(key, value), "AND");
13720
13724
  }
13721
13725
  // Dates only go into q
13722
13726
  if (dateProps.includes(key)) {
13723
- result = mergeSearchOptions(result, serializeDateRange(key, value), "AND");
13727
+ result = mergeSearchOptions(result, serializeDateRange$1(key, value), "AND");
13724
13728
  }
13725
13729
  });
13726
13730
  return result;
@@ -15966,11 +15970,11 @@
15966
15970
  var key = _a[0], value = _a[1];
15967
15971
  // MatchOptions fields
15968
15972
  if (!specialProps.includes(key)) {
15969
- result = mergeSearchOptions(result, serializeMatchOptions(key, value), "AND");
15973
+ result = mergeSearchOptions(result, serializeMatchOptions$1(key, value), "AND");
15970
15974
  }
15971
15975
  // Dates only go into q
15972
15976
  if (dateProps.includes(key)) {
15973
- result = mergeSearchOptions(result, serializeDateRange(key, value), "AND");
15977
+ result = mergeSearchOptions(result, serializeDateRange$1(key, value), "AND");
15974
15978
  }
15975
15979
  });
15976
15980
  // searchUserAccess is also a top-level property
@@ -16099,11 +16103,11 @@
16099
16103
  var key = _a[0], value = _a[1];
16100
16104
  // MatchOptions fields
16101
16105
  if (!specialProps.includes(key)) {
16102
- result = mergeSearchOptions(result, serializeMatchOptions(key, value), "AND");
16106
+ result = mergeSearchOptions(result, serializeMatchOptions$1(key, value), "AND");
16103
16107
  }
16104
16108
  // Dates only go into q
16105
16109
  if (dateProps.includes(key)) {
16106
- result = mergeSearchOptions(result, serializeDateRange(key, value), "AND");
16110
+ result = mergeSearchOptions(result, serializeDateRange$1(key, value), "AND");
16107
16111
  }
16108
16112
  });
16109
16113
  // disabled is also a top-level property
@@ -16604,6 +16608,154 @@
16604
16608
  return catalog;
16605
16609
  }
16606
16610
 
16611
+ /**
16612
+ * Expand a Filter into it's more expressive structure so it can be
16613
+ * serialized deterministically.
16614
+ *
16615
+ * Props with type `string | string[] | MatchOptions` expand into `IMatchOptions`
16616
+ * Props relative-dates are expanded into formal date-ranges
16617
+ * @param filter
16618
+ * @returns
16619
+ */
16620
+ function expandFilter(filter) {
16621
+ var result = {};
16622
+ var dateProps = ["created", "modified", "lastlogin"];
16623
+ var copyProps = ["filterType", "term", "searchUserAccess"];
16624
+ var nonMatchOptionsFields = __spreadArrays(dateProps, copyProps);
16625
+ // Do the conversion
16626
+ Object.entries(filter).forEach(function (_a) {
16627
+ var key = _a[0], value = _a[1];
16628
+ // Handle MatchOptions fields
16629
+ if (!nonMatchOptionsFields.includes(key)) {
16630
+ // setProp side-steps typescript complaining
16631
+ setProp(key, valueToMatchOptions(value), result);
16632
+ }
16633
+ // Handle Date fields
16634
+ if (dateProps.includes(key)) {
16635
+ var dateFieldValue = cloneObject$1(getProp(filter, key));
16636
+ if (getProp(filter, key + ".type") === "relative-date") {
16637
+ setProp(key, relativeDateToDateRange(dateFieldValue), result);
16638
+ }
16639
+ else {
16640
+ setProp(key, dateFieldValue, result);
16641
+ }
16642
+ }
16643
+ // Handle fields that are just copied forward
16644
+ if (copyProps.includes(key) && filter.hasOwnProperty(key)) {
16645
+ setProp(key, value, result);
16646
+ }
16647
+ });
16648
+ return result;
16649
+ }
16650
+ /**
16651
+ * Serialize a FilterGroup of any type for Portal
16652
+ * @param filterGroups
16653
+ * @returns
16654
+ */
16655
+ function serializeFilterGroupsForPortal(filterGroups) {
16656
+ var result = {
16657
+ q: "",
16658
+ filter: "",
16659
+ };
16660
+ result.q = filterGroups.map(serializeGroup).join(" AND ");
16661
+ return result;
16662
+ }
16663
+ /**
16664
+ * Serialize the filters in a FitlerGroup into a Portal Query
16665
+ * @param group
16666
+ * @returns
16667
+ */
16668
+ function serializeGroup(group) {
16669
+ var operation = group.operation || "AND";
16670
+ var filters = group.filters.map(expandFilter);
16671
+ return filters.map(serializeFilter).join(" " + operation + " ");
16672
+ }
16673
+ /**
16674
+ * Serialize a Filter into a Portal Query
16675
+ * @param filter
16676
+ * @returns
16677
+ */
16678
+ function serializeFilter(filter) {
16679
+ var dateProps = ["created", "modified"];
16680
+ var specialProps = __spreadArrays(["filterType", "searchUserAccess", "term"], dateProps);
16681
+ // TODO: Look at using reduce vs .map and remove the `.filter`
16682
+ var stringFilters = Object.entries(filter)
16683
+ .map(function (_a) {
16684
+ var key = _a[0], value = _a[1];
16685
+ if (!specialProps.includes(key)) {
16686
+ return serializeMatchOptions(key, value);
16687
+ }
16688
+ if (dateProps.includes(key)) {
16689
+ return serializeDateRange(key, value);
16690
+ }
16691
+ if (key === "term") {
16692
+ return value;
16693
+ }
16694
+ })
16695
+ .filter(function (e) { return e !== undefined; });
16696
+ // eslint-disable-next-line unicorn/prefer-ternary
16697
+ if (stringFilters.length > 1) {
16698
+ return "(" + stringFilters.join(" AND ") + ")";
16699
+ }
16700
+ else {
16701
+ return stringFilters[0];
16702
+ }
16703
+ }
16704
+ /**
16705
+ * Serialize MatchOptions into portal syntax
16706
+ * @param key
16707
+ * @param value
16708
+ * @returns
16709
+ */
16710
+ function serializeMatchOptions(key, value) {
16711
+ var result = "";
16712
+ if (value.any) {
16713
+ result = "" + serializeStringOrArray("OR", key, value.any);
16714
+ }
16715
+ if (value.all) {
16716
+ result =
16717
+ (result ? result + " AND " : "") +
16718
+ ("" + serializeStringOrArray("AND", key, value.all));
16719
+ }
16720
+ if (value.not) {
16721
+ // negate the entries if they are not
16722
+ result =
16723
+ (result ? result + " AND " : "") +
16724
+ ("" + serializeStringOrArray("OR", "-" + key, value.not));
16725
+ }
16726
+ // TODO HANDLE EXACT
16727
+ return result;
16728
+ }
16729
+ /**
16730
+ * Serialize a date-range into Portal syntax
16731
+ * @param key
16732
+ * @param range
16733
+ * @returns
16734
+ */
16735
+ function serializeDateRange(key, range) {
16736
+ return key + ":[" + range.from + " TO " + range.to + "]";
16737
+ }
16738
+ /**
16739
+ * Serialize a `string` or `string[]` into a string
16740
+ * @param join
16741
+ * @param key
16742
+ * @param value
16743
+ * @returns
16744
+ */
16745
+ function serializeStringOrArray(join, key, value) {
16746
+ var q = "";
16747
+ if (Array.isArray(value)) {
16748
+ q = key + ":\"" + value.join("\" " + join + " " + key + ":\"") + "\"";
16749
+ if (value.length > 1) {
16750
+ q = "(" + q + ")";
16751
+ }
16752
+ }
16753
+ else {
16754
+ q = key + ":\"" + value + "\"";
16755
+ }
16756
+ return q;
16757
+ }
16758
+
16607
16759
  /**
16608
16760
  * Add telemetry config object
16609
16761
  * @private
@@ -18487,6 +18639,7 @@
18487
18639
  exports.expandApi = expandApi;
18488
18640
  exports.expandApis = expandApis;
18489
18641
  exports.expandContentFilter = expandContentFilter;
18642
+ exports.expandFilter = expandFilter;
18490
18643
  exports.expandGroupFilter = expandGroupFilter;
18491
18644
  exports.expandTypeField = expandTypeField;
18492
18645
  exports.expandUserFilter = expandUserFilter;
@@ -18629,12 +18782,13 @@
18629
18782
  exports.searchSites = searchSites;
18630
18783
  exports.serializeCollectionState = serializeCollectionState;
18631
18784
  exports.serializeContentFilterForPortal = serializeContentFilterForPortal;
18632
- exports.serializeDateRange = serializeDateRange;
18785
+ exports.serializeDateRange = serializeDateRange$1;
18786
+ exports.serializeFilterGroupsForPortal = serializeFilterGroupsForPortal;
18633
18787
  exports.serializeGroupFilterForPortal = serializeGroupFilterForPortal;
18634
- exports.serializeMatchOptions = serializeMatchOptions;
18788
+ exports.serializeMatchOptions = serializeMatchOptions$1;
18635
18789
  exports.serializeModel = serializeModel;
18636
18790
  exports.serializeSpatialReference = serializeSpatialReference;
18637
- exports.serializeStringOrArray = serializeStringOrArray;
18791
+ exports.serializeStringOrArray = serializeStringOrArray$1;
18638
18792
  exports.serializeUserFilterForPortal = serializeUserFilterForPortal;
18639
18793
  exports.setContentHubId = setContentHubId;
18640
18794
  exports.setContentSiteUrls = setContentSiteUrls;