@esri/hub-common 14.31.0 → 14.32.0

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.
Files changed (46) hide show
  1. package/dist/esm/ArcGISContext.js +19 -0
  2. package/dist/esm/ArcGISContext.js.map +1 -1
  3. package/dist/esm/ArcGISContextManager.js +127 -30
  4. package/dist/esm/ArcGISContextManager.js.map +1 -1
  5. package/dist/esm/utils/getObjectSize.js +13 -0
  6. package/dist/esm/utils/getObjectSize.js.map +1 -0
  7. package/dist/esm/utils/hubUserAppResources.js +84 -0
  8. package/dist/esm/utils/hubUserAppResources.js.map +1 -0
  9. package/dist/esm/utils/index.js +2 -0
  10. package/dist/esm/utils/index.js.map +1 -1
  11. package/dist/esm/utils/internal/clearUserHubSettings.js +15 -0
  12. package/dist/esm/utils/internal/clearUserHubSettings.js.map +1 -0
  13. package/dist/esm/utils/internal/clearUserSiteSettings.js +15 -0
  14. package/dist/esm/utils/internal/clearUserSiteSettings.js.map +1 -0
  15. package/dist/esm/utils/internal/siteSettingsMigrations.js +20 -0
  16. package/dist/esm/utils/internal/siteSettingsMigrations.js.map +1 -0
  17. package/dist/esm/utils/internal/userAppResources.js +101 -0
  18. package/dist/esm/utils/internal/userAppResources.js.map +1 -0
  19. package/dist/node/ArcGISContext.js +19 -0
  20. package/dist/node/ArcGISContext.js.map +1 -1
  21. package/dist/node/ArcGISContextManager.js +127 -30
  22. package/dist/node/ArcGISContextManager.js.map +1 -1
  23. package/dist/node/utils/getObjectSize.js +17 -0
  24. package/dist/node/utils/getObjectSize.js.map +1 -0
  25. package/dist/node/utils/hubUserAppResources.js +91 -0
  26. package/dist/node/utils/hubUserAppResources.js.map +1 -0
  27. package/dist/node/utils/index.js +2 -0
  28. package/dist/node/utils/index.js.map +1 -1
  29. package/dist/node/utils/internal/clearUserHubSettings.js +19 -0
  30. package/dist/node/utils/internal/clearUserHubSettings.js.map +1 -0
  31. package/dist/node/utils/internal/clearUserSiteSettings.js +19 -0
  32. package/dist/node/utils/internal/clearUserSiteSettings.js.map +1 -0
  33. package/dist/node/utils/internal/siteSettingsMigrations.js +25 -0
  34. package/dist/node/utils/internal/siteSettingsMigrations.js.map +1 -0
  35. package/dist/node/utils/internal/userAppResources.js +108 -0
  36. package/dist/node/utils/internal/userAppResources.js.map +1 -0
  37. package/dist/types/ArcGISContext.d.ts +27 -0
  38. package/dist/types/ArcGISContextManager.d.ts +21 -0
  39. package/dist/types/utils/getObjectSize.d.ts +6 -0
  40. package/dist/types/utils/hubUserAppResources.d.ts +45 -0
  41. package/dist/types/utils/index.d.ts +2 -0
  42. package/dist/types/utils/internal/clearUserHubSettings.d.ts +11 -0
  43. package/dist/types/utils/internal/clearUserSiteSettings.d.ts +11 -0
  44. package/dist/types/utils/internal/siteSettingsMigrations.d.ts +13 -0
  45. package/dist/types/utils/internal/userAppResources.d.ts +130 -0
  46. package/package.json +1 -1
