@esri/hub-common 11.0.0-beta.2 → 11.0.0-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/dist/esm/Hub.js +0 -30
  2. package/dist/esm/Hub.js.map +1 -1
  3. package/dist/esm/core/PermissionManager.js +4 -4
  4. package/dist/esm/core/PermissionManager.js.map +1 -1
  5. package/dist/esm/core/behaviors/IWithPermissionBehavior.js +2 -2
  6. package/dist/esm/core/behaviors/IWithPermissionBehavior.js.map +1 -1
  7. package/dist/esm/projects/HubProject.js +9 -174
  8. package/dist/esm/projects/HubProject.js.map +1 -1
  9. package/dist/esm/projects/HubProjects.js +1 -36
  10. package/dist/esm/projects/HubProjects.js.map +1 -1
  11. package/dist/esm/projects/defaults.js +2 -2
  12. package/dist/esm/projects/defaults.js.map +1 -1
  13. package/dist/esm/projects/index.js +0 -1
  14. package/dist/esm/projects/index.js.map +1 -1
  15. package/dist/esm/search/_internal/index.js +0 -2
  16. package/dist/esm/search/_internal/index.js.map +1 -1
  17. package/dist/esm/sites/HubSites.js +7 -34
  18. package/dist/esm/sites/HubSites.js.map +1 -1
  19. package/dist/esm/sites/index.js +0 -1
  20. package/dist/esm/sites/index.js.map +1 -1
  21. package/dist/node/Hub.js +0 -30
  22. package/dist/node/Hub.js.map +1 -1
  23. package/dist/node/core/PermissionManager.js +4 -4
  24. package/dist/node/core/PermissionManager.js.map +1 -1
  25. package/dist/node/core/behaviors/IWithPermissionBehavior.js +2 -2
  26. package/dist/node/core/behaviors/IWithPermissionBehavior.js.map +1 -1
  27. package/dist/node/projects/HubProject.js +9 -174
  28. package/dist/node/projects/HubProject.js.map +1 -1
  29. package/dist/node/projects/HubProjects.js +2 -38
  30. package/dist/node/projects/HubProjects.js.map +1 -1
  31. package/dist/node/projects/defaults.js +2 -2
  32. package/dist/node/projects/defaults.js.map +1 -1
  33. package/dist/node/projects/index.js +0 -1
  34. package/dist/node/projects/index.js.map +1 -1
  35. package/dist/node/search/_internal/index.js +0 -2
  36. package/dist/node/search/_internal/index.js.map +1 -1
  37. package/dist/node/sites/HubSites.js +9 -37
  38. package/dist/node/sites/HubSites.js.map +1 -1
  39. package/dist/node/sites/index.js +0 -1
  40. package/dist/node/sites/index.js.map +1 -1
  41. package/dist/types/Hub.d.ts +0 -18
  42. package/dist/types/core/PermissionManager.d.ts +1 -1
  43. package/dist/types/core/behaviors/IWithPermissionBehavior.d.ts +1 -1
  44. package/dist/types/core/traits/IWithCatalogDefinition.d.ts +2 -2
  45. package/dist/types/core/traits/IWithPermissions.d.ts +1 -1
  46. package/dist/types/core/types/IHubProject.d.ts +2 -2
  47. package/dist/types/projects/HubProjects.d.ts +2 -12
  48. package/dist/types/projects/index.d.ts +0 -1
  49. package/dist/types/search/_internal/index.d.ts +0 -2
  50. package/dist/types/sites/HubSites.d.ts +2 -9
  51. package/dist/types/sites/index.d.ts +0 -1
  52. package/package.json +1 -1
  53. package/dist/esm/projects/HubProjectManager.js +0 -240
  54. package/dist/esm/projects/HubProjectManager.js.map +0 -1
  55. package/dist/esm/search/_internal/createQueryFromString.js +0 -22
  56. package/dist/esm/search/_internal/createQueryFromString.js.map +0 -1
  57. package/dist/esm/search/_internal/searchEntities.js +0 -73
  58. package/dist/esm/search/_internal/searchEntities.js.map +0 -1
  59. package/dist/esm/sites/HubSiteManager.js +0 -155
  60. package/dist/esm/sites/HubSiteManager.js.map +0 -1
  61. package/dist/node/projects/HubProjectManager.js +0 -244
  62. package/dist/node/projects/HubProjectManager.js.map +0 -1
  63. package/dist/node/search/_internal/createQueryFromString.js +0 -26
  64. package/dist/node/search/_internal/createQueryFromString.js.map +0 -1
  65. package/dist/node/search/_internal/searchEntities.js +0 -78
  66. package/dist/node/search/_internal/searchEntities.js.map +0 -1
  67. package/dist/node/sites/HubSiteManager.js +0 -159
  68. package/dist/node/sites/HubSiteManager.js.map +0 -1
  69. package/dist/types/projects/HubProjectManager.d.ts +0 -152
  70. package/dist/types/search/_internal/createQueryFromString.d.ts +0 -10
  71. package/dist/types/search/_internal/searchEntities.d.ts +0 -23
  72. package/dist/types/sites/HubSiteManager.d.ts +0 -104
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sites/index.ts"],"names":[],"mappings":";;;AAAA,wEAA8C;AAC9C,oDAA0B;AAC1B,mDAAyB;AACzB,2DAAiC;AACjC,2DAAiC;AACjC,2DAAiC;AACjC,qDAA2B;AAC3B,sEAA4C;AAC5C,gEAAsC;AACtC,mDAAyB;AACzB,gEAAsC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sites/index.ts"],"names":[],"mappings":";;;AAAA,wEAA8C;AAC9C,oDAA0B;AAC1B,mDAAyB;AACzB,2DAAiC;AACjC,2DAAiC;AACjC,qDAA2B;AAC3B,sEAA4C;AAC5C,gEAAsC;AACtC,mDAAyB;AACzB,gEAAsC"}
@@ -1,6 +1,4 @@
1
- import { HubSiteManager } from ".";
2
1
  import { ArcGISContextManager, IArcGISContextManagerOptions } from "./ArcGISContextManager";
