@esri/hub-common 11.0.0-beta.3 → 11.0.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.
Files changed (58) hide show
  1. package/dist/esm/core/PermissionManager.js +4 -4
  2. package/dist/esm/core/PermissionManager.js.map +1 -1
  3. package/dist/esm/core/behaviors/IWithPermissionBehavior.js +2 -2
  4. package/dist/esm/core/behaviors/IWithPermissionBehavior.js.map +1 -1
  5. package/dist/esm/projects/HubProject.js +10 -175
  6. package/dist/esm/projects/HubProject.js.map +1 -1
  7. package/dist/esm/projects/HubProjects.js +1 -36
  8. package/dist/esm/projects/HubProjects.js.map +1 -1
  9. package/dist/esm/projects/defaults.js +2 -2
  10. package/dist/esm/projects/defaults.js.map +1 -1
  11. package/dist/esm/search/_internal/index.js +0 -2
  12. package/dist/esm/search/_internal/index.js.map +1 -1
  13. package/dist/esm/sites/HubSites.js +7 -34
  14. package/dist/esm/sites/HubSites.js.map +1 -1
  15. package/dist/node/core/PermissionManager.js +4 -4
  16. package/dist/node/core/PermissionManager.js.map +1 -1
  17. package/dist/node/core/behaviors/IWithPermissionBehavior.js +2 -2
  18. package/dist/node/core/behaviors/IWithPermissionBehavior.js.map +1 -1
  19. package/dist/node/projects/HubProject.js +10 -175
  20. package/dist/node/projects/HubProject.js.map +1 -1
  21. package/dist/node/projects/HubProjects.js +2 -38
  22. package/dist/node/projects/HubProjects.js.map +1 -1
  23. package/dist/node/projects/defaults.js +2 -2
  24. package/dist/node/projects/defaults.js.map +1 -1
  25. package/dist/node/search/_internal/index.js +0 -2
  26. package/dist/node/search/_internal/index.js.map +1 -1
  27. package/dist/node/sites/HubSites.js +9 -37
  28. package/dist/node/sites/HubSites.js.map +1 -1
  29. package/dist/types/core/PermissionManager.d.ts +1 -1
  30. package/dist/types/core/behaviors/IWithPermissionBehavior.d.ts +1 -1
  31. package/dist/types/core/traits/IWithCatalogDefinition.d.ts +2 -2
  32. package/dist/types/core/traits/IWithPermissions.d.ts +1 -1
  33. package/dist/types/core/types/IHubProject.d.ts +2 -2
  34. package/dist/types/projects/HubProject.d.ts +1 -1
  35. package/dist/types/projects/HubProjects.d.ts +2 -12
  36. package/dist/types/search/_internal/index.d.ts +0 -2
  37. package/dist/types/sites/HubSites.d.ts +2 -9
  38. package/package.json +1 -1
  39. package/dist/esm/projects/HubProjectManager.js +0 -240
  40. package/dist/esm/projects/HubProjectManager.js.map +0 -1
  41. package/dist/esm/search/_internal/createQueryFromString.js +0 -22
  42. package/dist/esm/search/_internal/createQueryFromString.js.map +0 -1
  43. package/dist/esm/search/_internal/searchEntities.js +0 -73
  44. package/dist/esm/search/_internal/searchEntities.js.map +0 -1
  45. package/dist/esm/sites/HubSiteManager.js +0 -155
  46. package/dist/esm/sites/HubSiteManager.js.map +0 -1
  47. package/dist/node/projects/HubProjectManager.js +0 -244
  48. package/dist/node/projects/HubProjectManager.js.map +0 -1
  49. package/dist/node/search/_internal/createQueryFromString.js +0 -26
  50. package/dist/node/search/_internal/createQueryFromString.js.map +0 -1
  51. package/dist/node/search/_internal/searchEntities.js +0 -78
  52. package/dist/node/search/_internal/searchEntities.js.map +0 -1
  53. package/dist/node/sites/HubSiteManager.js +0 -159
  54. package/dist/node/sites/HubSiteManager.js.map +0 -1
  55. package/dist/types/projects/HubProjectManager.d.ts +0 -152
  56. package/dist/types/search/_internal/createQueryFromString.d.ts +0 -10
  57. package/dist/types/search/_internal/searchEntities.d.ts +0 -23
  58. package/dist/types/sites/HubSiteManager.d.ts +0 -104