@@ -29,6 +29,7 @@ export class ArcGISContext {
29
29
  constructor(opts) {
30
30
  this._portalUrl = "https://www.arcgis.com";
31
31
  this._featureFlags = {};
32
+ this._userResourceTokens = [];
32
33
  this.id = opts.id;
33
34
  this._portalUrl = opts.portalUrl;
34
35
  this._hubUrl = opts.hubUrl;
@@ -52,6 +53,7 @@ export class ArcGISContext {
52
53
  this._trustedOrgs = opts.trustedOrgs;
53
54
  }
54
55
  this._featureFlags = opts.featureFlags || {};
56
+ this._userResourceTokens = opts.userResourceTokens || [];
55
57
  }
56
58
  /**
57
59
  * Return the UserSession if authenticated
@@ -349,5 +351,22 @@ export class ArcGISContext {
349
351
  get trustedOrgs() {
350
352
  return this._trustedOrgs;
351
353
  }
354
+ /**
355
+ * Return the whole array of user resource tokens
356
+ */
357
+ get userResourceTokens() {
358
+ return this._userResourceTokens;
359
+ }
360
+ /**
361
+ * Return a token for a specific app
362
+ * @param app
363
+ * @returns
364
+ */
365
+ tokenFor(app) {
366
+ const entry = this._userResourceTokens.find((e) => e.app === app);
367
+ if (entry) {
368
+ return entry.token;
369
+ }
370
+ }
352
371
  }
353
372
  //# sourceMappingURL=ArcGISContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ArcGISContext.js","sourceRoot":"","sources":["../../src/ArcGISContext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ArcGISContext.js","sourceRoot":"","sources":["../../src/ArcGISContext.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { getSelf, getUser } from "@esri/arcgis-rest-portal";
2
- import { UserSession } from "@esri/arcgis-rest-auth";
2
+ import { exchangeToken, UserSession } from "@esri/arcgis-rest-auth";
3
3
  import { ArcGISContext, } from "./ArcGISContext";
4
4
  import { getHubApiFromPortalUrl } from "./urls/getHubApiFromPortalUrl";
5
5
  import { getPortalBaseFromOrgUrl } from "./urls/getPortalBaseFromOrgUrl";
