@esri/hub-common 11.0.0-beta.1 → 11.0.0-beta.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/esm/core/_internal/PropertyMapper.js +1 -0
- package/dist/esm/core/_internal/PropertyMapper.js.map +1 -1
- package/dist/esm/core/_internal/sharedWith.js +14 -0
- package/dist/esm/core/_internal/sharedWith.js.map +1 -0
- package/dist/esm/core/behaviors/IWithSharingBehavior.js +1 -0
- package/dist/esm/core/behaviors/IWithSharingBehavior.js.map +1 -0
- package/dist/esm/core/behaviors/index.js +1 -0
- package/dist/esm/core/behaviors/index.js.map +1 -1
- package/dist/esm/projects/HubProject.js +48 -0
- package/dist/esm/projects/HubProject.js.map +1 -1
- package/dist/node/core/_internal/PropertyMapper.js +1 -0
- package/dist/node/core/_internal/PropertyMapper.js.map +1 -1
- package/dist/node/core/_internal/sharedWith.js +18 -0
- package/dist/node/core/_internal/sharedWith.js.map +1 -0
- package/dist/node/core/behaviors/IWithSharingBehavior.js +3 -0
- package/dist/node/core/behaviors/IWithSharingBehavior.js.map +1 -0
- package/dist/node/core/behaviors/index.js +1 -0
- package/dist/node/core/behaviors/index.js.map +1 -1
- package/dist/node/projects/HubProject.js +48 -0
- package/dist/node/projects/HubProject.js.map +1 -1
- package/dist/types/core/_internal/PropertyMapper.d.ts +1 -0
- package/dist/types/core/_internal/sharedWith.d.ts +10 -0
- package/dist/types/core/behaviors/IWithSharingBehavior.d.ts +27 -0
- package/dist/types/core/behaviors/index.d.ts +1 -0
- package/dist/types/core/types/types.d.ts +5 -1
- package/dist/types/projects/HubProject.d.ts +23 -2
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PropertyMapper.js","sourceRoot":"","sources":["../../../../src/core/_internal/PropertyMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAU,MAAM,OAAO,CAAC;AAE9D
|
|
1
|
+
{"version":3,"file":"PropertyMapper.js","sourceRoot":"","sources":["../../../../src/core/_internal/PropertyMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAU,MAAM,OAAO,CAAC;AAE9D;;;;;GAKG;AACH,MAAM,OAAO,cAAc;IAEzB;;;;OAIG;IACH,YAAY,QAAwB;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IACD;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,KAAa,EAAE,MAAS;QACpC,OAAO,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;;;;OASG;IACH,aAAa,CAAC,MAAS,EAAE,KAAa;QACpC,OAAO,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;CACF;AAeD;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAAS,EACT,KAAa,EACb,QAAwB;IAExB,OAAO,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;AACpE,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAa,EACb,MAAS,EACT,QAAwB;IAExB,OAAO,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;AACpE,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,QAAQ,CACf,MAAS,EACT,SAAiB,EACjB,MAAS,EACT,SAAiB,EACjB,QAAwB;IAExB,mBAAmB;IACnB,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,8BAA8B;IAC9B,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAmB,EAAE,EAAE;QACvC,0EAA0E;QAC1E,iDAAiD;QACjD,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC7C,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC7C,gCAAgC;QAChC,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC9C,gCAAgC;QAChC,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS,EAAE;YACjD,SAAS;YACT,OAAO,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;SACvC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { getItemGroups } from "@esri/arcgis-rest-portal";
|
|
2
|
+
/**
|
|
3
|
+
* @private
|
|
4
|
+
* Return the list of groups the current user can see, that the item is shared to
|
|
5
|
+
* @param itemId
|
|
6
|
+
* @param requestOptions
|
|
7
|
+
* @returns
|
|
8
|
+
*/
|
|
9
|
+
export async function sharedWith(itemId, requestOptions) {
|
|
10
|
+
const response = await getItemGroups(itemId, requestOptions);
|
|
11
|
+
// simplify the response to a single array
|
|
12
|
+
return [...response.admin, ...response.member, ...response.other];
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=sharedWith.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sharedWith.js","sourceRoot":"","sources":["../../../../src/core/_internal/sharedWith.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAU,MAAM,0BAA0B,CAAC;AAGjE;;;;;;GAMG;AAEH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,MAAc,EACd,cAA+B;IAE/B,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC7D,0CAA0C;IAC1C,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AACpE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=IWithSharingBehavior.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IWithSharingBehavior.js","sourceRoot":"","sources":["../../../../src/core/behaviors/IWithSharingBehavior.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/behaviors/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/behaviors/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC"}
|
|
@@ -3,6 +3,8 @@ import { PermissionManager, } from "../core";
|
|
|
3
3
|
import { cloneObject } from "../util";
|
|
4
4
|
import { createProject, deleteProject, fetchProject, updateProject, } from "./HubProjects";
|
|
5
5
|
import { Catalog } from "../search/Catalog";
|
|
6
|
+
import { setItemAccess, shareItemWithGroup, unshareItemWithGroup, } from "@esri/arcgis-rest-portal";
|
|
7
|
+
import { sharedWith } from "../core/_internal/sharedWith";
|
|
6
8
|
/**
|
|
7
9
|
* Hub Project Class
|
|
8
10
|
*/
|
|
@@ -317,5 +319,51 @@ export class HubProject {
|
|
|
317
319
|
// Delegate to module fn
|
|
318
320
|
await deleteProject(this.entity.id, this.context.userRequestOptions);
|
|
319
321
|
}
|
|
322
|
+
//#region IWithSharingBehavior
|
|
323
|
+
/**
|
|
324
|
+
* Share the Project with the specified group id
|
|
325
|
+
* @param groupId
|
|
326
|
+
*/
|
|
327
|
+
async shareWithGroup(groupId) {
|
|
328
|
+
await shareItemWithGroup({
|
|
329
|
+
id: this.entity.id,
|
|
330
|
+
groupId,
|
|
331
|
+
owner: this.entity.owner,
|
|
332
|
+
authentication: this.context.session,
|
|
333
|
+
});
|
|
334
|
+
}
|
|
335
|
+
/**
|
|
336
|
+
* Unshare the Project with the specified group id
|
|
337
|
+
* @param groupId
|
|
338
|
+
*/
|
|
339
|
+
async unshareWithGroup(groupId) {
|
|
340
|
+
await unshareItemWithGroup({
|
|
341
|
+
id: this.entity.id,
|
|
342
|
+
groupId,
|
|
343
|
+
owner: this.entity.owner,
|
|
344
|
+
authentication: this.context.session,
|
|
345
|
+
});
|
|
346
|
+
}
|
|
347
|
+
/**
|
|
348
|
+
* Set the access level of the backing item
|
|
349
|
+
* @param access
|
|
350
|
+
*/
|
|
351
|
+
async setAccess(access) {
|
|
352
|
+
await setItemAccess({
|
|
353
|
+
id: this.entity.id,
|
|
354
|
+
access,
|
|
355
|
+
authentication: this.context.session,
|
|
356
|
+
});
|
|
357
|
+
// if this succeeded, update the entity
|
|
358
|
+
this.entity.access = access;
|
|
359
|
+
}
|
|
360
|
+
/**
|
|
361
|
+
* Return a list of groups the Project is shared to.
|
|
362
|
+
* @returns
|
|
363
|
+
*/
|
|
364
|
+
async sharedWith() {
|
|
365
|
+
// delegate to a util that merges the three arrays returned from the api, into a single array
|
|
366
|
+
return sharedWith(this.entity.id, this.context.requestOptions);
|
|
367
|
+
}
|
|
320
368
|
}
|
|
321
369
|
//# sourceMappingURL=HubProject.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubProject.js","sourceRoot":"","sources":["../../../src/projects/HubProject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,
|
|
1
|
+
{"version":3,"file":"HubProject.js","sourceRoot":"","sources":["../../../src/projects/HubProject.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.mapModelToObject = exports.mapObjectToModel = exports.PropertyMapper = void 0;
|
|
4
4
|
const __1 = require("../..");
|
|
5
5
|
/**
|
|
6
|
+
* @private
|
|
6
7
|
* Manage forward and backward property mappings to
|
|
7
8
|
* streamline conversion between the Hub entities, and
|
|
8
9
|
* the backing IModel
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PropertyMapper.js","sourceRoot":"","sources":["../../../../src/core/_internal/PropertyMapper.ts"],"names":[],"mappings":";;;AAAA,6BAA8D;AAE9D
|
|
1
|
+
{"version":3,"file":"PropertyMapper.js","sourceRoot":"","sources":["../../../../src/core/_internal/PropertyMapper.ts"],"names":[],"mappings":";;;AAAA,6BAA8D;AAE9D;;;;;GAKG;AACH,MAAa,cAAc;IAEzB;;;;OAIG;IACH,YAAY,QAAwB;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IACD;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,KAAa,EAAE,MAAS;QACpC,OAAO,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;;;;OASG;IACH,aAAa,CAAC,MAAS,EAAE,KAAa;QACpC,OAAO,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;CACF;AAvCD,wCAuCC;AAeD;;;;;;;GAOG;AACH,SAAgB,gBAAgB,CAC9B,MAAS,EACT,KAAa,EACb,QAAwB;IAExB,OAAO,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;AACpE,CAAC;AAND,4CAMC;AAED;;;;;;;GAOG;AACH,SAAgB,gBAAgB,CAC9B,KAAa,EACb,MAAS,EACT,QAAwB;IAExB,OAAO,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;AACpE,CAAC;AAND,4CAMC;AAED;;;;;;;;GAQG;AACH,SAAS,QAAQ,CACf,MAAS,EACT,SAAiB,EACjB,MAAS,EACT,SAAiB,EACjB,QAAwB;IAExB,mBAAmB;IACnB,MAAM,KAAK,GAAG,eAAW,CAAC,MAAM,CAAC,CAAC;IAClC,8BAA8B;IAC9B,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAmB,EAAE,EAAE;QACvC,0EAA0E;QAC1E,iDAAiD;QACjD,MAAM,UAAU,GAAG,WAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC7C,MAAM,UAAU,GAAG,WAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC7C,gCAAgC;QAChC,MAAM,SAAS,GAAG,WAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC9C,gCAAgC;QAChC,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS,EAAE;YACjD,SAAS;YACT,WAAO,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;SACvC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.sharedWith = void 0;
|
|
4
|
+
const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
5
|
+
/**
|
|
6
|
+
* @private
|
|
7
|
+
* Return the list of groups the current user can see, that the item is shared to
|
|
8
|
+
* @param itemId
|
|
9
|
+
* @param requestOptions
|
|
10
|
+
* @returns
|
|
11
|
+
*/
|
|
12
|
+
async function sharedWith(itemId, requestOptions) {
|
|
13
|
+
const response = await arcgis_rest_portal_1.getItemGroups(itemId, requestOptions);
|
|
14
|
+
// simplify the response to a single array
|
|
15
|
+
return [...response.admin, ...response.member, ...response.other];
|
|
16
|
+
}
|
|
17
|
+
exports.sharedWith = sharedWith;
|
|
18
|
+
//# sourceMappingURL=sharedWith.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sharedWith.js","sourceRoot":"","sources":["../../../../src/core/_internal/sharedWith.ts"],"names":[],"mappings":";;;AAAA,iEAAiE;AAGjE;;;;;;GAMG;AAEI,KAAK,UAAU,UAAU,CAC9B,MAAc,EACd,cAA+B;IAE/B,MAAM,QAAQ,GAAG,MAAM,kCAAa,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC7D,0CAA0C;IAC1C,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AACpE,CAAC;AAPD,gCAOC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IWithSharingBehavior.js","sourceRoot":"","sources":["../../../../src/core/behaviors/IWithSharingBehavior.ts"],"names":[],"mappings":""}
|
|
@@ -4,4 +4,5 @@ const tslib_1 = require("tslib");
|
|
|
4
4
|
tslib_1.__exportStar(require("./IWithPermissionBehavior"), exports);
|
|
5
5
|
tslib_1.__exportStar(require("./IWithCatalogBehavior"), exports);
|
|
6
6
|
tslib_1.__exportStar(require("./IWithStoreBehavior"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./IWithSharingBehavior"), exports);
|
|
7
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/behaviors/index.ts"],"names":[],"mappings":";;;AAAA,oEAA0C;AAC1C,iEAAuC;AACvC,+DAAqC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/behaviors/index.ts"],"names":[],"mappings":";;;AAAA,oEAA0C;AAC1C,iEAAuC;AACvC,+DAAqC;AACrC,iEAAuC"}
|
|
@@ -6,6 +6,8 @@ const core_1 = require("../core");
|
|
|
6
6
|
const util_1 = require("../util");
|
|
7
7
|
const HubProjects_1 = require("./HubProjects");
|
|
8
8
|
const Catalog_1 = require("../search/Catalog");
|
|
9
|
+
const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
10
|
+
const sharedWith_1 = require("../core/_internal/sharedWith");
|
|
9
11
|
/**
|
|
10
12
|
* Hub Project Class
|
|
11
13
|
*/
|
|
@@ -320,6 +322,52 @@ class HubProject {
|
|
|
320
322
|
// Delegate to module fn
|
|
321
323
|
await HubProjects_1.deleteProject(this.entity.id, this.context.userRequestOptions);
|
|
322
324
|
}
|
|
325
|
+
//#region IWithSharingBehavior
|
|
326
|
+
/**
|
|
327
|
+
* Share the Project with the specified group id
|
|
328
|
+
* @param groupId
|
|
329
|
+
*/
|
|
330
|
+
async shareWithGroup(groupId) {
|
|
331
|
+
await arcgis_rest_portal_1.shareItemWithGroup({
|
|
332
|
+
id: this.entity.id,
|
|
333
|
+
groupId,
|
|
334
|
+
owner: this.entity.owner,
|
|
335
|
+
authentication: this.context.session,
|
|
336
|
+
});
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* Unshare the Project with the specified group id
|
|
340
|
+
* @param groupId
|
|
341
|
+
*/
|
|
342
|
+
async unshareWithGroup(groupId) {
|
|
343
|
+
await arcgis_rest_portal_1.unshareItemWithGroup({
|
|
344
|
+
id: this.entity.id,
|
|
345
|
+
groupId,
|
|
346
|
+
owner: this.entity.owner,
|
|
347
|
+
authentication: this.context.session,
|
|
348
|
+
});
|
|
349
|
+
}
|
|
350
|
+
/**
|
|
351
|
+
* Set the access level of the backing item
|
|
352
|
+
* @param access
|
|
353
|
+
*/
|
|
354
|
+
async setAccess(access) {
|
|
355
|
+
await arcgis_rest_portal_1.setItemAccess({
|
|
356
|
+
id: this.entity.id,
|
|
357
|
+
access,
|
|
358
|
+
authentication: this.context.session,
|
|
359
|
+
});
|
|
360
|
+
// if this succeeded, update the entity
|
|
361
|
+
this.entity.access = access;
|
|
362
|
+
}
|
|
363
|
+
/**
|
|
364
|
+
* Return a list of groups the Project is shared to.
|
|
365
|
+
* @returns
|
|
366
|
+
*/
|
|
367
|
+
async sharedWith() {
|
|
368
|
+
// delegate to a util that merges the three arrays returned from the api, into a single array
|
|
369
|
+
return sharedWith_1.sharedWith(this.entity.id, this.context.requestOptions);
|
|
370
|
+
}
|
|
323
371
|
}
|
|
324
372
|
exports.HubProject = HubProject;
|
|
325
373
|
//# sourceMappingURL=HubProject.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubProject.js","sourceRoot":"","sources":["../../../src/projects/HubProject.ts"],"names":[],"mappings":";;;AAAA,yCAA6C;AAE7C,
|
|
1
|
+
{"version":3,"file":"HubProject.js","sourceRoot":"","sources":["../../../src/projects/HubProject.ts"],"names":[],"mappings":";;;AAAA,yCAA6C;AAE7C,kCAQiB;AAEjB,kCAAsC;AACtC,+CAKuB;AAEvB,+CAA4C;AAG5C,iEAIkC;AAClC,6DAA0D;AAE1D;;GAEG;AACH,MAAa,UAAU;IAYrB;;;;OAIG;IACH,YAAoB,OAAoB,EAAE,OAAuB;QARzD,gBAAW,GAAY,KAAK,CAAC;QASnC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,iBAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1E,IAAI,CAAC,kBAAkB,GAAG,wBAAiB,CAAC,QAAQ,CAClD,OAAO,CAAC,oBAAoB,EAC5B,IAAI,CAAC,OAAO,CACb,CAAC;IACJ,CAAC;IAED,+CAA+C;IAC/C,0DAA0D;IAC1D,mDAAmD;IAEnD,0BAA0B;IAC1B,iDAAiD;IACjD,6CAA6C;IAC7C,IAAI;IACJ,0BAA0B;IAC1B,4DAA4D;IAC5D,oDAAoD;IACpD,IAAI;IAEJ,0BAA0B;IAC1B,6CAA6C;IAC7C,iCAAiC;IACjC,IAAI;IACJ,0BAA0B;IAC1B,kDAAkD;IAClD,kCAAkC;IAClC,IAAI;IACJ,0BAA0B;IAC1B,wCAAwC;IACxC,+BAA+B;IAC/B,IAAI;IACJ,0BAA0B;IAC1B,6CAA6C;IAC7C,gCAAgC;IAChC,IAAI;IAEJ,0BAA0B;IAC1B,2CAA2C;IAC3C,qCAAqC;IACrC,IAAI;IACJ,0BAA0B;IAC1B,gDAAgD;IAChD,sCAAsC;IACtC,IAAI;IAEJ,0BAA0B;IAC1B,wBAAwB;IACxB,8BAA8B;IAC9B,IAAI;IAEJ,0BAA0B;IAC1B,0CAA0C;IAC1C,oCAAoC;IACpC,IAAI;IACJ,0BAA0B;IAC1B,+CAA+C;IAC/C,qCAAqC;IACrC,IAAI;IACJ,0BAA0B;IAC1B,8CAA8C;IAC9C,iCAAiC;IACjC,IAAI;IACJ,0BAA0B;IAC1B,mDAAmD;IACnD,kCAAkC;IAClC,IAAI;IACJ,0BAA0B;IAC1B,sCAAsC;IACtC,gCAAgC;IAChC,IAAI;IACJ,0BAA0B;IAC1B,2CAA2C;IAC3C,iCAAiC;IACjC,IAAI;IACJ,0BAA0B;IAC1B,yBAAyB;IACzB,6BAA6B;IAC7B,IAAI;IACJ,0BAA0B;IAC1B,8BAA8B;IAC9B,8BAA8B;IAC9B,IAAI;IACJ,0BAA0B;IAC1B,6CAA6C;IAC7C,qCAAqC;IACrC,IAAI;IACJ,0BAA0B;IAC1B,kDAAkD;IAClD,sCAAsC;IACtC,IAAI;IACJ,0BAA0B;IAC1B,kCAAkC;IAClC,4BAA4B;IAC5B,IAAI;IACJ,0BAA0B;IAC1B,uCAAuC;IACvC,6BAA6B;IAC7B,IAAI;IACJ,0BAA0B;IAC1B,qBAAqB;IACrB,2BAA2B;IAC3B,IAAI;IAEJ,0BAA0B;IAC1B,uBAAuB;IACvB,6BAA6B;IAC7B,IAAI;IACJ,0BAA0B;IAC1B,4BAA4B;IAC5B,8BAA8B;IAC9B,IAAI;IACJ,0BAA0B;IAC1B,sCAAsC;IACtC,gCAAgC;IAChC,IAAI;IACJ,0BAA0B;IAC1B,2CAA2C;IAC3C,iCAAiC;IACjC,IAAI;IACJ,0BAA0B;IAC1B,4BAA4B;IAC5B,oCAAoC;IACpC,IAAI;IACJ,0BAA0B;IAC1B,oCAAoC;IACpC,0CAA0C;IAC1C,IAAI;IACJ,0BAA0B;IAC1B,4BAA4B;IAC5B,oCAAoC;IACpC,IAAI;IACJ,0BAA0B;IAC1B,oCAAoC;IACpC,0CAA0C;IAC1C,IAAI;IACJ,0BAA0B;IAC1B,uBAAuB;IACvB,6BAA6B;IAC7B,IAAI;IACJ,0BAA0B;IAC1B,qCAAqC;IACrC,+BAA+B;IAC/B,IAAI;IACJ,0BAA0B;IAC1B,0CAA0C;IAC1C,gCAAgC;IAChC,IAAI;IACJ,0BAA0B;IAC1B,uBAAuB;IACvB,6BAA6B;IAC7B,IAAI;IACJ,0BAA0B;IAC1B,4BAA4B;IAC5B,8BAA8B;IAC9B,IAAI;IACJ,0BAA0B;IAC1B,4BAA4B;IAC5B,kCAAkC;IAClC,IAAI;IACJ,0BAA0B;IAC1B,yCAAyC;IACzC,+BAA+B;IAC/B,IAAI;IACJ,0BAA0B;IAC1B,8CAA8C;IAC9C,gCAAgC;IAChC,IAAI;IACJ,0BAA0B;IAC1B,yCAAyC;IACzC,0CAA0C;IAC1C,IAAI;IAEJ,8CAA8C;IAC9C,2CAA2C;IAC3C,mCAAmC;IACnC,2DAA2D;IAC3D,IAAI;IAEJ;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,aAAa;IAEb;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CACb,IAA0B,EAC1B,OAAuB;QAEvB,6CAA6C;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/C,OAAO,IAAI,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CACjB,cAAoC,EACpC,OAAuB,EACvB,OAAgB,KAAK;QAErB,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QACzD,mCAAmC;QACnC,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACpD,IAAI,IAAI,EAAE;YACR,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;SACvB;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,KAAK,CAChB,UAAkB,EAClB,OAAuB;QAEvB,kCAAkC;QAClC,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,0BAAY,CAAC,UAAU,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;YACvE,oDAAoD;YACpD,OAAO,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;SAC9C;QAAC,OAAO,EAAE,EAAE;YACX,IACG,EAAY,CAAC,OAAO;gBACrB,oDAAoD,EACpD;gBACA,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;aACvC;iBAAM;gBACL,MAAM,EAAE,CAAC;aACV;SACF;IACH,CAAC;IAEO,MAAM,CAAC,aAAa,CAC1B,cAAoC,EACpC,OAAuB;QAEvB,+BAA+B;QAC/B,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE;YAC7B,cAAc,CAAC,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;SAClD;QACD,uCAAuC;QACvC,MAAM,IAAI,GAAG,gCAAK,0BAAe,GAAK,cAAc,CAAiB,CAAC;QACtE,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;SACrD;QACD,OAAO,kBAAW,CAAC,IAAI,CAAC,MAAM,CAA2B,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,OAA6B;QAClC,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;SACrD;QACD,qCAAqC;QACrC,IAAI,CAAC,MAAM,mCAAQ,IAAI,CAAC,MAAM,GAAK,OAAO,CAAE,CAAC;QAE7C,4BAA4B;QAC5B,IAAI,OAAO,CAAC,iBAAiB,EAAE;YAC7B,IAAI,CAAC,QAAQ,GAAG,iBAAO,CAAC,QAAQ,CAC9B,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAC7B,IAAI,CAAC,OAAO,CACb,CAAC;SACH;QACD,IAAI,OAAO,CAAC,oBAAoB,EAAE;YAChC,IAAI,CAAC,kBAAkB,GAAG,wBAAiB,CAAC,QAAQ,CAClD,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAChC,IAAI,CAAC,OAAO,CACb,CAAC;SACH;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;SACrD;QACD,iDAAiD;QACjD,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC,oBAAoB,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC;QAEpE,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;YAClB,YAAY;YACZ,IAAI,CAAC,MAAM,GAAG,MAAM,2BAAa,CAC/B,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAChC,CAAC;SACH;aAAM;YACL,YAAY;YACZ,IAAI,CAAC,MAAM,GAAG,MAAM,2BAAa,CAC/B,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAChC,CAAC;SACH;QAED,OAAO;IACT,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM;QACV,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;SACrD;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,wBAAwB;QACxB,MAAM,2BAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACvE,CAAC;IAED,8BAA8B;IAC9B;;;OAGG;IACH,KAAK,CAAC,cAAc,CAAC,OAAe;QAClC,MAAM,uCAAkB,CAAC;YACvB,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YAClB,OAAO;YACP,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;YACxB,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;SACrC,CAAC,CAAC;IACL,CAAC;IACD;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAAC,OAAe;QACpC,MAAM,yCAAoB,CAAC;YACzB,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YAClB,OAAO;YACP,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;YACxB,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;SACrC,CAAC,CAAC;IACL,CAAC;IACD;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,MAA2B;QACzC,MAAM,kCAAa,CAAC;YAClB,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YAClB,MAAM;YACN,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;SACrC,CAAC,CAAC;QACH,uCAAuC;QACvC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAU;QACd,6FAA6F;QAC7F,OAAO,uBAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACjE,CAAC;CAGF;AApaD,gCAoaC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IGroup } from "@esri/arcgis-rest-portal";
|
|
2
|
+
import { IRequestOptions } from "@esri/arcgis-rest-request";
|
|
3
|
+
/**
|
|
4
|
+
* @private
|
|
5
|
+
* Return the list of groups the current user can see, that the item is shared to
|
|
6
|
+
* @param itemId
|
|
7
|
+
* @param requestOptions
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
export declare function sharedWith(itemId: string, requestOptions: IRequestOptions): Promise<IGroup[]>;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { IGroup } from "@esri/arcgis-rest-portal";
|
|
2
|
+
import { AccessLevel } from "../types";
|
|
3
|
+
/**
|
|
4
|
+
* Sharing behavior for Item-Backed Entities
|
|
5
|
+
*/
|
|
6
|
+
export interface IWithSharingBehavior {
|
|
7
|
+
/**
|
|
8
|
+
* Share the item with the specified group
|
|
9
|
+
* @param groupId
|
|
10
|
+
*/
|
|
11
|
+
shareWithGroup(groupId: string): Promise<void>;
|
|
12
|
+
/**
|
|
13
|
+
* Unshare the item with the specified group
|
|
14
|
+
* @param groupId
|
|
15
|
+
*/
|
|
16
|
+
unshareWithGroup(groupId: string): Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Set the access level for the item
|
|
19
|
+
* @param access
|
|
20
|
+
*/
|
|
21
|
+
setAccess(access: AccessLevel): Promise<void>;
|
|
22
|
+
/**
|
|
23
|
+
* Get the list of groups that the item is shared to.
|
|
24
|
+
* Limited to Groups that the user has access to
|
|
25
|
+
*/
|
|
26
|
+
sharedWith(): Promise<IGroup[]>;
|
|
27
|
+
}
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Access levels that can be set on an item
|
|
3
|
+
*/
|
|
4
|
+
export declare type SettableAccessLevel = "public" | "org" | "private";
|
|
1
5
|
/**
|
|
2
6
|
* Access level for Platform Entities
|
|
3
7
|
*/
|
|
4
|
-
export declare type AccessLevel =
|
|
8
|
+
export declare type AccessLevel = SettableAccessLevel | "shared";
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { IHubProject, IWithPermissionBehavior, IWithCatalogBehavior, PermissionManager, IWithStoreBehavior } from "../core";
|
|
1
|
+
import { IHubProject, IWithPermissionBehavior, IWithCatalogBehavior, PermissionManager, IWithStoreBehavior, IWithSharingBehavior, SettableAccessLevel } from "../core";
|
|
2
2
|
import { Catalog } from "../search/Catalog";
|
|
3
3
|
import { IArcGISContext } from "../ArcGISContext";
|
|
4
|
+
import { IGroup } from "@esri/arcgis-rest-types";
|
|
4
5
|
/**
|
|
5
6
|
* Hub Project Class
|
|
6
7
|
*/
|
|
7
|
-
export declare class HubProject implements IWithStoreBehavior<IHubProject>, IWithPermissionBehavior, IWithCatalogBehavior {
|
|
8
|
+
export declare class HubProject implements IWithStoreBehavior<IHubProject>, IWithPermissionBehavior, IWithCatalogBehavior, IWithSharingBehavior {
|
|
8
9
|
private context;
|
|
9
10
|
private entity;
|
|
10
11
|
private isDestroyed;
|
|
@@ -68,4 +69,24 @@ export declare class HubProject implements IWithStoreBehavior<IHubProject>, IWit
|
|
|
68
69
|
* @returns
|
|
69
70
|
*/
|
|
70
71
|
delete(): Promise<void>;
|
|
72
|
+
/**
|
|
73
|
+
* Share the Project with the specified group id
|
|
74
|
+
* @param groupId
|
|
75
|
+
*/
|
|
76
|
+
shareWithGroup(groupId: string): Promise<void>;
|
|
77
|
+
/**
|
|
78
|
+
* Unshare the Project with the specified group id
|
|
79
|
+
* @param groupId
|
|
80
|
+
*/
|
|
81
|
+
unshareWithGroup(groupId: string): Promise<void>;
|
|
82
|
+
/**
|
|
83
|
+
* Set the access level of the backing item
|
|
84
|
+
* @param access
|
|
85
|
+
*/
|
|
86
|
+
setAccess(access: SettableAccessLevel): Promise<void>;
|
|
87
|
+
/**
|
|
88
|
+
* Return a list of groups the Project is shared to.
|
|
89
|
+
* @returns
|
|
90
|
+
*/
|
|
91
|
+
sharedWith(): Promise<IGroup[]>;
|
|
71
92
|
}
|
package/package.json
CHANGED