3
- import { HubProjectManager } from "./projects/HubProjectManager";
4
2
  /**
5
3
  * Options for instantiating a Hub instance
6
4
  */
@@ -44,8 +42,6 @@ export declare class Hub {
44
42
  * everything will be kept in sync.
45
43
  */
46
44
  private _contextManager;
47
- private _projectManager;
48
- private _siteManager;
49
45
  /**
50
46
  * Private so we can employ a factory function to do
51
47
  * async work during creation
@@ -64,18 +60,4 @@ export declare class Hub {
64
60
  * @memberof Hub
65
61
  */
66
62
  get context(): import("./ArcGISContext").IArcGISContext;
67
- /**
68
- * HubProjectManager for the current Hub
69
- *
70
- * @readonly
71
- * @memberof Hub
72
- */
73
- get projects(): HubProjectManager;
74
- /**
75
- * HubSiteManager for the current Hub
76
- *
77
- * @readonly
78
- * @memberof Hub
79
- */
80
- get sites(): HubSiteManager;
81
63
  }
@@ -28,7 +28,7 @@ export declare class PermissionManager {
28
28
  * Set a permission for the given entity
29
29
  * @param permission
30
30
  */
31
- add(permission: HubPermission, definition: IHubPermission): void;
31
+ add(permission: IHubPermission): void;
32
32
  /**
33
33
  * Remove a permission by targetId
34
34
  * @param permission
@@ -29,7 +29,7 @@ export declare function getPermissions(permission: HubPermission, permissions: I
29
29
  * @param permissions
30
30
  * @returns
31
31
  */
32
- export declare function addPermission(permission: HubPermission, definition: IHubPermission, permissions: IHubPermission[]): IHubPermission[];
32
+ export declare function addPermission(definition: IHubPermission, permissions: IHubPermission[]): IHubPermission[];
33
33
  /**
34
34
  * Remove a permission
35
35
  * @param permission
@@ -1,7 +1,7 @@
1
1
  import { IHubCatalog } from "../../search";
2
- export interface IWithCatalogDefinition {
2
+ export interface IWithCatalog {
3
3
  /**
4
4
  * Catalog
5
5
  */
6
- catalogDefinition: IHubCatalog;
6
+ catalog: IHubCatalog;
7
7
  }
