@esri/hub-common 9.48.0 → 9.49.2
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/core/traits/WithCatalog.js +1 -0
- package/dist/es2017/core/traits/WithCatalog.js.map +1 -0
- package/dist/es2017/index.js +1 -0
- package/dist/es2017/index.js.map +1 -1
- package/dist/es2017/search/Catalog.js +346 -0
- package/dist/es2017/search/Catalog.js.map +1 -0
- package/dist/es2017/search/Collection.js +38 -19
- package/dist/es2017/search/Collection.js.map +1 -1
- package/dist/es2017/search/_internal/{ipredicate-utils.js → expandPredicate.js} +1 -1
- package/dist/es2017/search/_internal/expandPredicate.js.map +1 -0
- package/dist/es2017/search/_internal/portalSearchGroups.js +1 -1
- package/dist/es2017/search/_internal/portalSearchGroups.js.map +1 -1
- package/dist/es2017/search/_internal/portalSearchItems.js +1 -1
- package/dist/es2017/search/_internal/portalSearchItems.js.map +1 -1
- package/dist/es2017/search/_internal/portalSearchUsers.js +1 -1
- package/dist/es2017/search/_internal/portalSearchUsers.js.map +1 -1
- package/dist/es2017/search/fetchCatalog.js +46 -0
- package/dist/es2017/search/fetchCatalog.js.map +1 -0
- package/dist/es2017/search/hubSearch.js +1 -1
- package/dist/es2017/search/hubSearch.js.map +1 -1
- package/dist/es2017/search/index.js +3 -1
- package/dist/es2017/search/index.js.map +1 -1
- package/dist/es2017/search/serializeQueryForPortal.js +3 -2
- package/dist/es2017/search/serializeQueryForPortal.js.map +1 -1
- package/dist/es2017/search/upgradeCatalogSchema.js +66 -0
- package/dist/es2017/search/upgradeCatalogSchema.js.map +1 -0
- package/dist/es2017/types/IMessage.js +1 -0
- package/dist/es2017/types/IMessage.js.map +1 -0
- package/dist/es2017/types/index.js +2 -0
- package/dist/es2017/types/index.js.map +1 -0
- package/dist/esm/core/traits/WithCatalog.js +1 -0
- package/dist/esm/core/traits/WithCatalog.js.map +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/search/Catalog.js +404 -0
- package/dist/esm/search/Catalog.js.map +1 -0
- package/dist/esm/search/Collection.js +40 -24
- package/dist/esm/search/Collection.js.map +1 -1
- package/dist/esm/search/_internal/{ipredicate-utils.js → expandPredicate.js} +1 -1
- package/dist/esm/search/_internal/expandPredicate.js.map +1 -0
- package/dist/esm/search/_internal/portalSearchGroups.js +1 -1
- package/dist/esm/search/_internal/portalSearchGroups.js.map +1 -1
- package/dist/esm/search/_internal/portalSearchItems.js +1 -1
- package/dist/esm/search/_internal/portalSearchItems.js.map +1 -1
- package/dist/esm/search/_internal/portalSearchUsers.js +1 -1
- package/dist/esm/search/_internal/portalSearchUsers.js.map +1 -1
- package/dist/esm/search/fetchCatalog.js +59 -0
- package/dist/esm/search/fetchCatalog.js.map +1 -0
- package/dist/esm/search/hubSearch.js +1 -1
- package/dist/esm/search/hubSearch.js.map +1 -1
- package/dist/esm/search/index.js +3 -1
- package/dist/esm/search/index.js.map +1 -1
- package/dist/esm/search/serializeQueryForPortal.js +3 -2
- package/dist/esm/search/serializeQueryForPortal.js.map +1 -1
- package/dist/esm/search/upgradeCatalogSchema.js +66 -0
- package/dist/esm/search/upgradeCatalogSchema.js.map +1 -0
- package/dist/esm/types/IMessage.js +1 -0
- package/dist/esm/types/IMessage.js.map +1 -0
- package/dist/esm/types/index.js +2 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/node/core/traits/WithCatalog.js +3 -0
- package/dist/node/core/traits/WithCatalog.js.map +1 -0
- package/dist/node/index.js +1 -0
- package/dist/node/index.js.map +1 -1
- package/dist/node/search/Catalog.js +350 -0
- package/dist/node/search/Catalog.js.map +1 -0
- package/dist/node/search/Collection.js +37 -18
- package/dist/node/search/Collection.js.map +1 -1
- package/dist/node/search/_internal/{ipredicate-utils.js → expandPredicate.js} +1 -1
- package/dist/node/search/_internal/expandPredicate.js.map +1 -0
- package/dist/node/search/_internal/portalSearchGroups.js +2 -2
- package/dist/node/search/_internal/portalSearchGroups.js.map +1 -1
- package/dist/node/search/_internal/portalSearchItems.js +2 -2
- package/dist/node/search/_internal/portalSearchItems.js.map +1 -1
- package/dist/node/search/_internal/portalSearchUsers.js +2 -2
- package/dist/node/search/_internal/portalSearchUsers.js.map +1 -1
- package/dist/node/search/fetchCatalog.js +50 -0
- package/dist/node/search/fetchCatalog.js.map +1 -0
- package/dist/node/search/hubSearch.js +1 -1
- package/dist/node/search/hubSearch.js.map +1 -1
- package/dist/node/search/index.js +3 -1
- package/dist/node/search/index.js.map +1 -1
- package/dist/node/search/serializeQueryForPortal.js +4 -3
- package/dist/node/search/serializeQueryForPortal.js.map +1 -1
- package/dist/node/search/upgradeCatalogSchema.js +71 -0
- package/dist/node/search/upgradeCatalogSchema.js.map +1 -0
- package/dist/node/types/IMessage.js +3 -0
- package/dist/node/types/IMessage.js.map +1 -0
- package/dist/node/types/index.js +5 -0
- package/dist/node/types/index.js.map +1 -0
- package/dist/types/core/traits/WithCatalog.d.ts +7 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/search/Catalog.d.ts +143 -0
- package/dist/types/search/Collection.d.ts +23 -2
- package/dist/types/search/_internal/{ipredicate-utils.d.ts → expandPredicate.d.ts} +0 -0
- package/dist/types/search/fetchCatalog.d.ts +10 -0
- package/dist/types/search/index.d.ts +3 -1
- package/dist/types/search/types/IHubSearchOptions.d.ts +5 -1
- package/dist/types/search/types/IHubSearchResponse.d.ts +5 -0
- package/dist/types/search/upgradeCatalogSchema.d.ts +12 -0
- package/dist/types/types/IMessage.d.ts +32 -0
- package/dist/types/types/index.d.ts +1 -0
- package/dist/umd/common.umd.js +635 -33
- package/dist/umd/common.umd.js.map +1 -1
- package/package.json +1 -1
- package/dist/es2017/search/_internal/ipredicate-utils.js.map +0 -1
- package/dist/es2017/search/convertCatalog.js +0 -33
- package/dist/es2017/search/convertCatalog.js.map +0 -1
- package/dist/esm/search/_internal/ipredicate-utils.js.map +0 -1
- package/dist/esm/search/convertCatalog.js +0 -33
- package/dist/esm/search/convertCatalog.js.map +0 -1
- package/dist/node/search/_internal/ipredicate-utils.js.map +0 -1
- package/dist/node/search/convertCatalog.js +0 -37
- package/dist/node/search/convertCatalog.js.map +0 -1
- package/dist/types/search/convertCatalog.d.ts +0 -6
|
@@ -0,0 +1,350 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Catalog = void 0;
|
|
4
|
+
const ArcGISContextManager_1 = require("../ArcGISContextManager");
|
|
5
|
+
const HubError_1 = require("../HubError");
|
|
6
|
+
const util_1 = require("../util");
|
|
7
|
+
const utils_1 = require("../utils");
|
|
8
|
+
const Collection_1 = require("./Collection");
|
|
9
|
+
const fetchCatalog_1 = require("./fetchCatalog");
|
|
10
|
+
const hubSearch_1 = require("./hubSearch");
|
|
11
|
+
const upgradeCatalogSchema_1 = require("./upgradeCatalogSchema");
|
|
12
|
+
/**
|
|
13
|
+
* Catalog Class
|
|
14
|
+
*
|
|
15
|
+
* Abstracts working with Catalogs and fetching collections with
|
|
16
|
+
* the correct scope applied.
|
|
17
|
+
*
|
|
18
|
+
* For more information, check out the [Catalog & Collection Guide](/hub.js/guides/concepts/catalog-collection/)
|
|
19
|
+
*/
|
|
20
|
+
class Catalog {
|
|
21
|
+
// internal - use static factory methods
|
|
22
|
+
constructor(catalog, context) {
|
|
23
|
+
this._catalog = catalog;
|
|
24
|
+
this._context = context;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Create a Collection instance from a Catalog json object, a site url or itemId
|
|
28
|
+
* '''js
|
|
29
|
+
* const catalog = await Catalog.create('https://site-org.hub.arcgis.com', context);
|
|
30
|
+
* '''
|
|
31
|
+
*
|
|
32
|
+
* @param identifier
|
|
33
|
+
* @param context
|
|
34
|
+
* @returns
|
|
35
|
+
*/
|
|
36
|
+
static async init(identifier, context) {
|
|
37
|
+
// if context is not passed, create a default that point to AGO prod
|
|
38
|
+
if (!context) {
|
|
39
|
+
const mgr = await ArcGISContextManager_1.ArcGISContextManager.create();
|
|
40
|
+
context = mgr.context;
|
|
41
|
+
}
|
|
42
|
+
// fetch the catalog
|
|
43
|
+
const fetched = await fetchCatalog_1.fetchCatalog(identifier, context.hubRequestOptions);
|
|
44
|
+
// return an instance
|
|
45
|
+
return new Catalog(fetched, context);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Create a Catalog instance from a Catalog Json object
|
|
49
|
+
* @param json
|
|
50
|
+
* @param context
|
|
51
|
+
* @returns
|
|
52
|
+
*/
|
|
53
|
+
static fromJson(json, context) {
|
|
54
|
+
// ensure it's in the latest structure
|
|
55
|
+
const catalog = upgradeCatalogSchema_1.upgradeCatalogSchema(json);
|
|
56
|
+
return new Catalog(catalog, context);
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Return the JSON object backing the instance
|
|
60
|
+
* @returns
|
|
61
|
+
*/
|
|
62
|
+
toJson() {
|
|
63
|
+
return util_1.cloneObject(this._catalog);
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Return the schema version
|
|
67
|
+
*/
|
|
68
|
+
get schemaVersion() {
|
|
69
|
+
return this._catalog.schemaVersion;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Title getter
|
|
73
|
+
*/
|
|
74
|
+
get title() {
|
|
75
|
+
return this._catalog.title;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Title setter
|
|
79
|
+
*/
|
|
80
|
+
set title(v) {
|
|
81
|
+
this._catalog.title = v;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Return the existing scopes hash
|
|
85
|
+
*/
|
|
86
|
+
get scopes() {
|
|
87
|
+
return this._catalog.scopes;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Return an array of the entity types available in this Catalog
|
|
91
|
+
*/
|
|
92
|
+
get availableScopes() {
|
|
93
|
+
return Object.keys(this.scopes);
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Get the scope's query for a particular entity type
|
|
97
|
+
* @param type
|
|
98
|
+
* @returns
|
|
99
|
+
*/
|
|
100
|
+
getScope(type) {
|
|
101
|
+
return this._catalog.scopes[type];
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Set the scope for a specific entity type
|
|
105
|
+
* @param type
|
|
106
|
+
* @param query
|
|
107
|
+
*/
|
|
108
|
+
setScope(type, query) {
|
|
109
|
+
this._catalog.scopes[type] = query;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Get the collections array. Returns simple objects not Collection instances
|
|
113
|
+
*/
|
|
114
|
+
get collections() {
|
|
115
|
+
return this._catalog.collections || [];
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Get the names of the collections
|
|
119
|
+
*/
|
|
120
|
+
get collectionNames() {
|
|
121
|
+
return utils_1.mapBy("key", this.collections);
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Get a Collection instance by name
|
|
125
|
+
* @param name
|
|
126
|
+
* @returns
|
|
127
|
+
*/
|
|
128
|
+
getCollection(name) {
|
|
129
|
+
const json = this.collections.find((entry) => entry.key === name);
|
|
130
|
+
if (json) {
|
|
131
|
+
// clone it then merge in the associated scope filter
|
|
132
|
+
const clone = util_1.cloneObject(json);
|
|
133
|
+
const catalogScope = this.getScope(clone.scope.targetEntity);
|
|
134
|
+
if (catalogScope === null || catalogScope === void 0 ? void 0 : catalogScope.filters) {
|
|
135
|
+
clone.scope.filters = [...clone.scope.filters, ...catalogScope.filters];
|
|
136
|
+
}
|
|
137
|
+
return Collection_1.Collection.fromJson(clone, this._context);
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
throw new HubError_1.default("getCollection", `Collection "${name}" is not present in the Catalog`);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Search for Items
|
|
145
|
+
* Will throw if the Catalog does not have a scope defined for items
|
|
146
|
+
* @param query
|
|
147
|
+
* @param options
|
|
148
|
+
* @returns
|
|
149
|
+
*/
|
|
150
|
+
searchItems(query, options = {}) {
|
|
151
|
+
if (!this.getScope("item")) {
|
|
152
|
+
const result = this.getEmptyResult();
|
|
153
|
+
result.messages = [
|
|
154
|
+
{
|
|
155
|
+
code: "missingScope",
|
|
156
|
+
message: "Catalog does not have a scope for items",
|
|
157
|
+
data: {
|
|
158
|
+
scope: "item",
|
|
159
|
+
},
|
|
160
|
+
},
|
|
161
|
+
];
|
|
162
|
+
return Promise.resolve(result);
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
165
|
+
// ensure it's an item search
|
|
166
|
+
options.targetEntity = "item";
|
|
167
|
+
return this.search(query, options);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Search for Groups
|
|
172
|
+
* Will throw if the Catalog does not have a scope defined for groups
|
|
173
|
+
* @param query
|
|
174
|
+
* @param options
|
|
175
|
+
* @returns
|
|
176
|
+
*/
|
|
177
|
+
searchGroups(query, options = {}) {
|
|
178
|
+
if (!this.getScope("group")) {
|
|
179
|
+
const result = this.getEmptyResult();
|
|
180
|
+
result.messages = [
|
|
181
|
+
{
|
|
182
|
+
code: "missingScope",
|
|
183
|
+
message: "Catalog does not have a scope for groups",
|
|
184
|
+
data: {
|
|
185
|
+
scope: "group",
|
|
186
|
+
},
|
|
187
|
+
},
|
|
188
|
+
];
|
|
189
|
+
return Promise.resolve(result);
|
|
190
|
+
}
|
|
191
|
+
else {
|
|
192
|
+
// ensure it's an group search
|
|
193
|
+
options.targetEntity = "group";
|
|
194
|
+
return this.search(query, options);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Search for Users
|
|
199
|
+
* Will throw if the Catalog does not have a scope defined for users
|
|
200
|
+
* @param query
|
|
201
|
+
* @param options
|
|
202
|
+
* @returns
|
|
203
|
+
*/
|
|
204
|
+
searchUsers(query, options = {}) {
|
|
205
|
+
if (!this.getScope("user")) {
|
|
206
|
+
const result = this.getEmptyResult();
|
|
207
|
+
result.messages = [
|
|
208
|
+
{
|
|
209
|
+
code: "missingScope",
|
|
210
|
+
message: "Catalog does not have a scope for user",
|
|
211
|
+
data: {
|
|
212
|
+
scope: "user",
|
|
213
|
+
},
|
|
214
|
+
},
|
|
215
|
+
];
|
|
216
|
+
return Promise.resolve(result);
|
|
217
|
+
}
|
|
218
|
+
else {
|
|
219
|
+
// ensure it's an group search
|
|
220
|
+
options.targetEntity = "user";
|
|
221
|
+
return this.search(query, options);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Execute a search against all the collections in the Catalog
|
|
226
|
+
* @param query
|
|
227
|
+
* @param options
|
|
228
|
+
* @returns
|
|
229
|
+
*/
|
|
230
|
+
async searchCollections(query, options = {}) {
|
|
231
|
+
// build a query
|
|
232
|
+
const qry = {
|
|
233
|
+
targetEntity: "item",
|
|
234
|
+
filters: [
|
|
235
|
+
{
|
|
236
|
+
predicates: [
|
|
237
|
+
{
|
|
238
|
+
term: query,
|
|
239
|
+
},
|
|
240
|
+
],
|
|
241
|
+
},
|
|
242
|
+
],
|
|
243
|
+
};
|
|
244
|
+
// iterate the colllections, issue searchs for each one
|
|
245
|
+
const promiseKeys = [];
|
|
246
|
+
const promises = this.collectionNames.map((name) => {
|
|
247
|
+
const col = this.getCollection(name);
|
|
248
|
+
promiseKeys.push(name);
|
|
249
|
+
qry.targetEntity = col.targetEntity;
|
|
250
|
+
return col.search(qry, options);
|
|
251
|
+
});
|
|
252
|
+
const responses = await Promise.all(promises);
|
|
253
|
+
// merge the responses into the hash
|
|
254
|
+
const hash = {};
|
|
255
|
+
for (let i = 0; i < promiseKeys.length; i++) {
|
|
256
|
+
hash[promiseKeys[i]] = responses[i];
|
|
257
|
+
}
|
|
258
|
+
return hash;
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* Execute a search against all the scopes in the Catalog
|
|
262
|
+
* @param query
|
|
263
|
+
* @param options
|
|
264
|
+
* @returns
|
|
265
|
+
*/
|
|
266
|
+
async searchScopes(query, options = {}) {
|
|
267
|
+
const qry = {
|
|
268
|
+
targetEntity: "item",
|
|
269
|
+
filters: [
|
|
270
|
+
{
|
|
271
|
+
predicates: [
|
|
272
|
+
{
|
|
273
|
+
term: query,
|
|
274
|
+
},
|
|
275
|
+
],
|
|
276
|
+
},
|
|
277
|
+
],
|
|
278
|
+
};
|
|
279
|
+
// iterate the scopes, issue searchs for each one
|
|
280
|
+
const promiseKeys = [];
|
|
281
|
+
const promises = this.availableScopes.map((name) => {
|
|
282
|
+
promiseKeys.push(name);
|
|
283
|
+
// make clones
|
|
284
|
+
const qryClone = util_1.cloneObject(qry);
|
|
285
|
+
const optsClone = util_1.cloneObject(options);
|
|
286
|
+
// set the target entity
|
|
287
|
+
qryClone.targetEntity = name;
|
|
288
|
+
optsClone.targetEntity = name;
|
|
289
|
+
// return the search promise
|
|
290
|
+
return this.search(qryClone, optsClone);
|
|
291
|
+
});
|
|
292
|
+
// wait for all the searches to complete
|
|
293
|
+
const responses = await Promise.all(promises);
|
|
294
|
+
// merge the responses into the hash
|
|
295
|
+
const hash = {};
|
|
296
|
+
for (let i = 0; i < promiseKeys.length; i++) {
|
|
297
|
+
hash[promiseKeys[i]] = responses[i];
|
|
298
|
+
}
|
|
299
|
+
return hash;
|
|
300
|
+
}
|
|
301
|
+
/**
|
|
302
|
+
* Execute a search against the Catalog as a whole
|
|
303
|
+
* @param query
|
|
304
|
+
* @param targetEntity
|
|
305
|
+
* @returns
|
|
306
|
+
*/
|
|
307
|
+
search(query, options) {
|
|
308
|
+
const targetEntity = options.targetEntity;
|
|
309
|
+
let qry;
|
|
310
|
+
if (typeof query === "string") {
|
|
311
|
+
qry = {
|
|
312
|
+
targetEntity,
|
|
313
|
+
filters: [
|
|
314
|
+
{
|
|
315
|
+
predicates: [
|
|
316
|
+
{
|
|
317
|
+
term: query,
|
|
318
|
+
},
|
|
319
|
+
],
|
|
320
|
+
},
|
|
321
|
+
],
|
|
322
|
+
};
|
|
323
|
+
}
|
|
324
|
+
else {
|
|
325
|
+
qry = util_1.cloneObject(query);
|
|
326
|
+
}
|
|
327
|
+
// Now merge in catalog scope level filters
|
|
328
|
+
qry.filters = [...qry.filters, ...this.getScope(targetEntity).filters];
|
|
329
|
+
const opts = util_1.cloneObject(options);
|
|
330
|
+
// An Catalog instance always uses the context so we remove/replace any passed in auth
|
|
331
|
+
delete opts.authentication;
|
|
332
|
+
opts.requestOptions = this._context.hubRequestOptions;
|
|
333
|
+
return hubSearch_1.hubSearch(qry, opts);
|
|
334
|
+
}
|
|
335
|
+
/**
|
|
336
|
+
* Construct an empty result. Returned when a search is performed against an entity type that
|
|
337
|
+
* does not have a scope defined.
|
|
338
|
+
* @returns
|
|
339
|
+
*/
|
|
340
|
+
getEmptyResult() {
|
|
341
|
+
return {
|
|
342
|
+
results: [],
|
|
343
|
+
total: 0,
|
|
344
|
+
hasNext: false,
|
|
345
|
+
next: null,
|
|
346
|
+
};
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
exports.Catalog = Catalog;
|
|
350
|
+
//# sourceMappingURL=Catalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Catalog.js","sourceRoot":"","sources":["../../../src/search/Catalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,22 +2,34 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Collection = void 0;
|
|
4
4
|
const __1 = require("..");
|
|
5
|
+
const hubSearch_1 = require("./hubSearch");
|
|
5
6
|
/**
|
|
6
|
-
*
|
|
7
|
+
* Collection Class
|
|
8
|
+
*
|
|
9
|
+
* Abstracts searching a Collection
|
|
10
|
+
*
|
|
11
|
+
* For more information, check out the [Catalog & Collection Guide](/hub.js/guides/concepts/catalog-collection/)
|
|
7
12
|
*/
|
|
8
|
-
/* istanbul ignore next */
|
|
9
13
|
class Collection {
|
|
10
14
|
constructor(collection, context) {
|
|
11
15
|
this._collection = collection;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
16
|
+
this._context = context;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Create an instance of a Collection from a JSON object
|
|
20
|
+
* @param collection
|
|
21
|
+
* @param context
|
|
22
|
+
* @returns
|
|
23
|
+
*/
|
|
24
|
+
static fromJson(collection, context) {
|
|
25
|
+
return new Collection(collection, context);
|
|
15
26
|
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
27
|
+
/**
|
|
28
|
+
* Return the JSON object backing the instance
|
|
29
|
+
* @returns
|
|
30
|
+
*/
|
|
31
|
+
toJson() {
|
|
32
|
+
return __1.cloneObject(this._collection);
|
|
21
33
|
}
|
|
22
34
|
// Getters
|
|
23
35
|
get label() {
|
|
@@ -27,7 +39,7 @@ class Collection {
|
|
|
27
39
|
return this._collection.key;
|
|
28
40
|
}
|
|
29
41
|
get include() {
|
|
30
|
-
return this._collection.include;
|
|
42
|
+
return this._collection.include || [];
|
|
31
43
|
}
|
|
32
44
|
get scope() {
|
|
33
45
|
return this._collection.scope;
|
|
@@ -41,13 +53,18 @@ class Collection {
|
|
|
41
53
|
get targetEntity() {
|
|
42
54
|
return this._collection.targetEntity;
|
|
43
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* Search the collection using a string or IQuery
|
|
58
|
+
* @param query
|
|
59
|
+
* @param options
|
|
60
|
+
* @returns
|
|
61
|
+
*/
|
|
44
62
|
async search(query, options = {}) {
|
|
45
|
-
var _a;
|
|
46
63
|
let qry;
|
|
47
64
|
if (typeof query === "string") {
|
|
48
65
|
// construct a query from that...
|
|
49
66
|
qry = {
|
|
50
|
-
targetEntity:
|
|
67
|
+
targetEntity: this._collection.targetEntity,
|
|
51
68
|
filters: [
|
|
52
69
|
{
|
|
53
70
|
predicates: [
|
|
@@ -62,16 +79,18 @@ class Collection {
|
|
|
62
79
|
else {
|
|
63
80
|
qry = query;
|
|
64
81
|
}
|
|
82
|
+
// TODO: What should happen when a Query is passed in that has a targetEntity that doesn't match the collection's targetEntity?
|
|
65
83
|
// merge the passed in query w/ the scope
|
|
66
84
|
qry.filters = [...qry.filters, ...this.scope.filters];
|
|
67
|
-
|
|
85
|
+
const opts = __1.cloneObject(options);
|
|
86
|
+
opts.requestOptions = this._context.hubRequestOptions;
|
|
68
87
|
// inject default sort info if not specified
|
|
69
|
-
|
|
70
|
-
|
|
88
|
+
opts.sortField = options.sortField || this.sortField;
|
|
89
|
+
opts.sortOrder = options.sortOrder || this.sortDirection;
|
|
71
90
|
// inject default includes if not specified
|
|
72
|
-
|
|
91
|
+
opts.include = options.include || this.include;
|
|
73
92
|
// execute the search and return results
|
|
74
|
-
return
|
|
93
|
+
return hubSearch_1.hubSearch(qry, opts);
|
|
75
94
|
}
|
|
76
95
|
}
|
|
77
96
|
exports.Collection = Collection;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Collection.js","sourceRoot":"","sources":["../../../src/search/Collection.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"Collection.js","sourceRoot":"","sources":["../../../src/search/Collection.ts"],"names":[],"mappings":";;;AAAA,0BAAiD;AASjD,2CAAwC;AACxC;;;;;;GAMG;AACH,MAAa,UAAU;IAGrB,YAAoB,UAA0B,EAAE,OAAuB;QACrE,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,QAAQ,CACpB,UAA0B,EAC1B,OAAuB;QAEvB,OAAO,IAAI,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,OAAO,eAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IAED,UAAU;IAEV,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;IAChC,CAAC;IACD,IAAW,GAAG;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;IAC9B,CAAC;IACD,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,CAAC;IACxC,CAAC;IACD,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;IAChC,CAAC;IACD,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,IAAI,OAAO,CAAC;IAC/C,CAAC;IACD,IAAW,aAAa;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,IAAI,KAAK,CAAC;IACjD,CAAC;IACD,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC;IACvC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,MAAM,CACjB,KAAsB,EACtB,UAA6B,EAAE;QAE/B,IAAI,GAAW,CAAC;QAChB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,iCAAiC;YACjC,GAAG,GAAG;gBACJ,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY;gBAC3C,OAAO,EAAE;oBACP;wBACE,UAAU,EAAE;4BACV;gCACE,IAAI,EAAE,KAAK;6BACZ;yBACF;qBACF;iBACF;aACF,CAAC;SACH;aAAM;YACL,GAAG,GAAG,KAAK,CAAC;SACb;QAED,+HAA+H;QAE/H,yCAAyC;QACzC,GAAG,CAAC,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,eAAW,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QACtD,4CAA4C;QAC5C,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;QACrD,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,CAAC;QACzD,2CAA2C;QAC3C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;QAE/C,wCAAwC;QACxC,OAAO,qBAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;CACF;AAjGD,gCAiGC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expandPredicate.js","sourceRoot":"","sources":["../../../../src/search/_internal/expandPredicate.ts"],"names":[],"mappings":";;;AAAA,2CAAiD;AACjD,qCAAyC;AAEzC,oCAAwE;AAExE;;;;;GAKG;AACH,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"}
|
|
@@ -6,7 +6,7 @@ const index_1 = require("../../index");
|
|
|
6
6
|
const HubGroups_1 = require("../../groups/HubGroups");
|
|
7
7
|
const serializeQueryForPortal_1 = require("../serializeQueryForPortal");
|
|
8
8
|
const utils_1 = require("../utils");
|
|
9
|
-
const
|
|
9
|
+
const expandPredicate_1 = require("./expandPredicate");
|
|
10
10
|
/**
|
|
11
11
|
* @private
|
|
12
12
|
* Portal Search Implementation for Groups
|
|
@@ -20,7 +20,7 @@ async function portalSearchGroups(query, options) {
|
|
|
20
20
|
}
|
|
21
21
|
// Expand the individual predicates in each filter
|
|
22
22
|
query.filters = query.filters.map((filter) => {
|
|
23
|
-
filter.predicates = filter.predicates.map(
|
|
23
|
+
filter.predicates = filter.predicates.map(expandPredicate_1.expandPredicate);
|
|
24
24
|
return filter;
|
|
25
25
|
});
|
|
26
26
|
// Serialize the all the groups for portal
|
|
@@ -1 +1 @@
|
|
|
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,
|
|
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,uDAAoD;AAEpD;;;;;;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,iCAAe,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"}
|
|
@@ -9,7 +9,7 @@ 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
|
|
12
|
+
const expandPredicate_1 = require("./expandPredicate");
|
|
13
13
|
/**
|
|
14
14
|
* @private
|
|
15
15
|
* Portal Search Implementation for Items
|
|
@@ -26,7 +26,7 @@ async function portalSearchItems(query, options) {
|
|
|
26
26
|
const updatedQuery = applyWellKnownItemPredicates(query);
|
|
27
27
|
// Expand the individual predicates in each filter
|
|
28
28
|
updatedQuery.filters = updatedQuery.filters.map((filter) => {
|
|
29
|
-
filter.predicates = filter.predicates.map(
|
|
29
|
+
filter.predicates = filter.predicates.map(expandPredicate_1.expandPredicate);
|
|
30
30
|
return filter;
|
|
31
31
|
});
|
|
32
32
|
// Serialize the all the groups for portal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portalSearchItems.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchItems.ts"],"names":[],"mappings":";;;AAAA,iEAA8E;AAC9E,6BAKe;AAEf,wEAAqE;AAErE,mDAA8D;AAC9D,6CAA2D;AAC3D,uCAAqD;AAYrD,oCAA2C;AAC3C,2DAAgE;AAChE,
|
|
1
|
+
{"version":3,"file":"portalSearchItems.js","sourceRoot":"","sources":["../../../../src/search/_internal/portalSearchItems.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ const __1 = require("../..");
|
|
|
6
6
|
const serializeQueryForPortal_1 = require("../serializeQueryForPortal");
|
|
7
7
|
const HubError_1 = require("../../HubError");
|
|
8
8
|
const utils_1 = require("../utils");
|
|
9
|
-
const
|
|
9
|
+
const expandPredicate_1 = require("./expandPredicate");
|
|
10
10
|
/**
|
|
11
11
|
* @private
|
|
12
12
|
* Portal Search Implementation for Users
|
|
@@ -24,7 +24,7 @@ async function portalSearchUsers(query, options) {
|
|
|
24
24
|
}
|
|
25
25
|
// Expand the individual predicates in each filter
|
|
26
26
|
query.filters = query.filters.map((filter) => {
|
|
27
|
-
filter.predicates = filter.predicates.map(
|
|
27
|
+
filter.predicates = filter.predicates.map(expandPredicate_1.expandPredicate);
|
|
28
28
|
return filter;
|
|
29
29
|
});
|
|
30
30
|
// Serialize the all the groups for portal
|
|
@@ -1 +1 @@
|
|
|
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,
|
|
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,uDAAoD;AAEpD;;;;;;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,iCAAe,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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fetchCatalog = void 0;
|
|
4
|
+
const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
5
|
+
const HubError_1 = require("../HubError");
|
|
6
|
+
const lookup_domain_1 = require("../sites/domains/lookup-domain");
|
|
7
|
+
const strip_protocol_1 = require("../urls/strip-protocol");
|
|
8
|
+
const is_guid_1 = require("../utils/is-guid");
|
|
9
|
+
const upgradeCatalogSchema_1 = require("./upgradeCatalogSchema");
|
|
10
|
+
/**
|
|
11
|
+
* Fetch a IHubCatalog from a backing item.
|
|
12
|
+
* This will apply schema upgrades to the structure
|
|
13
|
+
* @param identifier
|
|
14
|
+
* @param requestOptions
|
|
15
|
+
* @returns
|
|
16
|
+
*/
|
|
17
|
+
async function fetchCatalog(identifier, requestOptions) {
|
|
18
|
+
let getPrms;
|
|
19
|
+
// identifier can be a guid or a url
|
|
20
|
+
if (identifier.indexOf("http") === 0) {
|
|
21
|
+
let url = identifier;
|
|
22
|
+
// get down the the hostname
|
|
23
|
+
url = strip_protocol_1.stripProtocol(url);
|
|
24
|
+
// if url does not include a hash (i.e. it's not portal)
|
|
25
|
+
// then we want to split on the first slash to get the hostname
|
|
26
|
+
// lookupDomain will handle the enterprise base urls
|
|
27
|
+
if (!url.includes("#")) {
|
|
28
|
+
url = url.split("/")[0];
|
|
29
|
+
}
|
|
30
|
+
getPrms = lookup_domain_1.lookupDomain(url, requestOptions)
|
|
31
|
+
// get the item's data, and read the catalog out of it
|
|
32
|
+
.then(({ siteId }) => arcgis_rest_portal_1.getItemData(siteId, requestOptions))
|
|
33
|
+
.then((data) => {
|
|
34
|
+
return upgradeCatalogSchema_1.upgradeCatalogSchema(data.catalog || {});
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
else if (is_guid_1.isGuid(identifier)) {
|
|
38
|
+
// get the item's data, and read the catalog out of it
|
|
39
|
+
getPrms = arcgis_rest_portal_1.getItemData(identifier, requestOptions).then((data) => {
|
|
40
|
+
return upgradeCatalogSchema_1.upgradeCatalogSchema(data.catalog || {});
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
throw new HubError_1.default("Catalog.create", "Identifier must be a url, guid");
|
|
45
|
+
}
|
|
46
|
+
const fetched = await getPrms;
|
|
47
|
+
return fetched;
|
|
48
|
+
}
|
|
49
|
+
exports.fetchCatalog = fetchCatalog;
|
|
50
|
+
//# sourceMappingURL=fetchCatalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchCatalog.js","sourceRoot":"","sources":["../../../src/search/fetchCatalog.ts"],"names":[],"mappings":";;;AAAA,iEAAuD;AACvD,0CAAmC;AACnC,kEAA8D;AAE9D,2DAAuD;AACvD,8CAA0C;AAE1C,iEAA8D;AAE9D;;;;;;GAMG;AACI,KAAK,UAAU,YAAY,CAChC,UAAkB,EAClB,cAAkC;IAElC,IAAI,OAAO,CAAC;IACZ,oCAAoC;IACpC,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;QACpC,IAAI,GAAG,GAAG,UAAU,CAAC;QAErB,4BAA4B;QAC5B,GAAG,GAAG,8BAAa,CAAC,GAAG,CAAC,CAAC;QACzB,wDAAwD;QACxD,+DAA+D;QAC/D,oDAAoD;QACpD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACtB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SACzB;QAED,OAAO,GAAG,4BAAY,CAAC,GAAG,EAAE,cAAc,CAAC;YACzC,sDAAsD;aACrD,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,gCAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;aACzD,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACb,OAAO,2CAAoB,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;KACN;SAAM,IAAI,gBAAM,CAAC,UAAU,CAAC,EAAE;QAC7B,sDAAsD;QACtD,OAAO,GAAG,gCAAW,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YAC9D,OAAO,2CAAoB,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;KACJ;SAAM;QACL,MAAM,IAAI,kBAAQ,CAAC,gBAAgB,EAAE,gCAAgC,CAAC,CAAC;KACxE;IAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC;IAE9B,OAAO,OAAO,CAAC;AACjB,CAAC;AApCD,oCAoCC"}
|