@esri/hub-common 9.45.3 → 9.45.6
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.
- package/dist/es2017/search/_internal/ipredicate-utils.js +38 -0
- package/dist/es2017/search/_internal/ipredicate-utils.js.map +1 -0
- package/dist/es2017/search/_internal/portalSearchGroups.js +2 -1
- package/dist/es2017/search/_internal/portalSearchGroups.js.map +1 -1
- package/dist/es2017/search/_internal/portalSearchItems.js +2 -1
- package/dist/es2017/search/_internal/portalSearchItems.js.map +1 -1
- package/dist/es2017/search/_internal/portalSearchUsers.js +2 -1
- package/dist/es2017/search/_internal/portalSearchUsers.js.map +1 -1
- package/dist/es2017/search/index.js +1 -0
- package/dist/es2017/search/index.js.map +1 -1
- package/dist/es2017/search/{_internal/ifilter-utils.js → serializeQueryForPortal.js} +39 -50
- package/dist/es2017/search/serializeQueryForPortal.js.map +1 -0
- package/dist/esm/search/_internal/ipredicate-utils.js +40 -0
- package/dist/esm/search/_internal/ipredicate-utils.js.map +1 -0
- package/dist/esm/search/_internal/portalSearchGroups.js +2 -1
- package/dist/esm/search/_internal/portalSearchGroups.js.map +1 -1
- package/dist/esm/search/_internal/portalSearchItems.js +2 -1
- package/dist/esm/search/_internal/portalSearchItems.js.map +1 -1
- package/dist/esm/search/_internal/portalSearchUsers.js +2 -1
- package/dist/esm/search/_internal/portalSearchUsers.js.map +1 -1
- package/dist/esm/search/index.js +1 -0
- package/dist/esm/search/index.js.map +1 -1
- package/dist/esm/search/{_internal/ifilter-utils.js → serializeQueryForPortal.js} +39 -51
- package/dist/esm/search/serializeQueryForPortal.js.map +1 -0
- package/dist/node/search/_internal/ipredicate-utils.js +42 -0
- package/dist/node/search/_internal/ipredicate-utils.js.map +1 -0
- package/dist/node/search/_internal/portalSearchGroups.js +4 -3
- package/dist/node/search/_internal/portalSearchGroups.js.map +1 -1
- package/dist/node/search/_internal/portalSearchItems.js +4 -3
- package/dist/node/search/_internal/portalSearchItems.js.map +1 -1
- package/dist/node/search/_internal/portalSearchUsers.js +4 -3
- package/dist/node/search/_internal/portalSearchUsers.js.map +1 -1
- package/dist/node/search/index.js +1 -0
- package/dist/node/search/index.js.map +1 -1
- package/dist/node/search/{_internal/ifilter-utils.js → serializeQueryForPortal.js} +41 -53
- package/dist/node/search/serializeQueryForPortal.js.map +1 -0
- package/dist/types/search/_internal/ipredicate-utils.d.ts +2 -0
- package/dist/types/search/index.d.ts +1 -0
- package/dist/types/search/{_internal/ifilter-utils.d.ts → serializeQueryForPortal.d.ts} +6 -2
- package/dist/types/search/types/IHubAggregation.d.ts +9 -0
- package/dist/types/search/types/IHubSearchOptions.d.ts +18 -8
- package/dist/types/search/types/IHubSearchResponse.d.ts +18 -0
- package/dist/umd/common.umd.js +174 -147
- package/dist/umd/common.umd.js.map +1 -1
- package/package.json +1 -1
- package/dist/es2017/search/_internal/ifilter-utils.js.map +0 -1
- package/dist/esm/search/_internal/ifilter-utils.js.map +0 -1
- package/dist/node/search/_internal/ifilter-utils.js.map +0 -1
|
@@ -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"}
|
|
@@ -4,8 +4,9 @@ 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
|
|
7
|
+
const serializeQueryForPortal_1 = require("../serializeQueryForPortal");
|
|
8
8
|
const utils_1 = require("../utils");
|
|
9
|
+
const ipredicate_utils_1 = require("./ipredicate-utils");
|
|
9
10
|
/**
|
|
10
11
|
* @private
|
|
11
12
|
* Portal Search Implementation for Groups
|
|
@@ -19,11 +20,11 @@ async function portalSearchGroups(query, options) {
|
|
|
19
20
|
}
|
|
20
21
|
// Expand the individual predicates in each filter
|
|
21
22
|
query.filters = query.filters.map((filter) => {
|
|
22
|
-
filter.predicates = filter.predicates.map(
|
|
23
|
+
filter.predicates = filter.predicates.map(ipredicate_utils_1.expandPredicate);
|
|
23
24
|
return filter;
|
|
24
25
|
});
|
|
25
26
|
// Serialize the all the groups for portal
|
|
26
|
-
const so =
|
|
27
|
+
const so = serializeQueryForPortal_1.serializeQueryForPortal(query);
|
|
27
28
|
// Array of properties we want to copy from IHubSearchOptions to the ISearchOptions
|
|
28
29
|
const props = [
|
|
29
30
|
"num",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portalSearchGroups.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchGroups.ts"],"names":[],"mappings":";;;AAAA,iEAAwE;AAExE,uCAAuC;AACvC,sDAAiE;AAEjE,
|
|
1
|
+
{"version":3,"file":"portalSearchGroups.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchGroups.ts"],"names":[],"mappings":";;;AAAA,iEAAwE;AAExE,uCAAuC;AACvC,sDAAiE;AAEjE,wEAAqE;AAOrE,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,iDAAuB,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"}
|
|
@@ -3,12 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.isWellKnownTypeFilter = exports.applyWellKnownItemPredicates = exports.WellKnownItemFilters = exports.portalSearchItems = void 0;
|
|
4
4
|
const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
5
5
|
const __1 = require("../..");
|
|
6
|
-
const
|
|
6
|
+
const serializeQueryForPortal_1 = require("../serializeQueryForPortal");
|
|
7
7
|
const HubPages_1 = require("../../pages/HubPages");
|
|
8
8
|
const projects_1 = require("../../projects");
|
|
9
9
|
const sites_1 = require("../../sites");
|
|
10
10
|
const utils_1 = require("../utils");
|
|
11
11
|
const portalSearchUtils_1 = require("./portalSearchUtils");
|
|
12
|
+
const ipredicate_utils_1 = require("./ipredicate-utils");
|
|
12
13
|
/**
|
|
13
14
|
* @private
|
|
14
15
|
* Portal Search Implementation for Items
|
|
@@ -25,11 +26,11 @@ async function portalSearchItems(query, options) {
|
|
|
25
26
|
const updatedQuery = applyWellKnownItemPredicates(query);
|
|
26
27
|
// Expand the individual predicates in each filter
|
|
27
28
|
updatedQuery.filters = updatedQuery.filters.map((filter) => {
|
|
28
|
-
filter.predicates = filter.predicates.map(
|
|
29
|
+
filter.predicates = filter.predicates.map(ipredicate_utils_1.expandPredicate);
|
|
29
30
|
return filter;
|
|
30
31
|
});
|
|
31
32
|
// Serialize the all the groups for portal
|
|
32
|
-
const so =
|
|
33
|
+
const so = serializeQueryForPortal_1.serializeQueryForPortal(updatedQuery);
|
|
33
34
|
// Array of properties we want to copy from IHubSearchOptions to the ISearchOptions
|
|
34
35
|
const props = [
|
|
35
36
|
"num",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portalSearchItems.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchItems.ts"],"names":[],"mappings":";;;AAAA,iEAA8E;AAC9E,6BAKe;AAEf,
|
|
1
|
+
{"version":3,"file":"portalSearchItems.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchItems.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,9 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.portalSearchUsers = void 0;
|
|
4
4
|
const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
5
5
|
const __1 = require("../..");
|
|
6
|
-
const
|
|
6
|
+
const serializeQueryForPortal_1 = require("../serializeQueryForPortal");
|
|
7
7
|
const HubError_1 = require("../../HubError");
|
|
8
8
|
const utils_1 = require("../utils");
|
|
9
|
+
const ipredicate_utils_1 = require("./ipredicate-utils");
|
|
9
10
|
/**
|
|
10
11
|
* @private
|
|
11
12
|
* Portal Search Implementation for Users
|
|
@@ -23,11 +24,11 @@ async function portalSearchUsers(query, options) {
|
|
|
23
24
|
}
|
|
24
25
|
// Expand the individual predicates in each filter
|
|
25
26
|
query.filters = query.filters.map((filter) => {
|
|
26
|
-
filter.predicates = filter.predicates.map(
|
|
27
|
+
filter.predicates = filter.predicates.map(ipredicate_utils_1.expandPredicate);
|
|
27
28
|
return filter;
|
|
28
29
|
});
|
|
29
30
|
// Serialize the all the groups for portal
|
|
30
|
-
const so =
|
|
31
|
+
const so = serializeQueryForPortal_1.serializeQueryForPortal(query);
|
|
31
32
|
// Array of properties we want to copy from IHubSearchOptions to the ISearchOptions
|
|
32
33
|
const props = [
|
|
33
34
|
"num",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portalSearchUsers.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchUsers.ts"],"names":[],"mappings":";;;AAAA,iEAIkC;AAElC,6BAA+C;AAC/C,
|
|
1
|
+
{"version":3,"file":"portalSearchUsers.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchUsers.ts"],"names":[],"mappings":";;;AAAA,iEAIkC;AAElC,6BAA+C;AAC/C,wEAAqE;AACrE,6CAAsC;AAQtC,oCAA2C;AAC3C,yDAAqD;AAErD;;;;;;GAMG;AACI,KAAK,UAAU,iBAAiB,CACrC,KAAa,EACb,OAA0B;IAE1B,2DAA2D;IAC3D,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;QAC3B,MAAM,IAAI,kBAAQ,CAChB,mBAAmB,EACnB,iDAAiD,CAClD,CAAC;KACH;IAED,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,cAAc,EAAE;QAC1C,MAAM,IAAI,kBAAQ,CAChB,mBAAmB,EACnB,0CAA0C,CAC3C,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,iDAAuB,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,kEAAkE;IAClE,wBAAwB;IACxB,EAAE,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC;IAE1D,iBAAiB;IACjB,OAAO,YAAY,CAAC,EAAwB,CAAC,CAAC;AAChD,CAAC;AAjDD,8CAiDC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,YAAY,CACzB,aAAiC;IAEjC,wBAAwB;IACxB,MAAM,IAAI,GAAG,MAAM,gCAAW,CAAC,aAAa,CAAC,CAAC;IAE9C,qCAAqC;IACrC,uCAAuC;IACvC,MAAM,EAAE,GAAG,CAAC,IAAW,EAAE,EAAE;QACzB,OAAO,kBAAkB,CACvB,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,kBAAkB,CAC/B,IAAW,EACX,WAAqB,EAAE,EACvB,cAAmC;IAEnC,+BAA+B;IAC/B,iDAAiD;IACjD,6CAA6C;IAC7C,mCAAmC;IACnC,OAAO,0BAAsB,CAAC,IAAI,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;AAChE,CAAC"}
|
|
@@ -13,5 +13,6 @@ tslib_1.__exportStar(require("./types"), exports);
|
|
|
13
13
|
tslib_1.__exportStar(require("./collectionState"), exports);
|
|
14
14
|
tslib_1.__exportStar(require("./convertCatalog"), exports);
|
|
15
15
|
tslib_1.__exportStar(require("./filter-utils"), exports);
|
|
16
|
+
tslib_1.__exportStar(require("./serializeQueryForPortal"), exports);
|
|
16
17
|
tslib_1.__exportStar(require("./hubSearch"), exports);
|
|
17
18
|
//# 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;AACjC,yDAA+B;AAC/B,sDAA4B"}
|
|
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;AAC/B,oEAA0C;AAC1C,sDAA4B"}
|
|
@@ -1,62 +1,42 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.serializeQueryForPortal =
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
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;
|
|
3
|
+
exports.serializeQueryForPortal = void 0;
|
|
4
|
+
const ipredicate_utils_1 = require("./_internal/ipredicate-utils");
|
|
5
|
+
/**
|
|
6
|
+
* Serialize IQuery into ISearchOptions for ArcGIS Portal
|
|
7
|
+
* @param query
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
42
10
|
function serializeQueryForPortal(query) {
|
|
43
11
|
const filterSearchOptions = query.filters.map(serializeFilter);
|
|
44
|
-
|
|
12
|
+
// remove any empty entries
|
|
13
|
+
const nonEmptyOptions = filterSearchOptions.filter(removeEmptyEntries);
|
|
14
|
+
const result = mergeSearchOptions(nonEmptyOptions, "AND");
|
|
45
15
|
return result;
|
|
46
16
|
}
|
|
47
17
|
exports.serializeQueryForPortal = serializeQueryForPortal;
|
|
18
|
+
/**
|
|
19
|
+
* Predicate to remove things from array
|
|
20
|
+
* @param e
|
|
21
|
+
* @returns
|
|
22
|
+
*/
|
|
23
|
+
function removeEmptyEntries(e) {
|
|
24
|
+
return !(typeof e === "undefined" || e === null || e === "");
|
|
25
|
+
}
|
|
48
26
|
function mergeSearchOptions(options, operation) {
|
|
49
27
|
const result = options.reduce((acc, entry) => {
|
|
50
28
|
// walk the props
|
|
51
29
|
Object.entries(entry).forEach(([key, value]) => {
|
|
52
|
-
// if prop exists
|
|
53
|
-
if (acc[key]) {
|
|
30
|
+
// if prop exists and is not empty string
|
|
31
|
+
if (acc[key] && value !== "") {
|
|
54
32
|
// combine via operation
|
|
55
33
|
acc[key] = `${acc[key]} ${operation} ${value}`;
|
|
56
34
|
}
|
|
57
35
|
else {
|
|
58
|
-
// just copy the value
|
|
59
|
-
|
|
36
|
+
// just copy the value if it's not empty string
|
|
37
|
+
if (value !== "") {
|
|
38
|
+
acc[key] = value;
|
|
39
|
+
}
|
|
60
40
|
}
|
|
61
41
|
});
|
|
62
42
|
return acc;
|
|
@@ -70,8 +50,10 @@ function mergeSearchOptions(options, operation) {
|
|
|
70
50
|
*/
|
|
71
51
|
function serializeFilter(filter) {
|
|
72
52
|
const operation = filter.operation || "AND";
|
|
73
|
-
const predicates = filter.predicates.map(expandPredicate);
|
|
74
|
-
const predicateSearchOptions = predicates
|
|
53
|
+
const predicates = filter.predicates.map(ipredicate_utils_1.expandPredicate);
|
|
54
|
+
const predicateSearchOptions = predicates
|
|
55
|
+
.map(serializePredicate)
|
|
56
|
+
.filter((e) => e !== undefined && e !== null);
|
|
75
57
|
// combine these searchOptions
|
|
76
58
|
const searchOptions = mergeSearchOptions(predicateSearchOptions, operation);
|
|
77
59
|
// wrap in parens if we have more than one predicate
|
|
@@ -126,6 +108,7 @@ function serializePredicate(predicate) {
|
|
|
126
108
|
"snippet",
|
|
127
109
|
"tags",
|
|
128
110
|
"term",
|
|
111
|
+
"title",
|
|
129
112
|
"type",
|
|
130
113
|
"typekeywords",
|
|
131
114
|
"userlicensetype",
|
|
@@ -140,7 +123,7 @@ function serializePredicate(predicate) {
|
|
|
140
123
|
// not attempt to ensure the properties are used in the correct combinations
|
|
141
124
|
if (portalAllowList.includes(key)) {
|
|
142
125
|
const so = { q: "" };
|
|
143
|
-
if (!specialProps.includes(key)) {
|
|
126
|
+
if (!specialProps.includes(key) && key !== "term") {
|
|
144
127
|
qCount++;
|
|
145
128
|
so.q = serializeMatchOptions(key, value);
|
|
146
129
|
}
|
|
@@ -162,13 +145,18 @@ function serializePredicate(predicate) {
|
|
|
162
145
|
return so;
|
|
163
146
|
}
|
|
164
147
|
})
|
|
165
|
-
.filter(
|
|
148
|
+
.filter(removeEmptyEntries);
|
|
166
149
|
// merge up all the searchOptions
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
150
|
+
if (opts.length) {
|
|
151
|
+
const searchOptions = mergeSearchOptions(opts, "AND");
|
|
152
|
+
if (qCount > 1) {
|
|
153
|
+
searchOptions.q = `(${searchOptions.q})`;
|
|
154
|
+
}
|
|
155
|
+
return searchOptions;
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
return null;
|
|
170
159
|
}
|
|
171
|
-
return searchOptions;
|
|
172
160
|
}
|
|
173
161
|
/**
|
|
174
162
|
* Serialize MatchOptions into portal syntax
|
|
@@ -223,4 +211,4 @@ function serializeStringOrArray(join, key, value) {
|
|
|
223
211
|
}
|
|
224
212
|
return q;
|
|
225
213
|
}
|
|
226
|
-
//# sourceMappingURL=
|
|
214
|
+
//# sourceMappingURL=serializeQueryForPortal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serializeQueryForPortal.js","sourceRoot":"","sources":["../../../src/search/serializeQueryForPortal.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import { ISearchOptions } from "@esri/arcgis-rest-portal";
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import { IQuery } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* Serialize IQuery into ISearchOptions for ArcGIS Portal
|
|
5
|
+
* @param query
|
|
6
|
+
* @returns
|
|
7
|
+
*/
|
|
4
8
|
export declare function serializeQueryForPortal(query: IQuery): ISearchOptions;
|
|
@@ -2,8 +2,17 @@
|
|
|
2
2
|
* Structure for Search Aggregations in ArcGIS Hub
|
|
3
3
|
*/
|
|
4
4
|
export interface IHubAggregation {
|
|
5
|
+
/**
|
|
6
|
+
* What type of aggregation is returned
|
|
7
|
+
*/
|
|
5
8
|
mode: string;
|
|
9
|
+
/**
|
|
10
|
+
* Field the aggregation was creatd for
|
|
11
|
+
*/
|
|
6
12
|
field: string;
|
|
13
|
+
/**
|
|
14
|
+
* Array of the field values and counts
|
|
15
|
+
*/
|
|
7
16
|
values: Array<{
|
|
8
17
|
value: any;
|
|
9
18
|
count: number;
|
|
@@ -16,11 +16,11 @@ export interface IHubSearchOptions {
|
|
|
16
16
|
*/
|
|
17
17
|
aggLimit?: number;
|
|
18
18
|
/**
|
|
19
|
-
*
|
|
19
|
+
* Specify API to call. Defaults to ArcGIS Online Portal API
|
|
20
20
|
*/
|
|
21
21
|
api?: NamedApis | IApiDefinition;
|
|
22
22
|
/**
|
|
23
|
-
*
|
|
23
|
+
* DEPRECATE in favor of requestOptions
|
|
24
24
|
*/
|
|
25
25
|
authentication?: UserSession;
|
|
26
26
|
/**
|
|
@@ -30,15 +30,16 @@ export interface IHubSearchOptions {
|
|
|
30
30
|
* hubSearch
|
|
31
31
|
*/
|
|
32
32
|
requestOptions?: IHubRequestOptions;
|
|
33
|
+
/**
|
|
34
|
+
* Bounding box for the search (NOT IMPLEMENTED)
|
|
35
|
+
*/
|
|
33
36
|
bbox?: string;
|
|
34
37
|
/**
|
|
35
|
-
* Objects or fields to include
|
|
36
|
-
* e.g. `server.layers AS serverLayers`
|
|
38
|
+
* Objects or fields to include e.g. `server.layers AS serverLayers`
|
|
37
39
|
*/
|
|
38
40
|
include?: string[];
|
|
39
41
|
/**
|
|
40
|
-
*
|
|
41
|
-
* Deprecated in favor of `include`
|
|
42
|
+
* DEPRECATED: Use `include` instead
|
|
42
43
|
*/
|
|
43
44
|
enrichments?: Enrichments[];
|
|
44
45
|
/**
|
|
@@ -46,7 +47,7 @@ export interface IHubSearchOptions {
|
|
|
46
47
|
*/
|
|
47
48
|
num?: number;
|
|
48
49
|
/**
|
|
49
|
-
*
|
|
50
|
+
* LEGACY. Use `start` and `num` instead
|
|
50
51
|
*/
|
|
51
52
|
page?: string;
|
|
52
53
|
/**
|
|
@@ -58,10 +59,19 @@ export interface IHubSearchOptions {
|
|
|
58
59
|
*/
|
|
59
60
|
sortOrder?: "desc" | "asc";
|
|
60
61
|
/**
|
|
61
|
-
*
|
|
62
|
+
* The result number of the first entry in the result set response. The start parameter, along with the num parameter, can be used to paginate the search results.
|
|
62
63
|
*/
|
|
63
64
|
start?: number;
|
|
65
|
+
/**
|
|
66
|
+
* DEPRECATED
|
|
67
|
+
*/
|
|
64
68
|
aggregations?: string[];
|
|
69
|
+
/**
|
|
70
|
+
* DEPRECATED
|
|
71
|
+
*/
|
|
65
72
|
site?: IModel;
|
|
73
|
+
/**
|
|
74
|
+
* DEPRECATED
|
|
75
|
+
*/
|
|
66
76
|
fields?: string;
|
|
67
77
|
}
|
|
@@ -10,10 +10,28 @@ import { IHubAggregation } from "./IHubAggregation";
|
|
|
10
10
|
* next - invokable function for obtaining next page of results
|
|
11
11
|
*/
|
|
12
12
|
export interface IHubSearchResponse<T> {
|
|
13
|
+
/**
|
|
14
|
+
* Total number of matches for the query
|
|
15
|
+
*/
|
|
13
16
|
total: number;
|
|
17
|
+
/**
|
|
18
|
+
* Array if results
|
|
19
|
+
*/
|
|
14
20
|
results: T[];
|
|
21
|
+
/**
|
|
22
|
+
* Can more results be fetched?
|
|
23
|
+
*/
|
|
15
24
|
hasNext: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Function that fetches the next page of results
|
|
27
|
+
*/
|
|
16
28
|
next: (params?: any) => Promise<IHubSearchResponse<T>>;
|
|
29
|
+
/**
|
|
30
|
+
* Array of requested aggregations
|
|
31
|
+
*/
|
|
17
32
|
aggregations?: IHubAggregation[];
|
|
33
|
+
/**
|
|
34
|
+
* DEPRECATED - hub.js no longer computes facets; consumers need to construct them from aggregations
|
|
35
|
+
*/
|
|
18
36
|
facets?: IFacet[];
|
|
19
37
|
}
|