@esri/hub-common 14.90.0 → 14.91.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 (40) hide show
  1. package/dist/esm/ArcGISContext.js +123 -1
  2. package/dist/esm/ArcGISContext.js.map +1 -1
  3. package/dist/esm/core/hubHistory.js +64 -0
  4. package/dist/esm/core/hubHistory.js.map +1 -0
  5. package/dist/esm/core/index.js +3 -2
  6. package/dist/esm/core/index.js.map +1 -1
  7. package/dist/esm/index.js +1 -0
  8. package/dist/esm/index.js.map +1 -1
  9. package/dist/esm/items/slugs.js +42 -25
  10. package/dist/esm/items/slugs.js.map +1 -1
  11. package/dist/esm/permissions/HubPermissionPolicies.js +7 -0
  12. package/dist/esm/permissions/HubPermissionPolicies.js.map +1 -1
  13. package/dist/esm/permissions/checkPermission.js +2 -2
  14. package/dist/esm/permissions/checkPermission.js.map +1 -1
  15. package/dist/esm/permissions/types/Permission.js +1 -0
  16. package/dist/esm/permissions/types/Permission.js.map +1 -1
  17. package/dist/esm/utils/hubUserAppResources.js.map +1 -1
  18. package/dist/node/ArcGISContext.js +123 -1
  19. package/dist/node/ArcGISContext.js.map +1 -1
  20. package/dist/node/core/hubHistory.js +69 -0
  21. package/dist/node/core/hubHistory.js.map +1 -0
  22. package/dist/node/core/index.js +3 -2
  23. package/dist/node/core/index.js.map +1 -1
  24. package/dist/node/index.js +1 -0
  25. package/dist/node/index.js.map +1 -1
  26. package/dist/node/items/slugs.js +42 -25
  27. package/dist/node/items/slugs.js.map +1 -1
  28. package/dist/node/permissions/HubPermissionPolicies.js +7 -0
  29. package/dist/node/permissions/HubPermissionPolicies.js.map +1 -1
  30. package/dist/node/permissions/checkPermission.js +2 -2
  31. package/dist/node/permissions/checkPermission.js.map +1 -1
  32. package/dist/node/permissions/types/Permission.js +1 -0
  33. package/dist/node/permissions/types/Permission.js.map +1 -1
  34. package/dist/node/utils/hubUserAppResources.js.map +1 -1
  35. package/dist/types/ArcGISContext.d.ts +75 -3
  36. package/dist/types/core/hubHistory.d.ts +62 -0
  37. package/dist/types/index.d.ts +1 -0
  38. package/dist/types/items/slugs.d.ts +6 -5
  39. package/dist/types/utils/hubUserAppResources.d.ts +5 -0
  40. package/package.json +1 -1
@@ -2,8 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ArcGISContext = void 0;
4
4
  const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
5
+ const hubHistory_1 = require("./core/hubHistory");
5
6
  const objects_1 = require("./objects");
6
7
  const getEnvironmentFromPortalUrl_1 = require("./utils/getEnvironmentFromPortalUrl");