@@ -6,5 +6,5 @@ export interface IWithPermissionDefinition {
6
6
  /**
7
7
  * List of permissions for the entity
8
8
  */
9
- permissionDefinition: IHubPermission[];
9
+ permissions: IHubPermission[];
10
10
  }
@@ -1,10 +1,10 @@
1
1
  import { IHubTimeline, IHubItemEntity } from "./index";
2
2
  import { IWithLayout, IWithPermissionDefinition, IWithSlug } from "../traits/index";
3
- import { IWithCatalogDefinition } from "../traits/IWithCatalogDefinition";
3
+ import { IWithCatalog } from "../traits/IWithCatalogDefinition";
4
4
  /**
5
5
  * Defines the properties of a Hub Project object
6
6
  */
7
- export interface IHubProject extends IHubItemEntity, IWithSlug, IWithCatalogDefinition, IWithLayout, IWithPermissionDefinition {
7
+ export interface IHubProject extends IHubItemEntity, IWithSlug, IWithCatalog, IWithLayout, IWithPermissionDefinition {
8
8
  /**
9
9
  * Timeline for the project
10
10
  */
@@ -1,9 +1,9 @@
1
1
  import { IUserRequestOptions } from "@esri/arcgis-rest-auth";
2
- import { IHubSearchOptions, IHubRequestOptions } from "../index";
2
+ import { IHubRequestOptions } from "../index";
3
3
  import { IItem } from "@esri/arcgis-rest-portal";
4
4
  import { IRequestOptions } from "@esri/arcgis-rest-request";
5
5
  import { IHubProject } from "../core/types";
6
- import { IHubSearchResponse, IHubSearchResult, IQuery } from "../search";
6
+ import { IHubSearchResult } from "../search";
7
7
  /**
8
8
  * @private
9
9
  * Create a new Hub Project item
@@ -35,16 +35,6 @@ export declare function fetchProject(identifier: string, requestOptions: IReques
35
35
  * @param requestOptions
36
36
  */
37
37
  export declare function deleteProject(id: string, requestOptions: IUserRequestOptions): Promise<void>;
38
- /**
39
- * Search for Projects, and get IHubProject results
40
- *
41
- * Different from `hubSearch` in that this returns the IHubProjects
42
- *
43
- * @param filter
44
- * @param options
45
- * @returns
46
- */
47
- export declare function searchProjects(query: string | IQuery, options: IHubSearchOptions): Promise<IHubSearchResponse<IHubProject>>;
48
38
  /**
49
39
  * @private
50
40
  * Convert an Hub Project Item into a Hub Project, fetching any additional
@@ -1,3 +1,2 @@
1
- export * from "./HubProjectManager";
2
1
  export * from "./HubProjects";
3
2
  export * from "./HubProject";
@@ -1,6 +1,4 @@
1
- export * from "./searchEntities";
2
1
  export * from "./portalSearchItems";
3
2
  export * from "./hubSearchItems";
4
3
  export * from "./portalSearchGroups";
5
4
  export * from "./portalSearchUsers";
6
- export * from "./createQueryFromString";
@@ -1,5 +1,5 @@
1
1
  import { IItem } from "@esri/arcgis-rest-portal";
2
- import { IHubRequestOptions, IHubSearchOptions, IHubSearchResponse, IHubSearchResult, IHubSite, IQuery } from "../index";
2
+ import { IHubRequestOptions, IHubSearchResult, IHubSite } from "../index";
3
3
  import { IRequestOptions } from "@esri/arcgis-rest-request";
4
4
  export declare const HUB_SITE_ITEM_TYPE = "Hub Site Application";
5
5
  export declare const ENTERPRISE_SITE_ITEM_TYPE = "Site Application";
@@ -38,7 +38,7 @@ export declare function destroySite(id: string, requestOptions: IHubRequestOptio
38
38
  * @param requestOptions
39
39
  * @private // remove when we remove existing fetchSite function
40
40
  */
41
- export declare function _fetchSite(identifier: string, requestOptions: IHubRequestOptions): Promise<IHubSite>;
41
+ export declare function fetchSite(identifier: string, requestOptions: IHubRequestOptions): Promise<IHubSite>;
42
42
  /**
43
43
  * Convert a Hub Site Application item into a Hub Site, fetching any
44
44
  * additional information that may be required
@@ -47,13 +47,6 @@ export declare function _fetchSite(identifier: string, requestOptions: IHubReque
47
47
  * @returns
48
48
  */
49
49
  export declare function convertItemToSite(item: IItem, requestOptions: IRequestOptions): Promise<IHubSite>;
50
- /**
51
- * Search for Sites and get IHubSite results
52
- * @param filter
53
- * @param options
54
- * @returns
55
- */
56
- export declare function searchSites(query: string | IQuery, options: IHubSearchOptions): Promise<IHubSearchResponse<IHubSite>>;
57
50
  /**
58
51
  * Fetch Site specific enrichments
59
52
  * @param item
@@ -3,7 +3,6 @@ export * from "./domains";
3
3
  export * from "./drafts";
4
4
  export * from "./fetchSiteModel";
5
5
  export * from "./get-site-by-id";
6
- export * from "./HubSiteManager";
7
6
  export * from "./HubSites";
8
7
  export * from "./registerSiteAsApplication";
9
8
  export * from "./site-schema-version";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@esri/hub-common",
3
- "version": "11.0.0-beta.2",
3
+ "version": "11.0.0-beta.5",
4
4
  "description": "Common TypeScript types and utility functions for @esri/hub.js.",
5
5
  "main": "dist/node/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -1,240 +0,0 @@
1
- import { createProject, updateProject, deleteProject, fetchProject, searchProjects, convertItemToProject, } from "./HubProjects";
2
- // Node has issues if this is not directly imported
3
- import { ArcGISContextManager } from "../ArcGISContextManager";
4
- import { HubError, } from "..";
5
- import { setItemThumbnail as updateItemThumbnail } from "../items/setItemThumbnail";
6
- import { setItemAccess, shareItemWithGroup, unshareItemWithGroup, } from "@esri/arcgis-rest-portal";
7
- import { failSafe, isUpdateGroup } from "../utils";
8
- /**
9
- * Centralized functions used to manage IHubProject instances
10
- *
11
- * This class is a convenience wrapper over util functions which
12
- * are also directly accessible for use in scenarios where
13
- * classes are inconvenient.
14
- */
15
- export class HubProjectManager {
16
- /**
17
- * Private so we can employ a factory function should we need
18
- * async work during creation
19
- * @param contextOrManager
20
- */
21
- constructor(contextOrManager) {
22
- if (contextOrManager instanceof ArcGISContextManager) {
23
- this._contextManager = contextOrManager;
24
- }
25
- else {
26
- this._context = contextOrManager;
27
- }
28
- }
29
- /**
30
- * Factory function to construct a new HubProjectManager instance.
31
- *
32
- * Note: Used so that we could do async actions in the ctor.
33
- * @param contextOrManager
34
- * @returns
35
- */
36
- static init(contextOrManager) {
37
- return new HubProjectManager(contextOrManager);
38
- }
39
- /**
40
- * Getter to abstract how we store the context
41
- */
42
- get context() {
43
- if (this._contextManager) {
44
- return this._contextManager.context;
45
- }
46
- else {
47
- return this._context;
48
- }
49
- }
50
- /**
51
- * Create and store new project.
52
- *
53
- * Projects are stored as Items in the Sharing API
54
- * @param project
55
- * @param requestOptions
56
- * @returns
57
- */
58
- async create(project, requestOptions) {
59
- if (requestOptions || this.context.isAuthenticated) {
60
- // ammend in the orgUrlKey
61
- if (!project.orgUrlKey) {
62
- project.orgUrlKey = this.context.portal.urlKey;
63
- }
64
- return createProject(project, requestOptions || this.context.userRequestOptions);
65
- }
66
- else {
67
- throw new HubError("Create Project", "Creating Hub Projects requires authentication.");
68
- }
69
- }
70
- /**
71
- * Update a project
72
- * @param project
73
- * @param requestOptions
74
- * @returns
75
- */
76
- async update(project, requestOptions) {
77
- if (requestOptions || this.context.isAuthenticated) {
78
- return updateProject(project, requestOptions || this.context.userRequestOptions);
79
- }
80
- else {
81
- throw new HubError("Update Project", "Updating Hub Projects requires authentication.");
82
- }
83
- }
84
- /**
85
- * Destroy a project.
86
- * This permanently removes the backing Item
87
- * @param id
88
- * @param requestOptions
89
- * @returns
90
- */
91
- async delete(id, requestOptions) {
92
- if (requestOptions || this.context.isAuthenticated) {
93
- return deleteProject(id, requestOptions || this.context.userRequestOptions);
94
- }
95
- else {
96
- throw new HubError("Delete Project", "Destroying Hub Projects requires authentication.");
97
- }
98
- }
99
- /**
100
- * Fetch a Project via id or it's slug
101
- *
102
- * This function does not require a user to be
103
- * authenticated, but it does require an `IRequestOptions`
104
- * which contains the portal instance to communicate with
105
- * @param identifier
106
- * @param requestOptions
107
- * @returns
108
- */
109
- async fetch(identifier, requestOptions) {
110
- if (requestOptions || this.context.requestOptions) {
111
- return fetchProject(identifier, requestOptions || this.context.requestOptions);
112
- }
113
- else {
114
- throw new HubError("Fetch Project", "Can not retrieve context.requestOptions from Context Manager. HubProjectManager is configured incorrectly.");
115
- }
116
- }
117
- /**
118
- * Search for Projects
119
- *
120
- * @param query
121
- * @param options
122
- */
123
- async search(query, options) {
124
- // if we were not passed auth, and we have a session, use it
125
- if (!options.authentication && this.context.session) {
126
- options.authentication = this.context.session;
127
- }
128
- return searchProjects(query, options);
129
- }
130
- /**
131
- * Set the thumbnail for the Project
132
- * @param id
133
- * @param file
134
- * @param filename
135
- * @param requestOptions
136
- * @returns
137
- */
138
- async updateThumbnail(project, file, filename, requestOptions) {
139
- const ro = requestOptions || this.context.userRequestOptions;
140
- await updateItemThumbnail(project.id, file, filename, ro);
141
- // get the item so we have updated props and timestamps
142
- return this.fetch(project.id, requestOptions);
143
- }
144
- /**
145
- * Convert a Hub Project Item to a IHubProject
146
- * @param item
147
- * @param requestOptions
148
- * @returns
149
- */
150
- async fromItem(item, requestOptions) {
151
- const ro = requestOptions || this.context.userRequestOptions;
152
- return convertItemToProject(item, ro);
153
- }
154
- /**
155
- * Sets the access level of a Hub Project
156
- *
157
- * @param {IHubProject} project
158
- * @param {("public" | "org" | "private")} accessLevel
159
- * @param {IUserRequestOptions} [requestOptions]
160
- * @returns
161
- */
162
- async setAccess(project, accessLevel, requestOptions) {
163
- if (requestOptions || this.context.isAuthenticated) {
164
- const ro = requestOptions || this.context.userRequestOptions;
165
- return setItemAccess(Object.assign({ id: project.id, owner: project.owner, access: accessLevel }, ro));
166
- }
167
- else {
168
- throw new HubError("Set Project Access", "Setting Hub Projects access level requires authentication.");
169
- }
170
- }
171
- /**
172
- * Shares a Hub Project to a group
173
- *
174
- * @param {IHubProject} project
175
- * @param {IGroup} group
176
- * @param {IUserRequestOptions} [requestOptions]
177
- * @returns
178
- */
179
- async shareToGroup(project, group, requestOptions) {
180
- if (requestOptions || this.context.isAuthenticated) {
181
- const ro = requestOptions || this.context.userRequestOptions;
182
- return shareItemWithGroup(Object.assign({ id: project.id, owner: project.owner, groupId: group.id, confirmItemControl: isUpdateGroup(group) }, ro));
183
- }
184
- else {
185
- throw new HubError("Share Project to Group", "Sharing Hub Projects to group requires authentication.");
186
- }
187
- }
188
- /**
189
- * Shares a Hub Project to N Groups.
190
- *
191
- * @param {IHubProject} project
192
- * @param {IGroup[]} groups
193
- * @param {IUserRequestOptions} [requestOptions]
194
- * @returns
195
- */
196
- async shareToGroups(project, groups, requestOptions) {
197
- if (requestOptions || this.context.isAuthenticated) {
198
- const failSafeShare = failSafe(this.shareToGroup);
199
- return Promise.all(groups.map((group) => failSafeShare(project, group, requestOptions)));
200
- }
201
- else {
202
- throw new HubError("Share Project to Groups", "Sharing Hub Projects to groups requires authentication.");
203
- }
204
- }
205
- /**
206
- * Unshares a Hub Project from a group
207
- *
208
- * @param {IHubProject} project
209
- * @param {IGroup} group
210
- * @param {IUserRequestOptions} [requestOptions]
211
- * @returns
212
- */
213
- async unshareFromGroup(project, group, requestOptions) {
214
- if (requestOptions || this.context.isAuthenticated) {
215
- const ro = requestOptions || this.context.userRequestOptions;
216
- return unshareItemWithGroup(Object.assign({ id: project.id, owner: project.owner, groupId: group.id }, ro));
217
- }
218
- else {
219
- throw new HubError("Unshare Project from Group", "Unsharing Hub Project from group requires authentication.");
220
- }
221
- }
222
- /**
223
- * Unshares a Hub Project from N groups.
224
- *
225
- * @param {IHubProject} project
226
- * @param {IGroup[]} groups
227
- * @param {IUserRequestOptions} [requestOptions]
228
- * @returns
229
- */
230
- async unshareFromGroups(project, groups, requestOptions) {
231
- if (requestOptions || this.context.isAuthenticated) {
232
- const failSafeUnshare = failSafe(this.unshareFromGroup);
233
- return Promise.all(groups.map((group) => failSafeUnshare(project, group, requestOptions)));
234
- }
235
- else {
236
- throw new HubError("Unshare Project from Groups", "Unsharing Hub Project from groups requires authentication.");
237
- }
238
- }
239
- }
240
- //# sourceMappingURL=HubProjectManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HubProjectManager.js","sourceRoot":"","sources":["../../../src/projects/HubProjectManager.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- /**
2
- * @private
3
- * Construct a query from a string
4
- * @param value
5
- * @param predicateKey
6
- * @param targetEntity
7
- * @returns
8
- */
9
- export function createQueryFromString(value, predicateKey, targetEntity) {
10
- const predicate = {};
11
- predicate[predicateKey] = value;
12
- const qry = {
13
- targetEntity,
14
- filters: [
15
- {
16
- predicates: [predicate],
17
- },
18
- ],
19
- };
20
- return qry;
21
- }
22
- //# sourceMappingURL=createQueryFromString.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createQueryFromString.js","sourceRoot":"","sources":["../../../../src/search/_internal/createQueryFromString.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAa,EACb,YAAoB,EACpB,YAAwB;IAExB,MAAM,SAAS,GAAe,EAAE,CAAC;IACjC,SAAS,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;IAChC,MAAM,GAAG,GAAW;QAClB,YAAY;QACZ,OAAO,EAAE;YACP;gBACE,UAAU,EAAE,CAAC,SAAS,CAAC;aACxB;SACF;KACF,CAAC;IACF,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,73 +0,0 @@
1
- import { searchItems } from "@esri/arcgis-rest-portal";
2
- import { expandApi, getNextFunction } from "../utils";
3
- import { serializeQueryForPortal } from "../serializeQueryForPortal";
4
- import { convertPortalAggregations } from "./portalSearchUtils";
5
- /**
6
- * @private
7
- * Execute a search and convert to a specific entity
8
- * @param query
9
- * @param convertFn
10
- * @param options
11
- * @returns
12
- */
13
- export function searchEntities(query, convertFn, options) {
14
- var _a;
15
- // serialize query to searchOptions
16
- const searchOptions = serializeQueryForPortal(query);
17
- // Aggregations
18
- if ((_a = options.aggFields) === null || _a === void 0 ? void 0 : _a.length) {
19
- searchOptions.countFields = options.aggFields.join(",");
20
- searchOptions.countSize = options.aggLimit || 10;
21
- }
22
- // properties to copy from IHubSearchOptions to the ISearchOptions
23
- const props = [
24
- "num",
25
- "sortField",
26
- "sortOrder",
27
- "start",
28
- "requestOptions",
29
- ];
30
- // Include "start" here
31
- // copy the props over
32
- props.forEach((prop) => {
33
- if (options.hasOwnProperty(prop)) {
34
- searchOptions[prop] = options[prop];
35
- }
36
- });
37
- // create the entitySearchFn
38
- const searchFn = createEntitySearchFn(convertFn);
39
- // Add ArcGIS API
40
- if (options.api && !options.authentication) {
41
- const expandedApi = expandApi(options.api);
42
- searchOptions.portal = expandedApi.url;
43
- }
44
- return searchFn(searchOptions);
45
- }
46
- /**
47
- * @private
48
- * @param convertFn
49
- * @returns
50
- */
51
- export function createEntitySearchFn(convertFn) {
52
- // Return a function that does the search, with a closure over the
53
- // conversion function. Naming this function is important as it's
54
- // referenced in the `next` section below
55
- return async function executeSearch(searchOptions) {
56
- // execute the search against portal api
57
- const response = await searchItems(searchOptions);
58
- // run the conversion function
59
- const entities = await Promise.all(response.results.map((itm) => {
60
- return convertFn(itm, searchOptions);
61
- }));
62
- // convert portal aggregations into hub aggregations
63
- const aggregations = convertPortalAggregations(response);
64
- return {
65
- total: response.total,
66
- results: entities,
67
- aggregations,
68
- hasNext: response.nextStart > -1,
69
- next: getNextFunction(searchOptions, response.nextStart, response.total, executeSearch),
70
- };
71
- };
72
- }
73
- //# sourceMappingURL=searchEntities.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"searchEntities.js","sourceRoot":"","sources":["../../../../src/search/_internal/searchEntities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAKvE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAUhE;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAC5B,KAAa,EACb,SAAgC,EAChC,OAA0B;;IAE1B,mCAAmC;IACnC,MAAM,aAAa,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAErD,eAAe;IACf,UAAI,OAAO,CAAC,SAAS,0CAAE,MAAM,EAAE;QAC7B,aAAa,CAAC,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxD,aAAa,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;KAClD;IACD,kEAAkE;IAClE,MAAM,KAAK,GAAmC;QAC5C,KAAK;QACL,WAAW;QACX,WAAW;QACX,OAAO;QACP,gBAAgB;KACjB,CAAC;IAEF,uBAAuB;IACvB,sBAAsB;IACtB,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACrB,IAAI,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;YAChC,aAAa,CAAC,IAA4B,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;SAC7D;IACH,CAAC,CAAC,CAAC;IACH,4BAA4B;IAC5B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAEjD,iBAAiB;IACjB,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;QAC1C,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC3C,aAAa,CAAC,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC;KACxC;IACD,OAAO,QAAQ,CAAC,aAAa,CAAC,CAAC;AACjC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAClC,SAAgC;IAEhC,kEAAkE;IAClE,iEAAiE;IACjE,yCAAyC;IACzC,OAAO,KAAK,UAAU,aAAa,CACjC,aAA6B;QAE7B,wCAAwC;QACxC,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,aAAa,CAAC,CAAC;QAClD,8BAA8B;QAC9B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YAC3B,OAAO,SAAS,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QACvC,CAAC,CAAC,CACH,CAAC;QAEF,qDAAqD;QACrD,MAAM,YAAY,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;QAEzD,OAAO;YACL,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,OAAO,EAAE,QAAQ;YACjB,YAAY;YACZ,OAAO,EAAE,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC;YAChC,IAAI,EAAE,eAAe,CACnB,aAAa,EACb,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,KAAK,EACd,aAAa,CACd;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}