@esri/hub-common 13.36.1 → 13.37.1
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/esm/index.js +3 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/search/_internal/expandPredicate.js +33 -18
- package/dist/esm/search/_internal/expandPredicate.js.map +1 -1
- package/dist/esm/search/_internal/explainFilter.js +34 -0
- package/dist/esm/search/_internal/explainFilter.js.map +1 -0
- package/dist/esm/search/_internal/explainHelpers.js +193 -0
- package/dist/esm/search/_internal/explainHelpers.js.map +1 -0
- package/dist/esm/search/_internal/explainPredicate.js +35 -0
- package/dist/esm/search/_internal/explainPredicate.js.map +1 -0
- package/dist/esm/search/_internal/portalSearchItems.js +20 -9
- package/dist/esm/search/_internal/portalSearchItems.js.map +1 -1
- package/dist/esm/search/explainQueryResult.js +53 -0
- package/dist/esm/search/explainQueryResult.js.map +1 -0
- package/dist/esm/sites/domains/add-domain.js +4 -0
- package/dist/esm/sites/domains/add-domain.js.map +1 -1
- package/dist/esm/sites/domains/update-domain.js +4 -0
- package/dist/esm/sites/domains/update-domain.js.map +1 -1
- package/dist/node/index.js +3 -0
- package/dist/node/index.js.map +1 -1
- package/dist/node/search/_internal/expandPredicate.js +34 -19
- package/dist/node/search/_internal/expandPredicate.js.map +1 -1
- package/dist/node/search/_internal/explainFilter.js +38 -0
- package/dist/node/search/_internal/explainFilter.js.map +1 -0
- package/dist/node/search/_internal/explainHelpers.js +202 -0
- package/dist/node/search/_internal/explainHelpers.js.map +1 -0
- package/dist/node/search/_internal/explainPredicate.js +39 -0
- package/dist/node/search/_internal/explainPredicate.js.map +1 -0
- package/dist/node/search/_internal/portalSearchItems.js +22 -10
- package/dist/node/search/_internal/portalSearchItems.js.map +1 -1
- package/dist/node/search/explainQueryResult.js +57 -0
- package/dist/node/search/explainQueryResult.js.map +1 -0
- package/dist/node/sites/domains/add-domain.js +4 -0
- package/dist/node/sites/domains/add-domain.js.map +1 -1
- package/dist/node/sites/domains/update-domain.js +4 -0
- package/dist/node/sites/domains/update-domain.js.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/search/_internal/expandPredicate.d.ts +15 -0
- package/dist/types/search/_internal/explainFilter.d.ts +11 -0
- package/dist/types/search/_internal/explainHelpers.d.ts +38 -0
- package/dist/types/search/_internal/explainPredicate.d.ts +12 -0
- package/dist/types/search/_internal/portalSearchItems.d.ts +8 -0
- package/dist/types/search/explainQueryResult.d.ts +102 -0
- package/package.json +1 -1
package/dist/esm/index.js
CHANGED
|
@@ -42,6 +42,9 @@ export * from "./core/updateHubEntity";
|
|
|
42
42
|
// but if it's exported there, random tests start failing
|
|
43
43
|
export * from "./urls/getCardModelUrl";
|
|
44
44
|
export * from "./core/EntityEditor";
|
|
45
|
+
// Unclear _why_ this needs to be here vs. in search/index.ts
|
|
46
|
+
// but if it's exported there, it's not actually exporeted
|
|
47
|
+
export * from "./search/explainQueryResult";
|
|
45
48
|
import OperationStack from "./OperationStack";
|
|
46
49
|
import OperationError from "./OperationError";
|
|
47
50
|
import HubError from "./HubError";
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;gBACgB;AAChB,0BAA0B;AAE1B,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,0DAA0D;AAC1D,qDAAqD;AACrD,cAAc,wBAAwB,CAAC;AACvC,2DAA2D;AAC3D,yDAAyD;AACzD,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;gBACgB;AAChB,0BAA0B;AAE1B,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,0DAA0D;AAC1D,qDAAqD;AACrD,cAAc,wBAAwB,CAAC;AACvC,2DAA2D;AAC3D,yDAAyD;AACzD,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,6DAA6D;AAC7D,0DAA0D;AAC1D,cAAc,6BAA6B,CAAC;AAE5C,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC,aAAa;AACb,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC"}
|
|
@@ -1,6 +1,36 @@
|
|
|
1
1
|
import { getProp, setProp } from "../../objects";
|
|
2
2
|
import { cloneObject } from "../../util";
|
|
3
3
|
import { relativeDateToDateRange, valueToMatchOptions } from "../utils";
|
|
4
|
+
/**
|
|
5
|
+
* @internal
|
|
6
|
+
* Predicate properties that are treated as dates
|
|
7
|
+
*/
|
|
8
|
+
export const PREDICATE_DATE_PROPS = ["created", "modified", "lastlogin"];
|
|
9
|
+
/**
|
|
10
|
+
* @internal
|
|
11
|
+
* Predicate properties that are just copied forward
|
|
12
|
+
*/
|
|
13
|
+
export const PREDICATE_COPY_PROPS = [
|
|
14
|
+
"bbox",
|
|
15
|
+
"categoriesAsParam",
|
|
16
|
+
"categoryFilter",
|
|
17
|
+
"filterType",
|
|
18
|
+
"isopendata",
|
|
19
|
+
"isviewonly",
|
|
20
|
+
"memberType",
|
|
21
|
+
"name",
|
|
22
|
+
"searchUserAccess",
|
|
23
|
+
"searchUserName",
|
|
24
|
+
"term",
|
|
25
|
+
];
|
|
26
|
+
/**
|
|
27
|
+
* @internal
|
|
28
|
+
* Predicate properties that are not treated as match options
|
|
29
|
+
*/
|
|
30
|
+
export const PREDICATE_NON_MATCH_OPTIONS_PROPS = [
|
|
31
|
+
...PREDICATE_DATE_PROPS,
|
|
32
|
+
...PREDICATE_COPY_PROPS,
|
|
33
|
+
];
|
|
4
34
|
/**
|
|
5
35
|
* @private
|
|
6
36
|
* Expand a predicate
|
|
@@ -9,29 +39,14 @@ import { relativeDateToDateRange, valueToMatchOptions } from "../utils";
|
|
|
9
39
|
*/
|
|
10
40
|
export function expandPredicate(predicate) {
|
|
11
41
|
const result = {};
|
|
12
|
-
const dateProps = ["created", "modified", "lastlogin"];
|
|
13
|
-
const copyProps = [
|
|
14
|
-
"bbox",
|
|
15
|
-
"categoriesAsParam",
|
|
16
|
-
"categoryFilter",
|
|
17
|
-
"filterType",
|
|
18
|
-
"isopendata",
|
|
19
|
-
"isviewonly",
|
|
20
|
-
"memberType",
|
|
21
|
-
"name",
|
|
22
|
-
"searchUserAccess",
|
|
23
|
-
"searchUserName",
|
|
24
|
-
"term",
|
|
25
|
-
];
|
|
26
|
-
const nonMatchOptionsFields = [...dateProps, ...copyProps];
|
|
27
42
|
// Do the conversion
|
|
28
43
|
Object.entries(predicate).forEach(([key, value]) => {
|
|
29
44
|
// Handle MatchOptions fields
|
|
30
|
-
if (!
|
|
45
|
+
if (!PREDICATE_NON_MATCH_OPTIONS_PROPS.includes(key)) {
|
|
31
46
|
setProp(key, valueToMatchOptions(value), result);
|
|
32
47
|
}
|
|
33
48
|
// Handle Date fields
|
|
34
|
-
if (
|
|
49
|
+
if (PREDICATE_DATE_PROPS.includes(key)) {
|
|
35
50
|
const dateFieldValue = cloneObject(getProp(predicate, key));
|
|
36
51
|
if (getProp(predicate, `${key}.type`) === "relative-date") {
|
|
37
52
|
setProp(key, relativeDateToDateRange(dateFieldValue), result);
|
|
@@ -41,7 +56,7 @@ export function expandPredicate(predicate) {
|
|
|
41
56
|
}
|
|
42
57
|
}
|
|
43
58
|
// Handle fields that are just copied forward
|
|
44
|
-
if (
|
|
59
|
+
if (PREDICATE_COPY_PROPS.includes(key) && predicate.hasOwnProperty(key)) {
|
|
45
60
|
setProp(key, value, result);
|
|
46
61
|
}
|
|
47
62
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expandPredicate.js","sourceRoot":"","sources":["../../../../src/search/_internal/expandPredicate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAExE
|
|
1
|
+
{"version":3,"file":"expandPredicate.js","sourceRoot":"","sources":["../../../../src/search/_internal/expandPredicate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAExE;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;AAEzE;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,MAAM;IACN,mBAAmB;IACnB,gBAAgB;IAChB,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,MAAM;IACN,kBAAkB;IAClB,gBAAgB;IAChB,MAAM;CACP,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC/C,GAAG,oBAAoB;IACvB,GAAG,oBAAoB;CACxB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,SAAqB;IACnD,MAAM,MAAM,GAAe,EAAE,CAAC;IAE9B,oBAAoB;IACpB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACjD,6BAA6B;QAC7B,IAAI,CAAC,iCAAiC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACpD,OAAO,CAAC,GAAG,EAAE,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;SAClD;QACD,qBAAqB;QACrB,IAAI,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACtC,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;YAC5D,IAAI,OAAO,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,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,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;YACvE,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;SAC7B;IACH,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { cloneObject } from "../../util";
|
|
2
|
+
import { explainPredicate } from "./explainPredicate";
|
|
3
|
+
/**
|
|
4
|
+
* Generate an explanation if a specific result passes the filter's criteria
|
|
5
|
+
* @param filter
|
|
6
|
+
* @param result
|
|
7
|
+
* @param requestOptions
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
export async function explainFilter(filter, result, requestOptions) {
|
|
11
|
+
// setup return value
|
|
12
|
+
const explanation = {
|
|
13
|
+
filter: cloneObject(filter),
|
|
14
|
+
matched: false,
|
|
15
|
+
reasons: [],
|
|
16
|
+
};
|
|
17
|
+
// for each predicate, explain the match and return the explanation
|
|
18
|
+
for (const predicate of filter.predicates) {
|
|
19
|
+
const r = await explainPredicate(predicate, result, requestOptions);
|
|
20
|
+
explanation.reasons.push(r);
|
|
21
|
+
}
|
|
22
|
+
// depending on the operation, we combine the predicate results differently
|
|
23
|
+
if (filter.operation === "OR") {
|
|
24
|
+
// if any of the predicates match, then the filter matches
|
|
25
|
+
explanation.matched = explanation.reasons.some((r) => r.matched);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
// filter.operation defaults to AND
|
|
29
|
+
explanation.matched = explanation.reasons.every((r) => r.matched);
|
|
30
|
+
}
|
|
31
|
+
// return
|
|
32
|
+
return explanation;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=explainFilter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"explainFilter.js","sourceRoot":"","sources":["../../../../src/search/_internal/explainFilter.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;;;;;GAMG;AAEH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAAe,EACf,MAAqB,EACrB,cAA+B;IAE/B,qBAAqB;IACrB,MAAM,WAAW,GAAuB;QACtC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC;QAC3B,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,EAAE;KACZ,CAAC;IACF,mEAAmE;IACnE,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE;QACzC,MAAM,CAAC,GAAG,MAAM,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QACpE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KAC7B;IACD,2EAA2E;IAC3E,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI,EAAE;QAC7B,0DAA0D;QAC1D,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;KAClE;SAAM;QACL,mCAAmC;QACnC,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;KACnE;IAED,SAAS;IACT,OAAO,WAAW,CAAC;AACrB,CAAC"}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { cloneObject } from "../../util";
|
|
2
|
+
import { getItemGroups } from "@esri/arcgis-rest-portal";
|
|
3
|
+
import { getWithDefault } from "../../objects/get-with-default";
|
|
4
|
+
import { getProp } from "../../objects/get-prop";
|
|
5
|
+
export async function explainDatePredicate(predicate, result, requestOptions) {
|
|
6
|
+
// get the value from the predicate
|
|
7
|
+
throw new Error("Not implemented");
|
|
8
|
+
}
|
|
9
|
+
export async function explainPropPredicate(predicate, result, requestOptions) {
|
|
10
|
+
// get the value from the predicate
|
|
11
|
+
throw new Error("Not implemented");
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* @internal
|
|
15
|
+
* Create explanation for an IMatchOptions predicate
|
|
16
|
+
* @param predicate
|
|
17
|
+
* @param result
|
|
18
|
+
* @param requestOptions
|
|
19
|
+
* @returns
|
|
20
|
+
*/
|
|
21
|
+
export async function explainMatchOptionPredicate(predicate, result, requestOptions) {
|
|
22
|
+
// get the key from the predicate
|
|
23
|
+
const attribute = Object.keys(predicate)[0];
|
|
24
|
+
const matchOptions = predicate[attribute];
|
|
25
|
+
const explanation = {
|
|
26
|
+
predicate: cloneObject(predicate),
|
|
27
|
+
matched: true,
|
|
28
|
+
reasons: [],
|
|
29
|
+
};
|
|
30
|
+
// Construct meta hash that will allow us to carry additional info about the match
|
|
31
|
+
const meta = {};
|
|
32
|
+
// TODO Implement when needed
|
|
33
|
+
// if (attribute === "orgid") {
|
|
34
|
+
// // fetch org into and attach the id + name into the meta hash
|
|
35
|
+
// }
|
|
36
|
+
if (attribute === "group") {
|
|
37
|
+
// fetch items groups and attach as `group` prop
|
|
38
|
+
const response = await getItemGroups(result.id, requestOptions);
|
|
39
|
+
// ----------------------------------------
|
|
40
|
+
// TODO: We've got a bunch of useful group info in the response, but only use the ids for the explanation
|
|
41
|
+
// However, to provide the user a useful explanation, we should include the group titles, and maybe even the group owners
|
|
42
|
+
// ----------------------------------------
|
|
43
|
+
// map out the id and titles into meta.groups
|
|
44
|
+
meta.groups = [
|
|
45
|
+
...getWithDefault(response, "admin", []),
|
|
46
|
+
...getWithDefault(response, "member", []),
|
|
47
|
+
...getWithDefault(response, "other", []),
|
|
48
|
+
].map((g) => ({ id: g.id, title: g.title }));
|
|
49
|
+
// and the id's into the match options attribute `group`
|
|
50
|
+
result.group = meta.groups.map((g) => g.id);
|
|
51
|
+
}
|
|
52
|
+
// get the value of the key, from the result
|
|
53
|
+
const resultValue = getProp(result, attribute);
|
|
54
|
+
if (resultValue) {
|
|
55
|
+
// check the any, all, not, exact props if defined
|
|
56
|
+
const fns = {
|
|
57
|
+
any: checkAny,
|
|
58
|
+
all: checkAll,
|
|
59
|
+
not: checkNot,
|
|
60
|
+
};
|
|
61
|
+
// for each prop, if defined, call the appropriate check function
|
|
62
|
+
Object.keys(fns).forEach((prop) => {
|
|
63
|
+
const conditionToCheck = getProp(matchOptions, prop);
|
|
64
|
+
if (conditionToCheck) {
|
|
65
|
+
const fn = getProp(fns, prop);
|
|
66
|
+
const r = fn(attribute, conditionToCheck, resultValue);
|
|
67
|
+
r.meta = meta;
|
|
68
|
+
explanation.reasons.push(r);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
// decide if all the predicates matched
|
|
72
|
+
explanation.matched = explanation.reasons.every((r) => r.matched);
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
explanation.matched = false;
|
|
76
|
+
explanation.reasons.push({
|
|
77
|
+
attribute,
|
|
78
|
+
matched: false,
|
|
79
|
+
message: `Property ${attribute} not present on search result, cannot provide explanation`,
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
return Promise.resolve(explanation);
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Returns information about the match between a result value and the .any property of an IMatchOptions predicate
|
|
86
|
+
* @param attribute
|
|
87
|
+
* @param option
|
|
88
|
+
* @param resultValue
|
|
89
|
+
* @returns
|
|
90
|
+
*/
|
|
91
|
+
export function checkAny(attribute, option, resultValue) {
|
|
92
|
+
const result = {
|
|
93
|
+
attribute,
|
|
94
|
+
values: arrayify(resultValue).join(","),
|
|
95
|
+
condition: "IN",
|
|
96
|
+
matched: false,
|
|
97
|
+
requirement: arrayify(option).join(","),
|
|
98
|
+
message: "No match",
|
|
99
|
+
};
|
|
100
|
+
const { options, matches } = getMatches(arrayify(option), arrayify(resultValue));
|
|
101
|
+
result.matched = matches.length > 0;
|
|
102
|
+
if (result.matched) {
|
|
103
|
+
result.message = `Value(s) ${result.values} contained at least one of value from [${result.requirement}]`;
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
result.message = `Value(s) ${result.values} did not contain any of value from [${result.requirement}]`;
|
|
107
|
+
}
|
|
108
|
+
return result;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* * Returns information about the match between a result value and the .all property of an IMatchOptions predicate
|
|
112
|
+
* @param attribute
|
|
113
|
+
* @param option
|
|
114
|
+
* @param resultValue
|
|
115
|
+
* @returns
|
|
116
|
+
*/
|
|
117
|
+
export function checkAll(attribute, option, resultValue) {
|
|
118
|
+
const result = {
|
|
119
|
+
attribute,
|
|
120
|
+
values: arrayify(resultValue).join(","),
|
|
121
|
+
condition: "ALL",
|
|
122
|
+
requirement: arrayify(option).join(","),
|
|
123
|
+
matched: false,
|
|
124
|
+
message: "No match",
|
|
125
|
+
};
|
|
126
|
+
const { options, matches } = getMatches(arrayify(option), arrayify(resultValue));
|
|
127
|
+
result.matched = matches.length === options.length;
|
|
128
|
+
if (result.matched) {
|
|
129
|
+
result.message = `Value(s) ${result.values} contained all values from [${result.requirement}]`;
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
result.message = `Value(s) ${result.values} did not contain all values from [${result.requirement}]`;
|
|
133
|
+
}
|
|
134
|
+
return result;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* * Returns information about the match between a result value and the .not property of an IMatchOptions predicate
|
|
138
|
+
* @param attribute
|
|
139
|
+
* @param option
|
|
140
|
+
* @param resultValue
|
|
141
|
+
* @returns
|
|
142
|
+
*/
|
|
143
|
+
export function checkNot(attribute, option, resultValue) {
|
|
144
|
+
const result = {
|
|
145
|
+
attribute,
|
|
146
|
+
values: arrayify(resultValue).join(","),
|
|
147
|
+
condition: "NOT_IN",
|
|
148
|
+
requirement: arrayify(option).join(","),
|
|
149
|
+
matched: false,
|
|
150
|
+
message: "No match",
|
|
151
|
+
};
|
|
152
|
+
const { options, values, matches } = getMatches(arrayify(option), arrayify(resultValue));
|
|
153
|
+
result.matched = matches.length === 0;
|
|
154
|
+
if (result.matched) {
|
|
155
|
+
result.message = `Value(s) ${result.values} is not contained in [${result.requirement}]`;
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
result.message = `Value(s) ${result.values} is contained in [${result.requirement}]`;
|
|
159
|
+
}
|
|
160
|
+
return result;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Ensure a value that could be `string | string[]` is a `string[]`
|
|
164
|
+
* @param value
|
|
165
|
+
* @returns
|
|
166
|
+
*/
|
|
167
|
+
function arrayify(value) {
|
|
168
|
+
if (!Array.isArray(value)) {
|
|
169
|
+
return [value];
|
|
170
|
+
}
|
|
171
|
+
return value;
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Return matching values from two arrays
|
|
175
|
+
* @param options
|
|
176
|
+
* @param resultValues
|
|
177
|
+
* @returns
|
|
178
|
+
*/
|
|
179
|
+
function getMatches(options, resultValues) {
|
|
180
|
+
const result = {
|
|
181
|
+
options,
|
|
182
|
+
values: resultValues,
|
|
183
|
+
matches: [],
|
|
184
|
+
};
|
|
185
|
+
result.matches = options.reduce((acc, o) => {
|
|
186
|
+
if (resultValues.includes(o)) {
|
|
187
|
+
acc.push(o);
|
|
188
|
+
}
|
|
189
|
+
return acc;
|
|
190
|
+
}, []);
|
|
191
|
+
return result;
|
|
192
|
+
}
|
|
193
|
+
//# sourceMappingURL=explainHelpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"explainHelpers.js","sourceRoot":"","sources":["../../../../src/search/_internal/explainHelpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { PREDICATE_DATE_PROPS, PREDICATE_NON_MATCH_OPTIONS_PROPS, } from "./expandPredicate";
|
|
2
|
+
import { explainMatchOptionPredicate, explainDatePredicate, explainPropPredicate, } from "./explainHelpers";
|
|
3
|
+
/**
|
|
4
|
+
* Geneate an explanation if a specific result passes the predicate's criteria
|
|
5
|
+
* This will delegate to more specific functions based on the predicate's key
|
|
6
|
+
* @param predicate
|
|
7
|
+
* @param result
|
|
8
|
+
* @param requestOptions
|
|
9
|
+
* @returns
|
|
10
|
+
*/
|
|
11
|
+
export async function explainPredicate(predicate, result, requestOptions) {
|
|
12
|
+
// const predicateResult: IPredicateExplanation = {
|
|
13
|
+
// predicate: cloneObject(predicate),
|
|
14
|
+
// included: false,
|
|
15
|
+
// reasons: [],
|
|
16
|
+
// };
|
|
17
|
+
// get the key from the predicate
|
|
18
|
+
const key = Object.keys(predicate)[0];
|
|
19
|
+
// default to match options...
|
|
20
|
+
let fn = explainMatchOptionPredicate;
|
|
21
|
+
// However, some keys are treated differently
|
|
22
|
+
if (PREDICATE_NON_MATCH_OPTIONS_PROPS.includes(key)) {
|
|
23
|
+
if (PREDICATE_DATE_PROPS.includes(key)) {
|
|
24
|
+
// handle as date
|
|
25
|
+
fn = explainDatePredicate;
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
// handle as prop we just copy forward
|
|
29
|
+
fn = explainPropPredicate;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
// return the result
|
|
33
|
+
return fn(predicate, result, requestOptions);
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=explainPredicate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"explainPredicate.js","sourceRoot":"","sources":["../../../../src/search/_internal/explainPredicate.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,oBAAoB,EACpB,iCAAiC,GAClC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,2BAA2B,EAC3B,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAE1B;;;;;;;GAOG;AAEH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,SAAwC,EACxC,MAAqB,EACrB,cAA+B;IAE/B,mDAAmD;IACnD,uCAAuC;IACvC,qBAAqB;IACrB,iBAAiB;IACjB,KAAK;IAEL,iCAAiC;IACjC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,8BAA8B;IAC9B,IAAI,EAAE,GAAG,2BAA2B,CAAC;IAErC,6CAA6C;IAC7C,IAAI,iCAAiC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QACnD,IAAI,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACtC,iBAAiB;YACjB,EAAE,GAAG,oBAAoB,CAAC;SAC3B;aAAM;YACL,sCAAsC;YACtC,EAAE,GAAG,oBAAoB,CAAC;SAC3B;KACF;IACD,oBAAoB;IACpB,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;AAC/C,CAAC"}
|
|
@@ -34,16 +34,13 @@ export function portalSearchItemsAsItems(query, options) {
|
|
|
34
34
|
return searchPortalAsItem(so);
|
|
35
35
|
}
|
|
36
36
|
/**
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
* @
|
|
37
|
+
* @internal
|
|
38
|
+
* Expand an IQuery by applying well-known filters and predicates,
|
|
39
|
+
* and then expanding all the predicates into IMatchOption objects.
|
|
40
|
+
* @param query `IQuery` to expand
|
|
41
|
+
* @returns IQuery
|
|
41
42
|
*/
|
|
42
|
-
function
|
|
43
|
-
var _a;
|
|
44
|
-
if (!options.requestOptions) {
|
|
45
|
-
throw new HubError("portalSearchItems", "options.requestOptions is required.");
|
|
46
|
-
}
|
|
43
|
+
export function expandQuery(query) {
|
|
47
44
|
let updatedQuery = applyWellKnownCollectionFilters(query);
|
|
48
45
|
// Expand well-known filterGroups
|
|
49
46
|
// TODO: Should we remove this with the whole idea of collections?
|
|
@@ -53,6 +50,20 @@ function processSearchParams(options, query) {
|
|
|
53
50
|
filter.predicates = filter.predicates.map(expandPredicate);
|
|
54
51
|
return filter;
|
|
55
52
|
});
|
|
53
|
+
return updatedQuery;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Common preprocessing for search options and the query
|
|
57
|
+
* @param options
|
|
58
|
+
* @param query
|
|
59
|
+
* @returns
|
|
60
|
+
*/
|
|
61
|
+
function processSearchParams(options, query) {
|
|
62
|
+
var _a;
|
|
63
|
+
if (!options.requestOptions) {
|
|
64
|
+
throw new HubError("portalSearchItems", "options.requestOptions is required.");
|
|
65
|
+
}
|
|
66
|
+
const updatedQuery = expandQuery(query);
|
|
56
67
|
// Serialize the all the groups for portal
|
|
57
68
|
const so = serializeQueryForPortal(updatedQuery);
|
|
58
69
|
// Array of properties we want to copy from IHubSearchOptions to the ISearchOptions
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portalSearchItems.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchItems.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAErE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAYrD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAAa,EACb,OAA0B;IAE1B,MAAM,EAAE,GAAG,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/C,OAAO,6BAA6B,CAAC,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CACtC,KAAa,EACb,OAA0B;IAE1B,MAAM,EAAE,GAAG,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/C,OAAO,kBAAkB,CAAC,EAAE,CAAC,CAAC;AAChC,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"portalSearchItems.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchItems.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { expandQuery } from "./_internal/portalSearchItems";
|
|
2
|
+
import { cloneObject } from "../util";
|
|
3
|
+
import { explainFilter } from "./_internal/explainFilter";
|
|
4
|
+
/**
|
|
5
|
+
* Explain why a specific result was included in a Query.
|
|
6
|
+
*
|
|
7
|
+
* NOTE: This only works for entityType: "item" queries and does not
|
|
8
|
+
* cover all possible permutations.
|
|
9
|
+
* @param queryResult
|
|
10
|
+
* @param query
|
|
11
|
+
* @param requestOptions
|
|
12
|
+
* @returns
|
|
13
|
+
*/
|
|
14
|
+
export async function explainQueryResult(queryResult, query, requestOptions) {
|
|
15
|
+
// Throw if the query is not for items
|
|
16
|
+
if (query.targetEntity !== "item") {
|
|
17
|
+
throw new Error(`explainQueryResult: Only queries with targetEntity: "item" are supported`);
|
|
18
|
+
}
|
|
19
|
+
// Expand the query so we have a standardized structure to work with
|
|
20
|
+
const expandedQuery = expandQuery(query);
|
|
21
|
+
// iterate the filters on the query and get explanations for each
|
|
22
|
+
const filterExplanations = [];
|
|
23
|
+
for (const filter of expandedQuery.filters) {
|
|
24
|
+
const fe = await explainFilter(filter, queryResult, requestOptions);
|
|
25
|
+
filterExplanations.push(fe);
|
|
26
|
+
}
|
|
27
|
+
// Collect up the reasons
|
|
28
|
+
const included = filterExplanations.reduce((acc, explanation) => {
|
|
29
|
+
if (!explanation.matched) {
|
|
30
|
+
acc = false;
|
|
31
|
+
}
|
|
32
|
+
return acc;
|
|
33
|
+
}, true);
|
|
34
|
+
// Collect up all the reasons into a single array
|
|
35
|
+
const summary = [];
|
|
36
|
+
filterExplanations.forEach((fe) => {
|
|
37
|
+
fe.reasons.forEach((predicateExplanation) => {
|
|
38
|
+
predicateExplanation.reasons.forEach((reason) => {
|
|
39
|
+
summary.push(reason);
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
// construct the result
|
|
44
|
+
const result = {
|
|
45
|
+
result: cloneObject(queryResult),
|
|
46
|
+
query: cloneObject(query),
|
|
47
|
+
matched: included,
|
|
48
|
+
reasons: filterExplanations,
|
|
49
|
+
summary,
|
|
50
|
+
};
|
|
51
|
+
return result;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=explainQueryResult.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"explainQueryResult.js","sourceRoot":"","sources":["../../../src/search/explainQueryResult.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAkG1D;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,WAA0B,EAC1B,KAAa,EACb,cAA+B;IAE/B,sCAAsC;IACtC,IAAI,KAAK,CAAC,YAAY,KAAK,MAAM,EAAE;QACjC,MAAM,IAAI,KAAK,CACb,0EAA0E,CAC3E,CAAC;KACH;IAED,oEAAoE;IACpE,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAEzC,iEAAiE;IACjE,MAAM,kBAAkB,GAAyB,EAAE,CAAC;IACpD,KAAK,MAAM,MAAM,IAAI,aAAa,CAAC,OAAO,EAAE;QAC1C,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;QACpE,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KAC7B;IAED,yBAAyB;IACzB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE;QAC9D,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE;YACxB,GAAG,GAAG,KAAK,CAAC;SACb;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,IAAI,CAAC,CAAC;IAET,iDAAiD;IACjD,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,kBAAkB,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;QAChC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,oBAAoB,EAAE,EAAE;YAC1C,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC9C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,uBAAuB;IACvB,MAAM,MAAM,GAAsB;QAChC,MAAM,EAAE,WAAW,CAAC,WAAW,CAAC;QAChC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;QACzB,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,kBAAkB;QAC3B,OAAO;KACR,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -18,6 +18,10 @@ export function addDomain(domainEntry, hubRequestOptions) {
|
|
|
18
18
|
if (typeof title === "number") {
|
|
19
19
|
domainEntry.siteTitle = title.toString();
|
|
20
20
|
}
|
|
21
|
+
// update client key to empty string if we have one, as it won't pass schema validation
|
|
22
|
+
if (domainEntry.clientKey) {
|
|
23
|
+
domainEntry.clientKey = "";
|
|
24
|
+
}
|
|
21
25
|
return fetch(url, {
|
|
22
26
|
method: "POST",
|
|
23
27
|
headers,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-domain.js","sourceRoot":"","sources":["../../../../src/sites/domains/add-domain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAG1E;;;;GAIG;AACH,MAAM,UAAU,SAAS,CACvB,WAAkC,EAClC,iBAAqC;IAErC,IAAI,iBAAiB,CAAC,QAAQ,EAAE;QAC9B,MAAM,IAAI,KAAK,CACb,sGAAsG,CACvG,CAAC;KACH;IACD,MAAM,OAAO,GAAG,cAAc,CAAC,iBAAiB,CAAC,CAAC;IAClD,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;IAC7C,MAAM,GAAG,GAAG,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;IACnE,yCAAyC;IACzC,MAAM,KAAK,GAAG,WAAW,CAAC,SAAoB,CAAC;IAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,WAAW,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;KAC1C;IACD,OAAO,KAAK,CAAC,GAAG,EAAE;QAChB,MAAM,EAAE,MAAM;QACd,OAAO;QACP,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;KAClC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;AACpC,CAAC"}
|
|
1
|
+
{"version":3,"file":"add-domain.js","sourceRoot":"","sources":["../../../../src/sites/domains/add-domain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAG1E;;;;GAIG;AACH,MAAM,UAAU,SAAS,CACvB,WAAkC,EAClC,iBAAqC;IAErC,IAAI,iBAAiB,CAAC,QAAQ,EAAE;QAC9B,MAAM,IAAI,KAAK,CACb,sGAAsG,CACvG,CAAC;KACH;IACD,MAAM,OAAO,GAAG,cAAc,CAAC,iBAAiB,CAAC,CAAC;IAClD,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;IAC7C,MAAM,GAAG,GAAG,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;IACnE,yCAAyC;IACzC,MAAM,KAAK,GAAG,WAAW,CAAC,SAAoB,CAAC;IAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,WAAW,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;KAC1C;IACD,uFAAuF;IACvF,IAAI,WAAW,CAAC,SAAS,EAAE;QACzB,WAAW,CAAC,SAAS,GAAG,EAAE,CAAC;KAC5B;IACD,OAAO,KAAK,CAAC,GAAG,EAAE;QAChB,MAAM,EAAE,MAAM;QACd,OAAO;QACP,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;KAClC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;AACpC,CAAC"}
|
|
@@ -18,6 +18,10 @@ export function updateDomain(domainEntry, hubRequestOptions) {
|
|
|
18
18
|
if (typeof title === "number") {
|
|
19
19
|
domainEntry.siteTitle = title.toString();
|
|
20
20
|
}
|
|
21
|
+
// update client key to empty string if we have one, as it won't pass schema validation
|
|
22
|
+
if (domainEntry.clientKey) {
|
|
23
|
+
domainEntry.clientKey = "";
|
|
24
|
+
}
|
|
21
25
|
return fetch(url, {
|
|
22
26
|
method: "PUT",
|
|
23
27
|
headers,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-domain.js","sourceRoot":"","sources":["../../../../src/sites/domains/update-domain.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE1E;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAC1B,WAAyB,EACzB,iBAAqC;IAErC,IAAI,iBAAiB,CAAC,QAAQ,EAAE;QAC9B,MAAM,IAAI,KAAK,CACb,yGAAyG,CAC1G,CAAC;KACH;IACD,MAAM,OAAO,GAAG,cAAc,CAAC,iBAAiB,CAAC,CAAC;IAClD,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;IAC7C,MAAM,GAAG,GAAG,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,SAAS,CAAC,IAC9D,WAAW,CAAC,EACd,EAAE,CAAC;IACH,yCAAyC;IACzC,MAAM,KAAK,GAAG,WAAW,CAAC,SAAoB,CAAC;IAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,WAAW,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;KAC1C;
|
|
1
|
+
{"version":3,"file":"update-domain.js","sourceRoot":"","sources":["../../../../src/sites/domains/update-domain.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE1E;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAC1B,WAAyB,EACzB,iBAAqC;IAErC,IAAI,iBAAiB,CAAC,QAAQ,EAAE;QAC9B,MAAM,IAAI,KAAK,CACb,yGAAyG,CAC1G,CAAC;KACH;IACD,MAAM,OAAO,GAAG,cAAc,CAAC,iBAAiB,CAAC,CAAC;IAClD,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;IAC7C,MAAM,GAAG,GAAG,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,SAAS,CAAC,IAC9D,WAAW,CAAC,EACd,EAAE,CAAC;IACH,yCAAyC;IACzC,MAAM,KAAK,GAAG,WAAW,CAAC,SAAoB,CAAC;IAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,WAAW,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;KAC1C;IAED,uFAAuF;IACvF,IAAI,WAAW,CAAC,SAAS,EAAE;QACzB,WAAW,CAAC,SAAS,GAAG,EAAE,CAAC;KAC5B;IAED,OAAO,KAAK,CAAC,GAAG,EAAE;QAChB,MAAM,EAAE,KAAK;QACb,OAAO;QACP,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;KAClC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;AACpC,CAAC"}
|
package/dist/node/index.js
CHANGED
|
@@ -46,6 +46,9 @@ tslib_1.__exportStar(require("./core/updateHubEntity"), exports);
|
|
|
46
46
|
// but if it's exported there, random tests start failing
|
|
47
47
|
tslib_1.__exportStar(require("./urls/getCardModelUrl"), exports);
|
|
48
48
|
tslib_1.__exportStar(require("./core/EntityEditor"), exports);
|
|
49
|
+
// Unclear _why_ this needs to be here vs. in search/index.ts
|
|
50
|
+
// but if it's exported there, it's not actually exporeted
|
|
51
|
+
tslib_1.__exportStar(require("./search/explainQueryResult"), exports);
|
|
49
52
|
const OperationStack_1 = require("./OperationStack");
|
|
50
53
|
exports.OperationStack = OperationStack_1.default;
|
|
51
54
|
const OperationError_1 = require("./OperationError");
|
package/dist/node/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;gBACgB;AAChB,0BAA0B;;;;AAE1B,mDAAyB;AACzB,gDAAsB;AACtB,0DAAgC;AAChC,iEAAuC;AACvC,iDAAuB;AACvB,uDAA6B;AAC7B,oDAA0B;AAC1B,iDAAuB;AACvB,yDAA+B;AAC/B,sDAA4B;AAC5B,mDAAyB;AACzB,mDAAyB;AACzB,iDAAuB;AACvB,wDAA8B;AAC9B,wDAA8B;AAC9B,kDAAwB;AACxB,mDAAyB;AACzB,oDAA0B;AAC1B,gDAAsB;AACtB,kDAAwB;AACxB,wDAA8B;AAC9B,qDAA2B;AAC3B,oDAA0B;AAC1B,sDAA4B;AAC5B,mDAAyB;AACzB,kDAAwB;AACxB,oDAA0B;AAC1B,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB;AACxB,uDAA6B;AAC7B,oDAA0B;AAC1B,0DAA0D;AAC1D,qDAAqD;AACrD,iEAAuC;AACvC,2DAA2D;AAC3D,yDAAyD;AACzD,iEAAuC;AACvC,8DAAoC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;gBACgB;AAChB,0BAA0B;;;;AAE1B,mDAAyB;AACzB,gDAAsB;AACtB,0DAAgC;AAChC,iEAAuC;AACvC,iDAAuB;AACvB,uDAA6B;AAC7B,oDAA0B;AAC1B,iDAAuB;AACvB,yDAA+B;AAC/B,sDAA4B;AAC5B,mDAAyB;AACzB,mDAAyB;AACzB,iDAAuB;AACvB,wDAA8B;AAC9B,wDAA8B;AAC9B,kDAAwB;AACxB,mDAAyB;AACzB,oDAA0B;AAC1B,gDAAsB;AACtB,kDAAwB;AACxB,wDAA8B;AAC9B,qDAA2B;AAC3B,oDAA0B;AAC1B,sDAA4B;AAC5B,mDAAyB;AACzB,kDAAwB;AACxB,oDAA0B;AAC1B,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB;AACxB,uDAA6B;AAC7B,oDAA0B;AAC1B,0DAA0D;AAC1D,qDAAqD;AACrD,iEAAuC;AACvC,2DAA2D;AAC3D,yDAAyD;AACzD,iEAAuC;AACvC,8DAAoC;AACpC,6DAA6D;AAC7D,0DAA0D;AAC1D,sEAA4C;AAE5C,qDAA8C;AAKrC,yBALF,wBAAc,CAKE;AAJvB,qDAA8C;AAIrB,yBAJlB,wBAAc,CAIkB;AAHvC,yCAAkC;AAGO,mBAHlC,kBAAQ,CAGkC;AACjD,6BAAkC;AAAzB,4FAAA,IAAI,OAAA;AAAE,4FAAA,IAAI,OAAA"}
|