8
+ const hubUserAppResources_1 = require("./utils/hubUserAppResources");
9
+ const checkPermission_1 = require("./permissions/checkPermission");
7
10
  /**
8
11
  * Hash of Hub API end points so updates
9
12
  * are centralized
@@ -59,7 +62,9 @@ class ArcGISContext {
59
62
  }
60
63
  this._featureFlags = opts.featureFlags || {};
61
64
  this._userResourceTokens = opts.userResourceTokens || [];
62
- this._userHubSettings = opts.userHubSettings || null;
65
+ this._userHubSettings = opts.userHubSettings || {
66
+ schemaVersion: 1,
67
+ };
63
68
  }
64
69
  /**
65
70
  * Return the UserSession if authenticated
@@ -407,6 +412,123 @@ class ArcGISContext {
407
412
  this._currentUser = user;
408
413
  });
409
414
  }
415
+ /**
416
+ * Return the user's history
417
+ * @returns
418
+ */
419
+ get history() {
420
+ return this._userHubSettings.history || { entries: [] };
421
+ }
422
+ /**
423
+ * Check specific permission for the current user, and optionally an entity
424
+ * @param permission
425
+ * @param entity
426
+ * @returns
427
+ */
428
+ checkPermission(permission, entity) {
429
+ return checkPermission_1.checkPermission(permission, this, entity);
430
+ }
431
+ /**
432
+ * Add an entry to the user's history
433
+ * @param entry
434
+ * @param win
435
+ * @returns
436
+ */
437
+ async addToHistory(entry) {
438
+ // No-op if not authenticated
439
+ if (!this.isAuthenticated) {
440
+ return;
441
+ }
442
+ // No-op if the user doesn't have the permission
443
+ const chk = this.checkPermission("hub:feature:history");
444
+ if (!chk.access) {
445
+ return;
446
+ }
447
+ // add the entry to the history
448
+ const updated = hubHistory_1.addHistoryEntry(entry, this.history);
449
+ // The getter reads from this, so just re-assign
450
+ this._userHubSettings.history = updated;
451
+ // update the user-app-resource
452
+ return this.updateUserHubSettings(this._userHubSettings);
453
+ // --------------------------------------------------------------------
454
+ // Turns out that integrating this with LocalStorage will involve
455
+ // a lot of syncronization as auth'd user moves between sites
456
+ // which may have different history states in localStorage
457
+ // So let's start with just tracking the history
458
+ // in workspaces and see how that goes.
459
+ // --------------------------------------------------------------------
460
+ }
461
+ /**
462
+ * Clear the entire history
463
+ * @returns
464
+ */
465
+ async clearHistory() {
466
+ // No-op if not authenticated
467
+ if (!this.isAuthenticated) {
468
+ return;
469
+ }
470
+ // No-op if the user doesn't have the permission
471
+ const chk = this.checkPermission("hub:feature:history");
472
+ if (!chk.access) {
473
+ return;
474
+ }
475
+ // create a new history object
476
+ const history = {
477
+ entries: [],
478
+ };
479
+ // assign into the user-app-resource
480
+ this._userHubSettings.history = history;
481
+ // update the user-app-resource
482
+ return this.updateUserHubSettings(this._userHubSettings);
483
+ }
484
+ /**
485
+ * Remove a specific entry from the user's history
486
+ * @param entry
487
+ * @returns
488
+ */
489
+ async removeFromHistory(entry) {
490
+ // No-op if not authenticated
491
+ if (!this.isAuthenticated) {
492
+ return;
493
+ }
494
+ // No-op if the user doesn't have the permission
495
+ const chk = this.checkPermission("hub:feature:history");
496
+ if (!chk.access) {
497
+ return;
498
+ }
499
+ // remove the entry from the history
500
+ const updated = hubHistory_1.removeHistoryEntry(entry, this.history);
501
+ this._userHubSettings.history = updated;
502
+ // update the user-app-resource
503
+ return this.updateUserHubSettings(this._userHubSettings);
504
+ }
505
+ /**
506
+ * Update the user's hub settings
507
+ *
508
+ * Possible issue here is that we're not updating the contextManager
509
+ * so the contextManager will be out of sync with this instance of
510
+ * ArcGISContext. Unclear if this will be an actual problem.
511
+ * @param settings
512
+ */
513
+ async updateUserHubSettings(settings) {
514
+ if (!this._authentication) {
515
+ throw new Error("Cannot update user hub settings without an authenticated user");
516
+ }
517
+ // update the user-app-resource
518
+ await hubUserAppResources_1.updateUserHubSettings(settings, this);
519
+ // update the context
520
+ this._userHubSettings = settings;
521
+ // update the feature flags
522
+ Object.keys(objects_1.getWithDefault(settings, "preview", {})).forEach((key) => {
523
+ // only set the flag if it's true, otherwise delete the flag so we revert to default behavior
524
+ if (objects_1.getProp(settings, `preview.${key}`)) {
525
+ this._featureFlags[`hub:feature:${key}`] = true;
526
+ }
527
+ else {
528
+ delete this._featureFlags[`hub:feature:${key}`];
529
+ }
530
+ });
531
+ }
410
532
  }
411
533
  exports.ArcGISContext = ArcGISContext;
412
534
  //# 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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"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.removeHistoryEntry = exports.addHistoryEntry = void 0;
