@esri/hub-common 9.37.0 → 9.38.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.
- package/dist/es2017/content/HubContent.js +68 -0
- package/dist/es2017/content/HubContent.js.map +1 -0
- package/dist/es2017/content/index.js +1 -0
- package/dist/es2017/content/index.js.map +1 -1
- package/dist/es2017/groups/HubGroups.js +63 -0
- package/dist/es2017/groups/HubGroups.js.map +1 -0
- package/dist/es2017/groups/_internal/enrichments.js +99 -0
- package/dist/es2017/groups/_internal/enrichments.js.map +1 -0
- package/dist/es2017/groups/index.js +2 -0
- package/dist/es2017/groups/index.js.map +1 -1
- package/dist/es2017/groups/types/IGroupMembershipSummary.js +1 -0
- package/dist/es2017/groups/types/IGroupMembershipSummary.js.map +1 -0
- package/dist/es2017/groups/types/index.js +2 -0
- package/dist/es2017/groups/types/index.js.map +1 -0
- package/dist/es2017/index.js +1 -0
- package/dist/es2017/index.js.map +1 -1
- package/dist/es2017/items/_enrichments.js +9 -1
- package/dist/es2017/items/_enrichments.js.map +1 -1
- package/dist/es2017/pages/HubPages.js +61 -0
- package/dist/es2017/pages/HubPages.js.map +1 -0
- package/dist/es2017/pages/index.js +2 -0
- package/dist/es2017/pages/index.js.map +1 -0
- package/dist/es2017/projects/HubProjects.js +56 -1
- package/dist/es2017/projects/HubProjects.js.map +1 -1
- package/dist/es2017/search/_internal/hubSearchItems.js +191 -0
- package/dist/es2017/search/_internal/hubSearchItems.js.map +1 -0
- package/dist/es2017/search/_internal/index.js +3 -0
- package/dist/es2017/search/_internal/index.js.map +1 -1
- package/dist/es2017/search/_internal/parseInclude.js +27 -0
- package/dist/es2017/search/_internal/parseInclude.js.map +1 -0
- package/dist/es2017/search/_internal/portalSearchGroups.js +100 -0
- package/dist/es2017/search/_internal/portalSearchGroups.js.map +1 -0
- package/dist/es2017/search/_internal/portalSearchItems.js +109 -0
- package/dist/es2017/search/_internal/portalSearchItems.js.map +1 -0
- package/dist/es2017/search/_searchContent.js +3 -0
- package/dist/es2017/search/_searchContent.js.map +1 -1
- package/dist/es2017/search/_searchGroups.js +3 -1
- package/dist/es2017/search/_searchGroups.js.map +1 -1
- package/dist/es2017/search/_searchUsers.js +3 -1
- package/dist/es2017/search/_searchUsers.js.map +1 -1
- package/dist/es2017/search/content-utils.js +36 -4
- package/dist/es2017/search/content-utils.js.map +1 -1
- package/dist/es2017/search/filter-utils.js +18 -3
- package/dist/es2017/search/filter-utils.js.map +1 -1
- package/dist/es2017/search/group-utils.js +8 -1
- package/dist/es2017/search/group-utils.js.map +1 -1
- package/dist/es2017/search/hubSearch.js +48 -0
- package/dist/es2017/search/hubSearch.js.map +1 -0
- package/dist/es2017/search/index.js +1 -0
- package/dist/es2017/search/index.js.map +1 -1
- package/dist/es2017/search/user-utils.js +8 -1
- package/dist/es2017/search/user-utils.js.map +1 -1
- package/dist/es2017/search/utils.js +5 -0
- package/dist/es2017/search/utils.js.map +1 -1
- package/dist/es2017/sites/HubSites.js +55 -1
- package/dist/es2017/sites/HubSites.js.map +1 -1
- package/dist/es2017/urls/getGroupHomeUrl.js +12 -0
- package/dist/es2017/urls/getGroupHomeUrl.js.map +1 -0
- package/dist/es2017/urls/index.js +1 -0
- package/dist/es2017/urls/index.js.map +1 -1
- package/dist/esm/content/HubContent.js +75 -0
- package/dist/esm/content/HubContent.js.map +1 -0
- package/dist/esm/content/index.js +1 -0
- package/dist/esm/content/index.js.map +1 -1
- package/dist/esm/groups/HubGroups.js +70 -0
- package/dist/esm/groups/HubGroups.js.map +1 -0
- package/dist/esm/groups/_internal/enrichments.js +100 -0
- package/dist/esm/groups/_internal/enrichments.js.map +1 -0
- package/dist/esm/groups/index.js +2 -0
- package/dist/esm/groups/index.js.map +1 -1
- package/dist/esm/groups/types/IGroupMembershipSummary.js +1 -0
- package/dist/esm/groups/types/IGroupMembershipSummary.js.map +1 -0
- package/dist/esm/groups/types/index.js +2 -0
- package/dist/esm/groups/types/index.js.map +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/items/_enrichments.js +9 -1
- package/dist/esm/items/_enrichments.js.map +1 -1
- package/dist/esm/pages/HubPages.js +68 -0
- package/dist/esm/pages/HubPages.js.map +1 -0
- package/dist/esm/pages/index.js +2 -0
- package/dist/esm/pages/index.js.map +1 -0
- package/dist/esm/projects/HubProjects.js +63 -2
- package/dist/esm/projects/HubProjects.js.map +1 -1
- package/dist/esm/search/_internal/hubSearchItems.js +204 -0
- package/dist/esm/search/_internal/hubSearchItems.js.map +1 -0
- package/dist/esm/search/_internal/index.js +3 -0
- package/dist/esm/search/_internal/index.js.map +1 -1
- package/dist/esm/search/_internal/parseInclude.js +27 -0
- package/dist/esm/search/_internal/parseInclude.js.map +1 -0
- package/dist/esm/search/_internal/portalSearchGroups.js +114 -0
- package/dist/esm/search/_internal/portalSearchGroups.js.map +1 -0
- package/dist/esm/search/_internal/portalSearchItems.js +123 -0
- package/dist/esm/search/_internal/portalSearchItems.js.map +1 -0
- package/dist/esm/search/_searchContent.js +3 -0
- package/dist/esm/search/_searchContent.js.map +1 -1
- package/dist/esm/search/_searchGroups.js +3 -1
- package/dist/esm/search/_searchGroups.js.map +1 -1
- package/dist/esm/search/_searchUsers.js +3 -1
- package/dist/esm/search/_searchUsers.js.map +1 -1
- package/dist/esm/search/content-utils.js +38 -4
- package/dist/esm/search/content-utils.js.map +1 -1
- package/dist/esm/search/filter-utils.js +16 -3
- package/dist/esm/search/filter-utils.js.map +1 -1
- package/dist/esm/search/group-utils.js +8 -1
- package/dist/esm/search/group-utils.js.map +1 -1
- package/dist/esm/search/hubSearch.js +52 -0
- package/dist/esm/search/hubSearch.js.map +1 -0
- package/dist/esm/search/index.js +1 -0
- package/dist/esm/search/index.js.map +1 -1
- package/dist/esm/search/user-utils.js +8 -1
- package/dist/esm/search/user-utils.js.map +1 -1
- package/dist/esm/search/utils.js +5 -0
- package/dist/esm/search/utils.js.map +1 -1
- package/dist/esm/sites/HubSites.js +62 -2
- package/dist/esm/sites/HubSites.js.map +1 -1
- package/dist/esm/urls/getGroupHomeUrl.js +12 -0
- package/dist/esm/urls/getGroupHomeUrl.js.map +1 -0
- package/dist/esm/urls/index.js +1 -0
- package/dist/esm/urls/index.js.map +1 -1
- package/dist/node/content/HubContent.js +72 -0
- package/dist/node/content/HubContent.js.map +1 -0
- package/dist/node/content/index.js +1 -0
- package/dist/node/content/index.js.map +1 -1
- package/dist/node/groups/HubGroups.js +67 -0
- package/dist/node/groups/HubGroups.js.map +1 -0
- package/dist/node/groups/_internal/enrichments.js +103 -0
- package/dist/node/groups/_internal/enrichments.js.map +1 -0
- package/dist/node/groups/index.js +2 -0
- package/dist/node/groups/index.js.map +1 -1
- package/dist/node/groups/types/IGroupMembershipSummary.js +3 -0
- package/dist/node/groups/types/IGroupMembershipSummary.js.map +1 -0
- package/dist/node/groups/types/index.js +5 -0
- package/dist/node/groups/types/index.js.map +1 -0
- package/dist/node/index.js +1 -0
- package/dist/node/index.js.map +1 -1
- package/dist/node/items/_enrichments.js +9 -1
- package/dist/node/items/_enrichments.js.map +1 -1
- package/dist/node/pages/HubPages.js +65 -0
- package/dist/node/pages/HubPages.js.map +1 -0
- package/dist/node/pages/index.js +5 -0
- package/dist/node/pages/index.js.map +1 -0
- package/dist/node/projects/HubProjects.js +57 -1
- package/dist/node/projects/HubProjects.js.map +1 -1
- package/dist/node/search/_internal/hubSearchItems.js +198 -0
- package/dist/node/search/_internal/hubSearchItems.js.map +1 -0
- package/dist/node/search/_internal/index.js +3 -0
- package/dist/node/search/_internal/index.js.map +1 -1
- package/dist/node/search/_internal/parseInclude.js +31 -0
- package/dist/node/search/_internal/parseInclude.js.map +1 -0
- package/dist/node/search/_internal/portalSearchGroups.js +104 -0
- package/dist/node/search/_internal/portalSearchGroups.js.map +1 -0
- package/dist/node/search/_internal/portalSearchItems.js +113 -0
- package/dist/node/search/_internal/portalSearchItems.js.map +1 -0
- package/dist/node/search/_searchContent.js +3 -0
- package/dist/node/search/_searchContent.js.map +1 -1
- package/dist/node/search/_searchGroups.js +2 -0
- package/dist/node/search/_searchGroups.js.map +1 -1
- package/dist/node/search/_searchUsers.js +2 -0
- package/dist/node/search/_searchUsers.js.map +1 -1
- package/dist/node/search/content-utils.js +38 -5
- package/dist/node/search/content-utils.js.map +1 -1
- package/dist/node/search/filter-utils.js +18 -3
- package/dist/node/search/filter-utils.js.map +1 -1
- package/dist/node/search/group-utils.js +7 -0
- package/dist/node/search/group-utils.js.map +1 -1
- package/dist/node/search/hubSearch.js +52 -0
- package/dist/node/search/hubSearch.js.map +1 -0
- package/dist/node/search/index.js +1 -0
- package/dist/node/search/index.js.map +1 -1
- package/dist/node/search/user-utils.js +7 -0
- package/dist/node/search/user-utils.js.map +1 -1
- package/dist/node/search/utils.js +5 -0
- package/dist/node/search/utils.js.map +1 -1
- package/dist/node/sites/HubSites.js +56 -1
- package/dist/node/sites/HubSites.js.map +1 -1
- package/dist/node/urls/getGroupHomeUrl.js +16 -0
- package/dist/node/urls/getGroupHomeUrl.js.map +1 -0
- package/dist/node/urls/index.js +1 -0
- package/dist/node/urls/index.js.map +1 -1
- package/dist/types/content/HubContent.d.ts +11 -0
- package/dist/types/content/index.d.ts +1 -0
- package/dist/types/groups/HubGroups.d.ts +11 -0
- package/dist/types/groups/_internal/enrichments.d.ts +30 -0
- package/dist/types/groups/index.d.ts +2 -0
- package/dist/types/groups/types/IGroupMembershipSummary.d.ts +15 -0
- package/dist/types/groups/types/index.d.ts +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/pages/HubPages.d.ts +11 -0
- package/dist/types/pages/index.d.ts +1 -0
- package/dist/types/projects/HubProjects.d.ts +10 -1
- package/dist/types/search/_internal/hubSearchItems.d.ts +18 -0
- package/dist/types/search/_internal/index.d.ts +3 -0
- package/dist/types/search/_internal/parseInclude.d.ts +32 -0
- package/dist/types/search/_internal/portalSearchGroups.d.ts +9 -0
- package/dist/types/search/_internal/portalSearchItems.d.ts +9 -0
- package/dist/types/search/content-utils.d.ts +9 -1
- package/dist/types/search/hubSearch.d.ts +11 -0
- package/dist/types/search/index.d.ts +1 -0
- package/dist/types/search/types/ICollection.d.ts +8 -0
- package/dist/types/search/types/IHubSearchOptions.d.ts +46 -5
- package/dist/types/search/types/IHubSearchResult.d.ts +46 -2
- package/dist/types/search/types/types.d.ts +13 -15
- package/dist/types/sites/HubSites.d.ts +9 -1
- package/dist/types/urls/getGroupHomeUrl.d.ts +10 -0
- package/dist/types/urls/index.d.ts +1 -0
- package/dist/umd/common.umd.js +8002 -6976
- package/dist/umd/common.umd.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.convertHubResponseToFacets = exports.hubContentToSearchResult = exports.jsonApiToHubContent = exports.hubSearchItems = void 0;
|
|
4
|
+
const objects_1 = require("../../objects");
|
|
5
|
+
const util_1 = require("../../util");
|
|
6
|
+
const utils_1 = require("../utils");
|
|
7
|
+
// ## ## ####### ######## ########
|
|
8
|
+
// ### ## ## ## ## ##
|
|
9
|
+
// #### ## ## ## ## ##
|
|
10
|
+
// ## ## ## ## ## ## ######
|
|
11
|
+
// ## #### ## ## ## ##
|
|
12
|
+
// ## ### ## ## ## ##
|
|
13
|
+
// ## ## ####### ## ########
|
|
14
|
+
//
|
|
15
|
+
// Since Hub API is still in flux, there is no code coverage for this file
|
|
16
|
+
/**
|
|
17
|
+
* Execute item search against the Hub API
|
|
18
|
+
* @param filter
|
|
19
|
+
* @param options
|
|
20
|
+
* @returns
|
|
21
|
+
*/
|
|
22
|
+
/* istanbul ignore next */
|
|
23
|
+
async function hubSearchItems(filters, options) {
|
|
24
|
+
var _a;
|
|
25
|
+
// TODO: better mapping from api to apiUrl
|
|
26
|
+
const api = utils_1.expandApi(options.api || "hub");
|
|
27
|
+
const apiUrl = `${api.url}/api/items/beta/search`;
|
|
28
|
+
// Purge filterType from the filters array
|
|
29
|
+
const cleanFilters = [];
|
|
30
|
+
filters.forEach((block) => {
|
|
31
|
+
const b = {
|
|
32
|
+
operation: block.operation,
|
|
33
|
+
filters: block.filters.map((f) => {
|
|
34
|
+
const c = util_1.cloneObject(f);
|
|
35
|
+
delete c.filterType;
|
|
36
|
+
return c;
|
|
37
|
+
}),
|
|
38
|
+
};
|
|
39
|
+
cleanFilters.push(b);
|
|
40
|
+
});
|
|
41
|
+
const searchRequest = {
|
|
42
|
+
q: cleanFilters,
|
|
43
|
+
options: {
|
|
44
|
+
num: options.num || 10,
|
|
45
|
+
start: options.start || 1,
|
|
46
|
+
sortField: options.sortField,
|
|
47
|
+
sortOrder: options.sortOrder,
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
// Add optional props via setProp b/c typescript really does not like
|
|
51
|
+
// adding properties after defining an object
|
|
52
|
+
if ((_a = options.aggFields) === null || _a === void 0 ? void 0 : _a.length) {
|
|
53
|
+
const aggs = [
|
|
54
|
+
{
|
|
55
|
+
mode: "terms",
|
|
56
|
+
fields: options.aggFields,
|
|
57
|
+
num: options.aggLimit || 10,
|
|
58
|
+
},
|
|
59
|
+
];
|
|
60
|
+
objects_1.setProp("aggregations", aggs, searchRequest.options);
|
|
61
|
+
}
|
|
62
|
+
if (options.authentication) {
|
|
63
|
+
const session = {
|
|
64
|
+
token: options.authentication.token,
|
|
65
|
+
portal: options.authentication.portal,
|
|
66
|
+
};
|
|
67
|
+
objects_1.setProp("session", session, searchRequest.options);
|
|
68
|
+
}
|
|
69
|
+
const opts = {
|
|
70
|
+
method: "POST",
|
|
71
|
+
mode: "cors",
|
|
72
|
+
cache: "no-cache",
|
|
73
|
+
headers: {
|
|
74
|
+
"Content-Type": "application/json",
|
|
75
|
+
},
|
|
76
|
+
body: JSON.stringify(searchRequest),
|
|
77
|
+
};
|
|
78
|
+
try {
|
|
79
|
+
const raw = await fetch(apiUrl, opts);
|
|
80
|
+
const json = await raw.json();
|
|
81
|
+
let token;
|
|
82
|
+
if (options.authentication) {
|
|
83
|
+
const us = options.authentication;
|
|
84
|
+
token = us.token;
|
|
85
|
+
}
|
|
86
|
+
const tokenizeThubmnailUrl = (entry) => {
|
|
87
|
+
if (token && entry.attributes.access !== "public") {
|
|
88
|
+
entry.attributes.thumbnailUrl = `${entry.attributes.thumbnailUrl}?token=${token}`;
|
|
89
|
+
}
|
|
90
|
+
return entry;
|
|
91
|
+
};
|
|
92
|
+
json.data = json.data.map(tokenizeThubmnailUrl);
|
|
93
|
+
// convert items to IHubSerchResult
|
|
94
|
+
const conversion = (entry) => {
|
|
95
|
+
return hubContentToSearchResult(jsonApiToHubContent(entry));
|
|
96
|
+
};
|
|
97
|
+
const results = await Promise.all(json.data.map(conversion));
|
|
98
|
+
const facets = convertHubResponseToFacets(json);
|
|
99
|
+
// now transform into a IHubSearchResponse
|
|
100
|
+
const response = {
|
|
101
|
+
total: json.meta.total,
|
|
102
|
+
results,
|
|
103
|
+
facets,
|
|
104
|
+
hasNext: json.meta.hasNext,
|
|
105
|
+
next: () => {
|
|
106
|
+
// tslint:disable-next-line
|
|
107
|
+
Promise.resolve(null);
|
|
108
|
+
},
|
|
109
|
+
};
|
|
110
|
+
return Promise.resolve(response);
|
|
111
|
+
}
|
|
112
|
+
catch (ex) {
|
|
113
|
+
// TODO: Turn into a formal error
|
|
114
|
+
throw ex;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
exports.hubSearchItems = hubSearchItems;
|
|
118
|
+
/**
|
|
119
|
+
* Re-structure a jsonApi data entry into a flat object cast into
|
|
120
|
+
* IHubContent
|
|
121
|
+
* @param data
|
|
122
|
+
* @returns
|
|
123
|
+
*/
|
|
124
|
+
/* istanbul ignore next */
|
|
125
|
+
function jsonApiToHubContent(data) {
|
|
126
|
+
const content = util_1.cloneObject(data.attributes);
|
|
127
|
+
content.id = data.id;
|
|
128
|
+
return content;
|
|
129
|
+
}
|
|
130
|
+
exports.jsonApiToHubContent = jsonApiToHubContent;
|
|
131
|
+
/* istanbul ignore next */
|
|
132
|
+
function hubContentToSearchResult(content) {
|
|
133
|
+
const result = {
|
|
134
|
+
access: content.access,
|
|
135
|
+
id: content.id,
|
|
136
|
+
type: content.type,
|
|
137
|
+
name: content.name,
|
|
138
|
+
owner: content.owner,
|
|
139
|
+
summary: content.snippet || content.description,
|
|
140
|
+
createdDate: new Date(content.createdDate),
|
|
141
|
+
createdDateSource: content.createdDateSource,
|
|
142
|
+
updatedDate: new Date(content.updatedDate),
|
|
143
|
+
updatedDateSource: content.updatedDateSource,
|
|
144
|
+
thumbnailUrl: content.thumbnailUrl,
|
|
145
|
+
metadata: [],
|
|
146
|
+
family: content.family,
|
|
147
|
+
urls: {
|
|
148
|
+
portalHome: "not-implemented",
|
|
149
|
+
relative: "not-implemented",
|
|
150
|
+
},
|
|
151
|
+
};
|
|
152
|
+
// TODO: Per-type plucking of props into the `meta` hash for use in the card components
|
|
153
|
+
return Promise.resolve(result);
|
|
154
|
+
}
|
|
155
|
+
exports.hubContentToSearchResult = hubContentToSearchResult;
|
|
156
|
+
/* istanbul ignore next */
|
|
157
|
+
function convertHubResponseToFacets(response, operation = "OR") {
|
|
158
|
+
var _a;
|
|
159
|
+
const result = [];
|
|
160
|
+
if ((_a = response.meta) === null || _a === void 0 ? void 0 : _a.aggregations) {
|
|
161
|
+
const meta = response.meta;
|
|
162
|
+
meta.aggregations.forEach((entry) => {
|
|
163
|
+
// Dyanmic facets typically "AND" so we are refining
|
|
164
|
+
const facet = {
|
|
165
|
+
label: entry.field,
|
|
166
|
+
key: entry.field,
|
|
167
|
+
aggField: entry.field,
|
|
168
|
+
display: "multi-select",
|
|
169
|
+
operation,
|
|
170
|
+
};
|
|
171
|
+
const options = [];
|
|
172
|
+
entry.values.forEach((fv) => {
|
|
173
|
+
const filter = {
|
|
174
|
+
filterType: "item",
|
|
175
|
+
};
|
|
176
|
+
// construct the filter based on the operation
|
|
177
|
+
const matchKey = operation === "OR" ? "any" : "all";
|
|
178
|
+
const filterMatchOption = {};
|
|
179
|
+
filterMatchOption[matchKey] = [fv.value];
|
|
180
|
+
filter[entry.field] = filterMatchOption;
|
|
181
|
+
// construct the FacetOption
|
|
182
|
+
const fo = {
|
|
183
|
+
label: `${fv.value} (${fv.count})`,
|
|
184
|
+
key: fv.value,
|
|
185
|
+
count: fv.count,
|
|
186
|
+
selected: false,
|
|
187
|
+
filters: [filter],
|
|
188
|
+
};
|
|
189
|
+
options.push(fo);
|
|
190
|
+
});
|
|
191
|
+
facet.options = options;
|
|
192
|
+
result.push(facet);
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
return result;
|
|
196
|
+
}
|
|
197
|
+
exports.convertHubResponseToFacets = convertHubResponseToFacets;
|
|
198
|
+
//# sourceMappingURL=hubSearchItems.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hubSearchItems.js","sourceRoot":"","sources":["../../../../src/search/_internal/hubSearchItems.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,4 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
tslib_1.__exportStar(require("./searchContentEntities"), exports);
|
|
5
5
|
tslib_1.__exportStar(require("./state"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./portalSearchItems"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./hubSearchItems"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./portalSearchGroups"), exports);
|
|
6
9
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/search/_internal/index.ts"],"names":[],"mappings":";;;AAAA,kEAAwC;AACxC,kDAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/search/_internal/index.ts"],"names":[],"mappings":";;;AAAA,kEAAwC;AACxC,kDAAwB;AACxB,8DAAoC;AACpC,2DAAiC;AACjC,+DAAqC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseInclude = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Parse an IncludeSpec from the include string
|
|
6
|
+
* Include String structure:
|
|
7
|
+
* - `enrichment{.deep.path} AS propertyName`
|
|
8
|
+
*
|
|
9
|
+
* Examples
|
|
10
|
+
* - `server.layers.0.name as layerName` -> use the `server` enrichment, extract the name of the first layer and attach that as `layerName`
|
|
11
|
+
* - `server.layers` -> use the `server` enrichment, attach the `layers` array as `layers`
|
|
12
|
+
* @param include
|
|
13
|
+
* @returns
|
|
14
|
+
*/
|
|
15
|
+
function parseInclude(include) {
|
|
16
|
+
// TODO: Validate enrichment? Not clear how we'd do that other than a manully maintained string list
|
|
17
|
+
const parts = include.split(" AS ");
|
|
18
|
+
const path = parts[0];
|
|
19
|
+
const prop = parts[1] || path.split(".").reverse()[0];
|
|
20
|
+
const enrichment = path.split(".")[0];
|
|
21
|
+
// We need the actual list of string values so we can verify
|
|
22
|
+
// what we get in, is infact a valid enrichment.
|
|
23
|
+
const spec = {
|
|
24
|
+
enrichment,
|
|
25
|
+
path,
|
|
26
|
+
prop,
|
|
27
|
+
};
|
|
28
|
+
return spec;
|
|
29
|
+
}
|
|
30
|
+
exports.parseInclude = parseInclude;
|
|
31
|
+
//# sourceMappingURL=parseInclude.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseInclude.js","sourceRoot":"","sources":["../../../../src/search/_internal/parseInclude.ts"],"names":[],"mappings":";;;AAsBA;;;;;;;;;;GAUG;AACH,SAAgB,YAAY,CAAC,OAAe;IAC1C,oGAAoG;IACpG,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAsC,CAAC;IAC3E,4DAA4D;IAC5D,gDAAgD;IAChD,MAAM,IAAI,GAAiB;QACzB,UAAU;QACV,IAAI;QACJ,IAAI;KACL,CAAC;IAEF,OAAO,IAAI,CAAC;AACd,CAAC;AAfD,oCAeC"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.portalSearchGroups = void 0;
|
|
4
|
+
const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
5
|
+
const HubGroups_1 = require("../../groups/HubGroups");
|
|
6
|
+
const filter_utils_1 = require("../filter-utils");
|
|
7
|
+
const utils_1 = require("../utils");
|
|
8
|
+
/**
|
|
9
|
+
* @private
|
|
10
|
+
* Portal Search Implementation for Items
|
|
11
|
+
* @param filterGroups
|
|
12
|
+
* @param options
|
|
13
|
+
* @returns
|
|
14
|
+
*/
|
|
15
|
+
async function portalSearchGroups(filterGroups, options) {
|
|
16
|
+
// API
|
|
17
|
+
const api = utils_1.expandApi(options.api || "arcgis");
|
|
18
|
+
if (!options.requestOptions) {
|
|
19
|
+
if (options.authentication) {
|
|
20
|
+
// create minimal requestOptions
|
|
21
|
+
options.requestOptions = {
|
|
22
|
+
authentication: options.authentication,
|
|
23
|
+
portal: options.authentication.portal,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
options.requestOptions = {
|
|
28
|
+
portal: `${api.url}/sharing/rest`,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
// Expand the individual filters in each of the groups
|
|
33
|
+
const expandedGroups = filterGroups.map((fg) => {
|
|
34
|
+
fg.filters = fg.filters.map(filter_utils_1.expandFilter);
|
|
35
|
+
return fg;
|
|
36
|
+
});
|
|
37
|
+
// Serialize the all the groups for portal
|
|
38
|
+
const so = filter_utils_1.serializeFilterGroupsForPortal(expandedGroups);
|
|
39
|
+
// Array of properties we want to copy from IHubSearchOptions to the ISearchOptions
|
|
40
|
+
const props = [
|
|
41
|
+
"authentication",
|
|
42
|
+
"num",
|
|
43
|
+
"sortField",
|
|
44
|
+
"sortOrder",
|
|
45
|
+
"include",
|
|
46
|
+
"start",
|
|
47
|
+
"requestOptions",
|
|
48
|
+
];
|
|
49
|
+
// copy the props over
|
|
50
|
+
props.forEach((prop) => {
|
|
51
|
+
if (options.hasOwnProperty(prop)) {
|
|
52
|
+
so[prop] = options[prop];
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
// If we don't have auth, ensure we have .portal
|
|
56
|
+
if (!so.authentication) {
|
|
57
|
+
so.portal = so.requestOptions.portal || `${api.url}/sharing/rest`;
|
|
58
|
+
}
|
|
59
|
+
return searchPortal(so);
|
|
60
|
+
}
|
|
61
|
+
exports.portalSearchGroups = portalSearchGroups;
|
|
62
|
+
/**
|
|
63
|
+
* Internal portal search, which then converts `IGroup`s to `IHubSearchResult`s
|
|
64
|
+
* handling enrichments & includes along the way
|
|
65
|
+
*
|
|
66
|
+
* @param searchOptions
|
|
67
|
+
* @returns
|
|
68
|
+
*/
|
|
69
|
+
async function searchPortal(searchOptions) {
|
|
70
|
+
// Execute portal search
|
|
71
|
+
const resp = await arcgis_rest_portal_1.searchGroups(searchOptions);
|
|
72
|
+
// create mappable fn that will close
|
|
73
|
+
// over the includes and requestOptions
|
|
74
|
+
const fn = (item) => {
|
|
75
|
+
return groupToSearchResult(item, searchOptions.include, searchOptions.requestOptions);
|
|
76
|
+
};
|
|
77
|
+
// map over results
|
|
78
|
+
const results = await Promise.all(resp.results.map(fn));
|
|
79
|
+
// Group Search does not support aggregations
|
|
80
|
+
// Construct the return
|
|
81
|
+
return {
|
|
82
|
+
total: resp.total,
|
|
83
|
+
results,
|
|
84
|
+
facets: [],
|
|
85
|
+
hasNext: resp.nextStart > -1,
|
|
86
|
+
next: utils_1.getNextFunction(searchOptions, resp.nextStart, resp.total, searchPortal),
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Convert an Item to a IHubSearchResult
|
|
91
|
+
* Fetches the includes and attaches them to the item
|
|
92
|
+
* @param item
|
|
93
|
+
* @param includes
|
|
94
|
+
* @param requestOptions
|
|
95
|
+
* @returns
|
|
96
|
+
*/
|
|
97
|
+
async function groupToSearchResult(group, includes = [], requestOptions) {
|
|
98
|
+
// Delegate to HubGroups module
|
|
99
|
+
// This layer of indirection is not necessary but
|
|
100
|
+
// aligns with how the items search works and
|
|
101
|
+
// allows for future specialization
|
|
102
|
+
return HubGroups_1.enrichGroupSearchResult(group, includes, requestOptions);
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=portalSearchGroups.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"portalSearchGroups.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchGroups.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.portalSearchItems = void 0;
|
|
4
|
+
const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
5
|
+
const __1 = require("../..");
|
|
6
|
+
const HubPages_1 = require("../../pages/HubPages");
|
|
7
|
+
const projects_1 = require("../../projects");
|
|
8
|
+
const sites_1 = require("../../sites");
|
|
9
|
+
const filter_utils_1 = require("../filter-utils");
|
|
10
|
+
const utils_1 = require("../utils");
|
|
11
|
+
/**
|
|
12
|
+
* @private
|
|
13
|
+
* Portal Search Implementation for Items
|
|
14
|
+
* @param filterGroups
|
|
15
|
+
* @param options
|
|
16
|
+
* @returns
|
|
17
|
+
*/
|
|
18
|
+
async function portalSearchItems(filterGroups, options) {
|
|
19
|
+
var _a;
|
|
20
|
+
if (!options.requestOptions) {
|
|
21
|
+
throw new __1.HubError("hubSearch", "requestOptions: IHubRequestOptions is required.");
|
|
22
|
+
}
|
|
23
|
+
// Expand the individual filters in each of the groups
|
|
24
|
+
const expandedGroups = filterGroups.map((fg) => {
|
|
25
|
+
fg.filters = fg.filters.map(filter_utils_1.expandFilter);
|
|
26
|
+
return fg;
|
|
27
|
+
});
|
|
28
|
+
// Serialize the all the groups for portal
|
|
29
|
+
const so = filter_utils_1.serializeFilterGroupsForPortal(expandedGroups);
|
|
30
|
+
// Array of properties we want to copy from IHubSearchOptions to the ISearchOptions
|
|
31
|
+
const props = [
|
|
32
|
+
"num",
|
|
33
|
+
"sortField",
|
|
34
|
+
"sortOrder",
|
|
35
|
+
"include",
|
|
36
|
+
"start",
|
|
37
|
+
"requestOptions",
|
|
38
|
+
];
|
|
39
|
+
// copy the props over
|
|
40
|
+
props.forEach((prop) => {
|
|
41
|
+
if (options.hasOwnProperty(prop)) {
|
|
42
|
+
so[prop] = options[prop];
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
if (options.requestOptions.authentication) {
|
|
46
|
+
so.authentication = options.requestOptions.authentication;
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
so.portal = options.requestOptions.portal;
|
|
50
|
+
}
|
|
51
|
+
// Aggregations
|
|
52
|
+
if ((_a = options.aggFields) === null || _a === void 0 ? void 0 : _a.length) {
|
|
53
|
+
so.countFields = options.aggFields.join(",");
|
|
54
|
+
so.countSize = options.aggLimit || 10;
|
|
55
|
+
}
|
|
56
|
+
return searchPortal(so);
|
|
57
|
+
}
|
|
58
|
+
exports.portalSearchItems = portalSearchItems;
|
|
59
|
+
/**
|
|
60
|
+
* Internal portal search, which then converts `IItem`s to `IHubSearchResult`s
|
|
61
|
+
* handling enrichments & includes along the way
|
|
62
|
+
*
|
|
63
|
+
* @param searchOptions
|
|
64
|
+
* @returns
|
|
65
|
+
*/
|
|
66
|
+
async function searchPortal(searchOptions) {
|
|
67
|
+
// Execute portal search
|
|
68
|
+
const resp = await arcgis_rest_portal_1.searchItems(searchOptions);
|
|
69
|
+
// create mappable fn that will handle the includes
|
|
70
|
+
const fn = (item) => {
|
|
71
|
+
return itemToSearchResult(item, searchOptions.includes, searchOptions.requestOptions);
|
|
72
|
+
};
|
|
73
|
+
// map over results
|
|
74
|
+
const results = await Promise.all(resp.results.map(fn));
|
|
75
|
+
// convert aggregations into facets
|
|
76
|
+
const facets = __1.convertPortalItemResponseToFacets(resp);
|
|
77
|
+
// Construct the return
|
|
78
|
+
return {
|
|
79
|
+
total: resp.total,
|
|
80
|
+
results,
|
|
81
|
+
facets,
|
|
82
|
+
hasNext: resp.nextStart > -1,
|
|
83
|
+
next: utils_1.getNextFunction(searchOptions, resp.nextStart, resp.total, searchPortal),
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Convert an `IItem` to a `IHubSearchResult`
|
|
88
|
+
* Fetches the enrichments, and attaches them as directed in the `include` list
|
|
89
|
+
* @param item
|
|
90
|
+
* @param includes
|
|
91
|
+
* @param requestOptions
|
|
92
|
+
* @returns
|
|
93
|
+
*/
|
|
94
|
+
async function itemToSearchResult(item, includes = [], requestOptions) {
|
|
95
|
+
// based on the type, we delegate to type-specific functions
|
|
96
|
+
// this allows each type to apply "default" enrichments
|
|
97
|
+
let fn = __1.enrichContentSearchResult;
|
|
98
|
+
switch (item.type) {
|
|
99
|
+
case "Hub Site Application":
|
|
100
|
+
case "Site Application":
|
|
101
|
+
fn = sites_1.enrichSiteSearchResult;
|
|
102
|
+
break;
|
|
103
|
+
case "Hub Page":
|
|
104
|
+
case "Site Page":
|
|
105
|
+
fn = HubPages_1.enrichPageSearchResult;
|
|
106
|
+
break;
|
|
107
|
+
case "Hub Project":
|
|
108
|
+
fn = projects_1.enrichProjectSearchResult;
|
|
109
|
+
break;
|
|
110
|
+
}
|
|
111
|
+
return fn(item, includes, requestOptions);
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=portalSearchItems.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"portalSearchItems.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchItems.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,8 @@ const content_utils_1 = require("./content-utils");
|
|
|
5
5
|
const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
6
6
|
const utils_1 = require("./utils");
|
|
7
7
|
const __1 = require("..");
|
|
8
|
+
const utils_2 = require("../utils");
|
|
9
|
+
// TODO: Remove with _searchContent
|
|
8
10
|
/**
|
|
9
11
|
* Search for content via the Portal or Hub API
|
|
10
12
|
* @param filter
|
|
@@ -12,6 +14,7 @@ const __1 = require("..");
|
|
|
12
14
|
*/
|
|
13
15
|
async function _searchContent(filter, options) {
|
|
14
16
|
var _a, _b;
|
|
17
|
+
utils_2.Logger.warn(`DEPRECATION: _searchContent will be removed; switch to hubSearch(...)`);
|
|
15
18
|
// expand filter so we can serialize to either api
|
|
16
19
|
const expanded = content_utils_1.expandContentFilter(filter);
|
|
17
20
|
// API
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_searchContent.js","sourceRoot":"","sources":["../../../src/search/_searchContent.ts"],"names":[],"mappings":";;;AAAA,mDAIyB;AAQzB,iEAAuE;AACvE,mCAAqD;AACrD,0BAMY;
|
|
1
|
+
{"version":3,"file":"_searchContent.js","sourceRoot":"","sources":["../../../src/search/_searchContent.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
|
5
5
|
const _1 = require(".");
|
|
6
6
|
const group_utils_1 = require("./group-utils");
|
|
7
7
|
const __1 = require("..");
|
|
8
|
+
// TODO: Remove with _searchContent
|
|
8
9
|
/**
|
|
9
10
|
* Search Groups using Filter<"group">
|
|
10
11
|
*
|
|
@@ -14,6 +15,7 @@ const __1 = require("..");
|
|
|
14
15
|
* @returns
|
|
15
16
|
*/
|
|
16
17
|
async function _searchGroups(filter, options) {
|
|
18
|
+
__1.Logger.warn(`DEPRECATION: _searchGroups will be removed; switch to hubSearch(...)`);
|
|
17
19
|
// expand filter so we can serialize to either api
|
|
18
20
|
const expanded = group_utils_1.expandGroupFilter(filter);
|
|
19
21
|
// API
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_searchGroups.js","sourceRoot":"","sources":["../../../src/search/_searchGroups.ts"],"names":[],"mappings":";;;AAEA,iEAA6E;AAC7E,wBAA+C;AAC/C,+CAGuB;AAEvB,
|
|
1
|
+
{"version":3,"file":"_searchGroups.js","sourceRoot":"","sources":["../../../src/search/_searchGroups.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports._searchUsers = void 0;
|
|
4
4
|
const __1 = require("..");
|
|
5
5
|
const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
6
|
+
// TODO: Remove with _searchContent
|
|
6
7
|
/**
|
|
7
8
|
* Search for Users via the Portal API.
|
|
8
9
|
*
|
|
@@ -15,6 +16,7 @@ const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
|
15
16
|
* @returns
|
|
16
17
|
*/
|
|
17
18
|
async function _searchUsers(filter, options) {
|
|
19
|
+
__1.Logger.warn(`DEPRECATION: _searchUsers will be removed; switch to hubSearch(...)`);
|
|
18
20
|
// JS Clients may not pass in authentication
|
|
19
21
|
if (!options.authentication) {
|
|
20
22
|
throw new Error("Authentication required to search for users.");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_searchUsers.js","sourceRoot":"","sources":["../../../src/search/_searchUsers.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"_searchUsers.js","sourceRoot":"","sources":["../../../src/search/_searchUsers.ts"],"names":[],"mappings":";;;AACA,0BAUY;AACZ,iEAGkC;AAkBlC,mCAAmC;AACnC;;;;;;;;;;GAUG;AACI,KAAK,UAAU,YAAY,CAChC,MAAsB,EACtB,OAAuC;IAEvC,UAAM,CAAC,IAAI,CACT,qEAAqE,CACtE,CAAC;IACF,4CAA4C;IAC5C,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;QAC3B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;KACjE;IACD,kDAAkD;IAClD,MAAM,QAAQ,GAAG,oBAAgB,CAAC,MAAM,CAAC,CAAC;IAE1C,MAAM;IACN,MAAM,GAAG,GAAG,aAAS,CAAC,OAAO,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC;IAE/C,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;QACzB,MAAM,aAAa,GAAG,gCAA4B,CAChD,QAAQ,CACa,CAAC;QAExB,6DAA6D;QAC7D,wBAAwB;QACxB,MAAM,KAAK,GAAmC;YAC5C,gBAAgB;YAChB,KAAK;YACL,WAAW;YACX,WAAW;YACX,MAAM;YACN,OAAO;SACR,CAAC;QACF,sBAAsB;QACtB,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACrB,IAAI,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;gBAChC,aAAa,CAAC,IAAgC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;aACjE;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,iBAAiB,CAAC,aAAa,CAAC,CAAC;KACzC;SAAM;QACL,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;KACxE;AACH,CAAC;AA3CD,oCA2CC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB,CACxB,aAAiC;IAEjC,MAAM,SAAS,GAAG,aAAa,CAAC,cAAc,CAAC,MAAM,CAAC;IACtD,MAAM,KAAK,GAAI,aAAa,CAAC,cAA8B,CAAC,KAAK,CAAC;IAElE,2DAA2D;IAC3D,MAAM,WAAW,GAAG,CAAC,IAAc,EAAE,EAAE;QACrC,IAAI,CAAC,UAAU,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,WAAW,IAAI,CAAC,QAAQ,UAAU,CAAC;QACnF,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,IAAc,EAAE,EAAE;QACtC,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI,CAAC,YAAY,GAAG,uBAAmB,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;SACjE;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,OAAO,gCAAgB,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;;QACvD,MAAM,OAAO,GAAY,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QAEjD,wBAAwB;QACxB,IAAI,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACjD,qDAAqD;QACrD,gBAAI,aAAa,CAAC,IAAI,0CAAE,IAAI,0CAAE,GAAG,EAAE;YACjC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;SAC7C;QAED,OAAO;YACL,OAAO;YACP,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,OAAO;YACP,IAAI,EAAE,mBAAe,CACnB,aAAa,EACb,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,KAAK,EACd,iBAAiB,CAClB;SACwB,CAAC;IAC9B,CAAC,CAAC,CAAC;AACL,CAAC"}
|