@esri/hub-common 11.23.3 → 12.0.0-alpha.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/ArcGISContext.js +38 -1
- package/dist/esm/ArcGISContext.js.map +1 -1
- package/dist/esm/ArcGISContextManager.js +48 -0
- package/dist/esm/ArcGISContextManager.js.map +1 -1
- package/dist/esm/content/_internal.js +8 -18
- package/dist/esm/content/_internal.js.map +1 -1
- package/dist/esm/content/compose.js +12 -0
- package/dist/esm/content/compose.js.map +1 -1
- package/dist/esm/core/HubItemEntity.js +39 -57
- package/dist/esm/core/HubItemEntity.js.map +1 -1
- package/dist/esm/core/_internal/PropertyMapper.js +10 -2
- package/dist/esm/core/_internal/PropertyMapper.js.map +1 -1
- package/dist/esm/core/_internal/getBasePropertyMap.js +1 -0
- package/dist/esm/core/_internal/getBasePropertyMap.js.map +1 -1
- package/dist/esm/core/behaviors/IWithPermissionBehavior.js +0 -68
- package/dist/esm/core/behaviors/IWithPermissionBehavior.js.map +1 -1
- package/dist/esm/core/fetchHubEntity.js +28 -0
- package/dist/esm/core/fetchHubEntity.js.map +1 -0
- package/dist/esm/core/getTypeFromEntity.js +26 -0
- package/dist/esm/core/getTypeFromEntity.js.map +1 -0
- package/dist/esm/core/index.js +2 -1
- package/dist/esm/core/index.js.map +1 -1
- package/dist/esm/core/types/HubEntity.js +1 -0
- package/dist/esm/core/types/HubEntity.js.map +1 -0
- package/dist/esm/core/types/HubEntityType.js +1 -0
- package/dist/esm/core/types/HubEntityType.js.map +1 -0
- package/dist/esm/core/types/ISystemStatus.js +21 -0
- package/dist/esm/core/types/ISystemStatus.js.map +1 -0
- package/dist/esm/core/types/index.js +3 -2
- package/dist/esm/core/types/index.js.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/initiatives/HubInitiative.js +0 -13
- package/dist/esm/initiatives/HubInitiative.js.map +1 -1
- package/dist/esm/permissions/HubPermissionPolicies.js +71 -0
- package/dist/esm/permissions/HubPermissionPolicies.js.map +1 -0
- package/dist/esm/permissions/_internal/checkAlphaGating.js +27 -0
- package/dist/esm/permissions/_internal/checkAlphaGating.js.map +1 -0
- package/dist/esm/permissions/_internal/checkAssertion.js +190 -0
- package/dist/esm/permissions/_internal/checkAssertion.js.map +1 -0
- package/dist/esm/permissions/_internal/checkAssertions.js +20 -0
- package/dist/esm/permissions/_internal/checkAssertions.js.map +1 -0
- package/dist/esm/permissions/_internal/checkAuthentication.js +28 -0
- package/dist/esm/permissions/_internal/checkAuthentication.js.map +1 -0
- package/dist/esm/permissions/_internal/checkEdit.js +38 -0
- package/dist/esm/permissions/_internal/checkEdit.js.map +1 -0
- package/dist/esm/permissions/_internal/checkEntityPolicy.js +68 -0
- package/dist/esm/permissions/_internal/checkEntityPolicy.js.map +1 -0
- package/dist/esm/permissions/_internal/checkLicense.js +33 -0
- package/dist/esm/permissions/_internal/checkLicense.js.map +1 -0
- package/dist/esm/permissions/_internal/checkOwner.js +36 -0
- package/dist/esm/permissions/_internal/checkOwner.js.map +1 -0
- package/dist/esm/permissions/_internal/checkPrivileges.js +31 -0
- package/dist/esm/permissions/_internal/checkPrivileges.js.map +1 -0
- package/dist/esm/permissions/_internal/getPolicyResponseCode.js +47 -0
- package/dist/esm/permissions/_internal/getPolicyResponseCode.js.map +1 -0
- package/dist/esm/permissions/checkPermission.js +89 -0
- package/dist/esm/permissions/checkPermission.js.map +1 -0
- package/dist/esm/permissions/index.js +5 -0
- package/dist/esm/permissions/index.js.map +1 -0
- package/dist/esm/permissions/types/HubLicense.js +1 -0
- package/dist/esm/permissions/types/HubLicense.js.map +1 -0
- package/dist/esm/permissions/types/IAccessResponse.js +1 -0
- package/dist/esm/permissions/types/IAccessResponse.js.map +1 -0
- package/dist/esm/permissions/types/IEntityPermissionPolicy.js +1 -0
- package/dist/esm/permissions/types/IEntityPermissionPolicy.js.map +1 -0
- package/dist/esm/permissions/types/IPermissionPolicy.js +1 -0
- package/dist/esm/permissions/types/IPermissionPolicy.js.map +1 -0
- package/dist/esm/permissions/types/IPolicyCheck.js +1 -0
- package/dist/esm/permissions/types/IPolicyCheck.js.map +1 -0
- package/dist/esm/permissions/types/Permission.js +17 -0
- package/dist/esm/permissions/types/Permission.js.map +1 -0
- package/dist/esm/permissions/types/PlatformPrivilege.js +5 -0
- package/dist/esm/permissions/types/PlatformPrivilege.js.map +1 -0
- package/dist/esm/permissions/types/PolicyResponse.js +4 -0
- package/dist/esm/permissions/types/PolicyResponse.js.map +1 -0
- package/dist/esm/permissions/types/index.js +9 -0
- package/dist/esm/permissions/types/index.js.map +1 -0
- package/dist/esm/permissions/utils.js +26 -0
- package/dist/esm/permissions/utils.js.map +1 -0
- package/dist/esm/projects/HubProject.js +0 -13
- package/dist/esm/projects/HubProject.js.map +1 -1
- package/dist/esm/projects/_internal/ProjectPermissionPolicies.js +41 -0
- package/dist/esm/projects/_internal/ProjectPermissionPolicies.js.map +1 -0
- package/dist/esm/projects/defaults.js +1 -0
- package/dist/esm/projects/defaults.js.map +1 -1
- package/dist/esm/search/Catalog.js.map +1 -1
- package/dist/esm/sites/HubSite.js +0 -13
- package/dist/esm/sites/HubSite.js.map +1 -1
- package/dist/esm/sites/HubSites.js +10 -12
- package/dist/esm/sites/HubSites.js.map +1 -1
- package/dist/esm/sites/_internal/SitesPermissionPolicies.js +44 -0
- package/dist/esm/sites/_internal/SitesPermissionPolicies.js.map +1 -0
- package/dist/esm/sites/_internal/applyPermissionMigration.js +52 -0
- package/dist/esm/sites/_internal/applyPermissionMigration.js.map +1 -0
- package/dist/node/ArcGISContext.js +42 -5
- package/dist/node/ArcGISContext.js.map +1 -1
- package/dist/node/ArcGISContextManager.js +48 -0
- package/dist/node/ArcGISContextManager.js.map +1 -1
- package/dist/node/content/_internal.js +8 -18
- package/dist/node/content/_internal.js.map +1 -1
- package/dist/node/content/compose.js +12 -0
- package/dist/node/content/compose.js.map +1 -1
- package/dist/node/core/HubItemEntity.js +38 -56
- package/dist/node/core/HubItemEntity.js.map +1 -1
- package/dist/node/core/_internal/PropertyMapper.js +9 -1
- package/dist/node/core/_internal/PropertyMapper.js.map +1 -1
- package/dist/node/core/_internal/getBasePropertyMap.js +1 -0
- package/dist/node/core/_internal/getBasePropertyMap.js.map +1 -1
- package/dist/node/core/behaviors/IWithPermissionBehavior.js +0 -73
- package/dist/node/core/behaviors/IWithPermissionBehavior.js.map +1 -1
- package/dist/node/core/fetchHubEntity.js +32 -0
- package/dist/node/core/fetchHubEntity.js.map +1 -0
- package/dist/node/core/getTypeFromEntity.js +30 -0
- package/dist/node/core/getTypeFromEntity.js.map +1 -0
- package/dist/node/core/index.js +2 -1
- package/dist/node/core/index.js.map +1 -1
- package/dist/node/core/types/{IHubPermission.js → HubEntity.js} +1 -1
- package/dist/node/core/types/HubEntity.js.map +1 -0
- package/dist/node/core/types/HubEntityType.js +3 -0
- package/dist/node/core/types/HubEntityType.js.map +1 -0
- package/dist/node/core/types/ISystemStatus.js +25 -0
- package/dist/node/core/types/ISystemStatus.js.map +1 -0
- package/dist/node/core/types/index.js +3 -2
- package/dist/node/core/types/index.js.map +1 -1
- package/dist/node/index.js +1 -0
- package/dist/node/index.js.map +1 -1
- package/dist/node/initiatives/HubInitiative.js +0 -13
- package/dist/node/initiatives/HubInitiative.js.map +1 -1
- package/dist/node/permissions/HubPermissionPolicies.js +75 -0
- package/dist/node/permissions/HubPermissionPolicies.js.map +1 -0
- package/dist/node/permissions/_internal/checkAlphaGating.js +31 -0
- package/dist/node/permissions/_internal/checkAlphaGating.js.map +1 -0
- package/dist/node/permissions/_internal/checkAssertion.js +194 -0
- package/dist/node/permissions/_internal/checkAssertion.js.map +1 -0
- package/dist/node/permissions/_internal/checkAssertions.js +24 -0
- package/dist/node/permissions/_internal/checkAssertions.js.map +1 -0
- package/dist/node/permissions/_internal/checkAuthentication.js +32 -0
- package/dist/node/permissions/_internal/checkAuthentication.js.map +1 -0
- package/dist/node/permissions/_internal/checkEdit.js +42 -0
- package/dist/node/permissions/_internal/checkEdit.js.map +1 -0
- package/dist/node/permissions/_internal/checkEntityPolicy.js +72 -0
- package/dist/node/permissions/_internal/checkEntityPolicy.js.map +1 -0
- package/dist/node/permissions/_internal/checkLicense.js +37 -0
- package/dist/node/permissions/_internal/checkLicense.js.map +1 -0
- package/dist/node/permissions/_internal/checkOwner.js +40 -0
- package/dist/node/permissions/_internal/checkOwner.js.map +1 -0
- package/dist/node/permissions/_internal/checkPrivileges.js +35 -0
- package/dist/node/permissions/_internal/checkPrivileges.js.map +1 -0
- package/dist/node/permissions/_internal/getPolicyResponseCode.js +51 -0
- package/dist/node/permissions/_internal/getPolicyResponseCode.js.map +1 -0
- package/dist/node/permissions/checkPermission.js +93 -0
- package/dist/node/permissions/checkPermission.js.map +1 -0
- package/dist/node/permissions/index.js +8 -0
- package/dist/node/permissions/index.js.map +1 -0
- package/dist/node/permissions/types/HubLicense.js +3 -0
- package/dist/node/permissions/types/HubLicense.js.map +1 -0
- package/dist/node/permissions/types/IAccessResponse.js +3 -0
- package/dist/node/permissions/types/IAccessResponse.js.map +1 -0
- package/dist/node/permissions/types/IEntityPermissionPolicy.js +3 -0
- package/dist/node/permissions/types/IEntityPermissionPolicy.js.map +1 -0
- package/dist/node/permissions/types/IPermissionPolicy.js +3 -0
- package/dist/node/permissions/types/IPermissionPolicy.js.map +1 -0
- package/dist/node/permissions/types/IPolicyCheck.js +3 -0
- package/dist/node/permissions/types/IPolicyCheck.js.map +1 -0
- package/dist/node/permissions/types/Permission.js +21 -0
- package/dist/node/permissions/types/Permission.js.map +1 -0
- package/dist/node/permissions/types/PlatformPrivilege.js +7 -0
- package/dist/node/permissions/types/PlatformPrivilege.js.map +1 -0
- package/dist/node/permissions/types/PolicyResponse.js +6 -0
- package/dist/node/permissions/types/PolicyResponse.js.map +1 -0
- package/dist/node/permissions/types/index.js +12 -0
- package/dist/node/permissions/types/index.js.map +1 -0
- package/dist/node/permissions/utils.js +31 -0
- package/dist/node/permissions/utils.js.map +1 -0
- package/dist/node/projects/HubProject.js +0 -13
- package/dist/node/projects/HubProject.js.map +1 -1
- package/dist/node/projects/_internal/ProjectPermissionPolicies.js +44 -0
- package/dist/node/projects/_internal/ProjectPermissionPolicies.js.map +1 -0
- package/dist/node/projects/defaults.js +1 -0
- package/dist/node/projects/defaults.js.map +1 -1
- package/dist/node/search/Catalog.js.map +1 -1
- package/dist/node/sites/HubSite.js +0 -13
- package/dist/node/sites/HubSite.js.map +1 -1
- package/dist/node/sites/HubSites.js +10 -12
- package/dist/node/sites/HubSites.js.map +1 -1
- package/dist/node/sites/_internal/SitesPermissionPolicies.js +47 -0
- package/dist/node/sites/_internal/SitesPermissionPolicies.js.map +1 -0
- package/dist/node/sites/_internal/applyPermissionMigration.js +56 -0
- package/dist/node/sites/_internal/applyPermissionMigration.js.map +1 -0
- package/dist/types/ArcGISContext.d.ts +33 -1
- package/dist/types/ArcGISContextManager.d.ts +6 -1
- package/dist/types/content/_internal.d.ts +15 -5
- package/dist/types/core/HubItemEntity.d.ts +29 -4
- package/dist/types/core/behaviors/IWithPermissionBehavior.d.ts +23 -35
- package/dist/types/core/behaviors/IWithStoreBehavior.d.ts +10 -10
- package/dist/types/core/fetchHubEntity.d.ts +11 -0
- package/dist/types/core/getTypeFromEntity.d.ts +8 -0
- package/dist/types/core/index.d.ts +2 -1
- package/dist/types/core/traits/IWithPermissions.d.ts +3 -3
- package/dist/types/core/types/HubEntity.d.ts +5 -0
- package/dist/types/core/types/HubEntityType.d.ts +1 -0
- package/dist/types/core/types/IHubContent.d.ts +2 -1
- package/dist/types/core/types/IHubItemEntity.d.ts +19 -2
- package/dist/types/core/types/ISystemStatus.d.ts +22 -0
- package/dist/types/core/types/index.d.ts +3 -2
- package/dist/types/index.d.ts +1 -0
- package/dist/types/initiatives/HubInitiative.d.ts +1 -7
- package/dist/types/permissions/HubPermissionPolicies.d.ts +11 -0
- package/dist/types/permissions/_internal/checkAlphaGating.d.ts +10 -0
- package/dist/types/permissions/_internal/checkAssertion.d.ts +11 -0
- package/dist/types/permissions/_internal/checkAssertions.d.ts +10 -0
- package/dist/types/permissions/_internal/checkAuthentication.d.ts +10 -0
- package/dist/types/permissions/_internal/checkEdit.d.ts +10 -0
- package/dist/types/permissions/_internal/checkEntityPolicy.d.ts +9 -0
- package/dist/types/permissions/_internal/checkLicense.d.ts +10 -0
- package/dist/types/permissions/_internal/checkOwner.d.ts +10 -0
- package/dist/types/permissions/_internal/checkPrivileges.d.ts +10 -0
- package/dist/types/permissions/_internal/getPolicyResponseCode.d.ts +7 -0
- package/dist/types/permissions/checkPermission.d.ts +10 -0
- package/dist/types/permissions/index.d.ts +4 -0
- package/dist/types/permissions/types/HubLicense.d.ts +4 -0
- package/dist/types/permissions/types/IAccessResponse.d.ts +34 -0
- package/dist/types/permissions/types/IEntityPermissionPolicy.d.ts +22 -0
- package/dist/types/permissions/types/IPermissionPolicy.d.ts +57 -0
- package/dist/types/permissions/types/IPolicyCheck.d.ts +25 -0
- package/dist/types/permissions/types/Permission.d.ts +17 -0
- package/dist/types/permissions/types/PlatformPrivilege.d.ts +5 -0
- package/dist/types/permissions/types/PolicyResponse.d.ts +4 -0
- package/dist/types/permissions/types/index.d.ts +8 -0
- package/dist/types/permissions/utils.d.ts +18 -0
- package/dist/types/projects/HubProject.d.ts +1 -7
- package/dist/types/projects/_internal/ProjectPermissionPolicies.d.ts +8 -0
- package/dist/types/sites/HubSite.d.ts +1 -7
- package/dist/types/sites/HubSites.d.ts +1 -1
- package/dist/types/sites/_internal/SitesPermissionPolicies.d.ts +11 -0
- package/dist/types/sites/_internal/applyPermissionMigration.d.ts +7 -0
- package/package.json +1 -1
- package/dist/esm/core/PermissionManager.js +0 -60
- package/dist/esm/core/PermissionManager.js.map +0 -1
- package/dist/esm/core/types/IHubPermission.js +0 -1
- package/dist/esm/core/types/IHubPermission.js.map +0 -1
- package/dist/node/core/PermissionManager.js +0 -64
- package/dist/node/core/PermissionManager.js.map +0 -1
- package/dist/node/core/types/IHubPermission.js.map +0 -1
- package/dist/types/core/PermissionManager.d.ts +0 -43
- package/dist/types/core/types/IHubPermission.d.ts +0 -23
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { cloneObject, createId } from "../util";
|
|
2
|
-
import { checkPermission, getPermissions, addPermission, removePermission, } from "./behaviors/IWithPermissionBehavior";
|
|
3
|
-
/**
|
|
4
|
-
* Permission Manager class that provides permission behavior for a given entity
|
|
5
|
-
*/
|
|
6
|
-
export class PermissionManager {
|
|
7
|
-
constructor(permissions, context) {
|
|
8
|
-
this._permissions = permissions;
|
|
9
|
-
this._context = context;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Create a new PermissionManager instance from configuration and context
|
|
13
|
-
* @param permissions
|
|
14
|
-
* @param context
|
|
15
|
-
* @returns
|
|
16
|
-
*/
|
|
17
|
-
static fromJson(permissions, context) {
|
|
18
|
-
return new PermissionManager(permissions, context);
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Check if the user has a specific permission in the context of an entity
|
|
22
|
-
* @param permission
|
|
23
|
-
*/
|
|
24
|
-
check(permission) {
|
|
25
|
-
return checkPermission(permission, this._context.currentUser, this._permissions);
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Get all the permission definitions for the specific permission
|
|
29
|
-
* @param key permission to check for
|
|
30
|
-
*/
|
|
31
|
-
get(permission) {
|
|
32
|
-
return getPermissions(permission, this._permissions);
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Set a permission for the given entity
|
|
36
|
-
* @param permission
|
|
37
|
-
*/
|
|
38
|
-
add(permission) {
|
|
39
|
-
if (!permission.id) {
|
|
40
|
-
permission.id = createId("p");
|
|
41
|
-
}
|
|
42
|
-
this._permissions = addPermission(permission, this._permissions);
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Remove a permission by targetId
|
|
46
|
-
* @param permission
|
|
47
|
-
* @param targetId
|
|
48
|
-
*/
|
|
49
|
-
remove(permission, targetId) {
|
|
50
|
-
this._permissions = removePermission(permission, targetId, this._permissions);
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Return the current permissions as a JSON object
|
|
54
|
-
* @returns {IHubPermission[]}
|
|
55
|
-
*/
|
|
56
|
-
toJson() {
|
|
57
|
-
return cloneObject(this._permissions);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
//# sourceMappingURL=PermissionManager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PermissionManager.js","sourceRoot":"","sources":["../../../src/core/PermissionManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EACL,eAAe,EACf,cAAc,EACd,aAAa,EACb,gBAAgB,GACjB,MAAM,qCAAqC,CAAC;AAG7C;;GAEG;AACH,MAAM,OAAO,iBAAiB;IAI5B,YAAoB,WAA6B,EAAE,OAAuB;QACxE,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CACb,WAA6B,EAC7B,OAAuB;QAEvB,OAAO,IAAI,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAyB;QAC7B,OAAO,eAAe,CACpB,UAAU,EACV,IAAI,CAAC,QAAQ,CAAC,WAAW,EACzB,IAAI,CAAC,YAAY,CAClB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,UAAyB;QAC3B,OAAO,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACvD,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,UAA0B;QAC5B,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE;YAClB,UAAU,CAAC,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;SAC/B;QACD,IAAI,CAAC,YAAY,GAAG,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACnE,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAyB,EAAE,QAAgB;QAChD,IAAI,CAAC,YAAY,GAAG,gBAAgB,CAClC,UAAU,EACV,QAAQ,EACR,IAAI,CAAC,YAAY,CAClB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,OAAO,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACxC,CAAC;CACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=IHubPermission.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IHubPermission.js","sourceRoot":"","sources":["../../../../src/core/types/IHubPermission.ts"],"names":[],"mappings":""}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PermissionManager = void 0;
|
|
4
|
-
const util_1 = require("../util");
|
|
5
|
-
const IWithPermissionBehavior_1 = require("./behaviors/IWithPermissionBehavior");
|
|
6
|
-
/**
|
|
7
|
-
* Permission Manager class that provides permission behavior for a given entity
|
|
8
|
-
*/
|
|
9
|
-
class PermissionManager {
|
|
10
|
-
constructor(permissions, context) {
|
|
11
|
-
this._permissions = permissions;
|
|
12
|
-
this._context = context;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Create a new PermissionManager instance from configuration and context
|
|
16
|
-
* @param permissions
|
|
17
|
-
* @param context
|
|
18
|
-
* @returns
|
|
19
|
-
*/
|
|
20
|
-
static fromJson(permissions, context) {
|
|
21
|
-
return new PermissionManager(permissions, context);
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Check if the user has a specific permission in the context of an entity
|
|
25
|
-
* @param permission
|
|
26
|
-
*/
|
|
27
|
-
check(permission) {
|
|
28
|
-
return IWithPermissionBehavior_1.checkPermission(permission, this._context.currentUser, this._permissions);
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Get all the permission definitions for the specific permission
|
|
32
|
-
* @param key permission to check for
|
|
33
|
-
*/
|
|
34
|
-
get(permission) {
|
|
35
|
-
return IWithPermissionBehavior_1.getPermissions(permission, this._permissions);
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Set a permission for the given entity
|
|
39
|
-
* @param permission
|
|
40
|
-
*/
|
|
41
|
-
add(permission) {
|
|
42
|
-
if (!permission.id) {
|
|
43
|
-
permission.id = util_1.createId("p");
|
|
44
|
-
}
|
|
45
|
-
this._permissions = IWithPermissionBehavior_1.addPermission(permission, this._permissions);
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Remove a permission by targetId
|
|
49
|
-
* @param permission
|
|
50
|
-
* @param targetId
|
|
51
|
-
*/
|
|
52
|
-
remove(permission, targetId) {
|
|
53
|
-
this._permissions = IWithPermissionBehavior_1.removePermission(permission, targetId, this._permissions);
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Return the current permissions as a JSON object
|
|
57
|
-
* @returns {IHubPermission[]}
|
|
58
|
-
*/
|
|
59
|
-
toJson() {
|
|
60
|
-
return util_1.cloneObject(this._permissions);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
exports.PermissionManager = PermissionManager;
|
|
64
|
-
//# sourceMappingURL=PermissionManager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PermissionManager.js","sourceRoot":"","sources":["../../../src/core/PermissionManager.ts"],"names":[],"mappings":";;;AACA,kCAAgD;AAChD,iFAK6C;AAG7C;;GAEG;AACH,MAAa,iBAAiB;IAI5B,YAAoB,WAA6B,EAAE,OAAuB;QACxE,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CACb,WAA6B,EAC7B,OAAuB;QAEvB,OAAO,IAAI,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAyB;QAC7B,OAAO,yCAAe,CACpB,UAAU,EACV,IAAI,CAAC,QAAQ,CAAC,WAAW,EACzB,IAAI,CAAC,YAAY,CAClB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,UAAyB;QAC3B,OAAO,wCAAc,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACvD,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,UAA0B;QAC5B,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE;YAClB,UAAU,CAAC,EAAE,GAAG,eAAQ,CAAC,GAAG,CAAC,CAAC;SAC/B;QACD,IAAI,CAAC,YAAY,GAAG,uCAAa,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACnE,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAyB,EAAE,QAAgB;QAChD,IAAI,CAAC,YAAY,GAAG,0CAAgB,CAClC,UAAU,EACV,QAAQ,EACR,IAAI,CAAC,YAAY,CAClB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,OAAO,kBAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACxC,CAAC;CACF;AAzED,8CAyEC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IHubPermission.js","sourceRoot":"","sources":["../../../../src/core/types/IHubPermission.ts"],"names":[],"mappings":""}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { IArcGISContext } from "../ArcGISContext";
|
|
2
|
-
import { HubPermission, IHubPermission } from "./types/IHubPermission";
|
|
3
|
-
/**
|
|
4
|
-
* Permission Manager class that provides permission behavior for a given entity
|
|
5
|
-
*/
|
|
6
|
-
export declare class PermissionManager {
|
|
7
|
-
private _permissions;
|
|
8
|
-
private _context;
|
|
9
|
-
private constructor();
|
|
10
|
-
/**
|
|
11
|
-
* Create a new PermissionManager instance from configuration and context
|
|
12
|
-
* @param permissions
|
|
13
|
-
* @param context
|
|
14
|
-
* @returns
|
|
15
|
-
*/
|
|
16
|
-
static fromJson(permissions: IHubPermission[], context: IArcGISContext): PermissionManager;
|
|
17
|
-
/**
|
|
18
|
-
* Check if the user has a specific permission in the context of an entity
|
|
19
|
-
* @param permission
|
|
20
|
-
*/
|
|
21
|
-
check(permission: HubPermission): boolean;
|
|
22
|
-
/**
|
|
23
|
-
* Get all the permission definitions for the specific permission
|
|
24
|
-
* @param key permission to check for
|
|
25
|
-
*/
|
|
26
|
-
get(permission: HubPermission): IHubPermission[];
|
|
27
|
-
/**
|
|
28
|
-
* Set a permission for the given entity
|
|
29
|
-
* @param permission
|
|
30
|
-
*/
|
|
31
|
-
add(permission: IHubPermission): void;
|
|
32
|
-
/**
|
|
33
|
-
* Remove a permission by targetId
|
|
34
|
-
* @param permission
|
|
35
|
-
* @param targetId
|
|
36
|
-
*/
|
|
37
|
-
remove(permission: HubPermission, targetId: string): void;
|
|
38
|
-
/**
|
|
39
|
-
* Return the current permissions as a JSON object
|
|
40
|
-
* @returns {IHubPermission[]}
|
|
41
|
-
*/
|
|
42
|
-
toJson(): IHubPermission[];
|
|
43
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Structure of a Hub Permission
|
|
3
|
-
*/
|
|
4
|
-
export interface IHubPermission {
|
|
5
|
-
/**
|
|
6
|
-
* Unique identifier of the permission
|
|
7
|
-
*/
|
|
8
|
-
id?: string;
|
|
9
|
-
/**
|
|
10
|
-
* What action is being enabled for the target
|
|
11
|
-
*/
|
|
12
|
-
permission: HubPermission;
|
|
13
|
-
/**
|
|
14
|
-
* What is the target of the permission
|
|
15
|
-
*/
|
|
16
|
-
target: PermissionTarget;
|
|
17
|
-
/**
|
|
18
|
-
* Id of the entity that this permission is granted for
|
|
19
|
-
*/
|
|
20
|
-
targetId: string;
|
|
21
|
-
}
|
|
22
|
-
export declare type HubPermission = "addEvent" | "createEvent" | "editEvent" | "deleteEvent" | "addInitiative" | "createInitiative" | "editInitiative" | "deleteInitiative" | "addProject" | "createProject" | "editProject" | "deleteProject";
|
|
23
|
-
export declare type PermissionTarget = "org" | "group" | "user";
|