4
+ const util_1 = require("../util");
5
+ /**
6
+ * Add an entry to the history. This handles the limits per type,
7
+ * and ensures that the most recent entry is at the top of the list.
8
+ * This function does not persist the history, it only updates the object.
9
+ * @param entry
10
+ * @param history
11
+ * @returns
12
+ */
13
+ function addHistoryEntry(entry, history) {
14
+ // Define limits to how many of each type of history we store
15
+ const limits = {
16
+ sites: 10,
17
+ entities: 50,
18
+ };
19
+ // Anything other than "site" is considered an "entity" for history purposes
20
+ // When we disply the list of history, we use the underlying type to determine the icon and route
21
+ const type = entry.type === "site" ? "sites" : "entities";
22
+ // get a clone of the existing entries
23
+ let entries = util_1.cloneObject(history.entries);
24
+ // split into two arrays, one for the type and one for everything else
25
+ const siteEntries = entries.filter((e) => e.type === "site");
26
+ const otherEntries = entries.filter((e) => e.type !== "site");
27
+ // Depending on the type, choose the list to work with
28
+ if (entry.type === "site") {
29
+ entries = siteEntries;
30
+ }
31
+ else {
32
+ entries = otherEntries;
33
+ }
34
+ // If there is an existing entry, remove it
35
+ entries = entries.filter((e) => e.id !== entry.id);
36
+ // if the count of the type is below the limit, add the new entry to the start of the array
37
+ if (entries.length < limits[type]) {
38
+ entries.unshift(entry);
39
+ }
40
+ else {
41
+ // otherwise, remove the last entry and add the new entry to the start of the array
42
+ entries.pop();
43
+ entries.unshift(entry);
44
+ }
45
+ // merge up the arrays and sort by visited date
46
+ // depending on tne type, we may need to merge the arrays in a different order
47
+ if (entry.type === "site") {
48
+ history.entries = [...entries, ...otherEntries];
49
+ }
50
+ else {
51
+ history.entries = [...siteEntries, ...entries];
52
+ }
53
+ // return the updated history
54
+ return history;
55
+ }
56
+ exports.addHistoryEntry = addHistoryEntry;
57
+ /**
58
+ * Remove a specific entry from the user's history
59
+ * @param entry
60
+ * @returns
61
+ */
62
+ function removeHistoryEntry(entry, history) {
63
+ // remove the entry from the history
64
+ const updated = util_1.cloneObject(history);
65
+ updated.entries = updated.entries.filter((e) => e.id !== entry.id);
66
+ return updated;
67
+ }
68
+ exports.removeHistoryEntry = removeHistoryEntry;
69
+ //# sourceMappingURL=hubHistory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hubHistory.js","sourceRoot":"","sources":["../../../src/core/hubHistory.ts"],"names":[],"mappings":";;;AAAA,kCAAsC;AAoDtC;;;;;;;GAOG;AACH,SAAgB,eAAe,CAC7B,KAAuB,EACvB,OAAoB;IAEpB,6DAA6D;IAC7D,MAAM,MAAM,GAAG;QACb,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,EAAE;KACb,CAAC;IAEF,4EAA4E;IAC5E,iGAAiG;IACjG,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC;IAC1D,sCAAsC;IACtC,IAAI,OAAO,GAAuB,kBAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,sEAAsE;IACtE,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;IAC7D,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;IAE9D,sDAAsD;IACtD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE;QACzB,OAAO,GAAG,WAAW,CAAC;KACvB;SAAM;QACL,OAAO,GAAG,YAAY,CAAC;KACxB;IACD,2CAA2C;IAC3C,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC;IACnD,2FAA2F;IAC3F,IAAI,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE;QACjC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;KACxB;SAAM;QACL,mFAAmF;QACnF,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;KACxB;IACD,+CAA+C;IAC/C,8EAA8E;IAC9E,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE;QACzB,OAAO,CAAC,OAAO,GAAG,CAAC,GAAG,OAAO,EAAE,GAAG,YAAY,CAAC,CAAC;KACjD;SAAM;QACL,OAAO,CAAC,OAAO,GAAG,CAAC,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC,CAAC;KAChD;IAED,6BAA6B;IAC7B,OAAO,OAAO,CAAC;AACjB,CAAC;AA7CD,0CA6CC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAChC,KAAuB,EACvB,OAAoB;IAEpB,oCAAoC;IACpC,MAAM,OAAO,GAAG,kBAAW,CAAC,OAAO,CAAC,CAAC;IACrC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC;IACnE,OAAO,OAAO,CAAC;AACjB,CAAC;AARD,gDAQC"}
@@ -12,7 +12,8 @@ tslib_1.__exportStar(require("./getTypesFromEntityType"), exports);
12
12
  tslib_1.__exportStar(require("./getRelativeWorkspaceUrl"), exports);
13
13
  tslib_1.__exportStar(require("./isValidEntityType"), exports);
14
14
  tslib_1.__exportStar(require("./processActionLinks"), exports);
15
- // For sme reason, if updateHubEntity is exported here,
16
- // it is not actually exported in the final package.
15
+ // For sme reason, if these are exported here,
16
+ // they are not actually exported in the final package.
17
17
  // export * from "./updateHubEntity";
18
+ // export * from "./hubHistory";
18
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyB;AACzB,kDAAwB;AACxB,sDAA4B;AAC5B,oDAA0B;AAC1B,2DAAiC;AACjC,0EAAgD;AAChD,8DAAoC;AACpC,mEAAyC;AACzC,oEAA0C;AAC1C,8DAAoC;AACpC,+DAAqC;AAErC,uDAAuD;AACvD,oDAAoD;AACpD,qCAAqC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyB;AACzB,kDAAwB;AACxB,sDAA4B;AAC5B,oDAA0B;AAC1B,2DAAiC;AACjC,0EAAgD;AAChD,8DAAoC;AACpC,mEAAyC;AACzC,oEAA0C;AAC1C,8DAAoC;AACpC,+DAAqC;AAErC,8CAA8C;AAC9C,uDAAuD;AACvD,qCAAqC;AACrC,gCAAgC"}
@@ -51,6 +51,7 @@ tslib_1.__exportStar(require("./core/EntityEditor"), exports);
51
51
  // Unclear _why_ this needs to be here vs. in search/index.ts
52
52
  // but if it's exported there, it's not actually exporeted
