@esri/hub-common 11.23.1 → 12.0.0-alpha.1
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 +24 -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/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 +18 -0
- package/dist/esm/permissions/HubPermissionPolicies.js.map +1 -0
- package/dist/esm/permissions/_internal/checkAuthentication.js +24 -0
- package/dist/esm/permissions/_internal/checkAuthentication.js.map +1 -0
- package/dist/esm/permissions/_internal/checkEdit.js +35 -0
- package/dist/esm/permissions/_internal/checkEdit.js.map +1 -0
- package/dist/esm/permissions/_internal/checkEntityPolicy.js +56 -0
- package/dist/esm/permissions/_internal/checkEntityPolicy.js.map +1 -0
- package/dist/esm/permissions/_internal/checkLicense.js +27 -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 +27 -0
- package/dist/esm/permissions/_internal/checkPrivileges.js.map +1 -0
- package/dist/esm/permissions/_internal/getPolicyResponseCode.js +29 -0
- package/dist/esm/permissions/_internal/getPolicyResponseCode.js.map +1 -0
- package/dist/esm/permissions/checkPermission.js +88 -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 +24 -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 +5 -14
- package/dist/esm/projects/HubProject.js.map +1 -1
- package/dist/esm/projects/_internal/ProjectPermissionPolicies.js +35 -0
- package/dist/esm/projects/_internal/ProjectPermissionPolicies.js.map +1 -0
- package/dist/esm/projects/_internal.js +43 -0
- package/dist/esm/projects/_internal.js.map +1 -0
- package/dist/esm/projects/edit.js +115 -0
- package/dist/esm/projects/edit.js.map +1 -0
- package/dist/esm/projects/fetch.js +104 -0
- package/dist/esm/projects/fetch.js.map +1 -0
- package/dist/esm/projects/index.js +2 -1
- package/dist/esm/projects/index.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/_internal/SitesPermissionPolicies.js +34 -0
- package/dist/esm/sites/_internal/SitesPermissionPolicies.js.map +1 -0
- package/dist/esm/util.js +3 -1
- package/dist/esm/util.js.map +1 -1
- package/dist/node/ArcGISContext.js +28 -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/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 +22 -0
- package/dist/node/permissions/HubPermissionPolicies.js.map +1 -0
- package/dist/node/permissions/_internal/checkAuthentication.js +28 -0
- package/dist/node/permissions/_internal/checkAuthentication.js.map +1 -0
- package/dist/node/permissions/_internal/checkEdit.js +39 -0
- package/dist/node/permissions/_internal/checkEdit.js.map +1 -0
- package/dist/node/permissions/_internal/checkEntityPolicy.js +60 -0
- package/dist/node/permissions/_internal/checkEntityPolicy.js.map +1 -0
- package/dist/node/permissions/_internal/checkLicense.js +31 -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 +31 -0
- package/dist/node/permissions/_internal/checkPrivileges.js.map +1 -0
- package/dist/node/permissions/_internal/getPolicyResponseCode.js +33 -0
- package/dist/node/permissions/_internal/getPolicyResponseCode.js.map +1 -0
- package/dist/node/permissions/checkPermission.js +92 -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 +28 -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 +10 -19
- package/dist/node/projects/HubProject.js.map +1 -1
- package/dist/node/projects/_internal/ProjectPermissionPolicies.js +38 -0
- package/dist/node/projects/_internal/ProjectPermissionPolicies.js.map +1 -0
- package/dist/node/projects/_internal.js +48 -0
- package/dist/node/projects/_internal.js.map +1 -0
- package/dist/node/projects/edit.js +122 -0
- package/dist/node/projects/edit.js.map +1 -0
- package/dist/node/projects/fetch.js +110 -0
- package/dist/node/projects/fetch.js.map +1 -0
- package/dist/node/projects/index.js +2 -1
- package/dist/node/projects/index.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/_internal/SitesPermissionPolicies.js +37 -0
- package/dist/node/sites/_internal/SitesPermissionPolicies.js.map +1 -0
- package/dist/node/util.js +3 -1
- package/dist/node/util.js.map +1 -1
- package/dist/types/ArcGISContext.d.ts +23 -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/checkAuthentication.d.ts +11 -0
- package/dist/types/permissions/_internal/checkEdit.d.ts +11 -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 +11 -0
- package/dist/types/permissions/_internal/checkPrivileges.d.ts +11 -0
- package/dist/types/permissions/_internal/getPolicyResponseCode.d.ts +7 -0
- package/dist/types/permissions/checkPermission.d.ts +11 -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 +29 -0
- package/dist/types/permissions/types/IEntityPermissionPolicy.d.ts +22 -0
- package/dist/types/permissions/types/IPermissionPolicy.d.ts +48 -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 +7 -0
- package/dist/types/projects/_internal.d.ts +20 -0
- package/dist/types/projects/{HubProjects.d.ts → edit.d.ts} +1 -29
- package/dist/types/projects/fetch.d.ts +30 -0
- package/dist/types/projects/index.d.ts +2 -1
- package/dist/types/sites/HubSite.d.ts +1 -7
- package/dist/types/sites/_internal/SitesPermissionPolicies.d.ts +6 -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/esm/projects/HubProjects.js +0 -248
- package/dist/esm/projects/HubProjects.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/node/projects/HubProjects.js +0 -258
- package/dist/node/projects/HubProjects.js.map +0 -1
- package/dist/types/core/PermissionManager.d.ts +0 -43
- package/dist/types/core/types/IHubPermission.d.ts +0 -23
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from "./HubLicense";
|
|
2
|
+
export * from "./IAccessResponse";
|
|
3
|
+
export * from "./IEntityPermissionPolicy";
|
|
4
|
+
export * from "./IPermissionPolicy";
|
|
5
|
+
export * from "./IPolicyCheck";
|
|
6
|
+
export * from "./Permission";
|
|
7
|
+
export * from "./PlatformPrivilege";
|
|
8
|
+
export * from "./PolicyResponse";
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/permissions/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { cloneObject } from "../util";
|
|
2
|
+
/**
|
|
3
|
+
* Add a policy to an array of entity policies
|
|
4
|
+
* Returns a new array
|
|
5
|
+
* @param permissions
|
|
6
|
+
* @param policy
|
|
7
|
+
* @returns
|
|
8
|
+
*/
|
|
9
|
+
export function addPermissionPolicy(permissions = [], policy) {
|
|
10
|
+
const clone = removePermissionPolicy(permissions, policy.permission, policy.collaborationId);
|
|
11
|
+
clone.push(policy);
|
|
12
|
+
return clone;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Remove a policy from an array of entity policies
|
|
16
|
+
* Returns a new array
|
|
17
|
+
* @param permissions
|
|
18
|
+
* @param permission
|
|
19
|
+
* @param id
|
|
20
|
+
* @returns
|
|
21
|
+
*/
|
|
22
|
+
export function removePermissionPolicy(permissions = [], permission, id) {
|
|
23
|
+
const clone = cloneObject(permissions);
|
|
24
|
+
return clone.filter((p) => p.permission !== permission || p.collaborationId !== id);
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/permissions/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGtC;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CACjC,cAAyC,EAAE,EAC3C,MAA+B;IAE/B,MAAM,KAAK,GAAG,sBAAsB,CAClC,WAAW,EACX,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,eAAe,CACvB,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnB,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CACpC,cAAyC,EAAE,EAC3C,UAAsB,EACtB,EAAU;IAEV,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IAEvC,OAAO,KAAK,CAAC,MAAM,CACjB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,UAAU,IAAI,CAAC,CAAC,eAAe,KAAK,EAAE,CAC/D,CAAC;AACJ,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { DEFAULT_PROJECT } from "./defaults";
|
|
2
|
-
import { PermissionManager, } from "../core";
|
|
3
|
-
import { createProject, deleteProject, fetchProject, getHubProjectEditorConfig, updateProject, } from "./HubProjects";
|
|
4
2
|
import { Catalog } from "../search/Catalog";
|
|
5
3
|
import { HubItemEntity } from "../core/HubItemEntity";
|
|
4
|
+
// NOTE: this could be lazy-loaded just like the CUD functions
|
|
5
|
+
import { fetchProject } from "./fetch";
|
|
6
6
|
/**
|
|
7
7
|
* Hub Project Class
|
|
8
8
|
*/
|
|
@@ -15,7 +15,6 @@ export class HubProject extends HubItemEntity {
|
|
|
15
15
|
constructor(project, context) {
|
|
16
16
|
super(project, context);
|
|
17
17
|
this._catalog = Catalog.fromJson(project.catalog, this.context);
|
|
18
|
-
this._permissionManager = PermissionManager.fromJson(project.permissions, this.context);
|
|
19
18
|
}
|
|
20
19
|
/**
|
|
21
20
|
* Catalog instance for this project. Note: Do not hold direct references to this object; always access it from the project.
|
|
@@ -24,13 +23,6 @@ export class HubProject extends HubItemEntity {
|
|
|
24
23
|
get catalog() {
|
|
25
24
|
return this._catalog;
|
|
26
25
|
}
|
|
27
|
-
/**
|
|
28
|
-
* PermissionManager instance for this project. Note: Do not hold direct references to this object; always access it from the project.
|
|
29
|
-
* @returns
|
|
30
|
-
*/
|
|
31
|
-
get permissions() {
|
|
32
|
-
return this._permissionManager;
|
|
33
|
-
}
|
|
34
26
|
/**
|
|
35
27
|
* Create an instance from an IHubProject object
|
|
36
28
|
* @param json - JSON object to create a HubProject from
|
|
@@ -91,6 +83,7 @@ export class HubProject extends HubItemEntity {
|
|
|
91
83
|
* by the compiler.
|
|
92
84
|
*/
|
|
93
85
|
static async getEditorConfig(i18nScope, type, options = []) {
|
|
86
|
+
const { getHubProjectEditorConfig } = await import("./edit");
|
|
94
87
|
// Delegate to module fn
|
|
95
88
|
return getHubProjectEditorConfig(i18nScope, type, options);
|
|
96
89
|
}
|
|
@@ -117,9 +110,6 @@ export class HubProject extends HubItemEntity {
|
|
|
117
110
|
if (changes.catalog) {
|
|
118
111
|
this._catalog = Catalog.fromJson(this.entity.catalog, this.context);
|
|
119
112
|
}
|
|
120
|
-
if (changes.permissions) {
|
|
121
|
-
this._permissionManager = PermissionManager.fromJson(this.entity.permissions, this.context);
|
|
122
|
-
}
|
|
123
113
|
}
|
|
124
114
|
/**
|
|
125
115
|
* Save the HubProject to the backing store. Currently Projects are stored as Items in Portal
|
|
@@ -131,7 +121,7 @@ export class HubProject extends HubItemEntity {
|
|
|
131
121
|
}
|
|
132
122
|
// get the catalog, and permission configs
|
|
133
123
|
this.entity.catalog = this._catalog.toJson();
|
|
134
|
-
|
|
124
|
+
const { createProject, updateProject } = await import("./edit");
|
|
135
125
|
if (this.entity.id) {
|
|
136
126
|
// update it
|
|
137
127
|
this.entity = await updateProject(this.entity, this.context.userRequestOptions);
|
|
@@ -154,6 +144,7 @@ export class HubProject extends HubItemEntity {
|
|
|
154
144
|
throw new Error("HubProject is already destroyed.");
|
|
155
145
|
}
|
|
156
146
|
this.isDestroyed = true;
|
|
147
|
+
const { deleteProject } = await import("./edit");
|
|
157
148
|
// Delegate to module fn
|
|
158
149
|
await deleteProject(this.entity.id, this.context.userRequestOptions);
|
|
159
150
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubProject.js","sourceRoot":"","sources":["../../../src/projects/HubProject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"HubProject.js","sourceRoot":"","sources":["../../../src/projects/HubProject.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project Permission Policies
|
|
3
|
+
* These define the requirements any user must meet to perform related actions
|
|
4
|
+
* @private
|
|
5
|
+
*/
|
|
6
|
+
export const ProjectPermissionPolicies = [
|
|
7
|
+
{
|
|
8
|
+
permission: "hub:project:create",
|
|
9
|
+
subsystems: ["projects"],
|
|
10
|
+
authenticated: true,
|
|
11
|
+
privileges: ["portal:user:createItem"],
|
|
12
|
+
licenses: ["hub-premium"],
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
permission: "hub:project:view",
|
|
16
|
+
subsystems: ["projects"],
|
|
17
|
+
authenticated: false,
|
|
18
|
+
licenses: ["hub-premium"],
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
permission: "hub:project:edit",
|
|
22
|
+
authenticated: true,
|
|
23
|
+
subsystems: ["projects"],
|
|
24
|
+
entityEdit: true,
|
|
25
|
+
licenses: ["hub-premium"],
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
permission: "hub:project:delete",
|
|
29
|
+
authenticated: true,
|
|
30
|
+
subsystems: ["projects"],
|
|
31
|
+
entityOwner: true,
|
|
32
|
+
licenses: ["hub-premium"],
|
|
33
|
+
},
|
|
34
|
+
];
|
|
35
|
+
//# sourceMappingURL=ProjectPermissionPolicies.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProjectPermissionPolicies.js","sourceRoot":"","sources":["../../../../src/projects/_internal/ProjectPermissionPolicies.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAwB;IAC5D;QACE,UAAU,EAAE,oBAAoB;QAChC,UAAU,EAAE,CAAC,UAAU,CAAC;QACxB,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,wBAAwB,CAAC;QACtC,QAAQ,EAAE,CAAC,aAAa,CAAC;KAC1B;IACD;QACE,UAAU,EAAE,kBAAkB;QAC9B,UAAU,EAAE,CAAC,UAAU,CAAC;QACxB,aAAa,EAAE,KAAK;QACpB,QAAQ,EAAE,CAAC,aAAa,CAAC;KAC1B;IACD;QACE,UAAU,EAAE,kBAAkB;QAC9B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,UAAU,CAAC;QACxB,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,CAAC,aAAa,CAAC;KAC1B;IACD;QACE,UAAU,EAAE,oBAAoB;QAChC,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,UAAU,CAAC;QACxB,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,CAAC,aAAa,CAAC;KAC1B;CACF,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { getItemThumbnailUrl } from "../resources";
|
|
2
|
+
import { getBasePropertyMap } from "../core/_internal/getBasePropertyMap";
|
|
3
|
+
/**
|
|
4
|
+
* Given a model and a project, set various computed properties that can't be directly mapped
|
|
5
|
+
* @private
|
|
6
|
+
* @param model
|
|
7
|
+
* @param project
|
|
8
|
+
* @param requestOptions
|
|
9
|
+
* @returns
|
|
10
|
+
*/
|
|
11
|
+
export function computeProps(model, project, requestOptions) {
|
|
12
|
+
let token;
|
|
13
|
+
if (requestOptions.authentication) {
|
|
14
|
+
const session = requestOptions.authentication;
|
|
15
|
+
token = session.token;
|
|
16
|
+
}
|
|
17
|
+
// thumbnail url
|
|
18
|
+
project.thumbnailUrl = getItemThumbnailUrl(model.item, requestOptions, token);
|
|
19
|
+
// Handle Dates
|
|
20
|
+
project.createdDate = new Date(model.item.created);
|
|
21
|
+
project.createdDateSource = "item.created";
|
|
22
|
+
project.updatedDate = new Date(model.item.modified);
|
|
23
|
+
project.updatedDateSource = "item.modified";
|
|
24
|
+
// cast b/c this takes a partial but returns a full project
|
|
25
|
+
return project;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Returns an Array of IPropertyMap objects
|
|
29
|
+
* that define the projection of properties from a IModel to an IHubProject
|
|
30
|
+
* @returns
|
|
31
|
+
* @private
|
|
32
|
+
*/
|
|
33
|
+
export function getPropertyMap() {
|
|
34
|
+
const map = getBasePropertyMap();
|
|
35
|
+
// Type specific mappings
|
|
36
|
+
map.push({ objectKey: "status", modelKey: "data.status" });
|
|
37
|
+
map.push({ objectKey: "catalog", modelKey: "data.catalog" });
|
|
38
|
+
map.push({ objectKey: "permissions", modelKey: "data.permissions" });
|
|
39
|
+
map.push({ objectKey: "contacts", modelKey: "data.contacts" });
|
|
40
|
+
map.push({ objectKey: "timeline", modelKey: "data.timeline" });
|
|
41
|
+
return map;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=_internal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_internal.js","sourceRoot":"","sources":["../../../src/projects/_internal.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAGnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAG1E;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAC1B,KAAa,EACb,OAA6B,EAC7B,cAA+B;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IACD,gBAAgB;IAChB,OAAO,CAAC,YAAY,GAAG,mBAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;IAC9E,eAAe;IACf,OAAO,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,OAAO,CAAC,iBAAiB,GAAG,cAAc,CAAC;IAC3C,OAAO,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,OAAO,CAAC,iBAAiB,GAAG,eAAe,CAAC;IAC5C,2DAA2D;IAC3D,OAAO,OAAsB,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,GAAG,GAAG,kBAAkB,EAAE,CAAC;IAEjC,yBAAyB;IACzB,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;IAC3D,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;IAC7D,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACrE,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,CAAC;IAC/D,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,CAAC;IAE/D,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
// Note - we separate these imports so we can cleanly spy on things in tests
|
|
2
|
+
import { createModel, getModel, updateModel } from "../models";
|
|
3
|
+
import { constructSlug, getUniqueSlug, setSlugKeyword } from "../items/slugs";
|
|
4
|
+
import { cloneObject, interpolate, } from "../index";
|
|
5
|
+
import { removeItem } from "@esri/arcgis-rest-portal";
|
|
6
|
+
import { PropertyMapper } from "../core/_internal/PropertyMapper";
|
|
7
|
+
import { DEFAULT_PROJECT, DEFAULT_PROJECT_MODEL } from "./defaults";
|
|
8
|
+
import { HubProjectEditUiSchema, HubProjectCreateUiSchema, HubProjectSchema, } from "../core/schemas";
|
|
9
|
+
import { filterSchemaToUiSchema } from "../core/schemas/internal";
|
|
10
|
+
import { applyUiSchemaElementOptions } from "../core/schemas/internal/applyUiSchemaElementOptions";
|
|
11
|
+
import { computeProps, getPropertyMap } from "./_internal";
|
|
12
|
+
/**
|
|
13
|
+
* @private
|
|
14
|
+
* Create a new Hub Project item
|
|
15
|
+
*
|
|
16
|
+
* Minimal properties are name and org
|
|
17
|
+
*
|
|
18
|
+
* @param project
|
|
19
|
+
* @param requestOptions
|
|
20
|
+
*/
|
|
21
|
+
export async function createProject(partialProject, requestOptions) {
|
|
22
|
+
// merge incoming with the default
|
|
23
|
+
// this expansion solves the typing somehow
|
|
24
|
+
const project = Object.assign(Object.assign({}, DEFAULT_PROJECT), partialProject);
|
|
25
|
+
// Create a slug from the title if one is not passed in
|
|
26
|
+
if (!project.slug) {
|
|
27
|
+
project.slug = constructSlug(project.name, project.orgUrlKey);
|
|
28
|
+
}
|
|
29
|
+
// Ensure slug is unique
|
|
30
|
+
project.slug = await getUniqueSlug({ slug: project.slug }, requestOptions);
|
|
31
|
+
// add slug to keywords
|
|
32
|
+
project.typeKeywords = setSlugKeyword(project.typeKeywords, project.slug);
|
|
33
|
+
// Map project object onto a default project Model
|
|
34
|
+
const mapper = new PropertyMapper(getPropertyMap());
|
|
35
|
+
// create model from object, using the default model as a starting point
|
|
36
|
+
let model = mapper.objectToModel(project, cloneObject(DEFAULT_PROJECT_MODEL));
|
|
37
|
+
// create the item
|
|
38
|
+
model = await createModel(model, requestOptions);
|
|
39
|
+
// map the model back into a IHubProject
|
|
40
|
+
let newProject = mapper.modelToObject(model, {});
|
|
41
|
+
newProject = computeProps(model, newProject, requestOptions);
|
|
42
|
+
// and return it
|
|
43
|
+
return newProject;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* @private
|
|
47
|
+
* Update a Hub Project
|
|
48
|
+
* @param project
|
|
49
|
+
* @param requestOptions
|
|
50
|
+
*/
|
|
51
|
+
export async function updateProject(project, requestOptions) {
|
|
52
|
+
// verify that the slug is unique, excluding the current project
|
|
53
|
+
project.slug = await getUniqueSlug({ slug: project.slug, existingId: project.id }, requestOptions);
|
|
54
|
+
// get the backing item & data
|
|
55
|
+
const model = await getModel(project.id, requestOptions);
|
|
56
|
+
// create the PropertyMapper
|
|
57
|
+
const mapper = new PropertyMapper(getPropertyMap());
|
|
58
|
+
// Note: Although we are fetching the model, and applying changes onto it,
|
|
59
|
+
// we are not attempting to handle "concurrent edit" conflict resolution
|
|
60
|
+
// but this is where we would apply that sort of logic
|
|
61
|
+
const modelToUpdate = mapper.objectToModel(project, model);
|
|
62
|
+
// update the backing item
|
|
63
|
+
const updatedModel = await updateModel(modelToUpdate, requestOptions);
|
|
64
|
+
// now map back into a project and return that
|
|
65
|
+
let updatedProject = mapper.modelToObject(updatedModel, project);
|
|
66
|
+
updatedProject = computeProps(model, updatedProject, requestOptions);
|
|
67
|
+
// the casting is needed because modelToObject returns a `Partial<T>`
|
|
68
|
+
// where as this function returns a `T`
|
|
69
|
+
return updatedProject;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* @private
|
|
73
|
+
* Remove a Hub Project
|
|
74
|
+
* @param id
|
|
75
|
+
* @param requestOptions
|
|
76
|
+
*/
|
|
77
|
+
export async function deleteProject(id, requestOptions) {
|
|
78
|
+
const ro = Object.assign(Object.assign({}, requestOptions), { id });
|
|
79
|
+
await removeItem(ro);
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Get the editor config for for the HubProject entity.
|
|
84
|
+
* @param i18nScope Translation scope to be interpolated into the schemas
|
|
85
|
+
* @param type
|
|
86
|
+
* @param options Optional hash of Element component options
|
|
87
|
+
* @returns
|
|
88
|
+
*/
|
|
89
|
+
export async function getHubProjectEditorConfig(i18nScope, type, options = []) {
|
|
90
|
+
// schema is always the entire schema
|
|
91
|
+
let schema = cloneObject(HubProjectSchema);
|
|
92
|
+
// uiSchema is the complete (edit) schema, unless otherwise specified
|
|
93
|
+
let uiSchema = cloneObject(HubProjectEditUiSchema);
|
|
94
|
+
// by default we don't need to filter the schema b/c it's the entire schema
|
|
95
|
+
let filterSchema = false;
|
|
96
|
+
// if another schema is requested, we need to use that UI schema
|
|
97
|
+
// and the subset the overall schema down to just the properties
|
|
98
|
+
// used in the UI schema
|
|
99
|
+
switch (type) {
|
|
100
|
+
case "create":
|
|
101
|
+
uiSchema = cloneObject(HubProjectCreateUiSchema);
|
|
102
|
+
filterSchema = true;
|
|
103
|
+
break;
|
|
104
|
+
}
|
|
105
|
+
if (filterSchema) {
|
|
106
|
+
// filter out properties not used in the UI schema
|
|
107
|
+
schema = filterSchemaToUiSchema(schema, uiSchema);
|
|
108
|
+
}
|
|
109
|
+
// interpolate the i18n scope into the uiSchema
|
|
110
|
+
uiSchema = interpolate(uiSchema, { i18nScope });
|
|
111
|
+
// apply the options
|
|
112
|
+
uiSchema = applyUiSchemaElementOptions(uiSchema, options);
|
|
113
|
+
return Promise.resolve({ schema, uiSchema });
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=edit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit.js","sourceRoot":"","sources":["../../../src/projects/edit.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { getItem } from "@esri/arcgis-rest-portal";
|
|
2
|
+
// TODO: import these from specific modules
|
|
3
|
+
import { getItemThumbnailUrl, unique, mapBy, getProp, getFamily, getItemHomeUrl, } from "../index";
|
|
4
|
+
import { getHubRelativeUrl } from "../content/_internal";
|
|
5
|
+
import { PropertyMapper } from "../core/_internal/PropertyMapper";
|
|
6
|
+
import { getItemBySlug } from "../items/slugs";
|
|
7
|
+
import { fetchItemEnrichments } from "../items/_enrichments";
|
|
8
|
+
import { fetchModelFromItem } from "../models";
|
|
9
|
+
import { parseInclude } from "../search/_internal/parseInclude";
|
|
10
|
+
import { isGuid } from "../utils";
|
|
11
|
+
import { computeProps, getPropertyMap } from "./_internal";
|
|
12
|
+
/**
|
|
13
|
+
* @private
|
|
14
|
+
* Get a Hub Project by id or slug
|
|
15
|
+
* @param identifier item id or slug
|
|
16
|
+
* @param requestOptions
|
|
17
|
+
*/
|
|
18
|
+
export function fetchProject(identifier, requestOptions) {
|
|
19
|
+
let getPrms;
|
|
20
|
+
if (isGuid(identifier)) {
|
|
21
|
+
// get item by id
|
|
22
|
+
getPrms = getItem(identifier, requestOptions);
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
getPrms = getItemBySlug(identifier, requestOptions);
|
|
26
|
+
}
|
|
27
|
+
return getPrms.then((item) => {
|
|
28
|
+
if (!item)
|
|
29
|
+
return null;
|
|
30
|
+
return convertItemToProject(item, requestOptions);
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* @private
|
|
35
|
+
* Convert an Hub Project Item into a Hub Project, fetching any additional
|
|
36
|
+
* information that may be required
|
|
37
|
+
* @param item
|
|
38
|
+
* @param auth
|
|
39
|
+
* @returns
|
|
40
|
+
*/
|
|
41
|
+
export async function convertItemToProject(item, requestOptions) {
|
|
42
|
+
const model = await fetchModelFromItem(item, requestOptions);
|
|
43
|
+
// TODO: In the future we will handle the boundary fetching from resource
|
|
44
|
+
const mapper = new PropertyMapper(getPropertyMap());
|
|
45
|
+
const prj = mapper.modelToObject(model, {});
|
|
46
|
+
return computeProps(model, prj, requestOptions);
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* @private
|
|
50
|
+
* Fetch project specific enrichments
|
|
51
|
+
* @param item
|
|
52
|
+
* @param include
|
|
53
|
+
* @param requestOptions
|
|
54
|
+
* @returns
|
|
55
|
+
*/
|
|
56
|
+
export async function enrichProjectSearchResult(item, include, requestOptions) {
|
|
57
|
+
// Create the basic structure
|
|
58
|
+
const result = {
|
|
59
|
+
access: item.access,
|
|
60
|
+
id: item.id,
|
|
61
|
+
type: item.type,
|
|
62
|
+
name: item.title,
|
|
63
|
+
owner: item.owner,
|
|
64
|
+
typeKeywords: item.typeKeywords,
|
|
65
|
+
tags: item.tags,
|
|
66
|
+
categories: item.categories,
|
|
67
|
+
summary: item.snippet || item.description,
|
|
68
|
+
createdDate: new Date(item.created),
|
|
69
|
+
createdDateSource: "item.created",
|
|
70
|
+
updatedDate: new Date(item.modified),
|
|
71
|
+
updatedDateSource: "item.modified",
|
|
72
|
+
family: getFamily(item.type),
|
|
73
|
+
links: {
|
|
74
|
+
self: "not-implemented",
|
|
75
|
+
siteRelative: "not-implemented",
|
|
76
|
+
thumbnail: "not-implemented",
|
|
77
|
+
},
|
|
78
|
+
};
|
|
79
|
+
// default includes
|
|
80
|
+
const DEFAULTS = [];
|
|
81
|
+
// merge includes
|
|
82
|
+
include = [...DEFAULTS, ...include].filter(unique);
|
|
83
|
+
// Parse the includes into a valid set of enrichments
|
|
84
|
+
const specs = include.map(parseInclude);
|
|
85
|
+
// Extract out the low-level enrichments needed
|
|
86
|
+
const enrichments = mapBy("enrichment", specs).filter(unique);
|
|
87
|
+
// fetch the enrichments
|
|
88
|
+
let enriched = {};
|
|
89
|
+
if (enrichments.length) {
|
|
90
|
+
// TODO: Look into caching for the requests in fetchItemEnrichments
|
|
91
|
+
enriched = await fetchItemEnrichments(item, enrichments, requestOptions);
|
|
92
|
+
}
|
|
93
|
+
// map the enriched props onto the result
|
|
94
|
+
specs.forEach((spec) => {
|
|
95
|
+
result[spec.prop] = getProp(enriched, spec.path);
|
|
96
|
+
});
|
|
97
|
+
// Handle links
|
|
98
|
+
// TODO: Link handling should be an enrichment
|
|
99
|
+
result.links.thumbnail = getItemThumbnailUrl(item, requestOptions);
|
|
100
|
+
result.links.self = getItemHomeUrl(result.id, requestOptions);
|
|
101
|
+
result.links.siteRelative = getHubRelativeUrl(result.type, result.id, item.typeKeywords);
|
|
102
|
+
return result;
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=fetch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../src/projects/fetch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/projects/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/projects/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Catalog.js","sourceRoot":"","sources":["../../../src/search/Catalog.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"Catalog.js","sourceRoot":"","sources":["../../../src/search/Catalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { PermissionManager, } from "../core";
|
|
2
1
|
import { Catalog } from "../search/Catalog";
|
|
3
2
|
import { HubItemEntity } from "../core/HubItemEntity";
|
|
4
3
|
import { DEFAULT_SITE } from "./defaults";
|
|
@@ -18,7 +17,6 @@ export class HubSite extends HubItemEntity {
|
|
|
18
17
|
super(site, context);
|
|
19
18
|
this._catalogCache = {};
|
|
20
19
|
this._catalog = Catalog.fromJson(site.catalog, this.context);
|
|
21
|
-
this._permissionManager = PermissionManager.fromJson(site.permissions, this.context);
|
|
22
20
|
}
|
|
23
21
|
/**
|
|
24
22
|
* Catalog instance for this site. Note: Do not hold direct references to this object; always access it from the site.
|
|
@@ -27,13 +25,6 @@ export class HubSite extends HubItemEntity {
|
|
|
27
25
|
get catalog() {
|
|
28
26
|
return this._catalog;
|
|
29
27
|
}
|
|
30
|
-
/**
|
|
31
|
-
* PermissionManager instance for this site. Note: Do not hold direct references to this object; always access it from the site.
|
|
32
|
-
* @returns
|
|
33
|
-
*/
|
|
34
|
-
get permissions() {
|
|
35
|
-
return this._permissionManager;
|
|
36
|
-
}
|
|
37
28
|
/**
|
|
38
29
|
* Create an instance from an IHubSite object
|
|
39
30
|
* @param json - JSON object to create a HubSite from
|
|
@@ -111,9 +102,6 @@ export class HubSite extends HubItemEntity {
|
|
|
111
102
|
if (changes.catalog) {
|
|
112
103
|
this._catalog = Catalog.fromJson(this.entity.catalog, this.context);
|
|
113
104
|
}
|
|
114
|
-
if (changes.permissions) {
|
|
115
|
-
this._permissionManager = PermissionManager.fromJson(this.entity.permissions, this.context);
|
|
116
|
-
}
|
|
117
105
|
}
|
|
118
106
|
/**
|
|
119
107
|
* Save the HubSite to the backing store.
|
|
@@ -126,7 +114,6 @@ export class HubSite extends HubItemEntity {
|
|
|
126
114
|
}
|
|
127
115
|
// get the catalog, and permission configs
|
|
128
116
|
this.entity.catalog = this._catalog.toJson();
|
|
129
|
-
this.entity.permissions = this._permissionManager.toJson();
|
|
130
117
|
if (this.entity.id) {
|
|
131
118
|
// update it
|
|
132
119
|
this.entity = await updateSite(this.entity, this.context.hubRequestOptions);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubSite.js","sourceRoot":"","sources":["../../../src/sites/HubSite.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"HubSite.js","sourceRoot":"","sources":["../../../src/sites/HubSite.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Site permission policies
|
|
3
|
+
* @private
|
|
4
|
+
*/
|
|
5
|
+
export const SitesPermissionPolicies = [
|
|
6
|
+
{
|
|
7
|
+
permission: "hub:site:create",
|
|
8
|
+
subsystems: ["sites"],
|
|
9
|
+
authenticated: true,
|
|
10
|
+
privileges: ["portal:user:createItem"],
|
|
11
|
+
licenses: ["hub-basic", "hub-premium", "enterprise-sites"],
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
permission: "hub:site:view",
|
|
15
|
+
subsystems: ["sites"],
|
|
16
|
+
authenticated: false,
|
|
17
|
+
licenses: ["hub-basic", "hub-premium", "enterprise-sites"],
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
permission: "hub:site:delete",
|
|
21
|
+
subsystems: ["sites"],
|
|
22
|
+
authenticated: true,
|
|
23
|
+
licenses: ["hub-basic", "hub-premium", "enterprise-sites"],
|
|
24
|
+
entityOwner: true,
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
permission: "hub:site:edit",
|
|
28
|
+
entityEdit: true,
|
|
29
|
+
subsystems: ["sites"],
|
|
30
|
+
authenticated: true,
|
|
31
|
+
licenses: ["hub-basic", "hub-premium", "enterprise-sites"],
|
|
32
|
+
},
|
|
33
|
+
];
|
|
34
|
+
//# sourceMappingURL=SitesPermissionPolicies.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SitesPermissionPolicies.js","sourceRoot":"","sources":["../../../../src/sites/_internal/SitesPermissionPolicies.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAwB;IAC1D;QACE,UAAU,EAAE,iBAAiB;QAC7B,UAAU,EAAE,CAAC,OAAO,CAAC;QACrB,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,wBAAwB,CAAC;QACtC,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,CAAC;KAC3D;IACD;QACE,UAAU,EAAE,eAAe;QAC3B,UAAU,EAAE,CAAC,OAAO,CAAC;QACrB,aAAa,EAAE,KAAK;QACpB,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,CAAC;KAC3D;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,UAAU,EAAE,CAAC,OAAO,CAAC;QACrB,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,CAAC;QAC1D,WAAW,EAAE,IAAI;KAClB;IACD;QACE,UAAU,EAAE,eAAe;QAC3B,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,CAAC,OAAO,CAAC;QACrB,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,CAAC;KAC3D;CACF,CAAC"}
|
package/dist/esm/util.js
CHANGED
|
@@ -19,13 +19,15 @@ export function cloneObject(obj) {
|
|
|
19
19
|
}
|
|
20
20
|
else if (typeof obj === "object") {
|
|
21
21
|
for (const i in obj) {
|
|
22
|
-
/* istanbul ignore next no need to deal w/ other side of hasOwnProperty() */
|
|
23
22
|
if (obj.hasOwnProperty(i)) {
|
|
24
23
|
const value = obj[i];
|
|
25
24
|
if (value != null && typeof value === "object") {
|
|
26
25
|
if (value instanceof Date) {
|
|
27
26
|
clone[i] = new Date(value.getTime());
|
|
28
27
|
}
|
|
28
|
+
else if (typeof Blob !== "undefined" && value instanceof Blob) {
|
|
29
|
+
clone[i] = new Blob([value], { type: value.type });
|
|
30
|
+
}
|
|
29
31
|
else {
|
|
30
32
|
clone[i] = cloneObject(value);
|
|
31
33
|
}
|