@esri/hub-common 9.43.3 → 9.44.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 (71) hide show
  1. package/dist/es2017/ArcGISContext.js +1 -1
  2. package/dist/es2017/ArcGISContext.js.map +1 -1
  3. package/dist/es2017/search/Collection.js +71 -0
  4. package/dist/es2017/search/Collection.js.map +1 -0
  5. package/dist/es2017/search/_internal/ifilter-utils.js +221 -0
  6. package/dist/es2017/search/_internal/ifilter-utils.js.map +1 -0
  7. package/dist/es2017/search/_internal/portalSearchGroups.js +47 -2
  8. package/dist/es2017/search/_internal/portalSearchGroups.js.map +1 -1
  9. package/dist/es2017/search/_internal/portalSearchItems.js +95 -6
  10. package/dist/es2017/search/_internal/portalSearchItems.js.map +1 -1
  11. package/dist/es2017/search/_internal/portalSearchUsers.js +46 -1
  12. package/dist/es2017/search/_internal/portalSearchUsers.js.map +1 -1
  13. package/dist/es2017/search/filter-utils.js +1 -0
  14. package/dist/es2017/search/filter-utils.js.map +1 -1
  15. package/dist/es2017/search/hubSearch.js +38 -3
  16. package/dist/es2017/search/hubSearch.js.map +1 -1
  17. package/dist/es2017/search/types/IHubCatalog.js +1 -0
  18. package/dist/es2017/search/types/IHubCatalog.js.map +1 -0
  19. package/dist/es2017/search/types/index.js +1 -0
  20. package/dist/es2017/search/types/index.js.map +1 -1
  21. package/dist/esm/ArcGISContext.js +1 -1
  22. package/dist/esm/ArcGISContext.js.map +1 -1
  23. package/dist/esm/search/Collection.js +106 -0
  24. package/dist/esm/search/Collection.js.map +1 -0
  25. package/dist/esm/search/_internal/ifilter-utils.js +222 -0
  26. package/dist/esm/search/_internal/ifilter-utils.js.map +1 -0
  27. package/dist/esm/search/_internal/portalSearchGroups.js +50 -2
  28. package/dist/esm/search/_internal/portalSearchGroups.js.map +1 -1
  29. package/dist/esm/search/_internal/portalSearchItems.js +97 -6
  30. package/dist/esm/search/_internal/portalSearchItems.js.map +1 -1
  31. package/dist/esm/search/_internal/portalSearchUsers.js +49 -1
  32. package/dist/esm/search/_internal/portalSearchUsers.js.map +1 -1
  33. package/dist/esm/search/filter-utils.js +1 -0
  34. package/dist/esm/search/filter-utils.js.map +1 -1
  35. package/dist/esm/search/hubSearch.js +41 -3
  36. package/dist/esm/search/hubSearch.js.map +1 -1
  37. package/dist/esm/search/types/IHubCatalog.js +1 -0
  38. package/dist/esm/search/types/IHubCatalog.js.map +1 -0
  39. package/dist/esm/search/types/index.js +1 -0
  40. package/dist/esm/search/types/index.js.map +1 -1
  41. package/dist/node/ArcGISContext.js +1 -1
  42. package/dist/node/ArcGISContext.js.map +1 -1
  43. package/dist/node/search/Collection.js +75 -0
  44. package/dist/node/search/Collection.js.map +1 -0
  45. package/dist/node/search/_internal/ifilter-utils.js +226 -0
  46. package/dist/node/search/_internal/ifilter-utils.js.map +1 -0
  47. package/dist/node/search/_internal/portalSearchGroups.js +49 -3
  48. package/dist/node/search/_internal/portalSearchGroups.js.map +1 -1
  49. package/dist/node/search/_internal/portalSearchItems.js +98 -6
  50. package/dist/node/search/_internal/portalSearchItems.js.map +1 -1
  51. package/dist/node/search/_internal/portalSearchUsers.js +48 -2
  52. package/dist/node/search/_internal/portalSearchUsers.js.map +1 -1
  53. package/dist/node/search/filter-utils.js +1 -0
  54. package/dist/node/search/filter-utils.js.map +1 -1
  55. package/dist/node/search/hubSearch.js +39 -3
  56. package/dist/node/search/hubSearch.js.map +1 -1
  57. package/dist/node/search/types/IHubCatalog.js +3 -0
  58. package/dist/node/search/types/IHubCatalog.js.map +1 -0
  59. package/dist/node/search/types/index.js +1 -0
  60. package/dist/node/search/types/index.js.map +1 -1
  61. package/dist/types/search/Collection.d.ts +18 -0
  62. package/dist/types/search/_internal/ifilter-utils.d.ts +4 -0
  63. package/dist/types/search/_internal/portalSearchGroups.d.ts +12 -3
  64. package/dist/types/search/_internal/portalSearchItems.d.ts +28 -4
  65. package/dist/types/search/_internal/portalSearchUsers.d.ts +11 -2
  66. package/dist/types/search/hubSearch.d.ts +2 -1
  67. package/dist/types/search/types/IHubCatalog.d.ts +71 -0
  68. package/dist/types/search/types/index.d.ts +1 -0
  69. package/dist/umd/common.umd.js +485 -44
  70. package/dist/umd/common.umd.js.map +1 -1
  71. package/package.json +1 -1