53
53
  tslib_1.__exportStar(require("./search/explainQueryResult"), exports);
54
+ tslib_1.__exportStar(require("./core/hubHistory"), exports);
54
55
  const OperationStack_1 = require("./OperationStack");
55
56
  exports.OperationStack = OperationStack_1.default;
56
57
  const OperationError_1 = require("./OperationError");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;gBACgB;AAChB,0BAA0B;;;;AAE1B,yDAA+B;AAC/B,mDAAyB;AACzB,gDAAsB;AACtB,0DAAgC;AAChC,iEAAuC;AACvC,iDAAuB;AACvB,uDAA6B;AAC7B,oDAA0B;AAC1B,iDAAuB;AACvB,sDAA4B;AAC5B,mDAAyB;AACzB,mDAAyB;AACzB,iDAAuB;AACvB,wDAA8B;AAC9B,iEAAuC;AACvC,wDAA8B;AAC9B,kDAAwB;AACxB,mDAAyB;AACzB,oDAA0B;AAC1B,gDAAsB;AACtB,kDAAwB;AACxB,wDAA8B;AAC9B,qDAA2B;AAC3B,oDAA0B;AAC1B,sDAA4B;AAC5B,mDAAyB;AACzB,kDAAwB;AACxB,oDAA0B;AAC1B,sDAA4B;AAC5B,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB;AACxB,uDAA6B;AAC7B,oDAA0B;AAC1B,0DAA0D;AAC1D,qDAAqD;AACrD,iEAAuC;AACvC,2DAA2D;AAC3D,yDAAyD;AACzD,iEAAuC;AACvC,8DAAoC;AACpC,6DAA6D;AAC7D,0DAA0D;AAC1D,sEAA4C;AAE5C,qDAA8C;AAKrC,yBALF,wBAAc,CAKE;AAJvB,qDAA8C;AAIrB,yBAJlB,wBAAc,CAIkB;AAHvC,yCAAkC;AAGO,mBAHlC,kBAAQ,CAGkC;AACjD,6BAAkC;AAAzB,4FAAA,IAAI,OAAA;AAAE,4FAAA,IAAI,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;gBACgB;AAChB,0BAA0B;;;;AAE1B,yDAA+B;AAC/B,mDAAyB;AACzB,gDAAsB;AACtB,0DAAgC;AAChC,iEAAuC;AACvC,iDAAuB;AACvB,uDAA6B;AAC7B,oDAA0B;AAC1B,iDAAuB;AACvB,sDAA4B;AAC5B,mDAAyB;AACzB,mDAAyB;AACzB,iDAAuB;AACvB,wDAA8B;AAC9B,iEAAuC;AACvC,wDAA8B;AAC9B,kDAAwB;AACxB,mDAAyB;AACzB,oDAA0B;AAC1B,gDAAsB;AACtB,kDAAwB;AACxB,wDAA8B;AAC9B,qDAA2B;AAC3B,oDAA0B;AAC1B,sDAA4B;AAC5B,mDAAyB;AACzB,kDAAwB;AACxB,oDAA0B;AAC1B,sDAA4B;AAC5B,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB;AACxB,uDAA6B;AAC7B,oDAA0B;AAC1B,0DAA0D;AAC1D,qDAAqD;AACrD,iEAAuC;AACvC,2DAA2D;AAC3D,yDAAyD;AACzD,iEAAuC;AACvC,8DAAoC;AACpC,6DAA6D;AAC7D,0DAA0D;AAC1D,sEAA4C;AAC5C,4DAAkC;AAElC,qDAA8C;AAKrC,yBALF,wBAAc,CAKE;AAJvB,qDAA8C;AAIrB,yBAJlB,wBAAc,CAIkB;AAHvC,yCAAkC;AAGO,mBAHlC,kBAAQ,CAGkC;AACjD,6BAAkC;AAAzB,4FAAA,IAAI,OAAA;AAAE,4FAAA,IAAI,OAAA"}
@@ -4,33 +4,56 @@ exports.getUniqueSlug = exports.findItemsBySlug = exports.getItemBySlug = export
4
4
  const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
5
5
  const utils_1 = require("../utils");
6
6
  const slugConverters_1 = require("./_internal/slugConverters");
7
+ const TYPEKEYWORD_SLUG_PREFIX = "slug";
8
+ const TYPEKEYWORD_MAX_LENGTH = 256;
7
9
  /**
8
- * Create a slug, namespaced to an org
9
- * Typically used to lookup items by a human readable name in urls
10
+ * Create a slug, namespaced to an org and accounting for the 256 character limit
11
+ * of individual typekeywords. Typically used to lookup items by a human readable name in urls
10
12
  *
11
13
  * @param title
12
14
  * @param orgKey
13
15
  * @returns
14
16
  */
