@esri/hub-common 10.1.0 → 11.0.0-beta.3
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/Hub.js +0 -26
- package/dist/esm/Hub.js.map +1 -1
- package/dist/esm/core/PermissionManager.js +60 -0
- package/dist/esm/core/PermissionManager.js.map +1 -0
- 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/IWithCatalogBehavior.js +1 -0
- package/dist/esm/core/behaviors/IWithCatalogBehavior.js.map +1 -0
- package/dist/esm/core/behaviors/IWithPermissionBehavior.js +69 -0
- package/dist/esm/core/behaviors/IWithPermissionBehavior.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/IWithStoreBehavior.js +1 -0
- package/dist/esm/core/behaviors/IWithStoreBehavior.js.map +1 -0
- package/dist/esm/core/behaviors/index.js +5 -0
- package/dist/esm/core/behaviors/index.js.map +1 -0
- package/dist/esm/core/index.js +2 -0
- package/dist/esm/core/index.js.map +1 -1
- package/dist/esm/core/traits/IWithBannerImage.js +1 -0
- package/dist/esm/core/traits/IWithBannerImage.js.map +1 -0
- package/dist/esm/core/traits/IWithCatalogDefinition.js +1 -0
- package/dist/esm/core/traits/IWithCatalogDefinition.js.map +1 -0
- package/dist/esm/core/traits/IWithLayout.js +1 -0
- package/dist/esm/core/traits/IWithLayout.js.map +1 -0
- package/dist/esm/core/traits/IWithPermissions.js +1 -0
- package/dist/esm/core/traits/IWithPermissions.js.map +1 -0
- package/dist/esm/core/traits/IWithSlug.js +1 -0
- package/dist/esm/core/traits/IWithSlug.js.map +1 -0
- package/dist/esm/core/traits/index.js +4 -3
- package/dist/esm/core/traits/index.js.map +1 -1
- package/dist/esm/core/types/IHubPermission.js +1 -0
- package/dist/esm/core/types/IHubPermission.js.map +1 -0
- package/dist/esm/core/types/index.js +1 -0
- package/dist/esm/core/types/index.js.map +1 -1
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/items/slugs.js +1 -1
- package/dist/esm/models/index.js +15 -10
- package/dist/esm/models/index.js.map +1 -1
- package/dist/esm/projects/HubProject.js +369 -0
- package/dist/esm/projects/HubProject.js.map +1 -0
- package/dist/esm/projects/HubProjectManager.js +4 -4
- package/dist/esm/projects/HubProjectManager.js.map +1 -1
- package/dist/esm/projects/HubProjects.js +37 -39
- package/dist/esm/projects/HubProjects.js.map +1 -1
- package/dist/esm/projects/defaults.js +36 -0
- package/dist/esm/projects/defaults.js.map +1 -0
- package/dist/esm/projects/index.js +1 -1
- package/dist/esm/projects/index.js.map +1 -1
- package/dist/esm/search/Catalog.js +22 -5
- package/dist/esm/search/Catalog.js.map +1 -1
- package/dist/esm/sites/HubSiteManager.js +1 -1
- package/dist/esm/sites/HubSiteManager.js.map +1 -1
- package/dist/esm/sites/index.js +0 -1
- package/dist/esm/sites/index.js.map +1 -1
- package/dist/node/Hub.js +0 -26
- package/dist/node/Hub.js.map +1 -1
- package/dist/node/core/PermissionManager.js +64 -0
- package/dist/node/core/PermissionManager.js.map +1 -0
- 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/IWithCatalogBehavior.js +3 -0
- package/dist/node/core/behaviors/IWithCatalogBehavior.js.map +1 -0
- package/dist/node/core/behaviors/IWithPermissionBehavior.js +76 -0
- package/dist/node/core/behaviors/IWithPermissionBehavior.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/IWithStoreBehavior.js +3 -0
- package/dist/node/core/behaviors/IWithStoreBehavior.js.map +1 -0
- package/dist/node/core/behaviors/index.js +8 -0
- package/dist/node/core/behaviors/index.js.map +1 -0
- package/dist/node/core/index.js +2 -0
- package/dist/node/core/index.js.map +1 -1
- package/dist/node/core/traits/{WithBannerImage.js → IWithBannerImage.js} +1 -1
- package/dist/node/core/traits/IWithBannerImage.js.map +1 -0
- package/dist/node/core/traits/IWithCatalogDefinition.js +3 -0
- package/dist/node/core/traits/IWithCatalogDefinition.js.map +1 -0
- package/dist/node/core/traits/{WithCatalog.js → IWithLayout.js} +1 -1
- package/dist/node/core/traits/IWithLayout.js.map +1 -0
- package/dist/node/core/traits/IWithPermissions.js +3 -0
- package/dist/node/core/traits/IWithPermissions.js.map +1 -0
- package/dist/node/core/traits/{WithSlug.js → IWithSlug.js} +1 -1
- package/dist/node/core/traits/IWithSlug.js.map +1 -0
- package/dist/node/core/traits/index.js +4 -3
- package/dist/node/core/traits/index.js.map +1 -1
- package/dist/node/core/{traits/WithLayout.js → types/IHubPermission.js} +1 -1
- package/dist/node/core/types/IHubPermission.js.map +1 -0
- package/dist/node/core/types/index.js +1 -0
- package/dist/node/core/types/index.js.map +1 -1
- package/dist/node/index.js +2 -1
- package/dist/node/index.js.map +1 -1
- package/dist/node/items/slugs.js +1 -1
- package/dist/node/models/index.js +15 -10
- package/dist/node/models/index.js.map +1 -1
- package/dist/node/projects/HubProject.js +373 -0
- package/dist/node/projects/HubProject.js.map +1 -0
- package/dist/node/projects/HubProjectManager.js +3 -3
- package/dist/node/projects/HubProjectManager.js.map +1 -1
- package/dist/node/projects/HubProjects.js +42 -44
- package/dist/node/projects/HubProjects.js.map +1 -1
- package/dist/node/projects/defaults.js +39 -0
- package/dist/node/projects/defaults.js.map +1 -0
- package/dist/node/projects/index.js +1 -1
- package/dist/node/projects/index.js.map +1 -1
- package/dist/node/search/Catalog.js +22 -5
- package/dist/node/search/Catalog.js.map +1 -1
- package/dist/node/sites/HubSiteManager.js +1 -1
- package/dist/node/sites/HubSiteManager.js.map +1 -1
- package/dist/node/sites/index.js +0 -1
- package/dist/node/sites/index.js.map +1 -1
- package/dist/types/Hub.d.ts +0 -18
- package/dist/types/core/PermissionManager.d.ts +43 -0
- 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/IWithCatalogBehavior.d.ts +4 -0
- package/dist/types/core/behaviors/IWithPermissionBehavior.d.ts +40 -0
- package/dist/types/core/behaviors/IWithSharingBehavior.d.ts +27 -0
- package/dist/types/core/behaviors/IWithStoreBehavior.d.ts +22 -0
- package/dist/types/core/behaviors/index.d.ts +4 -0
- package/dist/types/core/index.d.ts +2 -0
- package/dist/types/core/traits/{WithBannerImage.d.ts → IWithBannerImage.d.ts} +0 -0
- package/dist/types/core/traits/IWithCatalogDefinition.d.ts +7 -0
- package/dist/types/core/traits/{WithLayout.d.ts → IWithLayout.d.ts} +0 -0
- package/dist/types/core/traits/IWithPermissions.d.ts +10 -0
- package/dist/types/core/traits/{WithSlug.d.ts → IWithSlug.d.ts} +0 -0
- package/dist/types/core/traits/index.d.ts +4 -3
- package/dist/types/core/types/IHubEntityManager.d.ts +1 -1
- package/dist/types/core/types/IHubInitiative.d.ts +1 -1
- package/dist/types/core/types/IHubPage.d.ts +1 -1
- package/dist/types/core/types/IHubPermission.d.ts +23 -0
- package/dist/types/core/types/IHubProject.d.ts +4 -3
- package/dist/types/core/types/IHubSite.d.ts +2 -2
- package/dist/types/core/types/index.d.ts +1 -0
- package/dist/types/core/types/types.d.ts +5 -1
- package/dist/types/index.d.ts +0 -1
- package/dist/types/projects/HubProject.d.ts +92 -0
- package/dist/types/projects/HubProjectManager.d.ts +1 -1
- package/dist/types/projects/HubProjects.d.ts +7 -2
- package/dist/types/projects/defaults.d.ts +11 -0
- package/dist/types/projects/index.d.ts +1 -1
- package/dist/types/search/Catalog.d.ts +4 -3
- package/dist/types/sites/HubSiteManager.d.ts +1 -1
- package/dist/types/sites/index.d.ts +0 -1
- package/package.json +1 -1
- package/dist/esm/core/traits/WithBannerImage.js +0 -1
- package/dist/esm/core/traits/WithBannerImage.js.map +0 -1
- package/dist/esm/core/traits/WithCatalog.js +0 -1
- package/dist/esm/core/traits/WithCatalog.js.map +0 -1
- package/dist/esm/core/traits/WithLayout.js +0 -1
- package/dist/esm/core/traits/WithLayout.js.map +0 -1
- package/dist/esm/core/traits/WithSlug.js +0 -1
- package/dist/esm/core/traits/WithSlug.js.map +0 -1
- package/dist/node/core/traits/WithBannerImage.js.map +0 -1
- package/dist/node/core/traits/WithCatalog.js.map +0 -1
- package/dist/node/core/traits/WithLayout.js.map +0 -1
- package/dist/node/core/traits/WithSlug.js.map +0 -1
- package/dist/types/core/traits/WithCatalog.d.ts +0 -7
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DEFAULT_PROJECT_MODEL = exports.DEFAULT_PROJECT = exports.HUB_PROJECT_ITEM_TYPE = void 0;
|
|
4
|
+
exports.HUB_PROJECT_ITEM_TYPE = "Hub Project";
|
|
5
|
+
/**
|
|
6
|
+
* Default values of a IHubProject
|
|
7
|
+
*/
|
|
8
|
+
exports.DEFAULT_PROJECT = {
|
|
9
|
+
name: "No title provided",
|
|
10
|
+
tags: [],
|
|
11
|
+
typeKeywords: ["Hub Project"],
|
|
12
|
+
status: "inactive",
|
|
13
|
+
catalogDefinition: { schemaVersion: 0 },
|
|
14
|
+
permissionDefinition: [],
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Default values for a new HubProject Model
|
|
18
|
+
*/
|
|
19
|
+
exports.DEFAULT_PROJECT_MODEL = {
|
|
20
|
+
item: {
|
|
21
|
+
type: exports.HUB_PROJECT_ITEM_TYPE,
|
|
22
|
+
title: "No Title Provided",
|
|
23
|
+
description: "No Description Provided",
|
|
24
|
+
snippet: "",
|
|
25
|
+
tags: [],
|
|
26
|
+
typeKeywords: ["Hub Project"],
|
|
27
|
+
properties: {
|
|
28
|
+
slug: "",
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
data: {
|
|
32
|
+
display: "about",
|
|
33
|
+
timeline: {},
|
|
34
|
+
status: "inactive",
|
|
35
|
+
contacts: [],
|
|
36
|
+
schemaVersion: 1,
|
|
37
|
+
},
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=defaults.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/projects/defaults.ts"],"names":[],"mappings":";;;AAGa,QAAA,qBAAqB,GAAG,aAAa,CAAC;AAEnD;;GAEG;AACU,QAAA,eAAe,GAAyB;IACnD,IAAI,EAAE,mBAAmB;IACzB,IAAI,EAAE,EAAE;IACR,YAAY,EAAE,CAAC,aAAa,CAAC;IAC7B,MAAM,EAAE,UAAU;IAClB,iBAAiB,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE;IACvC,oBAAoB,EAAE,EAAE;CACzB,CAAC;AAEF;;GAEG;AACU,QAAA,qBAAqB,GAAW;IAC3C,IAAI,EAAE;QACJ,IAAI,EAAE,6BAAqB;QAC3B,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EAAE,yBAAyB;QACtC,OAAO,EAAE,EAAE;QACX,IAAI,EAAE,EAAE;QACR,YAAY,EAAE,CAAC,aAAa,CAAC;QAC7B,UAAU,EAAE;YACV,IAAI,EAAE,EAAE;SACT;KACF;IACD,IAAI,EAAE;QACJ,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,UAAU;QAClB,QAAQ,EAAE,EAAE;QACZ,aAAa,EAAE,CAAC;KACjB;CACmB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
|
-
tslib_1.__exportStar(require("./HubProjectManager"), exports);
|
|
5
4
|
tslib_1.__exportStar(require("./HubProjects"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./HubProject"), exports);
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/projects/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/projects/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B;AAC9B,uDAA6B"}
|
|
@@ -24,7 +24,7 @@ class Catalog {
|
|
|
24
24
|
this._context = context;
|
|
25
25
|
}
|
|
26
26
|
/**
|
|
27
|
-
* Create a
|
|
27
|
+
* Create a Catalog instance from a site url or itemId
|
|
28
28
|
* '''js
|
|
29
29
|
* const catalog = await Catalog.create('https://site-org.hub.arcgis.com', context);
|
|
30
30
|
* '''
|
|
@@ -45,7 +45,7 @@ class Catalog {
|
|
|
45
45
|
return new Catalog(fetched, context);
|
|
46
46
|
}
|
|
47
47
|
/**
|
|
48
|
-
* Create a Catalog instance from a Catalog Json object
|
|
48
|
+
* Create a Catalog instance from a Catalog Definition Json object
|
|
49
49
|
* @param json
|
|
50
50
|
* @param context
|
|
51
51
|
* @returns
|
|
@@ -106,6 +106,9 @@ class Catalog {
|
|
|
106
106
|
* @param query
|
|
107
107
|
*/
|
|
108
108
|
setScope(type, query) {
|
|
109
|
+
// TODO: This needs to be much smarter in terms of merging
|
|
110
|
+
// existing filters with the new ones. Basically this
|
|
111
|
+
// hides very little complexity from the developer
|
|
109
112
|
this._catalog.scopes[type] = query;
|
|
110
113
|
}
|
|
111
114
|
/**
|
|
@@ -147,7 +150,10 @@ class Catalog {
|
|
|
147
150
|
* @param options
|
|
148
151
|
* @returns
|
|
149
152
|
*/
|
|
150
|
-
searchItems(query, options
|
|
153
|
+
async searchItems(query, options) {
|
|
154
|
+
if (!options) {
|
|
155
|
+
options = this.getDefaultSearchOptions("item");
|
|
156
|
+
}
|
|
151
157
|
if (!this.getScope("item")) {
|
|
152
158
|
const result = this.getEmptyResult();
|
|
153
159
|
result.messages = [
|
|
@@ -174,7 +180,10 @@ class Catalog {
|
|
|
174
180
|
* @param options
|
|
175
181
|
* @returns
|
|
176
182
|
*/
|
|
177
|
-
searchGroups(query, options
|
|
183
|
+
async searchGroups(query, options) {
|
|
184
|
+
if (!options) {
|
|
185
|
+
options = this.getDefaultSearchOptions("group");
|
|
186
|
+
}
|
|
178
187
|
if (!this.getScope("group")) {
|
|
179
188
|
const result = this.getEmptyResult();
|
|
180
189
|
result.messages = [
|
|
@@ -201,7 +210,7 @@ class Catalog {
|
|
|
201
210
|
* @param options
|
|
202
211
|
* @returns
|
|
203
212
|
*/
|
|
204
|
-
searchUsers(query, options = {}) {
|
|
213
|
+
async searchUsers(query, options = {}) {
|
|
205
214
|
if (!this.getScope("user")) {
|
|
206
215
|
const result = this.getEmptyResult();
|
|
207
216
|
result.messages = [
|
|
@@ -345,6 +354,14 @@ class Catalog {
|
|
|
345
354
|
next: null,
|
|
346
355
|
};
|
|
347
356
|
}
|
|
357
|
+
getDefaultSearchOptions(type) {
|
|
358
|
+
return {
|
|
359
|
+
targetEntity: type,
|
|
360
|
+
num: 10,
|
|
361
|
+
start: 1,
|
|
362
|
+
requestOptions: this._context.hubRequestOptions,
|
|
363
|
+
};
|
|
364
|
+
}
|
|
348
365
|
}
|
|
349
366
|
exports.Catalog = Catalog;
|
|
350
367
|
//# sourceMappingURL=Catalog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Catalog.js","sourceRoot":"","sources":["../../../src/search/Catalog.ts"],"names":[],"mappings":";;;AACA,kEAA+D;
|
|
1
|
+
{"version":3,"file":"Catalog.js","sourceRoot":"","sources":["../../../src/search/Catalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -86,7 +86,7 @@ class HubSiteManager {
|
|
|
86
86
|
* @param requestOptions
|
|
87
87
|
* @returns
|
|
88
88
|
*/
|
|
89
|
-
async
|
|
89
|
+
async delete(id, requestOptions) {
|
|
90
90
|
if (requestOptions || this.context.isAuthenticated) {
|
|
91
91
|
return HubSites_1.destroySite(id, requestOptions || this.context.hubRequestOptions);
|
|
92
92
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubSiteManager.js","sourceRoot":"","sources":["../../../src/sites/HubSiteManager.ts"],"names":[],"mappings":";;;AAEA,0CAAmC;AAOnC,mDAAmD;AACnD,kEAA+D;AAC/D,yCAOoB;AAGpB,gEAAoF;AAKpF,MAAa,cAAc;IAkBzB;;;;OAIG;IACH,YAAoB,gBAAuD;QACzE,IAAI,gBAAgB,YAAY,2CAAoB,EAAE;YACpD,IAAI,CAAC,eAAe,GAAG,gBAAgB,CAAC;SACzC;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC;SAClC;IACH,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,CACT,gBAAuD;QAEvD,OAAO,IAAI,cAAc,CAAC,gBAAgB,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,IAAY,OAAO;QACjB,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;SACrC;aAAM;YACL,OAAO,IAAI,CAAC,QAAQ,CAAC;SACtB;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,MAAM,CACV,IAAuB,EACvB,cAAmC;QAEnC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,0BAA0B;YAC1B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBACnB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;aAC7C;YACD,OAAO,qBAAU,CAAC,IAAI,EAAE,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;SAC3E;aAAM;YACL,MAAM,IAAI,kBAAQ,CAChB,aAAa,EACb,6CAA6C,CAC9C,CAAC;SACH;IACH,CAAC;IACD;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,IAAc,EACd,cAAmC;QAEnC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,OAAO,qBAAU,CAAC,IAAI,EAAE,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;SAC3E;aAAM;YACL,MAAM,IAAI,kBAAQ,CAChB,aAAa,EACb,8CAA8C,CAC/C,CAAC;SACH;IACH,CAAC;IACD;;;;;;;OAOG;IACH,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"HubSiteManager.js","sourceRoot":"","sources":["../../../src/sites/HubSiteManager.ts"],"names":[],"mappings":"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"}
|
package/dist/node/sites/index.js
CHANGED
|
@@ -6,7 +6,6 @@ tslib_1.__exportStar(require("./domains"), exports);
|
|
|
6
6
|
tslib_1.__exportStar(require("./drafts"), exports);
|
|
7
7
|
tslib_1.__exportStar(require("./fetchSiteModel"), exports);
|
|
8
8
|
tslib_1.__exportStar(require("./get-site-by-id"), exports);
|
|
9
|
-
tslib_1.__exportStar(require("./HubSiteManager"), exports);
|
|
10
9
|
tslib_1.__exportStar(require("./HubSites"), exports);
|
|
11
10
|
tslib_1.__exportStar(require("./registerSiteAsApplication"), exports);
|
|
12
11
|
tslib_1.__exportStar(require("./site-schema-version"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sites/index.ts"],"names":[],"mappings":";;;AAAA,wEAA8C;AAC9C,oDAA0B;AAC1B,mDAAyB;AACzB,2DAAiC;AACjC,2DAAiC;AACjC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sites/index.ts"],"names":[],"mappings":";;;AAAA,wEAA8C;AAC9C,oDAA0B;AAC1B,mDAAyB;AACzB,2DAAiC;AACjC,2DAAiC;AACjC,qDAA2B;AAC3B,sEAA4C;AAC5C,gEAAsC;AACtC,mDAAyB;AACzB,gEAAsC"}
|
package/dist/types/Hub.d.ts
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import { HubSiteManager } from ".";
|
|
2
1
|
import { ArcGISContextManager, IArcGISContextManagerOptions } from "./ArcGISContextManager";
|
|
3
|
-
import { HubProjectManager } from "./projects/HubProjectManager";
|
|
4
2
|
/**
|
|
5
3
|
* Options for instantiating a Hub instance
|
|
6
4
|
*/
|
|
@@ -44,8 +42,6 @@ export declare class Hub {
|
|
|
44
42
|
* everything will be kept in sync.
|
|
45
43
|
*/
|
|
46
44
|
private _contextManager;
|
|
47
|
-
private _projectManager;
|
|
48
|
-
private _siteManager;
|
|
49
45
|
/**
|
|
50
46
|
* Private so we can employ a factory function to do
|
|
51
47
|
* async work during creation
|
|
@@ -64,18 +60,4 @@ export declare class Hub {
|
|
|
64
60
|
* @memberof Hub
|
|
65
61
|
*/
|
|
66
62
|
get context(): import("./ArcGISContext").IArcGISContext;
|
|
67
|
-
/**
|
|
68
|
-
* HubProjectManager for the current Hub
|
|
69
|
-
*
|
|
70
|
-
* @readonly
|
|
71
|
-
* @memberof Hub
|
|
72
|
-
*/
|
|
73
|
-
get projects(): HubProjectManager;
|
|
74
|
-
/**
|
|
75
|
-
* HubSiteManager for the current Hub
|
|
76
|
-
*
|
|
77
|
-
* @readonly
|
|
78
|
-
* @memberof Hub
|
|
79
|
-
*/
|
|
80
|
-
get sites(): HubSiteManager;
|
|
81
63
|
}
|
|
@@ -0,0 +1,43 @@
|
|
|
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: HubPermission, definition: 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
|
+
}
|
|
@@ -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,40 @@
|
|
|
1
|
+
import { IUser } from "@esri/arcgis-rest-portal";
|
|
2
|
+
import { PermissionManager } from "../PermissionManager";
|
|
3
|
+
import { IHubPermission, HubPermission } from "../types/IHubPermission";
|
|
4
|
+
/**
|
|
5
|
+
* Composable behavior that adds permissions to an entity
|
|
6
|
+
*/
|
|
7
|
+
export interface IWithPermissionBehavior {
|
|
8
|
+
permissions: PermissionManager;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Check if the user has a specific permission in the context of an entity
|
|
12
|
+
* @param entity
|
|
13
|
+
* @param permission
|
|
14
|
+
* @param user
|
|
15
|
+
* @returns
|
|
16
|
+
*/
|
|
17
|
+
export declare function checkPermission(permission: HubPermission, user: IUser, permissions: IHubPermission[]): boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Get all the permission definitions for the given entity, and the specific permission
|
|
20
|
+
* @param permission
|
|
21
|
+
* @param permissions
|
|
22
|
+
* @returns
|
|
23
|
+
*/
|
|
24
|
+
export declare function getPermissions(permission: HubPermission, permissions: IHubPermission[]): IHubPermission[];
|
|
25
|
+
/**
|
|
26
|
+
* Add a permission entry to the permissions array
|
|
27
|
+
* @param permission
|
|
28
|
+
* @param definition
|
|
29
|
+
* @param permissions
|
|
30
|
+
* @returns
|
|
31
|
+
*/
|
|
32
|
+
export declare function addPermission(permission: HubPermission, definition: IHubPermission, permissions: IHubPermission[]): IHubPermission[];
|
|
33
|
+
/**
|
|
34
|
+
* Remove a permission
|
|
35
|
+
* @param permission
|
|
36
|
+
* @param targetId
|
|
37
|
+
* @param permissions
|
|
38
|
+
* @returns
|
|
39
|
+
*/
|
|
40
|
+
export declare function removePermission(permission: HubPermission, targetId: string, permissions: IHubPermission[]): IHubPermission[];
|
|
@@ -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
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ensure consitent interfaces for the Hub classes
|
|
3
|
+
*/
|
|
4
|
+
export interface IWithStoreBehavior<T> {
|
|
5
|
+
/**
|
|
6
|
+
* Export the internal entity to a JSON object. This should be used to get the JSON representation of the entity before passing into a component
|
|
7
|
+
*/
|
|
8
|
+
toJson(): T;
|
|
9
|
+
/**
|
|
10
|
+
* Push changes into the Class. This method should be used when applying updates from a component, into the class instance
|
|
11
|
+
* @param changes
|
|
12
|
+
*/
|
|
13
|
+
update(changes: Partial<T>): void;
|
|
14
|
+
/**
|
|
15
|
+
* Save the class instance to it's backing store
|
|
16
|
+
*/
|
|
17
|
+
save(): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Delete the class instance from it's backing store
|
|
20
|
+
*/
|
|
21
|
+
delete(): Promise<void>;
|
|
22
|
+
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export * from "./
|
|
2
|
-
export * from "./
|
|
3
|
-
export * from "./
|
|
1
|
+
export * from "./IWithBannerImage";
|
|
2
|
+
export * from "./IWithLayout";
|
|
3
|
+
export * from "./IWithSlug";
|
|
4
|
+
export * from "./IWithPermissions";
|
|
@@ -23,7 +23,7 @@ export interface IHubEntityManager<T> {
|
|
|
23
23
|
* @param id
|
|
24
24
|
* @param requestOptions
|
|
25
25
|
*/
|
|
26
|
-
|
|
26
|
+
delete(id: string, requestOptions: IUserRequestOptions): Promise<void>;
|
|
27
27
|
/**
|
|
28
28
|
* Get an entity by an identifier. Implementations can handle this
|
|
29
29
|
* differently as needed. i.e. a HubProject can be fetched by item id (guid)
|
|
@@ -0,0 +1,23 @@
|
|
|
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";
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { IHubTimeline } from "
|
|
2
|
-
import {
|
|
1
|
+
import { IHubTimeline, IHubItemEntity } from "./index";
|
|
2
|
+
import { IWithLayout, IWithPermissionDefinition, IWithSlug } from "../traits/index";
|
|
3
|
+
import { IWithCatalogDefinition } from "../traits/IWithCatalogDefinition";
|
|
3
4
|
/**
|
|
4
5
|
* Defines the properties of a Hub Project object
|
|
5
6
|
*/
|
|
6
|
-
export interface IHubProject extends IHubItemEntity, IWithSlug, IWithLayout {
|
|
7
|
+
export interface IHubProject extends IHubItemEntity, IWithSlug, IWithCatalogDefinition, IWithLayout, IWithPermissionDefinition {
|
|
7
8
|
/**
|
|
8
9
|
* Timeline for the project
|
|
9
10
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IExtent } from "@esri/arcgis-rest-feature-layer";
|
|
2
|
-
import { IWithSlug } from "../traits/
|
|
3
|
-
import { IWithLayout } from "../traits/
|
|
2
|
+
import { IWithSlug } from "../traits/IWithSlug";
|
|
3
|
+
import { IWithLayout } from "../traits/IWithLayout";
|
|
4
4
|
import { IHubItemEntity } from "./IHubItemEntity";
|
|
5
5
|
/**
|
|
6
6
|
* DRAFT: Under development and more properties will likely be added
|
|
@@ -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";
|
package/dist/types/index.d.ts
CHANGED
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { IHubProject, IWithPermissionBehavior, IWithCatalogBehavior, PermissionManager, IWithStoreBehavior, IWithSharingBehavior, SettableAccessLevel } from "../core";
|
|
2
|
+
import { Catalog } from "../search/Catalog";
|
|
3
|
+
import { IArcGISContext } from "../ArcGISContext";
|
|
4
|
+
import { IGroup } from "@esri/arcgis-rest-types";
|
|
5
|
+
/**
|
|
6
|
+
* Hub Project Class
|
|
7
|
+
*/
|
|
8
|
+
export declare class HubProject implements IWithStoreBehavior<IHubProject>, IWithPermissionBehavior, IWithCatalogBehavior, IWithSharingBehavior {
|
|
9
|
+
private context;
|
|
10
|
+
private entity;
|
|
11
|
+
private isDestroyed;
|
|
12
|
+
private _catalog;
|
|
13
|
+
private _permissionManager;
|
|
14
|
+
/**
|
|
15
|
+
* Private constructor so we don't have `new` all over the place. Allows for
|
|
16
|
+
* more flexibility in how we create the HubProjectManager over time.
|
|
17
|
+
* @param context
|
|
18
|
+
*/
|
|
19
|
+
private constructor();
|
|
20
|
+
/**
|
|
21
|
+
* @returns Catalog instance for this project. Note: Do not hold direct references to this object; always access it from the project.
|
|
22
|
+
*/
|
|
23
|
+
get catalog(): Catalog;
|
|
24
|
+
/**
|
|
25
|
+
* @returns PermissionManager instance for this project. Note: Do not hold direct references to this object; always access it from the project.
|
|
26
|
+
*/
|
|
27
|
+
get permissions(): PermissionManager;
|
|
28
|
+
/**
|
|
29
|
+
* Create an instance from an IHubProject object
|
|
30
|
+
* @param json - JSON object to create a HubProject from
|
|
31
|
+
* @param context - ArcGIS context
|
|
32
|
+
* @returns
|
|
33
|
+
*/
|
|
34
|
+
static fromJson(json: Partial<IHubProject>, context: IArcGISContext): HubProject;
|
|
35
|
+
/**
|
|
36
|
+
* Create a new HubProject, returning a HubProject instance.
|
|
37
|
+
* Note: This does not persist the Project into the backing store
|
|
38
|
+
* @param partialProject
|
|
39
|
+
* @param context
|
|
40
|
+
* @returns
|
|
41
|
+
*/
|
|
42
|
+
static create(partialProject: Partial<IHubProject>, context: IArcGISContext, save?: boolean): Promise<HubProject>;
|
|
43
|
+
/**
|
|
44
|
+
* Fetch a Project from the backing store and return a HubProject instance.
|
|
45
|
+
* @param identifier - Identifier of the project to load
|
|
46
|
+
* @param context
|
|
47
|
+
* @returns
|
|
48
|
+
*/
|
|
49
|
+
static fetch(identifier: string, context: IArcGISContext): Promise<HubProject>;
|
|
50
|
+
private static applyDefaults;
|
|
51
|
+
/**
|
|
52
|
+
* Get the current state of the IHubProject from the instance
|
|
53
|
+
* @returns IHubProject POJO
|
|
54
|
+
*/
|
|
55
|
+
toJson(): IHubProject;
|
|
56
|
+
/**
|
|
57
|
+
* Apply a new state to the instance
|
|
58
|
+
* @param changes
|
|
59
|
+
*/
|
|
60
|
+
update(changes: Partial<IHubProject>): void;
|
|
61
|
+
/**
|
|
62
|
+
* Save the HubProject to the store
|
|
63
|
+
* @returns
|
|
64
|
+
*/
|
|
65
|
+
save(): Promise<void>;
|
|
66
|
+
/**
|
|
67
|
+
* Delete the HubProject from the store
|
|
68
|
+
* set a flag to indicate that it is destroyed
|
|
69
|
+
* @returns
|
|
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[]>;
|
|
92
|
+
}
|