@@ -1,15 +1,17 @@
1
1
  import { searchUsers, } from "@esri/arcgis-rest-portal";
2
2
  import { enrichUserSearchResult } from "../..";
3
+ import { expandPredicate, serializeQueryForPortal } from "./ifilter-utils";
3
4
  import HubError from "../../HubError";
4
5
  import { expandFilter, serializeFilterGroupsForPortal } from "../filter-utils";
5
6
  import { getNextFunction } from "../utils";
6
7
  /**
7
8
  * @private
9
+ * DEPRECATED: Use `portalSearchUsers`
8
10
  * Portal Search implementation for Users
9
11
  * @param filterGroups
10
12
  * @param options
11
13
  */
12
- export async function portalSearchUsers(filterGroups, options) {
14
+ export async function portalSearchUsersFilterGroups(filterGroups, options) {
13
15
  // requestOptions is always required and user must be authd
14
16
  if (!options.requestOptions) {
15
17
  throw new HubError("portalSearchUsers", "requestOptions: IHubRequestOptions is required.");
@@ -44,6 +46,49 @@ export async function portalSearchUsers(filterGroups, options) {
44
46
  // Execute search
45
47
  return searchPortal(so);
46
48
  }
49
+ /**
50
+ * @private
51
+ * Portal Search Implementation for Users
52
+ * @param filterGroups
53
+ * @param options
54
+ * @returns
55
+ */
56
+ export async function portalSearchUsers(query, options) {
57
+ // requestOptions is always required and user must be authd
58
+ if (!options.requestOptions) {
59
+ throw new HubError("portalSearchUsers", "requestOptions: IHubRequestOptions is required.");
60
+ }
61
+ if (!options.requestOptions.authentication) {
62
+ throw new HubError("portalSearchUsers", "requestOptions must pass authentication.");
63
+ }
64
+ // Expand the individual predicates in each filter
65
+ query.filters = query.filters.map((filter) => {
66
+ filter.predicates = filter.predicates.map(expandPredicate);
67
+ return filter;
68
+ });
69
+ // Serialize the all the groups for portal
70
+ const so = serializeQueryForPortal(query);
71
+ // Array of properties we want to copy from IHubSearchOptions to the ISearchOptions
72
+ const props = [
73
+ "num",
74
+ "sortField",
75
+ "sortOrder",
76
+ "include",
77
+ "start",
78
+ "requestOptions",
79
+ ];
80
+ // copy the props over
81
+ props.forEach((prop) => {
82
+ if (options.hasOwnProperty(prop)) {
83
+ so[prop] = options[prop];
84
+ }
85
+ });
86
+ // Unlike Groups and Item, the Users api *requires* authentication
87
+ // so we set it directly
88
+ so.authentication = options.requestOptions.authentication;
89
+ // Execute search
90
+ return searchPortal(so);
91
+ }
47
92
  /**
48
93
  * Internal portal search, which then converts `IGroup`s to `IHubSearchResult`s
49
94
  * handling enrichments & includes along the way
@@ -1 +1 @@
1
- {"version":3,"file":"portalSearchUsers.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchUsers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"portalSearchUsers.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchUsers.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { getProp, setProp } from "../objects";
2
2
  import { cloneObject } from "../util";
3
3
  import { relativeDateToDateRange, valueToMatchOptions } from "./utils";
4
+ // DEPRECATED - REMOVE THIS FILE
4
5
  /**
5
6
  * Expand a Filter into it's more expressive structure so it can be
6
7
  * serialized deterministically.
@@ -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":"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"}
@@ -2,8 +2,8 @@ import HubError from "../HubError";
2
2
  import { getProp } from "../objects";
3
3
  import { cloneObject } from "../util";
4
4
  import { expandApi } from "./utils";
5
- import { hubSearchItems, portalSearchItems, portalSearchGroups, } from "./_internal";
6
- import { portalSearchUsers } from "./_internal/portalSearchUsers";
5
+ import { hubSearchItems, portalSearchItems, portalSearchGroups, portalSearchItemsFilterGroups, portalSearchGroupsFilterGroups, } from "./_internal";
6
+ import { portalSearchUsers, portalSearchUsersFilterGroups, } from "./_internal/portalSearchUsers";
7
7
  /**
8
8
  * Main Search function for ArcGIS Hub
9
9
  *
@@ -32,6 +32,41 @@ export async function hubSearch(filterGroups, options) {
32
32
  const filterType = filterGroups[0].filterType;
33
33
  // get the API
34
34
  const apiType = expandApi(options.api || "arcgis").type;
35
+ const fnHash = {
36
+ arcgis: {
37
+ item: portalSearchItemsFilterGroups,
38
+ group: portalSearchGroupsFilterGroups,
39
+ user: portalSearchUsersFilterGroups,
40
+ },
41
+ "arcgis-hub": {
42
+ item: hubSearchItems,
43
+ },
44
+ };
45
+ const fn = getProp(fnHash, `${apiType}.${filterType}`);
46
+ if (!fn) {
47
+ throw new HubError(`hubSearch`, `Search via "${filterType}" filter against "${apiType}" api is not implemented`);
48
+ }
49
+ return fn(cloneObject(filterGroups), options);
50
+ }
51
+ export async function hubSearchQuery(query, options) {
52
+ // Validate inputs
53
+ if (!query) {
54
+ throw new HubError("hubSearch", "Query is required.");
55
+ }
56
+ if (!query.filters || !query.filters.length) {
57
+ throw new HubError("hubSearch", "Query must contain at least one Filter.");
58
+ }
59
+ if (!options.requestOptions) {
60
+ throw new HubError("hubSearch", "requestOptions: IHubRequestOptions is required.");
61
+ }
62
+ // Ensure includes is an array
63
+ if (!options.include) {
64
+ options.include = [];
65
+ }
66
+ // Get the type of the first filterGroup
67
+ const filterType = query.targetEntity;
68
+ // get the API
69
+ const apiType = expandApi(options.api || "arcgis").type;
35
70
  const fnHash = {
36
71
  arcgis: {
37
72
  item: portalSearchItems,
@@ -46,6 +81,6 @@ export async function hubSearch(filterGroups, options) {
46
81
  if (!fn) {
47
82
  throw new HubError(`hubSearch`, `Search via "${filterType}" filter against "${apiType}" api is not implemented`);
48
83
  }
49
- return fn(cloneObject(filterGroups), options);
84
+ return fn(cloneObject(query), options);
50
85
  }
51
86
  //# sourceMappingURL=hubSearch.js.map
@@ -1 +1 @@
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;AAStC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,YAA6C,EAC7C,OAA0B;IAE1B,kBAAkB;IAClB,IAAI,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;QACjD,MAAM,IAAI,QAAQ,CAChB,WAAW,EACX,iDAAiD,CAClD,CAAC;KACH;IACD,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;QACxB,MAAM,IAAI,QAAQ,CAChB,WAAW,EACX,oDAAoD,CACrD,CAAC;KACH;IAED,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;QAC3B,MAAM,IAAI,QAAQ,CAChB,WAAW,EACX,iDAAiD,CAClD,CAAC;KACH;IAED,8BAA8B;IAC9B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;QACpB,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;KACtB;IAED,wCAAwC;IACxC,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,UAAwB,CAAC;IAC5D,cAAc;IACd,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC,IAAI,CAAC;IAExD,MAAM,MAAM,GAAG;QACb,MAAM,EAAE;YACN,IAAI,EAAE,iBAAiB;YACvB,KAAK,EAAE,kBAAkB;YACzB,IAAI,EAAE,iBAAiB;SACxB;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,cAAc;SACrB;KACF,CAAC;IAEF,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,OAAO,IAAI,UAAU,EAAE,CAAC,CAAC;IACvD,IAAI,CAAC,EAAE,EAAE;QACP,MAAM,IAAI,QAAQ,CAChB,WAAW,EACX,eAAe,UAAU,qBAAqB,OAAO,0BAA0B,CAChF,CAAC;KACH;IACD,OAAO,EAAE,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"hubSearch.js","sourceRoot":"","sources":["../../../src/search/hubSearch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=IHubCatalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IHubCatalog.js","sourceRoot":"","sources":["../../../../src/search/types/IHubCatalog.ts"],"names":[],"mappings":""}
@@ -7,4 +7,5 @@ export * from "./IHubSearchOptions";
7
7
  export * from "./IHubSearchResult";
8
8
  export * from "./IHubSearchResponse";
9
9
  export * from "./types";
10
+ export * from "./IHubCatalog";
10
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/search/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/search/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC"}
@@ -134,7 +134,7 @@ var ArcGISContext = /** @class */ (function () {
134
134
  */
135
135
  get: function () {
136
136
  if (this.isAuthenticated) {
137
- if (this.isPortal) {
137
+ if (this.isPortal || !this._portalSelf.urlKey) {
138
138
  return "https://" + this._portalSelf.portalHostname;
139
139
  }
140
140
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"ArcGISContext.js","sourceRoot":"","sources":["../../src/ArcGISContext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ArcGISContext.js","sourceRoot":"","sources":["../../src/ArcGISContext.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,106 @@
1
+ import { __awaiter, __generator, __spreadArrays } from "tslib";
2
+ import { hubSearchQuery } from "..";
3
+ /**
4
+ * Implements Collection behavior
5
+ */
6
+ /* istanbul ignore next */
7
+ var Collection = /** @class */ (function () {
8
+ function Collection(collection, context) {
9
+ this._collection = collection;
10
+ if (context) {
11
+ this._context = context;
12
+ }
13
+ }
14
+ Collection.create = function (collection, context) {
15
+ return __awaiter(this, void 0, void 0, function () {
16
+ var col;
17
+ return __generator(this, function (_a) {
18
+ col = new Collection(collection, context);
19
+ return [2 /*return*/, Promise.resolve(col)];
20
+ });
21
+ });
22
+ };
23
+ Object.defineProperty(Collection.prototype, "label", {
24
+ // Getters
25
+ get: function () {
26
+ return this._collection.label;
27
+ },
28
+ enumerable: false,
29
+ configurable: true
30
+ });
31
+ Object.defineProperty(Collection.prototype, "key", {
32
+ get: function () {
33
+ return this._collection.key;
34
+ },
35
+ enumerable: false,
36
+ configurable: true
37
+ });
38
+ Object.defineProperty(Collection.prototype, "include", {
39
+ get: function () {
40
+ return this._collection.include;
41
+ },
42
+ enumerable: false,
43
+ configurable: true
44
+ });
45
+ Object.defineProperty(Collection.prototype, "scope", {
46
+ get: function () {
47
+ return this._collection.scope;
48
+ },
49
+ enumerable: false,
50
+ configurable: true
51
+ });
52
+ Object.defineProperty(Collection.prototype, "sortField", {
53
+ get: function () {
54
+ return this._collection.sortField || "title";
55
+ },
56
+ enumerable: false,
57
+ configurable: true
58
+ });
59
+ Object.defineProperty(Collection.prototype, "sortDirection", {
60
+ get: function () {
61
+ return this._collection.sortDirection || "asc";
62
+ },
63
+ enumerable: false,
64
+ configurable: true
65
+ });
66
+ Collection.prototype.search = function (query, options) {
67
+ var _a;
68
+ if (options === void 0) { options = {}; }
69
+ return __awaiter(this, void 0, void 0, function () {
70
+ var qry;
71
+ return __generator(this, function (_b) {
72
+ if (typeof query === "string") {
73
+ // construct a query from that...
74
+ qry = {
75
+ targetEntity: ((_a = this._collection.scope) === null || _a === void 0 ? void 0 : _a.targetEntity) || "item",
76
+ filters: [
77
+ {
78
+ predicates: [
79
+ {
80
+ term: query,
81
+ },
82
+ ],
83
+ },
84
+ ],
85
+ };
86
+ }
87
+ else {
88
+ qry = query;
89
+ }
90
+ // merge the passed in query w/ the scope
91
+ qry.filters = __spreadArrays(qry.filters, this.scope.filters);
92
+ options.requestOptions = this._context.hubRequestOptions;
93
+ // inject default sort info if not specified
94
+ options.sortField = options.sortField || this.sortField;
95
+ options.sortOrder = options.sortOrder || this.sortDirection;
96
+ // inject default includes if not specified
97
+ options.include = options.include || this.include;
98
+ // execute the search and return results
99
+ return [2 /*return*/, hubSearchQuery(qry, options)];
100
+ });
101
+ });
102
+ };
103
+ return Collection;
104
+ }());
105
+ export { Collection };
106
+ //# sourceMappingURL=Collection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Collection.js","sourceRoot":"","sources":["../../../src/search/Collection.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAkB,MAAM,IAAI,CAAC;AAUpD;;GAEG;AACH,0BAA0B;AAC1B;IAGE,oBAAoB,UAA0B,EAAE,OAAwB;QACtE,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;SACzB;IACH,CAAC;IAEmB,iBAAM,GAA1B,UACE,UAA0B,EAC1B,OAAwB;;;;gBAIlB,GAAG,GAAG,IAAI,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAChD,sBAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAC;;;KAC7B;IAID,sBAAW,6BAAK;QAFhB,UAAU;aAEV;YACE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;QAChC,CAAC;;;OAAA;IACD,sBAAW,2BAAG;aAAd;YACE,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;QAC9B,CAAC;;;OAAA;IACD,sBAAW,+BAAO;aAAlB;YACE,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QAClC,CAAC;;;OAAA;IACD,sBAAW,6BAAK;aAAhB;YACE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;QAChC,CAAC;;;OAAA;IACD,sBAAW,iCAAS;aAApB;YACE,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,IAAI,OAAO,CAAC;QAC/C,CAAC;;;OAAA;IACD,sBAAW,qCAAa;aAAxB;YACE,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,IAAI,KAAK,CAAC;QACjD,CAAC;;;OAAA;IAEY,2BAAM,GAAnB,UACE,KAAsB,EACtB,OAA+B;;QAA/B,wBAAA,EAAA,YAA+B;;;;gBAG/B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oBAC7B,iCAAiC;oBACjC,GAAG,GAAG;wBACJ,YAAY,EAAE,OAAA,IAAI,CAAC,WAAW,CAAC,KAAK,0CAAE,YAAY,KAAI,MAAM;wBAC5D,OAAO,EAAE;4BACP;gCACE,UAAU,EAAE;oCACV;wCACE,IAAI,EAAE,KAAK;qCACZ;iCACF;6BACF;yBACF;qBACF,CAAC;iBACH;qBAAM;oBACL,GAAG,GAAG,KAAK,CAAC;iBACb;gBAED,yCAAyC;gBACzC,GAAG,CAAC,OAAO,kBAAO,GAAG,CAAC,OAAO,EAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAEtD,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC;gBACzD,4CAA4C;gBAC5C,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;gBACxD,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,CAAC;gBAC5D,2CAA2C;gBAC3C,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;gBAElD,wCAAwC;gBACxC,sBAAO,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,EAAC;;;KACrC;IACH,iBAAC;AAAD,CAAC,AA7ED,IA6EC"}
@@ -0,0 +1,222 @@
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
+ }
40
+ export function serializeQueryForPortal(query) {
41
+ var filterSearchOptions = query.filters.map(serializeFilter);
42
+ var result = mergeSearchOptions(filterSearchOptions, "AND");
43
+ return result;
44
+ }
45
+ function mergeSearchOptions(options, operation) {
46
+ var result = options.reduce(function (acc, entry) {
47
+ // walk the props
48
+ Object.entries(entry).forEach(function (_a) {
49
+ var key = _a[0], value = _a[1];
50
+ // if prop exists
51
+ if (acc[key]) {
52
+ // combine via operation
53
+ acc[key] = acc[key] + " " + operation + " " + value;
54
+ }
55
+ else {
56
+ // just copy the value
57
+ acc[key] = value;
58
+ }
59
+ });
60
+ return acc;
61
+ }, { q: "" });
62
+ return result;
63
+ }
64
+ /**
65
+ * Serialize the filters in a FitlerGroup into a Portal Query
66
+ * @param filter
67
+ * @returns
68
+ */
69
+ function serializeFilter(filter) {
70
+ var operation = filter.operation || "AND";
71
+ var predicates = filter.predicates.map(expandPredicate);
72
+ var predicateSearchOptions = predicates.map(serializePredicate);
73
+ // combine these searchOptions
74
+ var searchOptions = mergeSearchOptions(predicateSearchOptions, operation);
75
+ // wrap in parens if we have more than one predicate
76
+ if (predicates.length > 1) {
77
+ searchOptions.q = "(" + searchOptions.q + ")";
78
+ }
79
+ return searchOptions;
80
+ }
81
+ /**
82
+ * Serialize a Filter into a Portal Query
83
+ * @param predicate
84
+ * @returns
85
+ */
86
+ function serializePredicate(predicate) {
87
+ var dateProps = ["created", "modified"];
88
+ var boolProps = ["isopendata"];
89
+ var passThroughProps = ["searchUserAccess", "searchUserName"];
90
+ var specialProps = __spreadArrays([
91
+ "filterType",
92
+ "term"
93
+ ], dateProps, boolProps, passThroughProps);
94
+ var portalAllowList = [
95
+ "access",
96
+ "categories",
97
+ "created",
98
+ "description",
99
+ "disabled",
100
+ "email",
101
+ "emailstatus",
102
+ "firstname",
103
+ "fullname",
104
+ "group",
105
+ "id",
106
+ "isInvitationOnly",
107
+ "isopendata",
108
+ "joined",
109
+ "lastlogin",
110
+ "lastname",
111
+ "memberType",
112
+ "modified",
113
+ "name",
114
+ "orgid",
115
+ "orgIds",
116
+ "owner",
117
+ "provider",
118
+ "role",
119
+ "searchUserAccess",
120
+ "searchUserName",
121
+ "snippet",
122
+ "tags",
123
+ "term",
124
+ "type",
125
+ "typekeywords",
126
+ "userlicensetype",
127
+ "username",
128
+ ];
129
+ var qCount = 0;
130
+ // TODO: Look at using reduce vs .map and remove the `.filter`
131
+ var opts = Object.entries(predicate)
132
+ .map(function (_a) {
133
+ var key = _a[0], value = _a[1];
134
+ // When serializing for portal we limit predicate properties to
135
+ // a list of known properties that the portal api accepts. This will
136
+ // not attempt to ensure the properties are used in the correct combinations
137
+ if (portalAllowList.includes(key)) {
138
+ var so = { q: "" };
139
+ if (!specialProps.includes(key)) {
140
+ qCount++;
141
+ so.q = serializeMatchOptions(key, value);
142
+ }
143
+ if (dateProps.includes(key)) {
144
+ qCount++;
145
+ so.q = serializeDateRange(key, value);
146
+ }
147
+ if (boolProps.includes(key)) {
148
+ qCount++;
149
+ so.q = key + ":" + value;
150
+ }
151
+ if (passThroughProps.includes(key)) {
152
+ so[key] = value;
153
+ }
154
+ if (key === "term") {
155
+ qCount++;
156
+ so.q = value;
157
+ }
158
+ return so;
159
+ }
160
+ })
161
+ .filter(function (e) { return e !== undefined; });
162
+ // merge up all the searchOptions
163
+ var searchOptions = mergeSearchOptions(opts, "AND");
164
+ if (qCount > 1) {
165
+ searchOptions.q = "(" + searchOptions.q + ")";
166
+ }
167
+ return searchOptions;
168
+ }
169
+ /**
170
+ * Serialize MatchOptions into portal syntax
171
+ * @param key
172
+ * @param value
173
+ * @returns
174
+ */
175
+ function serializeMatchOptions(key, value) {
176
+ var result = "";
177
+ if (value.any) {
178
+ result = "" + serializeStringOrArray("OR", key, value.any);
179
+ }
180
+ if (value.all) {
181
+ result =
182
+ (result ? result + " AND " : "") +
183
+ ("" + serializeStringOrArray("AND", key, value.all));
184
+ }
185
+ if (value.not) {
186
+ // negate the entries if they are not
187
+ result =
188
+ (result ? result + " AND " : "") +
189
+ ("" + serializeStringOrArray("OR", "-" + key, value.not));
190
+ }
191
+ return result;
192
+ }
193
+ /**
194
+ * Serialize a date-range into Portal syntax
195
+ * @param key
196
+ * @param range
197
+ * @returns
198
+ */
199
+ function serializeDateRange(key, range) {
200
+ return key + ":[" + range.from + " TO " + range.to + "]";
201
+ }
202
+ /**
203
+ * Serialize a `string` or `string[]` into a string
204
+ * @param join
205
+ * @param key
206
+ * @param value
207
+ * @returns
208
+ */
209
+ function serializeStringOrArray(join, key, value) {
210
+ var q = "";
211
+ if (Array.isArray(value)) {
212
+ q = key + ":\"" + value.join("\" " + join + " " + key + ":\"") + "\"";
213
+ if (value.length > 1) {
214
+ q = "(" + q + ")";
215
+ }
216
+ }
217
+ else {
218
+ q = key + ":\"" + value + "\"";
219
+ }
220
+ return q;
221
+ }
222
+ //# sourceMappingURL=ifilter-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ifilter-utils.js","sourceRoot":"","sources":["../../../../src/search/_internal/ifilter-utils.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AASzC,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAExE,MAAM,UAAU,eAAe,CAAC,SAAqB;IACnD,IAAM,MAAM,GAAe,EAAE,CAAC;IAC9B,IAAM,SAAS,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;IACvD,IAAM,SAAS,GAAG;QAChB,YAAY;QACZ,MAAM;QACN,kBAAkB;QAClB,YAAY;QACZ,gBAAgB;KACjB,CAAC;IACF,IAAM,qBAAqB,kBAAO,SAAS,EAAK,SAAS,CAAC,CAAC;IAC3D,oBAAoB;IACpB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,UAAC,EAAY;YAAX,GAAG,QAAA,EAAE,KAAK,QAAA;QAC5C,6BAA6B;QAC7B,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACxC,OAAO,CAAC,GAAG,EAAE,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;SAClD;QACD,qBAAqB;QACrB,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAC3B,IAAM,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;YAC5D,IAAI,OAAO,CAAC,SAAS,EAAK,GAAG,UAAO,CAAC,KAAK,eAAe,EAAE;gBACzD,OAAO,CAAC,GAAG,EAAE,uBAAuB,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC;aAC/D;iBAAM;gBACL,OAAO,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,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;SAC7B;IACH,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,KAAa;IACnD,IAAM,mBAAmB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAE/D,IAAM,MAAM,GAAG,kBAAkB,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;IAE9D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,kBAAkB,CACzB,OAAyB,EACzB,SAAuB;IAEvB,IAAM,MAAM,GAAmB,OAAO,CAAC,MAAM,CAC3C,UAAC,GAAG,EAAE,KAAK;QACT,iBAAiB;QACjB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,UAAC,EAAY;gBAAX,GAAG,QAAA,EAAE,KAAK,QAAA;YACxC,iBAAiB;YACjB,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE;gBACZ,wBAAwB;gBACxB,GAAG,CAAC,GAAG,CAAC,GAAM,GAAG,CAAC,GAAG,CAAC,SAAI,SAAS,SAAI,KAAO,CAAC;aAChD;iBAAM;gBACL,sBAAsB;gBACtB,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;aAClB;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;IACb,CAAC,EACD,EAAE,CAAC,EAAE,EAAE,EAAE,CACV,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,MAAe;IACtC,IAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,KAAK,CAAC;IAC5C,IAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC1D,IAAM,sBAAsB,GAAG,UAAU,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IAClE,8BAA8B;IAC9B,IAAM,aAAa,GAAG,kBAAkB,CAAC,sBAAsB,EAAE,SAAS,CAAC,CAAC;IAC5E,oDAAoD;IACpD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;QACzB,aAAa,CAAC,CAAC,GAAG,MAAI,aAAa,CAAC,CAAC,MAAG,CAAC;KAC1C;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AACD;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,SAAqB;IAC/C,IAAM,SAAS,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC1C,IAAM,SAAS,GAAG,CAAC,YAAY,CAAC,CAAC;IACjC,IAAM,gBAAgB,GAAG,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CAAC;IAChE,IAAM,YAAY;QAChB,YAAY;QACZ,MAAM;OACH,SAAS,EACT,SAAS,EACT,gBAAgB,CACpB,CAAC;IACF,IAAM,eAAe,GAAG;QACtB,QAAQ;QACR,YAAY;QACZ,SAAS;QACT,aAAa;QACb,UAAU;QACV,OAAO;QACP,aAAa;QACb,WAAW;QACX,UAAU;QACV,OAAO;QACP,IAAI;QACJ,kBAAkB;QAClB,YAAY;QACZ,QAAQ;QACR,WAAW;QACX,UAAU;QACV,YAAY;QACZ,UAAU;QACV,MAAM;QACN,OAAO;QACP,QAAQ;QACR,OAAO;QACP,UAAU;QACV,MAAM;QACN,kBAAkB;QAClB,gBAAgB;QAChB,SAAS;QACT,MAAM;QACN,MAAM;QACN,MAAM;QACN,cAAc;QACd,iBAAiB;QACjB,UAAU;KACX,CAAC;IACF,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,8DAA8D;IAC9D,IAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;SACnC,GAAG,CAAC,UAAC,EAAY;YAAX,GAAG,QAAA,EAAE,KAAK,QAAA;QACf,+DAA+D;QAC/D,oEAAoE;QACpE,4EAA4E;QAC5E,IAAI,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACjC,IAAM,EAAE,GAAmB,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;YACrC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBAC/B,MAAM,EAAE,CAAC;gBACT,EAAE,CAAC,CAAC,GAAG,qBAAqB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;aAC1C;YACD,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBAC3B,MAAM,EAAE,CAAC;gBACT,EAAE,CAAC,CAAC,GAAG,kBAAkB,CACvB,GAAG,EACH,KAAsC,CACvC,CAAC;aACH;YACD,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBAC3B,MAAM,EAAE,CAAC;gBACT,EAAE,CAAC,CAAC,GAAM,GAAG,SAAI,KAAO,CAAC;aAC1B;YACD,IAAI,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBAClC,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;aACjB;YACD,IAAI,GAAG,KAAK,MAAM,EAAE;gBAClB,MAAM,EAAE,CAAC;gBACT,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC;aACd;YACD,OAAO,EAAE,CAAC;SACX;IACH,CAAC,CAAC;SACD,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,KAAK,SAAS,EAAf,CAAe,CAAC,CAAC;IAElC,iCAAiC;IACjC,IAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAEtD,IAAI,MAAM,GAAG,CAAC,EAAE;QACd,aAAa,CAAC,CAAC,GAAG,MAAI,aAAa,CAAC,CAAC,MAAG,CAAC;KAC1C;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED;;;;;GAKG;AACH,SAAS,qBAAqB,CAAC,GAAW,EAAE,KAAoB;IAC9D,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,KAAK,CAAC,GAAG,EAAE;QACb,MAAM,GAAG,KAAG,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,CAAG,CAAC;KAC5D;IACD,IAAI,KAAK,CAAC,GAAG,EAAE;QACb,MAAM;YACJ,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;iBAChC,KAAG,sBAAsB,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,CAAG,CAAA,CAAC;KACtD;IACD,IAAI,KAAK,CAAC,GAAG,EAAE;QACb,qCAAqC;QACrC,MAAM;YACJ,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;iBAChC,KAAG,sBAAsB,CAAC,IAAI,EAAE,MAAI,GAAK,EAAE,KAAK,CAAC,GAAG,CAAG,CAAA,CAAC;KAC3D;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,SAAS,kBAAkB,CAAC,GAAW,EAAE,KAAyB;IAChE,OAAU,GAAG,UAAK,KAAK,CAAC,IAAI,YAAO,KAAK,CAAC,EAAE,MAAG,CAAC;AACjD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,sBAAsB,CAC7B,IAAkB,EAClB,GAAW,EACX,KAAwB;IAExB,IAAI,CAAC,GAAG,EAAE,CAAC;IACX,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACxB,CAAC,GAAM,GAAG,WAAK,KAAK,CAAC,IAAI,CAAC,QAAK,IAAI,SAAI,GAAG,QAAI,CAAC,OAAG,CAAC;QACnD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,CAAC,GAAG,MAAI,CAAC,MAAG,CAAC;SACd;KACF;SAAM;QACL,CAAC,GAAM,GAAG,WAAK,KAAK,OAAG,CAAC;KACzB;IACD,OAAO,CAAC,CAAC;AACX,CAAC"}