15
17
  function constructSlug(title, orgKey) {
16
- return `${orgKey.toLowerCase()}|${utils_1.slugify(title)}`;
18
+ // typekeywords have a max length of 256 characters, so we use the slug
19
+ // format that gets persisted in typekeywords as our basis
20
+ return ([
21
+ // add the typekeyword slug prefix
22
+ TYPEKEYWORD_SLUG_PREFIX,
23
+ // add the orgKey segment
24
+ orgKey.toLowerCase(),
25
+ // add the slugified title segment
26
+ utils_1.slugify(title),
27
+ ]
28
+ .join("|")
29
+ // allow some padding at the end for incrementing so we don't wind up w/ weird, inconsistent slugs
30
+ // when the increment goes from single to multiple digits, i.e. avoid producing the following when
31
+ // deduping:
32
+ // slug|qa-pre-a-hub|some-really-really-...-really-long
33
+ // slug|qa-pre-a-hub|some-really-really-...-really-lo-1
34
+ // slug|qa-pre-a-hub|some-really-really-...-really-l-11
35
+ // slug|qa-pre-a-hub|some-really-really-...-really-100
36
+ .substring(0, TYPEKEYWORD_MAX_LENGTH - 4)
37
+ // removing tailing hyphens
38
+ .replace(/-+$/, "")
39
+ // remove typekeyword slug prefix, it's re-added in setSlugKeyword
40
+ .replace(new RegExp(`^${TYPEKEYWORD_SLUG_PREFIX}\\|`), ""));
17
41
  }
18
42
  exports.constructSlug = constructSlug;
19
43
  /**
20
44
  * Adds/Updates the slug typekeyword
21
45
  * Returns a new array of keywords
22
- * @param typeKeywords
23
- * @param slug
24
- * @returns
46
+ *
47
+ * @param typeKeywords A collection of typekeywords
48
+ * @param slug The slug to add/update
49
+ * @returns An updated collection of typekeywords
25
50
  */
26
51
  function setSlugKeyword(typeKeywords, slug) {
27
52
  // remove slug entry from array
28
- const removed = typeKeywords.filter((entry) => {
29
- return !entry.startsWith("slug|");
30
- });
53
+ const updatedTypekeywords = typeKeywords.filter((entry) => !entry.startsWith(`${TYPEKEYWORD_SLUG_PREFIX}|`));
31
54
  // now add it
32
- removed.push(`slug|${slug}`);
33
- return removed;
55
+ updatedTypekeywords.push([TYPEKEYWORD_SLUG_PREFIX, slug].join("|"));
56
+ return updatedTypekeywords;
34
57
  }
35
58
  exports.setSlugKeyword = setSlugKeyword;
36
59
  /**
@@ -73,8 +96,11 @@ exports.getItemBySlug = getItemBySlug;
73
96
  * @returns
74
97
  */