@@ -1,244 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HubProjectManager = void 0;
4
- const HubProjects_1 = require("./HubProjects");
5
- // Node has issues if this is not directly imported
6
- const ArcGISContextManager_1 = require("../ArcGISContextManager");
7
- const __1 = require("..");
8
- const setItemThumbnail_1 = require("../items/setItemThumbnail");
9
- const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
10
- const utils_1 = require("../utils");
11
- /**
12
- * Centralized functions used to manage IHubProject instances
13
- *
14
- * This class is a convenience wrapper over util functions which
15
- * are also directly accessible for use in scenarios where
16
- * classes are inconvenient.
17
- */
18
- class HubProjectManager {
19
- /**
20
- * Private so we can employ a factory function should we need
21
- * async work during creation
22
- * @param contextOrManager
23
- */
24
- constructor(contextOrManager) {
25
- if (contextOrManager instanceof ArcGISContextManager_1.ArcGISContextManager) {
26
- this._contextManager = contextOrManager;
27
- }
28
- else {
29
- this._context = contextOrManager;
30
- }
31
- }
32
- /**
33
- * Factory function to construct a new HubProjectManager instance.
34
- *
35
- * Note: Used so that we could do async actions in the ctor.
36
- * @param contextOrManager
37
- * @returns
38
- */
39
- static init(contextOrManager) {
40
- return new HubProjectManager(contextOrManager);
41
- }
42
- /**
43
- * Getter to abstract how we store the context
44
- */
45
- get context() {
46
- if (this._contextManager) {
47
- return this._contextManager.context;
48
- }
49
- else {
50
- return this._context;
51
- }
52
- }
53
- /**
54
- * Create and store new project.
55
- *
56
- * Projects are stored as Items in the Sharing API
57
- * @param project
58
- * @param requestOptions
59
- * @returns
60
- */
61
- async create(project, requestOptions) {
62
- if (requestOptions || this.context.isAuthenticated) {
63
- // ammend in the orgUrlKey
64
- if (!project.orgUrlKey) {
65
- project.orgUrlKey = this.context.portal.urlKey;
66
- }
67
- return HubProjects_1.createProject(project, requestOptions || this.context.userRequestOptions);
68
- }
69
- else {
70
- throw new __1.HubError("Create Project", "Creating Hub Projects requires authentication.");
71
- }
72
- }
73
- /**
74
- * Update a project
75
- * @param project
76
- * @param requestOptions
77
- * @returns
78
- */
79
- async update(project, requestOptions) {
80
- if (requestOptions || this.context.isAuthenticated) {
81
- return HubProjects_1.updateProject(project, requestOptions || this.context.userRequestOptions);
82
- }
83
- else {
84
- throw new __1.HubError("Update Project", "Updating Hub Projects requires authentication.");
85
- }
86
- }
87
- /**
88
- * Destroy a project.
89
- * This permanently removes the backing Item
90
- * @param id
91
- * @param requestOptions
92
- * @returns
93
- */
94
- async delete(id, requestOptions) {
95
- if (requestOptions || this.context.isAuthenticated) {
96
- return HubProjects_1.deleteProject(id, requestOptions || this.context.userRequestOptions);
97
- }
98
- else {
99
- throw new __1.HubError("Delete Project", "Destroying Hub Projects requires authentication.");
100
- }
101
- }
102
- /**
103
- * Fetch a Project via id or it's slug
104
- *
105
- * This function does not require a user to be
106
- * authenticated, but it does require an `IRequestOptions`
107
- * which contains the portal instance to communicate with
108
- * @param identifier
109
- * @param requestOptions
110
- * @returns
111
- */
112
- async fetch(identifier, requestOptions) {
113
- if (requestOptions || this.context.requestOptions) {
114
- return HubProjects_1.fetchProject(identifier, requestOptions || this.context.requestOptions);
115
- }
116
- else {
117
- throw new __1.HubError("Fetch Project", "Can not retrieve context.requestOptions from Context Manager. HubProjectManager is configured incorrectly.");
118
- }
119
- }
120
- /**
121
- * Search for Projects
122
- *
123
- * @param query
124
- * @param options
125
- */
126
- async search(query, options) {
127
- // if we were not passed auth, and we have a session, use it
128
- if (!options.authentication && this.context.session) {
129
- options.authentication = this.context.session;
130
- }
131
- return HubProjects_1.searchProjects(query, options);
132
- }
133
- /**
134
- * Set the thumbnail for the Project
135
- * @param id
136
- * @param file
137
- * @param filename
138
- * @param requestOptions
139
- * @returns
140
- */
141
- async updateThumbnail(project, file, filename, requestOptions) {
142
- const ro = requestOptions || this.context.userRequestOptions;
143
- await setItemThumbnail_1.setItemThumbnail(project.id, file, filename, ro);
144
- // get the item so we have updated props and timestamps
145
- return this.fetch(project.id, requestOptions);
146
- }
147
- /**
148
- * Convert a Hub Project Item to a IHubProject
149
- * @param item
150
- * @param requestOptions
151
- * @returns
152
- */
153
- async fromItem(item, requestOptions) {
154
- const ro = requestOptions || this.context.userRequestOptions;
155
- return HubProjects_1.convertItemToProject(item, ro);
156
- }
157
- /**
158
- * Sets the access level of a Hub Project
159
- *
160
- * @param {IHubProject} project
161
- * @param {("public" | "org" | "private")} accessLevel
162
- * @param {IUserRequestOptions} [requestOptions]
163
- * @returns
164
- */
165
- async setAccess(project, accessLevel, requestOptions) {
166
- if (requestOptions || this.context.isAuthenticated) {
167
- const ro = requestOptions || this.context.userRequestOptions;
168
- return arcgis_rest_portal_1.setItemAccess(Object.assign({ id: project.id, owner: project.owner, access: accessLevel }, ro));
169
- }
170
- else {
171
- throw new __1.HubError("Set Project Access", "Setting Hub Projects access level requires authentication.");
172
- }
173
- }
174
- /**
175
- * Shares a Hub Project to a group
176
- *
177
- * @param {IHubProject} project
178
- * @param {IGroup} group
179
- * @param {IUserRequestOptions} [requestOptions]
180
- * @returns
181
- */
182
- async shareToGroup(project, group, requestOptions) {
183
- if (requestOptions || this.context.isAuthenticated) {
184
- const ro = requestOptions || this.context.userRequestOptions;
185
- return arcgis_rest_portal_1.shareItemWithGroup(Object.assign({ id: project.id, owner: project.owner, groupId: group.id, confirmItemControl: utils_1.isUpdateGroup(group) }, ro));
186
- }
187
- else {
188
- throw new __1.HubError("Share Project to Group", "Sharing Hub Projects to group requires authentication.");
189
- }
190
- }
191
- /**
192
- * Shares a Hub Project to N Groups.
193
- *
194
- * @param {IHubProject} project
195
- * @param {IGroup[]} groups
196
- * @param {IUserRequestOptions} [requestOptions]
197
- * @returns
198
- */
199
- async shareToGroups(project, groups, requestOptions) {
200
- if (requestOptions || this.context.isAuthenticated) {
201
- const failSafeShare = utils_1.failSafe(this.shareToGroup);
202
- return Promise.all(groups.map((group) => failSafeShare(project, group, requestOptions)));
203
- }
204
- else {
205
- throw new __1.HubError("Share Project to Groups", "Sharing Hub Projects to groups requires authentication.");
206
- }
207
- }
208
- /**
209
- * Unshares a Hub Project from a group
210
- *
211
- * @param {IHubProject} project
212
- * @param {IGroup} group
213
- * @param {IUserRequestOptions} [requestOptions]
214
- * @returns
215
- */
216
- async unshareFromGroup(project, group, requestOptions) {
217
- if (requestOptions || this.context.isAuthenticated) {
218
- const ro = requestOptions || this.context.userRequestOptions;
219
- return arcgis_rest_portal_1.unshareItemWithGroup(Object.assign({ id: project.id, owner: project.owner, groupId: group.id }, ro));
220
- }
221
- else {
222
- throw new __1.HubError("Unshare Project from Group", "Unsharing Hub Project from group requires authentication.");
223
- }
224
- }
225
- /**
226
- * Unshares a Hub Project from N groups.
227
- *
228
- * @param {IHubProject} project
229
- * @param {IGroup[]} groups
230
- * @param {IUserRequestOptions} [requestOptions]
231
- * @returns
232
- */
233
- async unshareFromGroups(project, groups, requestOptions) {
234
- if (requestOptions || this.context.isAuthenticated) {
235
- const failSafeUnshare = utils_1.failSafe(this.unshareFromGroup);
236
- return Promise.all(groups.map((group) => failSafeUnshare(project, group, requestOptions)));
237
- }
238
- else {
239
- throw new __1.HubError("Unshare Project from Groups", "Unsharing Hub Project from groups requires authentication.");
240
- }
241
- }
242
- }
243
- exports.HubProjectManager = HubProjectManager;
244
- //# sourceMappingURL=HubProjectManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HubProjectManager.js","sourceRoot":"","sources":["../../../src/projects/HubProjectManager.ts"],"names":[],"mappings":";;;AAEA,+CAOuB;AACvB,mDAAmD;AACnD,kEAA+D;AAC/D,0BAMY;AAGZ,gEAAoF;AAEpF,iEAKkC;AAClC,oCAAmD;AAEnD;;;;;;GAMG;AACH,MAAa,iBAAiB;IAkB5B;;;;OAIG;IACH,YAAoB,gBAAuD;QACzE,IAAI,gBAAgB,YAAY,2CAAoB,EAAE;YACpD,IAAI,CAAC,eAAe,GAAG,gBAAgB,CAAC;SACzC;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC;SAClC;IACH,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,CACT,gBAAuD;QAEvD,OAAO,IAAI,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,IAAY,OAAO;QACjB,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;SACrC;aAAM;YACL,OAAO,IAAI,CAAC,QAAQ,CAAC;SACtB;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,MAAM,CACV,OAA6B,EAC7B,cAAoC;QAEpC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,0BAA0B;YAC1B,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;gBACtB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;aAChD;YACD,OAAO,2BAAa,CAClB,OAAO,EACP,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAClD,CAAC;SACH;aAAM;YACL,MAAM,IAAI,YAAQ,CAChB,gBAAgB,EAChB,gDAAgD,CACjD,CAAC;SACH;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,OAAoB,EACpB,cAAoC;QAEpC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,OAAO,2BAAa,CAClB,OAAO,EACP,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAClD,CAAC;SACH;aAAM;YACL,MAAM,IAAI,YAAQ,CAChB,gBAAgB,EAChB,gDAAgD,CACjD,CAAC;SACH;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CACV,EAAU,EACV,cAAoC;QAEpC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,OAAO,2BAAa,CAClB,EAAE,EACF,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAClD,CAAC;SACH;aAAM;YACL,MAAM,IAAI,YAAQ,CAChB,gBAAgB,EAChB,kDAAkD,CACnD,CAAC;SACH;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,KAAK,CACT,UAAkB,EAClB,cAAgC;QAEhC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;YACjD,OAAO,0BAAY,CACjB,UAAU,EACV,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,CAC9C,CAAC;SACH;aAAM;YACL,MAAM,IAAI,YAAQ,CAChB,eAAe,EACf,4GAA4G,CAC7G,CAAC;SACH;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,KAAsB,EACtB,OAA0B;QAE1B,4DAA4D;QAC5D,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACnD,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;SAC/C;QAED,OAAO,4BAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,eAAe,CACnB,OAAoB,EACpB,IAAS,EACT,QAAgB,EAChB,cAAoC;QAEpC,MAAM,EAAE,GAAG,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAC7D,MAAM,mCAAmB,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC1D,uDAAuD;QACvD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IAChD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,CACZ,IAAW,EACX,cAAgC;QAEhC,MAAM,EAAE,GAAG,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAC7D,OAAO,kCAAoB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,SAAS,CACb,OAAoB,EACpB,WAAyC,EACzC,cAAoC;QAEpC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,MAAM,EAAE,GAAG,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;YAC7D,OAAO,kCAAa,iBAClB,EAAE,EAAE,OAAO,CAAC,EAAE,EACd,KAAK,EAAE,OAAO,CAAC,KAAK,EACpB,MAAM,EAAE,WAAW,IAChB,EAAE,EACL,CAAC;SACJ;aAAM;YACL,MAAM,IAAI,YAAQ,CAChB,oBAAoB,EACpB,4DAA4D,CAC7D,CAAC;SACH;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,YAAY,CAChB,OAAoB,EACpB,KAAa,EACb,cAAoC;QAEpC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,MAAM,EAAE,GAAG,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;YAC7D,OAAO,uCAAkB,iBACvB,EAAE,EAAE,OAAO,CAAC,EAAE,EACd,KAAK,EAAE,OAAO,CAAC,KAAK,EACpB,OAAO,EAAE,KAAK,CAAC,EAAE,EACjB,kBAAkB,EAAE,qBAAa,CAAC,KAAK,CAAC,IACrC,EAAE,EACL,CAAC;SACJ;aAAM;YACL,MAAM,IAAI,YAAQ,CAChB,wBAAwB,EACxB,wDAAwD,CACzD,CAAC;SACH;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,aAAa,CACjB,OAAoB,EACpB,MAAgB,EAChB,cAAoC;QAEpC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,MAAM,aAAa,GAAG,gBAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAClD,OAAO,OAAO,CAAC,GAAG,CAChB,MAAM,CAAC,GAAG,CAAC,CAAC,KAAa,EAAE,EAAE,CAC3B,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,cAAc,CAAC,CAC9C,CACF,CAAC;SACH;aAAM;YACL,MAAM,IAAI,YAAQ,CAChB,yBAAyB,EACzB,yDAAyD,CAC1D,CAAC;SACH;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,gBAAgB,CACpB,OAAoB,EACpB,KAAa,EACb,cAAoC;QAEpC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,MAAM,EAAE,GAAG,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;YAC7D,OAAO,yCAAoB,iBACzB,EAAE,EAAE,OAAO,CAAC,EAAE,EACd,KAAK,EAAE,OAAO,CAAC,KAAK,EACpB,OAAO,EAAE,KAAK,CAAC,EAAE,IACd,EAAE,EACL,CAAC;SACJ;aAAM;YACL,MAAM,IAAI,YAAQ,CAChB,4BAA4B,EAC5B,2DAA2D,CAC5D,CAAC;SACH;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,iBAAiB,CACrB,OAAoB,EACpB,MAAgB,EAChB,cAAoC;QAEpC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,MAAM,eAAe,GAAG,gBAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACxD,OAAO,OAAO,CAAC,GAAG,CAChB,MAAM,CAAC,GAAG,CAAC,CAAC,KAAa,EAAE,EAAE,CAC3B,eAAe,CAAC,OAAO,EAAE,KAAK,EAAE,cAAc,CAAC,CAChD,CACF,CAAC;SACH;aAAM;YACL,MAAM,IAAI,YAAQ,CAChB,6BAA6B,EAC7B,4DAA4D,CAC7D,CAAC;SACH;IACH,CAAC;CACF;AAjWD,8CAiWC"}
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createQueryFromString = void 0;
4
- /**
5
- * @private
6
- * Construct a query from a string
7
- * @param value
8
- * @param predicateKey
9
- * @param targetEntity
10
- * @returns
11
- */
12
- function createQueryFromString(value, predicateKey, targetEntity) {
13
- const predicate = {};
14
- predicate[predicateKey] = value;
15
- const qry = {
16
- targetEntity,
17
- filters: [
18
- {
19
- predicates: [predicate],
20
- },
21
- ],
22
- };
23
- return qry;
24
- }
25
- exports.createQueryFromString = createQueryFromString;
26
- //# 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,SAAgB,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;AAhBD,sDAgBC"}
@@ -1,78 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createEntitySearchFn = exports.searchEntities = void 0;
4
- const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
5
- const utils_1 = require("../utils");
6
- const serializeQueryForPortal_1 = require("../serializeQueryForPortal");
7
- const portalSearchUtils_1 = require("./portalSearchUtils");
8
- /**
9
- * @private
10
- * Execute a search and convert to a specific entity
11
- * @param query
12
- * @param convertFn
13
- * @param options
14
- * @returns
15
- */
16
- function searchEntities(query, convertFn, options) {
17
- var _a;
18
- // serialize query to searchOptions
19
- const searchOptions = serializeQueryForPortal_1.serializeQueryForPortal(query);
20
- // Aggregations
21
- if ((_a = options.aggFields) === null || _a === void 0 ? void 0 : _a.length) {
22
- searchOptions.countFields = options.aggFields.join(",");
23
- searchOptions.countSize = options.aggLimit || 10;
24
- }
25
- // properties to copy from IHubSearchOptions to the ISearchOptions
26
- const props = [
27
- "num",
28
- "sortField",
29
- "sortOrder",
30
- "start",
31
- "requestOptions",
32
- ];
33
- // Include "start" here
34
- // copy the props over
35
- props.forEach((prop) => {
36
- if (options.hasOwnProperty(prop)) {
37
- searchOptions[prop] = options[prop];
38
- }
39
- });
40
- // create the entitySearchFn
41
- const searchFn = createEntitySearchFn(convertFn);
42
- // Add ArcGIS API
43
- if (options.api && !options.authentication) {
44
- const expandedApi = utils_1.expandApi(options.api);
45
- searchOptions.portal = expandedApi.url;
46
- }
47
- return searchFn(searchOptions);
48
- }
49
- exports.searchEntities = searchEntities;
50
- /**
51
- * @private
52
- * @param convertFn
53
- * @returns
54
- */
55
- function createEntitySearchFn(convertFn) {
56
- // Return a function that does the search, with a closure over the
57
- // conversion function. Naming this function is important as it's
58
- // referenced in the `next` section below
59
- return async function executeSearch(searchOptions) {
60
- // execute the search against portal api
61
- const response = await arcgis_rest_portal_1.searchItems(searchOptions);
62
- // run the conversion function
63
- const entities = await Promise.all(response.results.map((itm) => {
64
- return convertFn(itm, searchOptions);
65
- }));
66
- // convert portal aggregations into hub aggregations
67
- const aggregations = portalSearchUtils_1.convertPortalAggregations(response);
68
- return {
69
- total: response.total,
70
- results: entities,
71
- aggregations,
72
- hasNext: response.nextStart > -1,
73
- next: utils_1.getNextFunction(searchOptions, response.nextStart, response.total, executeSearch),
74
- };
75
- };
76
- }
77
- exports.createEntitySearchFn = createEntitySearchFn;
78
- //# sourceMappingURL=searchEntities.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"searchEntities.js","sourceRoot":"","sources":["../../../../src/search/_internal/searchEntities.ts"],"names":[],"mappings":";;;AAAA,iEAAuE;AAKvE,oCAAsD;AAEtD,wEAAqE;AACrE,2DAAgE;AAUhE;;;;;;;GAOG;AACH,SAAgB,cAAc,CAC5B,KAAa,EACb,SAAgC,EAChC,OAA0B;;IAE1B,mCAAmC;IACnC,MAAM,aAAa,GAAG,iDAAuB,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,iBAAS,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;AAtCD,wCAsCC;AAED;;;;GAIG;AACH,SAAgB,oBAAoB,CAClC,SAAgC;IAEhC,kEAAkE;IAClE,iEAAiE;IACjE,yCAAyC;IACzC,OAAO,KAAK,UAAU,aAAa,CACjC,aAA6B;QAE7B,wCAAwC;QACxC,MAAM,QAAQ,GAAG,MAAM,gCAAW,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,6CAAyB,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,uBAAe,CACnB,aAAa,EACb,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,KAAK,EACd,aAAa,CACd;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAlCD,oDAkCC"}
@@ -1,159 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HubSiteManager = void 0;
4
- const HubError_1 = require("../HubError");
5
- // Node has issues if this is not directly imported
6
- const ArcGISContextManager_1 = require("../ArcGISContextManager");
7
- const HubSites_1 = require("./HubSites");
8
- const setItemThumbnail_1 = require("../items/setItemThumbnail");
9
- class HubSiteManager {
10
- /**
11
- * Private so we can employ a factory function should we need
12
- * async work during creation
13
- * @param contextOrManager
14
- */
15
- constructor(contextOrManager) {
16
- if (contextOrManager instanceof ArcGISContextManager_1.ArcGISContextManager) {
17
- this._contextManager = contextOrManager;
18
- }
19
- else {
20
- this._context = contextOrManager;
21
- }
22
- }
23
- /**
24
- * Factory function to construct a new HubProjectManager instance.
25
- *
26
- * Note: Used so that we could do async actions in the ctor.
27
- * @param contextOrManager
28
- * @returns
29
- */
30
- static init(contextOrManager) {
31
- return new HubSiteManager(contextOrManager);
32
- }
33
- /**
34
- * Getter to abstract how we store the context
35
- */
36
- get context() {
37
- if (this._contextManager) {
38
- return this._contextManager.context;
39
- }
40
- else {
41
- return this._context;
42
- }
43
- }
44
- /**
45
- * Create and store a new Site
46
- *
47
- * This also registers the item for oAuth and
48
- * registers domain names with the hub Domain system
49
- *
50
- * Sites are stored as Items in the Sharing API
51
- * @param site
52
- * @param requestOptions
53
- * @returns
54
- */
55
- async create(site, requestOptions) {
56
- if (requestOptions || this.context.isAuthenticated) {
57
- // ammend in the orgUrlKey
58
- if (!site.orgUrlKey) {
59
- site.orgUrlKey = this.context.portal.urlKey;
60
- }
61
- return HubSites_1.createSite(site, requestOptions || this.context.hubRequestOptions);
62
- }
63
- else {
64
- throw new HubError_1.default("Create Site", "Creating Hub Sites requires authentication.");
65
- }
66
- }
67
- /**
68
- * Update a Site
69
- * @param site
70
- * @param requestOptions
71
- * @returns
72
- */
73
- async update(site, requestOptions) {
74
- if (requestOptions || this.context.isAuthenticated) {
75
- return HubSites_1.updateSite(site, requestOptions || this.context.hubRequestOptions);
76
- }
77
- else {
78
- throw new HubError_1.default("Update Site", "Updating a Hub Site requires authentication.");
79
- }
80
- }
81
- /**
82
- * Destroy a Site
83
- * This permanently removes the backing Item,
84
- * and clears the domain entries for it.
85
- * @param id
86
- * @param requestOptions
87
- * @returns
88
- */
89
- async delete(id, requestOptions) {
90
- if (requestOptions || this.context.isAuthenticated) {
91
- return HubSites_1.destroySite(id, requestOptions || this.context.hubRequestOptions);
92
- }
93
- else {
94
- throw new HubError_1.default("Destroy Site", "Destroying Hub Sites requires authentication.");
95
- }
96
- }
97
- /**
98
- * Fetch a Site via Id, slug or domain
99
- *
100
- * This function does not require a user to be
101
- * authenticated, but it does require an `IRequestOptions`
102
- * which contains the portal instance to communicate with
103
- * @param identifier
104
- * @param requestOptions
105
- * @returns
106
- */
107
- async fetch(identifier, requestOptions) {
108
- try {
109
- if (requestOptions || this.context.hubRequestOptions) {
110
- return HubSites_1._fetchSite(identifier, requestOptions || this.context.hubRequestOptions);
111
- }
112
- else {
113
- throw new HubError_1.default("Fetch Site", "Can not retrieve context.hubRequestOptions from Context Manager. HubSiteManager is configured incorrectly.");
114
- }
115
- }
116
- catch (ex) {
117
- throw new HubError_1.default("Fetch Site", "Can not retrieve context.hubRequestOptions from Context Manager. HubSiteManager is configured incorrectly.", ex);
118
- }
119
- }
120
- /**
121
- * Search for Sites
122
- *
123
- * @param filter
124
- * @param opts
125
- */
126
- async search(query, options) {
127
- // if we were not passed auth, and we have a session, use it
128
- if (!options.authentication && this.context.session) {
129
- options.authentication = this.context.session;
130
- }
131
- return HubSites_1.searchSites(query, options);
132
- }
133
- /**
134
- * Set the thumbnail for the Site
135
- * @param id
136
- * @param file
137
- * @param filename
138
- * @param requestOptions
139
- * @returns
140
- */
141
- async updateThumbnail(site, file, filename, requestOptions) {
142
- const ro = requestOptions || this.context.userRequestOptions;
143
- await setItemThumbnail_1.setItemThumbnail(site.id, file, filename, ro);
144
- // get the item so we have updated props and timestamps
145
- return this.fetch(site.id, requestOptions);
146
- }
147
- /**
148
- * Convert a Hub Project Item to a IHubProject
149
- * @param item
150
- * @param requestOptions
151
- * @returns
152
- */
153
- async fromItem(item, requestOptions) {
154
- const ro = requestOptions || this.context.userRequestOptions;
155
- return HubSites_1.convertItemToSite(item, ro);
156
- }
157
- }
158
- exports.HubSiteManager = HubSiteManager;
159
- //# sourceMappingURL=HubSiteManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HubSiteManager.js","sourceRoot":"","sources":["../../../src/sites/HubSiteManager.ts"],"names":[],"mappings":";;;AAEA,0CAAmC;AAOnC,mDAAmD;AACnD,kEAA+D;AAC/D,yCAOoB;AAGpB,gEAAoF;AAKpF,MAAa,cAAc;IAkBzB;;;;OAIG;IACH,YAAoB,gBAAuD;QACzE,IAAI,gBAAgB,YAAY,2CAAoB,EAAE;YACpD,IAAI,CAAC,eAAe,GAAG,gBAAgB,CAAC;SACzC;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC;SAClC;IACH,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,CACT,gBAAuD;QAEvD,OAAO,IAAI,cAAc,CAAC,gBAAgB,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,IAAY,OAAO;QACjB,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;SACrC;aAAM;YACL,OAAO,IAAI,CAAC,QAAQ,CAAC;SACtB;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,MAAM,CACV,IAAuB,EACvB,cAAmC;QAEnC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,0BAA0B;YAC1B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBACnB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;aAC7C;YACD,OAAO,qBAAU,CAAC,IAAI,EAAE,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;SAC3E;aAAM;YACL,MAAM,IAAI,kBAAQ,CAChB,aAAa,EACb,6CAA6C,CAC9C,CAAC;SACH;IACH,CAAC;IACD;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,IAAc,EACd,cAAmC;QAEnC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,OAAO,qBAAU,CAAC,IAAI,EAAE,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;SAC3E;aAAM;YACL,MAAM,IAAI,kBAAQ,CAChB,aAAa,EACb,8CAA8C,CAC/C,CAAC;SACH;IACH,CAAC;IACD;;;;;;;OAOG;IACH,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,cAAmC;QAC1D,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,OAAO,sBAAW,CAAC,EAAE,EAAE,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;SAC1E;aAAM;YACL,MAAM,IAAI,kBAAQ,CAChB,cAAc,EACd,+CAA+C,CAChD,CAAC;SACH;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,KAAK,CACT,UAAkB,EAClB,cAAmC;QAEnC,IAAI;YACF,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE;gBACpD,OAAO,qBAAU,CACf,UAAU,EACV,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,CACjD,CAAC;aACH;iBAAM;gBACL,MAAM,IAAI,kBAAQ,CAChB,YAAY,EACZ,4GAA4G,CAC7G,CAAC;aACH;SACF;QAAC,OAAO,EAAE,EAAE;YACX,MAAM,IAAI,kBAAQ,CAChB,YAAY,EACZ,4GAA4G,EAC5G,EAAsB,CACvB,CAAC;SACH;IACH,CAAC;IACD;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,KAAsB,EACtB,OAA0B;QAE1B,4DAA4D;QAC5D,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACnD,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;SAC/C;QACD,OAAO,sBAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;IACD;;;;;;;OAOG;IACH,KAAK,CAAC,eAAe,CACnB,IAAc,EACd,IAAS,EACT,QAAgB,EAChB,cAAoC;QAEpC,MAAM,EAAE,GAAG,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAC7D,MAAM,mCAAmB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QACvD,uDAAuD;QACvD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,CACZ,IAAW,EACX,cAAgC;QAEhC,MAAM,EAAE,GAAG,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAC7D,OAAO,4BAAiB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACrC,CAAC;CACF;AA5MD,wCA4MC"}
@@ -1,152 +0,0 @@
1
- import { IUserRequestOptions } from "@esri/arcgis-rest-auth";
2
- import { IRequestOptions } from "@esri/arcgis-rest-request";
3
- import { ArcGISContextManager } from "../ArcGISContextManager";
4
- import { IArcGISContext, IHubSearchOptions, IHubSearchResponse, IQuery } from "..";
5
- import { IHubEntityManager, IHubProject } from "../core/types";
6
- import { IHubItemEntityManager } from "../core/types/IHubItemEntityManager";
7
- import { IGroup, IItem } from "@esri/arcgis-rest-types";
8
- import { ISharingResponse } from "@esri/arcgis-rest-portal";
9
- /**
10
- * Centralized functions used to manage IHubProject instances
11
- *
12
- * This class is a convenience wrapper over util functions which
13
- * are also directly accessible for use in scenarios where
14
- * classes are inconvenient.
15
- */
16
- export declare class HubProjectManager implements IHubEntityManager<IHubProject>, IHubItemEntityManager<IHubProject> {
17
- /**
18
- * Hold a context manager, which should be a single instance for
19
- * an application. When authentication changes, the .context
20
- * property on the context manager will be replaced. As long as
21
- * all the fns in this class leverage properties on .context
22
- * everything be kept in sync.
23
- */
24
- private _contextManager;
25
- /**
26
- * Hold context directly. Allows the class to be used in places
27
- * where an `ArcGISContextManager` is not directly available, but
28
- * an `IArcGISContext` is
29
- */
30
- private _context;
31
- /**
32
- * Private so we can employ a factory function should we need
33
- * async work during creation
34
- * @param contextOrManager
35
- */
36
- private constructor();
37
- /**
38
- * Factory function to construct a new HubProjectManager instance.
39
- *
40
- * Note: Used so that we could do async actions in the ctor.
41
- * @param contextOrManager
42
- * @returns
43
- */
44
- static init(contextOrManager: ArcGISContextManager | IArcGISContext): HubProjectManager;
45
- /**
46
- * Getter to abstract how we store the context
47
- */
48
- private get context();
49
- /**
50
- * Create and store new project.
51
- *
52
- * Projects are stored as Items in the Sharing API
53
- * @param project
54
- * @param requestOptions
55
- * @returns
56
- */
57
- create(project: Partial<IHubProject>, requestOptions?: IUserRequestOptions): Promise<IHubProject>;
58
- /**
59
- * Update a project
60
- * @param project
61
- * @param requestOptions
62
- * @returns
63
- */
64
- update(project: IHubProject, requestOptions?: IUserRequestOptions): Promise<IHubProject>;
65
- /**
66
- * Destroy a project.
67
- * This permanently removes the backing Item
68
- * @param id
69
- * @param requestOptions
70
- * @returns
71
- */
72
- delete(id: string, requestOptions?: IUserRequestOptions): Promise<void>;
73
- /**
74
- * Fetch a Project via id or it's slug
75
- *
76
- * This function does not require a user to be
77
- * authenticated, but it does require an `IRequestOptions`
78
- * which contains the portal instance to communicate with
79
- * @param identifier
80
- * @param requestOptions
81
- * @returns
82
- */
83
- fetch(identifier: string, requestOptions?: IRequestOptions): Promise<IHubProject>;
84
- /**
85
- * Search for Projects
86
- *
87
- * @param query
88
- * @param options
89
- */
90
- search(query: string | IQuery, options: IHubSearchOptions): Promise<IHubSearchResponse<IHubProject>>;
91
- /**
92
- * Set the thumbnail for the Project
93
- * @param id
94
- * @param file
95
- * @param filename
96
- * @param requestOptions
97
- * @returns
98
- */
99
- updateThumbnail(project: IHubProject, file: any, filename: string, requestOptions?: IUserRequestOptions): Promise<IHubProject>;
100
- /**
101
- * Convert a Hub Project Item to a IHubProject
102
- * @param item
103
- * @param requestOptions
104
- * @returns
105
- */
106
- fromItem(item: IItem, requestOptions?: IRequestOptions): Promise<IHubProject>;
107
- /**
108
- * Sets the access level of a Hub Project
109
- *
110
- * @param {IHubProject} project
111
- * @param {("public" | "org" | "private")} accessLevel
112
- * @param {IUserRequestOptions} [requestOptions]
113
- * @returns
114
- */
115
- setAccess(project: IHubProject, accessLevel: "public" | "org" | "private", requestOptions?: IUserRequestOptions): Promise<ISharingResponse>;
116
- /**
117
- * Shares a Hub Project to a group
118
- *
119
- * @param {IHubProject} project
120
- * @param {IGroup} group
121
- * @param {IUserRequestOptions} [requestOptions]
122
- * @returns
123
- */
124
- shareToGroup(project: IHubProject, group: IGroup, requestOptions?: IUserRequestOptions): Promise<ISharingResponse>;
125
- /**
126
- * Shares a Hub Project to N Groups.
127
- *
128
- * @param {IHubProject} project
129
- * @param {IGroup[]} groups
130
- * @param {IUserRequestOptions} [requestOptions]
131
- * @returns
132
- */
133
- shareToGroups(project: IHubProject, groups: IGroup[], requestOptions?: IUserRequestOptions): Promise<ISharingResponse[]>;
134
- /**
135
- * Unshares a Hub Project from a group
136
- *
137
- * @param {IHubProject} project
138
- * @param {IGroup} group
139
- * @param {IUserRequestOptions} [requestOptions]
140
- * @returns
141
- */
142
- unshareFromGroup(project: IHubProject, group: IGroup, requestOptions?: IUserRequestOptions): Promise<ISharingResponse>;
143
- /**
144
- * Unshares a Hub Project from N groups.
145
- *
146
- * @param {IHubProject} project
147
- * @param {IGroup[]} groups
148
- * @param {IUserRequestOptions} [requestOptions]
149
- * @returns
150
- */
151
- unshareFromGroups(project: IHubProject, groups: IGroup[], requestOptions?: IUserRequestOptions): Promise<ISharingResponse[]>;
152
- }