@@ -30,8 +30,11 @@ export class ArcGISContextManager {
30
30
  */
31
31
  constructor(opts) {
32
32
  this._portalUrl = "https://www.arcgis.com";
33
+ this._properties = {};
33
34
  this._logLevel = Level.error;
34
35
  this._featureFlags = {};
36
+ this._resourceConfigs = [];
37
+ this._resourceTokens = [];
35
38
  // Having a unique id makes debugging easier
36
39
  this.id = new Date().getTime();
37
40
  if (opts.logLevel) {
@@ -42,6 +45,11 @@ export class ArcGISContextManager {
42
45
  if (opts.properties) {
43
46
  this._properties = opts.properties;
44
47
  }
48
+ // Default to the Alpha orgs defined in Hub.js unless
49
+ // other values are passed in
50
+ if (!this._properties.alphaOrgs) {
51
+ this._properties.alphaOrgs = [...ALPHA_ORGS];
52
+ }
45
53
  if (opts.authentication) {
46
54
  this._authentication = opts.authentication;
47
55
  this._portalUrl = this._authentication.portal.replace("/sharing/rest", "");
@@ -72,6 +80,12 @@ export class ArcGISContextManager {
72
80
  if (opts.trustedOrgs) {
73
81
  this._trustedOrgs = cloneObject(opts.trustedOrgs);
74
82
  }
83
+ if (opts.resourceConfigs) {
84
+ this._resourceConfigs = opts.resourceConfigs;
85
+ }
86
+ if (opts.resourceTokens) {
87
+ this._resourceTokens = opts.resourceTokens;
88
+ }
75
89
  }
76
90
  /**
77
91
  * Used to create a new instance of the ArcGISContext class.
@@ -134,6 +148,8 @@ export class ArcGISContextManager {
134
148
  // service status and feature flags are safe to carry forward even if session is expired
135
149
  opts.serviceStatus = state.serviceStatus;
136
150
  opts.featureFlags = state.featureFlags;
151
+ opts.resourceConfigs = state.resourceConfigs;
152
+ opts.resourceTokens = state.resourceTokens;
137
153
  return ArcGISContextManager.create(opts);
138
154
  }
139
155
  /**
@@ -166,10 +182,12 @@ export class ArcGISContextManager {
166
182
  if (!this._context.isPortal) {
167
183
  this._portalUrl = getPortalBaseFromOrgUrl(this._portalUrl);
168
184
  }
169
- // Clear the auth, portalSelf and currentUser props
185
+ // Clear the auth related props
170
186
  this._authentication = null;
171
187
  this._portalSelf = null;
172
188
  this._currentUser = null;
189
+ this._resourceTokens = [];
190
+ // re-create the context
173
191
  this._context = new ArcGISContext(this.contextOpts);
174
192
  }
175
193
  /**
@@ -192,6 +210,9 @@ export class ArcGISContextManager {
192
210
  portalUrl: this._portalUrl,
193
211
  serviceStatus: this._serviceStatus,
194
212
  featureFlags: this._featureFlags,
213
+ properties: this._properties,
214
+ resourceConfigs: this._resourceConfigs,
215
+ resourceTokens: this._resourceTokens,
195
216
  };
196
217
  if (this._authentication) {
197
218
  state.session = this._authentication.serialize();
@@ -202,9 +223,6 @@ export class ArcGISContextManager {
202
223
  if (this._currentUser) {
203
224
  state.currentUser = this._currentUser;
204
225
  }
205
- if (this._properties) {
206
- state.properties = this._properties;
207
- }
208
226
  if (this._trustedOrgIds) {
209
227
  state.trustedOrgIds = this._trustedOrgIds;
210
228
  }
@@ -218,35 +236,79 @@ export class ArcGISContextManager {
218
236
  * store that along with current user
219
237
  */
220
238
  async initialize() {
221
- // if we have auth, and don't have portalSelf or currentUser, fetch them
222
- if (this._authentication && (!this._portalSelf || !this._currentUser)) {
223
- Logger.debug(`ArcGISContextManager-${this.id}: Initializing`);
224
- const username = this._authentication.username;
225
- const requests = [
226
- getSelf({ authentication: this._authentication }),
227
- getUser({ username, authentication: this._authentication }),
228
- getTrustedOrgs(this._portalUrl, this._authentication),
229
- ];
230
- try {
231
- const [portal, user, trustedOrgs] = await Promise.all(requests);
232
- this._portalSelf = portal;
233
- this._currentUser = user;
234
- this._trustedOrgs = trustedOrgs;
235
- this._trustedOrgIds = getTrustedOrgIds(trustedOrgs);
236
- Logger.debug(`ArcGISContextManager-${this.id}: received portalSelf and currentUser`);
239
+ // setup array to hold promises and one to track promise index
240
+ const promises = [];
241
+ const promiseKeys = [];
242
+ // We always want service status if it's not passed in
243
+ if (!this._serviceStatus) {
244
+ promises.push(getServiceStatus(this._portalUrl));
245
+ promiseKeys.push("serviceStatus");
246
+ }
247
+ // Other info is only relevant if we have authentication
248
+ // and we only want to fetch the info, if it was not passed in
249
+ if (this._authentication) {
250
+ const token = await this._authentication.getToken(this._authentication.portal);
251
+ if (!this._portalSelf) {
252
+ promises.push(getSelf({ authentication: this._authentication }));
253
+ promiseKeys.push("portal");
237
254
  }
238
- catch (ex) {
239
- const msg = `ArcGISContextManager could not fetch portal & user for "${this._authentication.username}" using ${this._authentication.portal}.`;
240
- Logger.error(msg);
241
- // tslint:disable-next-line:no-console
242
- console.error(msg);
243
- throw ex;
255
+ if (!this._currentUser) {
256
+ const username = this._authentication.username;
257
+ promises.push(getUser({ username, authentication: this._authentication }));
258
+ promiseKeys.push("user");
244
259
  }
260
+ if (!this._trustedOrgs) {
261
+ promises.push(getTrustedOrgs(this._portalUrl, this._authentication));
262
+ promiseKeys.push("trustedOrgs");
263
+ }
264
+ if (!this._resourceTokens.length && this._resourceConfigs.length) {
265
+ promises.push(getUserResourceTokens(this._resourceConfigs, token, this._portalUrl + "/sharing/rest"));
266
+ promiseKeys.push("tokens");
267
+ }
268
+ // always add "self" to resourceTokens
269
+ this._resourceTokens.push({
270
+ app: "self",
271
+ token,
272
+ clientId: this._authentication.clientId || "self",
273
+ });
245
274
  }
246
- // get service status
247
- if (!this._serviceStatus) {
248
- this._serviceStatus = await getServiceStatus(this._portalUrl);
275
+ // Await promises
276
+ let results;
277
+ try {
278
+ results = await Promise.all(promises);
279
+ }
280
+ catch (ex) {
281
+ const msg = `ArcGISContextManager failed while initializing for "${this._authentication.username}" using ${this._authentication.portal}.`;
282
+ Logger.error(msg);
283
+ // tslint:disable-next-line:no-console
284
+ console.error(msg);
285
+ throw ex;
249
286
  }
287
+ // iterate the keys, assigning values into private fields
288
+ promiseKeys.forEach((key, idx) => {
289
+ const result = results[idx];
290
+ switch (key) {
291
+ case "portal":
292
+ this._portalSelf = result;
293
+ break;
294
+ case "user":
295
+ this._currentUser = result;
296
+ break;
297
+ case "trustedOrgs":
298
+ this._trustedOrgs = result;
299
+ this._trustedOrgIds = getTrustedOrgIds(this._trustedOrgs);
300
+ break;
301
+ case "tokens":
302
+ this._resourceTokens = [
303
+ ...this._resourceTokens,
304
+ ...result,
305
+ ];
306
+ break;
307
+ case "serviceStatus":
308
+ this._serviceStatus = result;
309
+ break;
310
+ }
311
+ });
250
312
  Logger.debug(`ArcGISContextManager-${this.id}: updating context`);
251
313
  // update the context
252
314
  this._context = new ArcGISContext(this.contextOpts);
@@ -278,6 +340,7 @@ export class ArcGISContextManager {
278
340
  if (this._trustedOrgs) {
279
341
  contextOpts.trustedOrgs = this._trustedOrgs;
280
342
  }
343
+ contextOpts.userResourceTokens = this._resourceTokens;
281
344
  return contextOpts;
282
345
  }
283
346
  }
@@ -310,6 +373,18 @@ async function getTrustedOrgs(_portalUrl, _authentication) {
310
373
  function getTrustedOrgIds(trustedOrgs) {
311
374
  return trustedOrgs.map((org) => org.to.orgId);
312
375
  }
376
+ async function getUserResourceTokens(configs, currentToken, portalUrl) {
377
+ // failSafe exchangeToken so we don't have to catch
378
+ const failSafeExchange = failSafe(exchangeToken, null);
379
+ const promises = configs.map((cfg) => {
380
+ return failSafeExchange(currentToken, cfg.clientId, portalUrl).then((token) => {
381
+ if (token) {
382
+ return Object.assign(Object.assign({}, cfg), { token });
383
+ }
384
+ });
385
+ });
386
+ return Promise.all(promises);
387
+ }
313
388
  const HUB_SERVICE_STATUS = {
314
389
  portal: "online",
315
390
  discussions: "online",
@@ -328,4 +403,26 @@ const ENTERPRISE_SITES_SERVICE_STATUS = {
328
403
  "hub-search": "not-available",
329
404
  domains: "not-available",
330
405
  };
406
+ const DEV_ALPHA_ORGS = [
407
+ "LjjARY1mkhxulWPq",
408
+ "q2ikdtW0bkt5EgtQ",
409
+ "yHYVvboBBOdmcKci",
410
+ ];
411
+ const QA_ALPHA_ORGS = [
412
+ "97KLIFOSt5CxbiRI",
413
+ "MiFBHFxEZWumnKCx",
414
+ "8HRYeOqprj872mxP",
415
+ "Xj56SBi2udA78cC9",
416
+ ];
417
+ const PROD_ALPHA_ORGS = [
418
+ "gGHDlz6USftL5Pau",
419
+ "CrA5hYOKgL3Vwan8",
420
+ "zj227gjeSqEyG4HF",
421
+ "bkrWlSKcjUDFDtgw",
422
+ ];
423
+ export const ALPHA_ORGS = [
424
+ ...PROD_ALPHA_ORGS,
425
+ ...QA_ALPHA_ORGS,
426
+ ...DEV_ALPHA_ORGS,
427
+ ];
331
428
  //# sourceMappingURL=ArcGISContextManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ArcGISContextManager.js","sourceRoot":"","sources":["../../src/ArcGISContextManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ArcGISContextManager.js","sourceRoot":"","sources":["../../src/ArcGISContextManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ // Helper used to verify object size before storing resource
2
+ export function getObjectSize(object) {
3
+ // javascript stores strings in unicode, so 2 bytes per char
4
+ const bytes = JSON.stringify(object).length * 2;
5
+ const kilobytes = bytes / 1024;
6
+ const megabytes = kilobytes / 1024;
7
+ return {
8
+ bytes,
9
+ kilobytes,
10
+ megabytes,
11
+ };
12
+ }
13
+ //# sourceMappingURL=getObjectSize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getObjectSize.js","sourceRoot":"","sources":["../../../src/utils/getObjectSize.ts"],"names":[],"mappings":"AAKA,4DAA4D;AAC5D,MAAM,UAAU,aAAa,CAAC,MAA2B;IACvD,4DAA4D;IAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,KAAK,GAAG,IAAI,CAAC;IAC/B,MAAM,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC;IACnC,OAAO;QACL,KAAK;QACL,SAAS;QACT,SAAS;KACV,CAAC;AACJ,CAAC"}
@@ -0,0 +1,84 @@
1
+ import { USER_SITE_SETTINGS_APP, USER_SITE_SETTINGS_KEY, } from "./internal/clearUserSiteSettings";
2
+ import { USER_HUB_SETTINGS_APP, USER_HUB_SETTINGS_KEY, } from "./internal/clearUserHubSettings";
3
+ import { applyHubSettingsMigrations, applySiteSettingsMigrations, } from "./internal/siteSettingsMigrations";
4
+ import { getUserResource, setUserResource, } from "./internal/userAppResources";
5
+ /**
6
+ * Store User settings in the Site App's cache
7
+ * @param settings
8
+ * @param context
9
+ * @param replace
10
+ * @returns
11
+ */
12
+ export async function setUserSiteSettings(settings, context, replace = false) {
13
+ const token = context.tokenFor(USER_SITE_SETTINGS_APP);
14
+ if (token) {
15
+ // always stamp in the updated and username properties
16
+ settings.updated = new Date().getTime();
17
+ settings.username = context.currentUser.username;
18
+ const resource = {
19
+ key: USER_SITE_SETTINGS_KEY,
20
+ data: settings,
21
+ access: "userappprivate",
22
+ };
23
+ return setUserResource(resource, context.currentUser.username, context.portalUrl, token, replace);
24
+ }
25
+ else {
26
+ throw new Error(`No user-app-resource token available to store Site Settings`);
27
+ }
28
+ }
29
+ /**
30
+ * Get the current user's settings for the current Site
31
+ * @param context
32
+ * @returns
33
+ */
34
+ export async function getUserSiteSettings(context) {
35
+ const token = context.tokenFor(USER_SITE_SETTINGS_APP);
36
+ if (token) {
37
+ const settings = (await getUserResource(context.currentUser.username, USER_SITE_SETTINGS_KEY, context.portalUrl, token));
38
+ // run though schema upgrades
39
+ return applySiteSettingsMigrations(settings);
40
+ }
41
+ else {
42
+ return Promise.resolve(null);
43
+ }
44
+ }
45
+ /**
46
+ * Store the current user's Hub settings
47
+ * @param settings
48
+ * @param context
49
+ * @param replace
50
+ * @returns
51
+ */
52
+ export async function setUserHubSettings(settings, context, replace = false) {
53
+ const token = context.tokenFor(USER_HUB_SETTINGS_APP);
54
+ if (token) {
55
+ // always stamp in the updated and username properties
56
+ settings.updated = new Date().getTime();
57
+ settings.username = context.currentUser.username;
58
+ const resource = {
59
+ key: USER_HUB_SETTINGS_KEY,
60
+ data: settings,
61
+ access: "userappprivate",
62
+ };
63
+ return setUserResource(resource, context.currentUser.username, context.portalUrl, token, replace);
64
+ }
65
+ else {
66
+ throw new Error(`No user-app-resource token available to store Site Settings`);
67
+ }
68
+ }
69
+ /**
70
+ * Get the current user's settings for ArcGIS Hub
71
+ * @param context
72
+ * @returns
73
+ */
74
+ export async function getUserHubSettings(context) {
75
+ const token = context.tokenFor(USER_HUB_SETTINGS_APP);
76
+ if (token) {
77
+ const settings = await getUserResource(context.currentUser.username, USER_HUB_SETTINGS_KEY, context.portalUrl, token);
78
+ return applyHubSettingsMigrations(settings);
79
+ }
80
+ else {
81
+ return Promise.resolve(null);
82
+ }
83
+ }
84
+ //# sourceMappingURL=hubUserAppResources.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hubUserAppResources.js","sourceRoot":"","sources":["../../../src/utils/hubUserAppResources.ts"],"names":[],"mappings":"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"}
@@ -23,4 +23,6 @@ export * from "./titleize";
23
23
  export * from "./memoize";
24
24
  export * from "./getEnvironmentFromPortalUrl";
25
25
  export * from "./poll";
26
+ export * from "./hubUserAppResources";
27
+ export * from "./getObjectSize";
26
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,QAAQ,CAAC;AACvB,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { removeUserResource } from "./userAppResources";
2
+ export const USER_HUB_SETTINGS_APP = "hubforarcgis";
3
+ export const USER_HUB_SETTINGS_KEY = "hub-settings.json";
4
+ /**
5
+ * @private
6
+ * Internal use only; Clear User Hub Settings
7
+ * @param context
8
+ * @returns
9
+ */
10
+ export function clearUserHubSettings(context) {
11
+ const token = context.tokenFor(USER_HUB_SETTINGS_APP);
12
+ const key = USER_HUB_SETTINGS_KEY;
13
+ return removeUserResource(context.currentUser.username, key, context.portalUrl, token);
14
+ }
15
+ //# sourceMappingURL=clearUserHubSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clearUserHubSettings.js","sourceRoot":"","sources":["../../../../src/utils/internal/clearUserHubSettings.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,CAAC,MAAM,qBAAqB,GAAoB,cAAc,CAAC;AACrE,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;AACzD;;;;;GAKG;AAEH,MAAM,UAAU,oBAAoB,CAClC,OAAuB;IAEvB,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,qBAAqB,CAAC;IAClC,OAAO,kBAAkB,CACvB,OAAO,CAAC,WAAW,CAAC,QAAQ,EAC5B,GAAG,EACH,OAAO,CAAC,SAAS,EACjB,KAAK,CACN,CAAC;AACJ,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { removeUserResource } from "./userAppResources";
2
+ export const USER_SITE_SETTINGS_APP = "self";
3
+ export const USER_SITE_SETTINGS_KEY = "hub-site-settings.json";
4
+ /**
5
+ * @private
6
+ * Internal use only; Clear User Site Settings
7
+ * @param context
8
+ * @returns
9
+ */
10
+ export function clearUserSiteSettings(context) {
11
+ const token = context.tokenFor(USER_SITE_SETTINGS_APP);
12
+ const key = USER_SITE_SETTINGS_KEY;
13
+ return removeUserResource(context.currentUser.username, key, context.portalUrl, token);
14
+ }
15
+ //# sourceMappingURL=clearUserSiteSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clearUserSiteSettings.js","sourceRoot":"","sources":["../../../../src/utils/internal/clearUserSiteSettings.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,CAAC,MAAM,sBAAsB,GAAoB,MAAM,CAAC;AAC9D,MAAM,CAAC,MAAM,sBAAsB,GAAG,wBAAwB,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAuB;IAEvB,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;IACvD,MAAM,GAAG,GAAG,sBAAsB,CAAC;IACnC,OAAO,kBAAkB,CACvB,OAAO,CAAC,WAAW,CAAC,QAAQ,EAC5B,GAAG,EACH,OAAO,CAAC,SAAS,EACjB,KAAK,CACN,CAAC;AACJ,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { cloneObject } from "../../util";
2
+ /**
3
+ * Apply migrations for Site Settings
4
+ * @param settings
5
+ * @returns
6
+ */
7
+ export function applySiteSettingsMigrations(settings) {
8
+ // const currentSchema = 1;
9
+ return cloneObject(settings);
10
+ }
11
+ /**
12
+ * Apply migrations for Hub Settings
13
+ * @param settings
14
+ * @returns
15
+ */
16
+ export function applyHubSettingsMigrations(settings) {
17
+ // const currentSchema = 1;
18
+ return cloneObject(settings);
19
+ }
20
+ //# sourceMappingURL=siteSettingsMigrations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"siteSettingsMigrations.js","sourceRoot":"","sources":["../../../../src/utils/internal/siteSettingsMigrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CACzC,QAA6B;IAE7B,2BAA2B;IAE3B,OAAO,WAAW,CAAC,QAAQ,CAAsB,CAAC;AACpD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CACxC,QAA6B;IAE7B,2BAA2B;IAE3B,OAAO,WAAW,CAAC,QAAQ,CAAqB,CAAC;AACnD,CAAC"}
@@ -0,0 +1,101 @@
1
+ // These Types and Functions can land in rest-js
2
+ // a friendly name for the scope of the resource
3
+ // the API deals with clientIds, which are
4
+ // listed here https://confluencewikidev.esri.com/pages/viewpage.action?pageId=50561461
5
+ // Generally speaking, the UserResourceScope is a downcased version of the
6
+ // clientId. Hub is unique b/c Sites have their own clientId,
7
+ import { request } from "@esri/arcgis-rest-request";
8
+ import { failSafe } from "../fail-safe";
9
+ import { getObjectSize } from "../getObjectSize";
10
+ /**
11
+ * @private
12
+ * Set a User-App-Resource
13
+ * By default this will fetch and merge with an existing resource.
14
+ * Passing `true` as the last parameter,
15
+ * @param resource
16
+ * @param username
17
+ * @param portalUrl
18
+ * @param token
19
+ * @param replace
20
+ * @returns
21
+ */
22
+ export async function setUserResource(resource, username, portalUrl, token, replace = false) {
23
+ // Ensure we are below 5MB max size
24
+ if (getObjectSize(resource.data).megabytes > 4.95) {
25
+ throw new Error(`User Resource is too large to store. Please ensure it is less than 5MB in size`);
26
+ }
27
+ let payload = resource.data;
28
+ if (!replace) {
29
+ const fsGetResource = failSafe(getUserResource, {});
30
+ const currentResource = await fsGetResource(username, resource.key, portalUrl, token);
31
+ // extend current object witn updated object
32
+ payload = Object.assign(Object.assign({}, currentResource), resource.data);
33
+ }
34
+ const ro = {
35
+ portal: portalUrl,
36
+ httpMethod: "POST",
37
+ params: {
38
+ text: JSON.stringify(payload),
39
+ access: resource.access,
40
+ key: resource.key,
41
+ token,
42
+ },
43
+ };
44
+ // TODO Experiment w/ how we can make this call w/o creating a UserSession with the token
45
+ return request(`${portalUrl}/sharing/rest/community/users/${username}/addResource`, ro);
46
+ }
47
+ /**
48
+ * @private
49
+ * Gets a user app resource
50
+ * If the resource does not exist, this will throw. This can be wrapped in `failSafe`
51
+ * configured to return an empty object.
52
+ * @param username
53
+ * @param key
54
+ * @param portalUrl
55
+ * @param token
56
+ * @returns
57
+ */
58
+ export function getUserResource(username, key, portalUrl, token) {
59
+ const ro = {
60
+ portal: portalUrl,
61
+ };
62
+ return request(`${portalUrl}/sharing/rest/community/users/${username}/resources/${key}?token=${token}`, ro);
63
+ }
64
+ /**
65
+ * @private
66
+ * Remove a resource
67
+ * Used primarily in tests, but can be useful if you need to clean up
68
+ * settings that are no longer used
69
+ * @param username
70
+ * @param key
71
+ * @param portalUrl
72
+ * @param token
73
+ * @returns
74
+ */
75
+ export function removeUserResource(username, key, portalUrl, token) {
76
+ const ro = {
77
+ portal: portalUrl,
78
+ httpMethod: "POST",
79
+ params: {
80
+ key,
81
+ token,
82
+ },
83
+ };
84
+ return request(`${portalUrl}/sharing/rest/community/users/${username}/removeResource`, ro);
85
+ }
86
+ /**
87
+ * @private
88
+ * List user resources associated with the user/token.
89
+ * Defaults to listing only resources associated with the app the token is associated with
90
+ * @param username
91
+ * @param portalUrl
92
+ * @param token
93
+ * @returns
94
+ */
95
+ export function listUserResources(username, portalUrl, token, returnAllApps = false) {
96
+ const ro = {
97
+ portal: portalUrl,
98
+ };
99
+ return request(`${portalUrl}/sharing/rest/community/users/${username}/resources?f=json&token=${token}&returnAllApps=${returnAllApps}`, ro);
100
+ }
101
+ //# sourceMappingURL=userAppResources.js.map