@esri/hub-common 10.0.2 → 11.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/Hub.js +4 -0
- package/dist/esm/Hub.js.map +1 -1
- package/dist/esm/collections.js +13 -0
- package/dist/esm/collections.js.map +1 -1
- package/dist/esm/content/get-family.js +46 -1
- package/dist/esm/content/get-family.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 -0
- 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/node/Hub.js +4 -0
- package/dist/node/Hub.js.map +1 -1
- package/dist/node/collections.js +14 -1
- package/dist/node/collections.js.map +1 -1
- package/dist/node/content/get-family.js +47 -1
- package/dist/node/content/get-family.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 -0
- 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/types/collections.d.ts +7 -0
- package/dist/types/content/get-family.d.ts +7 -0
- 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 -0
- package/dist/types/search/Catalog.d.ts +4 -3
- package/dist/types/sites/HubSiteManager.d.ts +1 -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,369 @@
|
|
|
1
|
+
import { DEFAULT_PROJECT } from "./defaults";
|
|
2
|
+
import { PermissionManager, } from "../core";
|
|
3
|
+
import { cloneObject } from "../util";
|
|
4
|
+
import { createProject, deleteProject, fetchProject, updateProject, } from "./HubProjects";
|
|
5
|
+
import { Catalog } from "../search/Catalog";
|
|
6
|
+
import { setItemAccess, shareItemWithGroup, unshareItemWithGroup, } from "@esri/arcgis-rest-portal";
|
|
7
|
+
import { sharedWith } from "../core/_internal/sharedWith";
|
|
8
|
+
/**
|
|
9
|
+
* Hub Project Class
|
|
10
|
+
*/
|
|
11
|
+
export class HubProject {
|
|
12
|
+
/**
|
|
13
|
+
* Private constructor so we don't have `new` all over the place. Allows for
|
|
14
|
+
* more flexibility in how we create the HubProjectManager over time.
|
|
15
|
+
* @param context
|
|
16
|
+
*/
|
|
17
|
+
constructor(project, context) {
|
|
18
|
+
this.isDestroyed = false;
|
|
19
|
+
this.context = context;
|
|
20
|
+
this.entity = project;
|
|
21
|
+
this._catalog = Catalog.fromJson(project.catalogDefinition, this.context);
|
|
22
|
+
this._permissionManager = PermissionManager.fromJson(project.permissionDefinition, this.context);
|
|
23
|
+
}
|
|
24
|
+
//#region Properties - coverage skipped for now
|
|
25
|
+
// TODO: decide if we want ambient dirty tracking or if we
|
|
26
|
+
// implement that as async check against the server
|
|
27
|
+
// // istanbul ignore next
|
|
28
|
+
// get permissionDefinition(): IHubPermission[] {
|
|
29
|
+
// return this.entity.permissionDefinition;
|
|
30
|
+
// }
|
|
31
|
+
// // istanbul ignore next
|
|
32
|
+
// set permissionDefinition(permissions: IHubPermission[]) {
|
|
33
|
+
// this.entity.permissionDefinition = permissions;
|
|
34
|
+
// }
|
|
35
|
+
// // istanbul ignore next
|
|
36
|
+
// get timeline(): IHubTimeline | undefined {
|
|
37
|
+
// return this.entity.timeline;
|
|
38
|
+
// }
|
|
39
|
+
// // istanbul ignore next
|
|
40
|
+
// set timeline(value: IHubTimeline | undefined) {
|
|
41
|
+
// this.entity.timeline = value;
|
|
42
|
+
// }
|
|
43
|
+
// // istanbul ignore next
|
|
44
|
+
// get status(): "inactive" | "active" {
|
|
45
|
+
// return this.entity.status;
|
|
46
|
+
// }
|
|
47
|
+
// // istanbul ignore next
|
|
48
|
+
// set status(value: "inactive" | "active") {
|
|
49
|
+
// this.entity.status = value;
|
|
50
|
+
// }
|
|
51
|
+
// // istanbul ignore next
|
|
52
|
+
// get thumbnailUrl(): string | undefined {
|
|
53
|
+
// return this.entity.thumbnailUrl;
|
|
54
|
+
// }
|
|
55
|
+
// // istanbul ignore next
|
|
56
|
+
// set thumbnailUrl(value: string | undefined) {
|
|
57
|
+
// this.entity.thumbnailUrl = value;
|
|
58
|
+
// }
|
|
59
|
+
// // istanbul ignore next
|
|
60
|
+
// get owner(): string {
|
|
61
|
+
// return this.entity.owner;
|
|
62
|
+
// }
|
|
63
|
+
// // istanbul ignore next
|
|
64
|
+
// get description(): string | undefined {
|
|
65
|
+
// return this.entity.description;
|
|
66
|
+
// }
|
|
67
|
+
// // istanbul ignore next
|
|
68
|
+
// set description(value: string | undefined) {
|
|
69
|
+
// this.entity.description = value;
|
|
70
|
+
// }
|
|
71
|
+
// // istanbul ignore next
|
|
72
|
+
// get boundary(): IHubGeography | undefined {
|
|
73
|
+
// return this.entity.boundary;
|
|
74
|
+
// }
|
|
75
|
+
// // istanbul ignore next
|
|
76
|
+
// set boundary(value: IHubGeography | undefined) {
|
|
77
|
+
// this.entity.boundary = value;
|
|
78
|
+
// }
|
|
79
|
+
// // istanbul ignore next
|
|
80
|
+
// get culture(): string | undefined {
|
|
81
|
+
// return this.entity.culture;
|
|
82
|
+
// }
|
|
83
|
+
// // istanbul ignore next
|
|
84
|
+
// set culture(value: string | undefined) {
|
|
85
|
+
// this.entity.culture = value;
|
|
86
|
+
// }
|
|
87
|
+
// // istanbul ignore next
|
|
88
|
+
// get tags(): string[] {
|
|
89
|
+
// return this.entity.tags;
|
|
90
|
+
// }
|
|
91
|
+
// // istanbul ignore next
|
|
92
|
+
// set tags(value: string[]) {
|
|
93
|
+
// this.entity.tags = value;
|
|
94
|
+
// }
|
|
95
|
+
// // istanbul ignore next
|
|
96
|
+
// get typeKeywords(): string[] | undefined {
|
|
97
|
+
// return this.entity.typeKeywords;
|
|
98
|
+
// }
|
|
99
|
+
// // istanbul ignore next
|
|
100
|
+
// set typeKeywords(value: string[] | undefined) {
|
|
101
|
+
// this.entity.typeKeywords = value;
|
|
102
|
+
// }
|
|
103
|
+
// // istanbul ignore next
|
|
104
|
+
// get url(): string | undefined {
|
|
105
|
+
// return this.entity.url;
|
|
106
|
+
// }
|
|
107
|
+
// // istanbul ignore next
|
|
108
|
+
// set url(value: string | undefined) {
|
|
109
|
+
// this.entity.url = value;
|
|
110
|
+
// }
|
|
111
|
+
// // istanbul ignore next
|
|
112
|
+
// get id(): string {
|
|
113
|
+
// return this.entity.id;
|
|
114
|
+
// }
|
|
115
|
+
// // istanbul ignore next
|
|
116
|
+
// get name(): string {
|
|
117
|
+
// return this.entity.name;
|
|
118
|
+
// }
|
|
119
|
+
// // istanbul ignore next
|
|
120
|
+
// set name(value: string) {
|
|
121
|
+
// this.entity.name = value;
|
|
122
|
+
// }
|
|
123
|
+
// // istanbul ignore next
|
|
124
|
+
// get summary(): string | undefined {
|
|
125
|
+
// return this.entity.summary;
|
|
126
|
+
// }
|
|
127
|
+
// // istanbul ignore next
|
|
128
|
+
// set summary(value: string | undefined) {
|
|
129
|
+
// this.entity.summary = value;
|
|
130
|
+
// }
|
|
131
|
+
// // istanbul ignore next
|
|
132
|
+
// get createdDate(): Date {
|
|
133
|
+
// return this.entity.createdDate;
|
|
134
|
+
// }
|
|
135
|
+
// // istanbul ignore next
|
|
136
|
+
// get createdDateSource(): string {
|
|
137
|
+
// return this.entity.createdDateSource;
|
|
138
|
+
// }
|
|
139
|
+
// // istanbul ignore next
|
|
140
|
+
// get updatedDate(): Date {
|
|
141
|
+
// return this.entity.updatedDate;
|
|
142
|
+
// }
|
|
143
|
+
// // istanbul ignore next
|
|
144
|
+
// get updatedDateSource(): string {
|
|
145
|
+
// return this.entity.updatedDateSource;
|
|
146
|
+
// }
|
|
147
|
+
// // istanbul ignore next
|
|
148
|
+
// get type(): string {
|
|
149
|
+
// return this.entity.type;
|
|
150
|
+
// }
|
|
151
|
+
// // istanbul ignore next
|
|
152
|
+
// get source(): string | undefined {
|
|
153
|
+
// return this.entity.source;
|
|
154
|
+
// }
|
|
155
|
+
// // istanbul ignore next
|
|
156
|
+
// set source(value: string | undefined) {
|
|
157
|
+
// this.entity.source = value;
|
|
158
|
+
// }
|
|
159
|
+
// // istanbul ignore next
|
|
160
|
+
// get slug(): string {
|
|
161
|
+
// return this.entity.slug;
|
|
162
|
+
// }
|
|
163
|
+
// // istanbul ignore next
|
|
164
|
+
// set slug(value: string) {
|
|
165
|
+
// this.entity.slug = value;
|
|
166
|
+
// }
|
|
167
|
+
// // istanbul ignore next
|
|
168
|
+
// get orgUrlKey(): string {
|
|
169
|
+
// return this.entity.orgUrlKey;
|
|
170
|
+
// }
|
|
171
|
+
// // istanbul ignore next
|
|
172
|
+
// get layout(): IHubLayout | undefined {
|
|
173
|
+
// return this.entity.layout;
|
|
174
|
+
// }
|
|
175
|
+
// // istanbul ignore next
|
|
176
|
+
// set layout(value: IHubLayout | undefined) {
|
|
177
|
+
// this.entity.layout = value;
|
|
178
|
+
// }
|
|
179
|
+
// // istanbul ignore next
|
|
180
|
+
// get catalogDefinition(): IHubCatalog {
|
|
181
|
+
// return this.entity.catalogDefinition;
|
|
182
|
+
// }
|
|
183
|
+
// set catalogDefinition(value: IHubCatalog) {
|
|
184
|
+
// this.entity.catalogDefinition = value;
|
|
185
|
+
// // update the catalog instance
|
|
186
|
+
// this._catalog = Catalog.fromJson(value, this.context);
|
|
187
|
+
// }
|
|
188
|
+
/**
|
|
189
|
+
* @returns Catalog instance for this project. Note: Do not hold direct references to this object; always access it from the project.
|
|
190
|
+
*/
|
|
191
|
+
get catalog() {
|
|
192
|
+
return this._catalog;
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* @returns PermissionManager instance for this project. Note: Do not hold direct references to this object; always access it from the project.
|
|
196
|
+
*/
|
|
197
|
+
get permissions() {
|
|
198
|
+
return this._permissionManager;
|
|
199
|
+
}
|
|
200
|
+
// #endregion
|
|
201
|
+
/**
|
|
202
|
+
* Create an instance from an IHubProject object
|
|
203
|
+
* @param json - JSON object to create a HubProject from
|
|
204
|
+
* @param context - ArcGIS context
|
|
205
|
+
* @returns
|
|
206
|
+
*/
|
|
207
|
+
static fromJson(json, context) {
|
|
208
|
+
// merge what we have with the default values
|
|
209
|
+
const pojo = this.applyDefaults(json, context);
|
|
210
|
+
return new HubProject(pojo, context);
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Create a new HubProject, returning a HubProject instance.
|
|
214
|
+
* Note: This does not persist the Project into the backing store
|
|
215
|
+
* @param partialProject
|
|
216
|
+
* @param context
|
|
217
|
+
* @returns
|
|
218
|
+
*/
|
|
219
|
+
static async create(partialProject, context, save = false) {
|
|
220
|
+
const pojo = this.applyDefaults(partialProject, context);
|
|
221
|
+
// return an instance of HubProject
|
|
222
|
+
const instance = HubProject.fromJson(pojo, context);
|
|
223
|
+
if (save) {
|
|
224
|
+
await instance.save();
|
|
225
|
+
}
|
|
226
|
+
return instance;
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Fetch a Project from the backing store and return a HubProject instance.
|
|
230
|
+
* @param identifier - Identifier of the project to load
|
|
231
|
+
* @param context
|
|
232
|
+
* @returns
|
|
233
|
+
*/
|
|
234
|
+
static async fetch(identifier, context) {
|
|
235
|
+
// fetch the project by id or slug
|
|
236
|
+
try {
|
|
237
|
+
const project = await fetchProject(identifier, context.requestOptions);
|
|
238
|
+
// create an instance of HubProject from the project
|
|
239
|
+
return HubProject.fromJson(project, context);
|
|
240
|
+
}
|
|
241
|
+
catch (ex) {
|
|
242
|
+
if (ex.message ===
|
|
243
|
+
"CONT_0001: Item does not exist or is inaccessible.") {
|
|
244
|
+
throw new Error(`Project not found.`);
|
|
245
|
+
}
|
|
246
|
+
else {
|
|
247
|
+
throw ex;
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
static applyDefaults(partialProject, context) {
|
|
252
|
+
// ensure we have the orgUrlKey
|
|
253
|
+
if (!partialProject.orgUrlKey) {
|
|
254
|
+
partialProject.orgUrlKey = context.portal.urlKey;
|
|
255
|
+
}
|
|
256
|
+
// extend the partial over the defaults
|
|
257
|
+
const pojo = Object.assign(Object.assign({}, DEFAULT_PROJECT), partialProject);
|
|
258
|
+
return pojo;
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* Get the current state of the IHubProject from the instance
|
|
262
|
+
* @returns IHubProject POJO
|
|
263
|
+
*/
|
|
264
|
+
toJson() {
|
|
265
|
+
if (this.isDestroyed) {
|
|
266
|
+
throw new Error("HubProject is already destroyed.");
|
|
267
|
+
}
|
|
268
|
+
return cloneObject(this.entity);
|
|
269
|
+
}
|
|
270
|
+
/**
|
|
271
|
+
* Apply a new state to the instance
|
|
272
|
+
* @param changes
|
|
273
|
+
*/
|
|
274
|
+
update(changes) {
|
|
275
|
+
if (this.isDestroyed) {
|
|
276
|
+
throw new Error("HubProject is already destroyed.");
|
|
277
|
+
}
|
|
278
|
+
// merge partial onto existing entity
|
|
279
|
+
this.entity = Object.assign(Object.assign({}, this.entity), changes);
|
|
280
|
+
// update internal instances
|
|
281
|
+
if (changes.catalogDefinition) {
|
|
282
|
+
this._catalog = Catalog.fromJson(this.entity.catalogDefinition, this.context);
|
|
283
|
+
}
|
|
284
|
+
if (changes.permissionDefinition) {
|
|
285
|
+
this._permissionManager = PermissionManager.fromJson(this.entity.permissionDefinition, this.context);
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
/**
|
|
289
|
+
* Save the HubProject to the store
|
|
290
|
+
* @returns
|
|
291
|
+
*/
|
|
292
|
+
async save() {
|
|
293
|
+
if (this.isDestroyed) {
|
|
294
|
+
throw new Error("HubProject is already destroyed.");
|
|
295
|
+
}
|
|
296
|
+
// get the catalog definition out of the instance
|
|
297
|
+
this.entity.catalogDefinition = this._catalog.toJson();
|
|
298
|
+
this.entity.permissionDefinition = this._permissionManager.toJson();
|
|
299
|
+
if (this.entity.id) {
|
|
300
|
+
// update it
|
|
301
|
+
this.entity = await updateProject(this.entity, this.context.userRequestOptions);
|
|
302
|
+
}
|
|
303
|
+
else {
|
|
304
|
+
// create it
|
|
305
|
+
this.entity = await createProject(this.entity, this.context.userRequestOptions);
|
|
306
|
+
}
|
|
307
|
+
return;
|
|
308
|
+
}
|
|
309
|
+
/**
|
|
310
|
+
* Delete the HubProject from the store
|
|
311
|
+
* set a flag to indicate that it is destroyed
|
|
312
|
+
* @returns
|
|
313
|
+
*/
|
|
314
|
+
async delete() {
|
|
315
|
+
if (this.isDestroyed) {
|
|
316
|
+
throw new Error("HubProject is already destroyed.");
|
|
317
|
+
}
|
|
318
|
+
this.isDestroyed = true;
|
|
319
|
+
// Delegate to module fn
|
|
320
|
+
await deleteProject(this.entity.id, this.context.userRequestOptions);
|
|
321
|
+
}
|
|
322
|
+
//#region IWithSharingBehavior
|
|
323
|
+
/**
|
|
324
|
+
* Share the Project with the specified group id
|
|
325
|
+
* @param groupId
|
|
326
|
+
*/
|
|
327
|
+
async shareWithGroup(groupId) {
|
|
328
|
+
await shareItemWithGroup({
|
|
329
|
+
id: this.entity.id,
|
|
330
|
+
groupId,
|
|
331
|
+
owner: this.entity.owner,
|
|
332
|
+
authentication: this.context.session,
|
|
333
|
+
});
|
|
334
|
+
}
|
|
335
|
+
/**
|
|
336
|
+
* Unshare the Project with the specified group id
|
|
337
|
+
* @param groupId
|
|
338
|
+
*/
|
|
339
|
+
async unshareWithGroup(groupId) {
|
|
340
|
+
await unshareItemWithGroup({
|
|
341
|
+
id: this.entity.id,
|
|
342
|
+
groupId,
|
|
343
|
+
owner: this.entity.owner,
|
|
344
|
+
authentication: this.context.session,
|
|
345
|
+
});
|
|
346
|
+
}
|
|
347
|
+
/**
|
|
348
|
+
* Set the access level of the backing item
|
|
349
|
+
* @param access
|
|
350
|
+
*/
|
|
351
|
+
async setAccess(access) {
|
|
352
|
+
await setItemAccess({
|
|
353
|
+
id: this.entity.id,
|
|
354
|
+
access,
|
|
355
|
+
authentication: this.context.session,
|
|
356
|
+
});
|
|
357
|
+
// if this succeeded, update the entity
|
|
358
|
+
this.entity.access = access;
|
|
359
|
+
}
|
|
360
|
+
/**
|
|
361
|
+
* Return a list of groups the Project is shared to.
|
|
362
|
+
* @returns
|
|
363
|
+
*/
|
|
364
|
+
async sharedWith() {
|
|
365
|
+
// delegate to a util that merges the three arrays returned from the api, into a single array
|
|
366
|
+
return sharedWith(this.entity.id, this.context.requestOptions);
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
//# sourceMappingURL=HubProject.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HubProject.js","sourceRoot":"","sources":["../../../src/projects/HubProject.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createProject, updateProject,
|
|
1
|
+
import { createProject, updateProject, deleteProject, fetchProject, searchProjects, convertItemToProject, } from "./HubProjects";
|
|
2
2
|
// Node has issues if this is not directly imported
|
|
3
3
|
import { ArcGISContextManager } from "../ArcGISContextManager";
|
|
4
4
|
import { HubError, } from "..";
|
|
@@ -88,12 +88,12 @@ export class HubProjectManager {
|
|
|
88
88
|
* @param requestOptions
|
|
89
89
|
* @returns
|
|
90
90
|
*/
|
|
91
|
-
async
|
|
91
|
+
async delete(id, requestOptions) {
|
|
92
92
|
if (requestOptions || this.context.isAuthenticated) {
|
|
93
|
-
return
|
|
93
|
+
return deleteProject(id, requestOptions || this.context.userRequestOptions);
|
|
94
94
|
}
|
|
95
95
|
else {
|
|
96
|
-
throw new HubError("
|
|
96
|
+
throw new HubError("Delete Project", "Destroying Hub Projects requires authentication.");
|
|
97
97
|
}
|
|
98
98
|
}
|
|
99
99
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubProjectManager.js","sourceRoot":"","sources":["../../../src/projects/HubProjectManager.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,aAAa,EACb,aAAa,EACb,
|
|
1
|
+
{"version":3,"file":"HubProjectManager.js","sourceRoot":"","sources":["../../../src/projects/HubProjectManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,39 +9,7 @@ import { parseInclude } from "../search/_internal/parseInclude";
|
|
|
9
9
|
import { fetchItemEnrichments } from "../items/_enrichments";
|
|
10
10
|
import { getHubRelativeUrl } from "../content/_internal";
|
|
11
11
|
import { createQueryFromString } from "../search/_internal";
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Default values of a IHubProject
|
|
15
|
-
*/
|
|
16
|
-
const DEFAULT_PROJECT = {
|
|
17
|
-
name: "No title provided",
|
|
18
|
-
tags: [],
|
|
19
|
-
typeKeywords: ["Hub Project"],
|
|
20
|
-
status: "inactive",
|
|
21
|
-
};
|
|
22
|
-
/**
|
|
23
|
-
* Default values for a new HubProject Model
|
|
24
|
-
*/
|
|
25
|
-
const DEFAULT_PROJECT_MODEL = {
|
|
26
|
-
item: {
|
|
27
|
-
type: HUB_PROJECT_ITEM_TYPE,
|
|
28
|
-
title: "No Title Provided",
|
|
29
|
-
description: "No Description Provided",
|
|
30
|
-
snippet: "",
|
|
31
|
-
tags: [],
|
|
32
|
-
typeKeywords: ["Hub Project"],
|
|
33
|
-
properties: {
|
|
34
|
-
slug: "",
|
|
35
|
-
},
|
|
36
|
-
},
|
|
37
|
-
data: {
|
|
38
|
-
display: "about",
|
|
39
|
-
timeline: {},
|
|
40
|
-
status: "inactive",
|
|
41
|
-
contacts: [],
|
|
42
|
-
schemaVersion: 1,
|
|
43
|
-
},
|
|
44
|
-
};
|
|
12
|
+
import { DEFAULT_PROJECT, DEFAULT_PROJECT_MODEL } from "./defaults";
|
|
45
13
|
/**
|
|
46
14
|
* Returns an Array of IPropertyMap objects
|
|
47
15
|
* We could define these directly, but since the
|
|
@@ -74,6 +42,7 @@ function getProjectPropertyMap() {
|
|
|
74
42
|
"layout",
|
|
75
43
|
"location",
|
|
76
44
|
"status",
|
|
45
|
+
"permissions",
|
|
77
46
|
];
|
|
78
47
|
const map = [];
|
|
79
48
|
itemProps.forEach((entry) => {
|
|
@@ -87,6 +56,10 @@ function getProjectPropertyMap() {
|
|
|
87
56
|
objectKey: "slug",
|
|
88
57
|
modelKey: "item.properties.slug",
|
|
89
58
|
});
|
|
59
|
+
map.push({
|
|
60
|
+
objectKey: "catalogDefinition",
|
|
61
|
+
modelKey: "data.catalog",
|
|
62
|
+
});
|
|
90
63
|
map.push({
|
|
91
64
|
objectKey: "orgUrlKey",
|
|
92
65
|
modelKey: "item.properties.orgUrlKey",
|
|
@@ -98,6 +71,7 @@ function getProjectPropertyMap() {
|
|
|
98
71
|
return map;
|
|
99
72
|
}
|
|
100
73
|
/**
|
|
74
|
+
* @private
|
|
101
75
|
* Create a new Hub Project item
|
|
102
76
|
*
|
|
103
77
|
* Minimal properties are name and org
|
|
@@ -124,11 +98,13 @@ export async function createProject(partialProject, requestOptions) {
|
|
|
124
98
|
// create the item
|
|
125
99
|
model = await createModel(model, requestOptions);
|
|
126
100
|
// map the model back into a IHubProject
|
|
127
|
-
|
|
101
|
+
let newProject = mapper.modelToObject(model, {});
|
|
102
|
+
newProject = computeProps(model, newProject, requestOptions);
|
|
128
103
|
// and return it
|
|
129
104
|
return newProject;
|
|
130
105
|
}
|
|
131
106
|
/**
|
|
107
|
+
* @private
|
|
132
108
|
* Update a Hub Project
|
|
133
109
|
* @param project
|
|
134
110
|
* @param requestOptions
|
|
@@ -147,12 +123,14 @@ export async function updateProject(project, requestOptions) {
|
|
|
147
123
|
// update the backing item
|
|
148
124
|
const updatedModel = await updateModel(modelToUpdate, requestOptions);
|
|
149
125
|
// now map back into a project and return that
|
|
150
|
-
|
|
126
|
+
let updatedProject = mapper.modelToObject(updatedModel, project);
|
|
127
|
+
updatedProject = computeProps(model, updatedProject, requestOptions);
|
|
151
128
|
// the casting is needed because modelToObject returns a `Partial<T>`
|
|
152
129
|
// where as this function returns a `T`
|
|
153
130
|
return updatedProject;
|
|
154
131
|
}
|
|
155
132
|
/**
|
|
133
|
+
* @private
|
|
156
134
|
* Get a Hub Project by id or slug
|
|
157
135
|
* @param identifier item id or slug
|
|
158
136
|
* @param requestOptions
|
|
@@ -173,11 +151,12 @@ export function fetchProject(identifier, requestOptions) {
|
|
|
173
151
|
});
|
|
174
152
|
}
|
|
175
153
|
/**
|
|
154
|
+
* @private
|
|
176
155
|
* Remove a Hub Project
|
|
177
156
|
* @param id
|
|
178
157
|
* @param requestOptions
|
|
179
158
|
*/
|
|
180
|
-
export async function
|
|
159
|
+
export async function deleteProject(id, requestOptions) {
|
|
181
160
|
const ro = Object.assign(Object.assign({}, requestOptions), { id });
|
|
182
161
|
await removeItem(ro);
|
|
183
162
|
return;
|
|
@@ -213,6 +192,7 @@ export async function searchProjects(query, options) {
|
|
|
213
192
|
return searchEntities(qry, convertItemToProject, options);
|
|
214
193
|
}
|
|
215
194
|
/**
|
|
195
|
+
* @private
|
|
216
196
|
* Convert an Hub Project Item into a Hub Project, fetching any additional
|
|
217
197
|
* information that may be required
|
|
218
198
|
* @param item
|
|
@@ -222,16 +202,34 @@ export async function searchProjects(query, options) {
|
|
|
222
202
|
export async function convertItemToProject(item, requestOptions) {
|
|
223
203
|
const model = await fetchModelFromItem(item, requestOptions);
|
|
224
204
|
const mapper = new PropertyMapper(getProjectPropertyMap());
|
|
205
|
+
const prj = mapper.modelToObject(model, {});
|
|
206
|
+
return computeProps(model, prj, requestOptions);
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Given a model and a project, set various computed properties that can't be directly mapped
|
|
210
|
+
* @param model
|
|
211
|
+
* @param project
|
|
212
|
+
* @param requestOptions
|
|
213
|
+
* @returns
|
|
214
|
+
*/
|
|
215
|
+
function computeProps(model, project, requestOptions) {
|
|
225
216
|
let token;
|
|
226
217
|
if (requestOptions.authentication) {
|
|
227
218
|
const session = requestOptions.authentication;
|
|
228
219
|
token = session.token;
|
|
229
220
|
}
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
221
|
+
// thumbnail url
|
|
222
|
+
project.thumbnailUrl = getItemThumbnailUrl(model.item, requestOptions, token);
|
|
223
|
+
// Handle Dates
|
|
224
|
+
project.createdDate = new Date(model.item.created);
|
|
225
|
+
project.createdDateSource = "item.created";
|
|
226
|
+
project.updatedDate = new Date(model.item.modified);
|
|
227
|
+
project.updatedDateSource = "item.modified";
|
|
228
|
+
// cast b/c this takes a partial but returns a full project
|
|
229
|
+
return project;
|
|
233
230
|
}
|
|
234
231
|
/**
|
|
232
|
+
* @private
|
|
235
233
|
* Fetch project specific enrichments
|
|
236
234
|
* @param item
|
|
237
235
|
* @param include
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubProjects.js","sourceRoot":"","sources":["../../../src/projects/HubProjects.ts"],"names":[],"mappings":"AAEA,4EAA4E;AAC5E,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,QAAQ,EACR,WAAW,GACZ,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,aAAa,EACb,aAAa,EACb,aAAa,EACb,cAAc,GACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEL,MAAM,EACN,WAAW,EAEX,mBAAmB,EACnB,MAAM,EACN,KAAK,EACL,OAAO,EACP,SAAS,EAET,cAAc,GACf,MAAM,UAAU,CAAC;AAClB,OAAO,EAGL,UAAU,EACV,OAAO,GACR,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAgB,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAQhF,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"HubProjects.js","sourceRoot":"","sources":["../../../src/projects/HubProjects.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export const HUB_PROJECT_ITEM_TYPE = "Hub Project";
|
|
2
|
+
/**
|
|
3
|
+
* Default values of a IHubProject
|
|
4
|
+
*/
|
|
5
|
+
export const DEFAULT_PROJECT = {
|
|
6
|
+
name: "No title provided",
|
|
7
|
+
tags: [],
|
|
8
|
+
typeKeywords: ["Hub Project"],
|
|
9
|
+
status: "inactive",
|
|
10
|
+
catalogDefinition: { schemaVersion: 0 },
|
|
11
|
+
permissionDefinition: [],
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Default values for a new HubProject Model
|
|
15
|
+
*/
|
|
16
|
+
export const DEFAULT_PROJECT_MODEL = {
|
|
17
|
+
item: {
|
|
18
|
+
type: HUB_PROJECT_ITEM_TYPE,
|
|
19
|
+
title: "No Title Provided",
|
|
20
|
+
description: "No Description Provided",
|
|
21
|
+
snippet: "",
|
|
22
|
+
tags: [],
|
|
23
|
+
typeKeywords: ["Hub Project"],
|
|
24
|
+
properties: {
|
|
25
|
+
slug: "",
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
data: {
|
|
29
|
+
display: "about",
|
|
30
|
+
timeline: {},
|
|
31
|
+
status: "inactive",
|
|
32
|
+
contacts: [],
|
|
33
|
+
schemaVersion: 1,
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=defaults.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/projects/defaults.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAC;AAEnD;;GAEG;AACH,MAAM,CAAC,MAAM,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;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAW;IAC3C,IAAI,EAAE;QACJ,IAAI,EAAE,qBAAqB;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"}
|