75
98
  function findItemsBySlug(slugInfo, requestOptions) {
99
+ const filter = slugInfo.slug.startsWith(`${TYPEKEYWORD_SLUG_PREFIX}|`)
100
+ ? slugInfo.slug
101
+ : [TYPEKEYWORD_SLUG_PREFIX, slugInfo.slug].join("|");
76
102
  const opts = {
77
- filter: `typekeywords:"slug|${slugInfo.slug}"`,
103
+ filter: `typekeywords:"${filter}"`,
78
104
  };
79
105
  if (requestOptions.authentication) {
80
106
  opts.authentication = requestOptions.authentication;
@@ -111,20 +137,11 @@ exports.findItemsBySlug = findItemsBySlug;
111
137
  * @returns
112
138
  */
113
139
  function getUniqueSlug(slugInfo, requestOptions, step = 0) {
114
- let combinedSlug = slugInfo.slug;
115
- if (step) {
116
- combinedSlug = `${slugInfo.slug}-${step}`;
117
- }
140
+ const combinedSlug = step ? [slugInfo.slug, step].join("-") : slugInfo.slug;
118
141
  return findItemsBySlug({ slug: combinedSlug, exclude: slugInfo.existingId }, requestOptions)
119
- .then((results) => {
120
- if (results.length) {
121
- step++;
122
- return getUniqueSlug(slugInfo, requestOptions, step);
123
- }
124
- else {
125
- return combinedSlug;
126
- }
127
- })
142
+ .then((results) => !results.length
143
+ ? combinedSlug
144
+ : getUniqueSlug(slugInfo, requestOptions, step + 1))
128
145
  .catch((e) => {
129
146
  throw Error(`Error in getUniqueSlug ${e}`);
130
147
  });
@@ -1 +1 @@
1
- {"version":3,"file":"slugs.js","sourceRoot":"","sources":["../../../src/items/slugs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slugs.js","sourceRoot":"","sources":["../../../src/items/slugs.ts"],"names":[],"mappings":";;;AAAA,iEAAgF;AAGhF,oCAAmC;AACnC,+DAAkE;AAElE,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAEvC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAEnC;;;;;;;GAOG;AACH,SAAgB,aAAa,CAAC,KAAa,EAAE,MAAc;IACzD,uEAAuE;IACvE,0DAA0D;IAC1D,OAAO,CACL;QACE,kCAAkC;QAClC,uBAAuB;QACvB,yBAAyB;QACzB,MAAM,CAAC,WAAW,EAAE;QACpB,kCAAkC;QAClC,eAAO,CAAC,KAAK,CAAC;KACf;SACE,IAAI,CAAC,GAAG,CAAC;QACV,kGAAkG;QAClG,kGAAkG;QAClG,YAAY;QACZ,uDAAuD;QACvD,uDAAuD;QACvD,uDAAuD;QACvD,sDAAsD;SACrD,SAAS,CAAC,CAAC,EAAE,sBAAsB,GAAG,CAAC,CAAC;QACzC,2BAA2B;SAC1B,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;QACnB,kEAAkE;SACjE,OAAO,CAAC,IAAI,MAAM,CAAC,IAAI,uBAAuB,KAAK,CAAC,EAAE,EAAE,CAAC,CAC7D,CAAC;AACJ,CAAC;AA1BD,sCA0BC;AAED;;;;;;;GAOG;AACH,SAAgB,cAAc,CAAC,YAAsB,EAAE,IAAY;IACjE,+BAA+B;IAC/B,MAAM,mBAAmB,GAAG,YAAY,CAAC,MAAM,CAC7C,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,uBAAuB,GAAG,CAAC,CACpE,CAAC;IAEF,aAAa;IACb,mBAAmB,CAAC,IAAI,CAAC,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACpE,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AATD,wCASC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,aAAa,CAC3B,IAAY,EACZ,cAA+B;IAE/B,MAAM,WAAW,GAAG,qCAAoB,CAAC,IAAI,CAAC,CAAC;IAC/C,OAAO,eAAe,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,cAAc,CAAC,CAAC,IAAI,CAChE,CAAC,OAAO,EAAE,EAAE;QACV,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,qEAAqE;YACrE,kEAAkE;YAClE,OAAO,4BAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;SAC/C;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC,CACF,CAAC;AACJ,CAAC;AAhBD,sCAgBC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,eAAe,CAC7B,QAGC,EACD,cAA+B;IAE/B,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,uBAAuB,GAAG,CAAC;QACpE,CAAC,CAAC,QAAQ,CAAC,IAAI;QACf,CAAC,CAAC,CAAC,uBAAuB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG;QACX,MAAM,EAAE,iBAAiB,MAAM,GAAG;KACjB,CAAC;IAEpB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC,cAAc,CAAC;KACrD;SAAM,IAAI,cAAc,CAAC,MAAM,EAAE;QAChC,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;KACrC;IAED,oDAAoD;IACpD,0DAA0D;IAC1D,sDAAsD;IACtD,4BAA4B;IAC5B,IAAI,QAAQ,CAAC,OAAO,EAAE;QACpB,IAAI,CAAC,CAAC,GAAG,UAAU,QAAQ,CAAC,OAAO,EAAE,CAAC;KACvC;IACD,OAAO,gCAAW,CAAC,IAAI,CAAC;SACrB,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC1B,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QACX,MAAM,CAAC,CAAC;IACV,CAAC,CAAC,CAAC;AACP,CAAC;AAlCD,0CAkCC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,aAAa,CAC3B,QAGC,EACD,cAA+B,EAC/B,OAAe,CAAC;IAEhB,MAAM,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC5E,OAAO,eAAe,CACpB,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,CAAC,UAAU,EAAE,EACpD,cAAc,CACf;SACE,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAChB,CAAC,OAAO,CAAC,MAAM;QACb,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,aAAa,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,GAAG,CAAC,CAAC,CACtD;SACA,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QACX,MAAM,KAAK,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACP,CAAC;AArBD,sCAqBC"}
@@ -125,6 +125,13 @@ const SystemPermissionPolicies = [
125
125
  {
126
126
  // when enabled keyboard shortcuts will be available
127
127
  permission: "hub:feature:keyboardshortcuts",
128
+ availability: ["alpha"],
129
+ environments: ["devext", "qaext"],
130
+ },
131
+ {
132
+ // Enables the history feature
133
+ permission: "hub:feature:history",
134
+ availability: ["alpha"],
128
135
  environments: ["devext", "qaext"],
129
136
  },
130
137
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"HubPermissionPolicies.js","sourceRoot":"","sources":["../../../src/permissions/HubPermissionPolicies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HubPermissionPolicies.js","sourceRoot":"","sources":["../../../src/permissions/HubPermissionPolicies.ts"],"names":[],"mappings":"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"}
@@ -26,7 +26,7 @@ const checkServiceStatus_1 = require("./_internal/checkServiceStatus");
26
26
  * @returns
27
27
  */
28
28
  function checkPermission(permission, context, entityOrOptions) {
29
- var _a, _b, _c;
29
+ var _a, _b;
30
30
  const label = (entityOrOptions === null || entityOrOptions === void 0 ? void 0 : entityOrOptions.label) || "";
31
31
  const entity = (entityOrOptions === null || entityOrOptions === void 0 ? void 0 : entityOrOptions.entity) || entityOrOptions;
32
32
  // Is this even a valid permission?
@@ -81,7 +81,7 @@ function checkPermission(permission, context, entityOrOptions) {
81
81
  }
82
82
  // We also check the context.userHubSettings.preview array
83
83
  // which can also be used to enable features.
84
- if ((_c = context.userHubSettings) === null || _c === void 0 ? void 0 : _c.preview) {
84
+ if (context.userHubSettings.preview) {
85
85
  const preview = objects_1.getWithDefault(context, "userHubSettings.preview", {});
86
86
  Object.keys(preview).forEach((key) => {
87
87
  // only set the flag if it's true, otherwise delete the flag so we revert to default behavior
@@ -1 +1 @@
1
- {"version":3,"file":"checkPermission.js","sourceRoot":"","sources":["../../../src/permissions/checkPermission.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checkPermission.js","sourceRoot":"","sources":["../../../src/permissions/checkPermission.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,7 @@ const SystemPermissions = [
27
27
  "hub:card:follow",
28
28
  "hub:feature:workspace:umbrella",
29
29
  "hub:feature:keyboardshortcuts",
30
+ "hub:feature:history",
30
31
  ];
31
32
  const validPermissions = [
32
33
  ...SiteBusinessRules_1.SitePermissions,
@@ -1 +1 @@
1
- {"version":3,"file":"Permission.js","sourceRoot":"","sources":["../../../../src/permissions/types/Permission.ts"],"names":[],"mappings":";;;AAAA,wFAAmF;AACnF,+EAA0E;AAC1E,iGAA4F;AAC5F,iGAA4F;AAC5F,uFAAkF;AAClF,kFAA6E;AAC7E,+EAA0E;AAC1E,8EAAoE;AACpE,0HAAqH;AACrH,2FAAsF;AACtF;;;;GAIG;AACH,6EAA6E;AAC7E,kIAAkI;AAClI,MAAM,eAAe,GAAG,CAAC,yBAAyB,CAAC,CAAC;AAEpD,MAAM,iBAAiB,GAAG;IACxB,qBAAqB;IACrB,uBAAuB;IACvB,yBAAyB;IACzB,8BAA8B;IAC9B,iBAAiB;IACjB,gCAAgC;IAChC,+BAA+B;CAChC,CAAC;AAEF,MAAM,gBAAgB,GAAG;IACvB,GAAG,mCAAe;IAClB,GAAG,yCAAkB;IACrB,GAAG,+CAAqB;IACxB,GAAG,yCAAkB;IACrB,GAAG,qCAAgB;IACnB,GAAG,mCAAe;IAClB,GAAG,gDAAmB;IACtB,GAAG,eAAe;IAClB,GAAG,+CAAqB;IACxB,GAAG,+DAA6B;IAChC,GAAG,2CAAmB;IACtB,GAAG,iBAAiB;CACZ,CAAC;AAmBX;;;;GAIG;AACH,SAAgB,YAAY,CAAC,eAAuB;IAClD,OAAO,gBAAgB,CAAC,QAAQ,CAAC,eAA6B,CAAC,CAAC;AAClE,CAAC;AAFD,oCAEC"}
1
+ {"version":3,"file":"Permission.js","sourceRoot":"","sources":["../../../../src/permissions/types/Permission.ts"],"names":[],"mappings":";;;AAAA,wFAAmF;AACnF,+EAA0E;AAC1E,iGAA4F;AAC5F,iGAA4F;AAC5F,uFAAkF;AAClF,kFAA6E;AAC7E,+EAA0E;AAC1E,8EAAoE;AACpE,0HAAqH;AACrH,2FAAsF;AACtF;;;;GAIG;AACH,6EAA6E;AAC7E,kIAAkI;AAClI,MAAM,eAAe,GAAG,CAAC,yBAAyB,CAAC,CAAC;AAEpD,MAAM,iBAAiB,GAAG;IACxB,qBAAqB;IACrB,uBAAuB;IACvB,yBAAyB;IACzB,8BAA8B;IAC9B,iBAAiB;IACjB,gCAAgC;IAChC,+BAA+B;IAC/B,qBAAqB;CACtB,CAAC;AAEF,MAAM,gBAAgB,GAAG;IACvB,GAAG,mCAAe;IAClB,GAAG,yCAAkB;IACrB,GAAG,+CAAqB;IACxB,GAAG,yCAAkB;IACrB,GAAG,qCAAgB;IACnB,GAAG,mCAAe;IAClB,GAAG,gDAAmB;IACtB,GAAG,eAAe;IAClB,GAAG,+CAAqB;IACxB,GAAG,+DAA6B;IAChC,GAAG,2CAAmB;IACtB,GAAG,iBAAiB;CACZ,CAAC;AAmBX;;;;GAIG;AACH,SAAgB,YAAY,CAAC,eAAuB;IAClD,OAAO,gBAAgB,CAAC,QAAQ,CAAC,eAA6B,CAAC,CAAC;AAClE,CAAC;AAFD,oCAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"hubUserAppResources.js","sourceRoot":"","sources":["../../../src/utils/hubUserAppResources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hubUserAppResources.js","sourceRoot":"","sources":["../../../src/utils/hubUserAppResources.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,13 @@
1
1
  import { IUser, IUserRequestOptions, UserSession } from "@esri/arcgis-rest-auth";
2
2
  import { IPortal } from "@esri/arcgis-rest-portal";
3
3
  import { IRequestOptions } from "@esri/arcgis-rest-request";
4
- import { HubServiceStatus } from "./core";
5
- import { HubEnvironment, HubLicense, IFeatureFlags } from "./permissions/types";
4
+ import { IHubHistory, IHubHistoryEntry } from "./core/hubHistory";
5
+ import { HubEnvironment, HubLicense, IFeatureFlags, IPermissionAccessResponse, Permission } from "./permissions/types";
6
6
  import { IHubRequestOptions, IHubTrustedOrgsResponse } from "./types";
7
7
  import { IUserResourceToken, UserResourceApp } from "./ArcGISContextManager";
8
- import { IUserHubSettings } from "./utils";
8
+ import { IUserHubSettings } from "./utils/hubUserAppResources";
9
+ import { HubServiceStatus } from "./core/types/ISystemStatus";
10
+ import { HubEntity } from "./core/types/HubEntity";
9
11
  /**
10
12
  * Defines the properties of the ArcGISContext.
11
13
  * Typically components or functions will get an instance
@@ -186,6 +188,11 @@ export interface IArcGISContext {
186
188
  * user-app-resources, associated with the `hubforarcgis` clientId
187
189
  */
188
190
  userHubSettings?: IUserHubSettings;
191
+ /**
192
+ * Return the user's history
193
+ * @returns
194
+ */
195
+ history: IHubHistory;
189
196
  /**
190
197
  * Return the token for a given app, if defined
191
198
  * @param app
@@ -195,6 +202,32 @@ export interface IArcGISContext {
195
202
  * Refresh the current user, including their groups
196
203
  */
197
204
  refreshUser(): Promise<void>;
205
+ /**
206
+ * Add an entry to the user's history
207
+ * If not authenticated, this function will no-op
208
+ * @param entry
209
+ */
210
+ addToHistory(entry: IHubHistoryEntry): Promise<void>;
211
+ /**
212
+ * Remove a specific entry from the user's history
213
+ * @param entry
214
+ */
215
+ removeFromHistory(entry: IHubHistoryEntry): Promise<void>;
216
+ /**
217
+ * Simple clear of the all of the user's history
218
+ */
219
+ clearHistory(): Promise<void>;
220
+ /**
221
+ * Check specific permission for the current user, and optionally an entity
222
+ * @param permission
223
+ * @param entity
224
+ */
225
+ checkPermission(permission: Permission, entity?: HubEntity): IPermissionAccessResponse;
226
+ /**
227
+ * Update the user's hub settings directly from the Context
228
+ * @param settings
229
+ */
230
+ updateUserHubSettings(settings: IUserHubSettings): Promise<void>;
198
231
  }
199
232
  /**
200
233
  * Options for the ArcGISContext constructor
@@ -480,4 +513,43 @@ export declare class ArcGISContext implements IArcGISContext {
480
513
  * @returns
481
514
  */
482
515
  refreshUser(): Promise<void>;
516
+ /**
517
+ * Return the user's history
518
+ * @returns
519
+ */
520
+ get history(): IHubHistory;
521
+ /**
522
+ * Check specific permission for the current user, and optionally an entity
523
+ * @param permission
524
+ * @param entity
525
+ * @returns
526
+ */
527
+ checkPermission(permission: Permission, entity?: HubEntity): IPermissionAccessResponse;
528
+ /**
529
+ * Add an entry to the user's history
530
+ * @param entry
531
+ * @param win
532
+ * @returns
533
+ */
534
+ addToHistory(entry: IHubHistoryEntry): Promise<void>;
535
+ /**
536
+ * Clear the entire history
537
+ * @returns
538
+ */
539
+ clearHistory(): Promise<void>;
540
+ /**
541
+ * Remove a specific entry from the user's history
542
+ * @param entry
543
+ * @returns
544
+ */
545
+ removeFromHistory(entry: IHubHistoryEntry): Promise<void>;
546
+ /**
547
+ * Update the user's hub settings
548
+ *
549
+ * Possible issue here is that we're not updating the contextManager
550
+ * so the contextManager will be out of sync with this instance of
551
+ * ArcGISContext. Unclear if this will be an actual problem.
552
+ * @param settings
553
+ */
554
+ updateUserHubSettings(settings: IUserHubSettings): Promise<void>;
483
555
  }