@esri/hub-common 28.4.1 → 28.6.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 (116) hide show
  1. package/dist/esm/core/_internal/getBasePropertyMap.js +4 -0
  2. package/dist/esm/core/_internal/getBasePropertyMap.js.map +1 -1
  3. package/dist/esm/core/schemas/internal/getThumbnailUiSchemaElement.js +9 -2
  4. package/dist/esm/core/schemas/internal/getThumbnailUiSchemaElement.js.map +1 -1
  5. package/dist/esm/core/traits/IWithVersions.js +2 -0
  6. package/dist/esm/core/traits/IWithVersions.js.map +1 -0
  7. package/dist/esm/events/HubEvent.js +38 -3
  8. package/dist/esm/events/HubEvent.js.map +1 -1
  9. package/dist/esm/events/_internal/EventUiSchemaEdit.js +1 -1
  10. package/dist/esm/events/_internal/EventUiSchemaEdit.js.map +1 -1
  11. package/dist/esm/events/_internal/PropertyMapper.js +3 -1
  12. package/dist/esm/events/_internal/PropertyMapper.js.map +1 -1
  13. package/dist/esm/events/fetch.js +3 -5
  14. package/dist/esm/events/fetch.js.map +1 -1
  15. package/dist/esm/index.js +3 -0
  16. package/dist/esm/index.js.map +1 -1
  17. package/dist/esm/layouts/fetchHubEntityLayouts.js +30 -0
  18. package/dist/esm/layouts/fetchHubEntityLayouts.js.map +1 -0
  19. package/dist/esm/layouts/internal/upsertLayoutAssetResource.js +72 -0
  20. package/dist/esm/layouts/internal/upsertLayoutAssetResource.js.map +1 -0
  21. package/dist/esm/layouts/publishHubEntityLayout.js +82 -0
  22. package/dist/esm/layouts/publishHubEntityLayout.js.map +1 -0
  23. package/dist/esm/layouts/types.js +1 -1
  24. package/dist/esm/layouts/types.js.map +1 -1
  25. package/dist/esm/permissions/HubPermissionPolicies.js +6 -0
  26. package/dist/esm/permissions/HubPermissionPolicies.js.map +1 -1
  27. package/dist/esm/permissions/_internal/constants.js +1 -0
  28. package/dist/esm/permissions/_internal/constants.js.map +1 -1
  29. package/dist/esm/projects/edit.js +0 -2
  30. package/dist/esm/projects/edit.js.map +1 -1
  31. package/dist/esm/resources/addHubEntityResource.js +36 -0
  32. package/dist/esm/resources/addHubEntityResource.js.map +1 -0
  33. package/dist/esm/resources/addResource.js +37 -0
  34. package/dist/esm/resources/addResource.js.map +1 -0
  35. package/dist/esm/resources/fetchHubEntityResource.js +37 -0
  36. package/dist/esm/resources/fetchHubEntityResource.js.map +1 -0
  37. package/dist/esm/resources/fetchHubEntityResources.js +37 -0
  38. package/dist/esm/resources/fetchHubEntityResources.js.map +1 -0
  39. package/dist/esm/resources/removeHubEntityResource.js +33 -0
  40. package/dist/esm/resources/removeHubEntityResource.js.map +1 -0
  41. package/dist/esm/resources/upsertHubEntityResource.js +34 -0
  42. package/dist/esm/resources/upsertHubEntityResource.js.map +1 -0
  43. package/dist/node/core/_internal/getBasePropertyMap.js +4 -0
  44. package/dist/node/core/_internal/getBasePropertyMap.js.map +1 -1
  45. package/dist/node/core/schemas/internal/getThumbnailUiSchemaElement.js +9 -2
  46. package/dist/node/core/schemas/internal/getThumbnailUiSchemaElement.js.map +1 -1
  47. package/dist/node/core/traits/IWithVersions.js +3 -0
  48. package/dist/node/core/traits/IWithVersions.js.map +1 -0
  49. package/dist/node/events/HubEvent.js +37 -2
  50. package/dist/node/events/HubEvent.js.map +1 -1
  51. package/dist/node/events/_internal/EventUiSchemaEdit.js +1 -1
  52. package/dist/node/events/_internal/EventUiSchemaEdit.js.map +1 -1
  53. package/dist/node/events/_internal/PropertyMapper.js +3 -1
  54. package/dist/node/events/_internal/PropertyMapper.js.map +1 -1
  55. package/dist/node/events/fetch.js +3 -5
  56. package/dist/node/events/fetch.js.map +1 -1
  57. package/dist/node/index.js +7 -1
  58. package/dist/node/index.js.map +1 -1
  59. package/dist/node/layouts/fetchHubEntityLayouts.js +33 -0
  60. package/dist/node/layouts/fetchHubEntityLayouts.js.map +1 -0
  61. package/dist/node/layouts/internal/upsertLayoutAssetResource.js +75 -0
  62. package/dist/node/layouts/internal/upsertLayoutAssetResource.js.map +1 -0
  63. package/dist/node/layouts/publishHubEntityLayout.js +85 -0
  64. package/dist/node/layouts/publishHubEntityLayout.js.map +1 -0
  65. package/dist/node/layouts/types.js +2 -0
  66. package/dist/node/layouts/types.js.map +1 -1
  67. package/dist/node/permissions/HubPermissionPolicies.js +6 -0
  68. package/dist/node/permissions/HubPermissionPolicies.js.map +1 -1
  69. package/dist/node/permissions/_internal/constants.js +1 -0
  70. package/dist/node/permissions/_internal/constants.js.map +1 -1
  71. package/dist/node/projects/edit.js +0 -2
  72. package/dist/node/projects/edit.js.map +1 -1
  73. package/dist/node/resources/addHubEntityResource.js +39 -0
  74. package/dist/node/resources/addHubEntityResource.js.map +1 -0
  75. package/dist/node/resources/addResource.js +40 -0
  76. package/dist/node/resources/addResource.js.map +1 -0
  77. package/dist/node/resources/fetchHubEntityResource.js +40 -0
  78. package/dist/node/resources/fetchHubEntityResource.js.map +1 -0
  79. package/dist/node/resources/fetchHubEntityResources.js +40 -0
  80. package/dist/node/resources/fetchHubEntityResources.js.map +1 -0
  81. package/dist/node/resources/removeHubEntityResource.js +36 -0
  82. package/dist/node/resources/removeHubEntityResource.js.map +1 -0
  83. package/dist/node/resources/upsertHubEntityResource.js +37 -0
  84. package/dist/node/resources/upsertHubEntityResource.js.map +1 -0
  85. package/dist/types/content/_internal/internalContentUtils.d.ts +1 -1
  86. package/dist/types/core/schemas/internal/getThumbnailUiSchemaElement.d.ts +1 -1
  87. package/dist/types/core/traits/IWithVersions.d.ts +5 -0
  88. package/dist/types/core/types/IHubEvent.d.ts +4 -0
  89. package/dist/types/core/types/IHubItemEntity.d.ts +2 -1
  90. package/dist/types/index.d.ts +4 -1
  91. package/dist/types/layouts/fetchHubEntityLayouts.d.ts +16 -0
  92. package/dist/types/layouts/internal/upsertLayoutAssetResource.d.ts +27 -0
  93. package/dist/types/layouts/layout-event-types.d.ts +2 -1
  94. package/dist/types/layouts/migrations/types/ILayoutV2.d.ts +3 -0
  95. package/dist/types/layouts/publishHubEntityLayout.d.ts +29 -0
  96. package/dist/types/layouts/types.d.ts +5 -0
  97. package/dist/types/permissions/_internal/constants.d.ts +2 -2
  98. package/dist/types/resources/addHubEntityResource.d.ts +19 -0
  99. package/dist/types/resources/addResource.d.ts +18 -0
  100. package/dist/types/resources/fetchHubEntityResource.d.ts +15 -0
  101. package/dist/types/resources/fetchHubEntityResources.d.ts +17 -0
  102. package/dist/types/resources/removeHubEntityResource.d.ts +18 -0
  103. package/dist/types/resources/upsertHubEntityResource.d.ts +20 -0
  104. package/dist/types/versioning/types/IVersion.d.ts +6 -2
  105. package/dist/types/versioning/types/IVersionMetadata.d.ts +10 -0
  106. package/package.json +3 -3
  107. package/dist/esm/layouts/updateLayout.js +0 -33
  108. package/dist/esm/layouts/updateLayout.js.map +0 -1
  109. package/dist/esm/layouts/upsertLayoutResource.js +0 -78
  110. package/dist/esm/layouts/upsertLayoutResource.js.map +0 -1
  111. package/dist/node/layouts/updateLayout.js +0 -36
  112. package/dist/node/layouts/updateLayout.js.map +0 -1
  113. package/dist/node/layouts/upsertLayoutResource.js +0 -81
  114. package/dist/node/layouts/upsertLayoutResource.js.map +0 -1
  115. package/dist/types/layouts/updateLayout.d.ts +0 -4
  116. package/dist/types/layouts/upsertLayoutResource.d.ts +0 -26
@@ -0,0 +1,82 @@
1
+ import { cloneObject, createId } from "../util";
2
+ import { upsertLayoutAssetResource } from "./internal/upsertLayoutAssetResource";
3
+ import { updateHubEntity } from "../core/updateHubEntity";
4
+ import { getTypeFromEntity } from "../core/getTypeFromEntity";
5
+ import { upsertHubEntityResource } from "../resources/upsertHubEntityResource";
6
+ import { dasherize } from "../utils/dasherize";
7
+ /**
8
+ * Publishes a Hub entity layout by:
9
+ * 1. Uploading any layout asset resources and updating the
10
+ * layout variables to point to the resource urls
11
+ * 2. Upserting the layout as a resource on the entity
12
+ * 3. Updating the entity's currentVersions to point to the
13
+ * new layout resource
14
+ * 4. Updating the entity
15
+ *
16
+ * TODO: in the future, we'll add layout versioning support, so
17
+ * we'll want this to work with the existing versioning utils.
18
+ * For now, we'll keep it simple and just directly upsert the
19
+ * single published version
20
+ *
21
+ * @param entity - the Hub entity of the layout to publish
22
+ * @param layout - the layout to publish
23
+ * @param versionName - the name of the version to publish
24
+ * @param context - contextual portal and auth information
25
+ * @returns the published layout
26
+ * @throws {HubError} if there is an error during the publish process
27
+ */
28
+ export async function publishHubEntityLayout(entity, layout, versionName, context) {
29
+ var _a, _b;
30
+ const entityType = getTypeFromEntity(entity);
31
+ const updatedLayout = cloneObject(layout);
32
+ // 1. Handle layout asset resources: check layout variables,
33
+ // and for each one that is of type "image" and has a source
34
+ // of "upload", we need to upload the image as a resource and
35
+ // update the variable.value to point to the resource, removing
36
+ // all other properties except type
37
+ await Promise.all(Object.entries(updatedLayout.variables || {}).map(async ([key, _variable]) => {
38
+ const variable = _variable;
39
+ if (variable.type === "image") {
40
+ if (variable.source === "upload" && !!variable.blob) {
41
+ const newVariable = {
42
+ type: variable.type,
43
+ };
44
+ // upsert the layout asset resource
45
+ const resourceUrl = await upsertLayoutAssetResource(entityType, entity.id, entity.owner, variable.blob, key, // this is something like <nodeId>-image-card
46
+ variable.format, context);
47
+ // set the variable's value to the resource url
48
+ newVariable.value = { $ref: resourceUrl };
49
+ // update the current layout variable
50
+ updatedLayout.variables[key] = newVariable;
51
+ }
52
+ }
53
+ }));
54
+ // 2. Upsert the layout resource with the updated layout
55
+ const prefix = "versions";
56
+ const fileName = `${dasherize(versionName)}-${updatedLayout.type}.json`;
57
+ const path = `/${prefix}/${fileName}`;
58
+ const version = {
59
+ id: createId(),
60
+ type: entity.type,
61
+ name: versionName,
62
+ path,
63
+ created: Date.now(),
64
+ updated: Date.now(),
65
+ creator: (_a = context === null || context === void 0 ? void 0 : context.currentUser) === null || _a === void 0 ? void 0 : _a.username,
66
+ lastModifiedBy: (_b = context === null || context === void 0 ? void 0 : context.currentUser) === null || _b === void 0 ? void 0 : _b.username,
67
+ layoutType: updatedLayout.type,
68
+ data: updatedLayout,
69
+ };
70
+ await upsertHubEntityResource(entityType, entity.id, version, fileName, context, {
71
+ owner: entity.owner,
72
+ prefix,
73
+ });
74
+ // 3. Add/update the pointer to the layout resource
75
+ entity.currentVersions = Object.assign(Object.assign({}, entity.currentVersions), { [updatedLayout.type]: `/${prefix}/${fileName}` });
76
+ // 4. Update the entity to persist the new layout resource
77
+ // and updated pointer
78
+ const updatedEntity = await updateHubEntity(entityType, entity, context);
79
+ // 5. Return the updated layout
80
+ return { layout: updatedLayout, entity: updatedEntity };
81
+ }
82
+ //# sourceMappingURL=publishHubEntityLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publishHubEntityLayout.js","sourceRoot":"","sources":["../../../src/layouts/publishHubEntityLayout.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export {};
1
+ export const LAYOUT_SCHEMA_VERSION = 2;
2
2
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/layouts/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/layouts/types.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC"}
@@ -294,6 +294,12 @@ const SystemPermissionPolicies = [
294
294
  availability: ["alpha"],
295
295
  licenses: ["hub-basic", "hub-premium"],
296
296
  },
297
+ {
298
+ permission: "hub:feature:event:thumbnail:upload",
299
+ environments: ["devext", "qaext"],
300
+ availability: ["alpha"],
301
+ licenses: ["hub-basic", "hub-premium"],
302
+ },
297
303
  // NOTE: only use this permission if necessary. Use the licenses check on a permission to check license when able instead of a separate permission.
298
304
  // checks if using hub-premium
299
305
  {
@@ -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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"}
@@ -42,6 +42,7 @@ export const SystemPermissions = [
42
42
  "hub:feature:inline-workspace",
43
43
  "hub:feature:pagescatalog",
44
44
  "hub:feature:discussions:subscription",
45
+ "hub:feature:event:thumbnail:upload",
45
46
  "hub:license:hub-premium",
46
47
  "hub:license:hub-basic",
47
48
  "hub:license:enterprise-sites",
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/permissions/_internal/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAC3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,6BAA6B,EAAE,MAAM,oEAAoE,CAAC;AACnH,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAExE;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,oBAAoB;IACpB,oBAAoB;IACpB,oBAAoB;IACpB,oBAAoB;IACpB,+BAA+B;IAC/B,uCAAuC;IACvC,yBAAyB;IACzB,0BAA0B;IAC1B,2BAA2B;IAC3B,qBAAqB;IACrB,uBAAuB;IACvB,+BAA+B;IAC/B,8BAA8B;IAC9B,iBAAiB;IACjB,4BAA4B;IAC5B,2BAA2B;IAC3B,+BAA+B;IAC/B,2BAA2B;IAC3B,qBAAqB;IACrB,sBAAsB,EAAE,kDAAkD;IAC1E,sCAAsC;IACtC,qCAAqC;IACrC,8BAA8B;IAC9B,0BAA0B;IAC1B,sCAAsC;IACtC,yBAAyB;IACzB,uBAAuB;IACvB,8BAA8B;IAC9B,wBAAwB;IACxB,uBAAuB;IACvB,0BAA0B;IAC1B,uBAAuB;IACvB,wBAAwB;IACxB,4BAA4B;IAC5B,4BAA4B;IAC5B,gBAAgB;IAChB,2BAA2B;IAC3B,oCAAoC;IACpC,qDAAqD;IACrD,gCAAgC;IAChC,qDAAqD;IACrD,gCAAgC;CACxB,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,GAAG,eAAe;IAClB,GAAG,kBAAkB;IACrB,GAAG,qBAAqB;IACxB,GAAG,kBAAkB;IACrB,GAAG,gBAAgB;IACnB,GAAG,eAAe;IAClB,GAAG,mBAAmB;IACtB,GAAG,qBAAqB;IACxB,GAAG,6BAA6B;IAChC,GAAG,mBAAmB;IACtB,GAAG,iBAAiB;IACpB,GAAG,gBAAgB;IACnB,GAAG,eAAe;IAClB,GAAG,kBAAkB;CACb,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/permissions/_internal/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAC3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,6BAA6B,EAAE,MAAM,oEAAoE,CAAC;AACnH,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAExE;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,oBAAoB;IACpB,oBAAoB;IACpB,oBAAoB;IACpB,oBAAoB;IACpB,+BAA+B;IAC/B,uCAAuC;IACvC,yBAAyB;IACzB,0BAA0B;IAC1B,2BAA2B;IAC3B,qBAAqB;IACrB,uBAAuB;IACvB,+BAA+B;IAC/B,8BAA8B;IAC9B,iBAAiB;IACjB,4BAA4B;IAC5B,2BAA2B;IAC3B,+BAA+B;IAC/B,2BAA2B;IAC3B,qBAAqB;IACrB,sBAAsB,EAAE,kDAAkD;IAC1E,sCAAsC;IACtC,qCAAqC;IACrC,8BAA8B;IAC9B,0BAA0B;IAC1B,sCAAsC;IACtC,oCAAoC;IACpC,yBAAyB;IACzB,uBAAuB;IACvB,8BAA8B;IAC9B,wBAAwB;IACxB,uBAAuB;IACvB,0BAA0B;IAC1B,uBAAuB;IACvB,wBAAwB;IACxB,4BAA4B;IAC5B,4BAA4B;IAC5B,gBAAgB;IAChB,2BAA2B;IAC3B,oCAAoC;IACpC,qDAAqD;IACrD,gCAAgC;IAChC,qDAAqD;IACrD,gCAAgC;CACxB,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,GAAG,eAAe;IAClB,GAAG,kBAAkB;IACrB,GAAG,qBAAqB;IACxB,GAAG,kBAAkB;IACrB,GAAG,gBAAgB;IACnB,GAAG,eAAe;IAClB,GAAG,mBAAmB;IACtB,GAAG,qBAAqB;IACxB,GAAG,6BAA6B;IAChC,GAAG,mBAAmB;IACtB,GAAG,iBAAiB;IACpB,GAAG,gBAAgB;IACnB,GAAG,eAAe;IAClB,GAAG,kBAAkB;CACb,CAAC"}
@@ -12,7 +12,6 @@ import { setDiscussableKeyword } from "../discussions/utils";
12
12
  import { createModel } from "../models/createModel";
13
13
  import { getModel } from "../models/getModel";
14
14
  import { updateModel } from "../models/updateModel";
15
- import { updateLayout } from "../layouts/updateLayout";
16
15
  /**
17
16
  * @private
18
17
  * Create a new Hub Project item
@@ -61,7 +60,6 @@ export async function updateProject(project, requestOptions) {
61
60
  // update the status keyword
62
61
  project.typeKeywords = setEntityStatusKeyword(project.typeKeywords, project.status);
63
62
  project.typeKeywords = setDiscussableKeyword(project.typeKeywords, project.isDiscussable);
64
- project.layout = (await updateLayout(project, project.layout, requestOptions));
65
63
  // get the backing item & data
66
64
  const model = await getModel(project.id, requestOptions);
67
65
  // create the PropertyMapper
@@ -1 +1 @@
1
- {"version":3,"file":"edit.js","sourceRoot":"","sources":["../../../src/projects/edit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"edit.js","sourceRoot":"","sources":["../../../src/projects/edit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import HubError from "../HubError";
2
+ import { addResource } from "./addResource";
3
+ /**
4
+ * Adds a Hub entity resource. This util handles delegating
5
+ * to the correct resource add logic based on the entity type.
6
+ *
7
+ * @param type - type of the entity to add the resource for
8
+ * @param identifier - id of the entity to add the resource for
9
+ * @param resource - the resource to add
10
+ * @param name - name of the new resource file
11
+ * @param context - contextual portal and auth information
12
+ * @param opts.owner - (optional) owner of the resource to add, defaults to the current user if not provided
13
+ * @param opts.prefix - (optional) folder in which to store the new resource
14
+ * @throws {HubError} if there is an error during the add process or if adding is not yet implemented for the entity type
15
+ */
16
+ export async function addHubEntityResource(type, identifier, resource, name, context, opts) {
17
+ var _a;
18
+ if (type === "event") {
19
+ // TODO: add logic to add event resource
20
+ throw new HubError("addHubEntityResource", "adding event resources is not yet implemented");
21
+ }
22
+ else if (type === "group") {
23
+ // TODO: add logic to add group resource once
24
+ // supported by portal
25
+ throw new HubError("addHubEntityResource", "adding group resources is not yet supported");
26
+ }
27
+ else {
28
+ // default logic for item-backed entities
29
+ const owner = (opts === null || opts === void 0 ? void 0 : opts.owner) || ((_a = context === null || context === void 0 ? void 0 : context.currentUser) === null || _a === void 0 ? void 0 : _a.username);
30
+ await addResource(identifier, name, resource, context, {
31
+ owner,
32
+ prefix: opts === null || opts === void 0 ? void 0 : opts.prefix,
33
+ });
34
+ }
35
+ }
36
+ //# sourceMappingURL=addHubEntityResource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addHubEntityResource.js","sourceRoot":"","sources":["../../../src/resources/addHubEntityResource.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,aAAa,CAAC;AAEnC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAmB,EACnB,UAAkB,EAClB,QAAiB,EACjB,IAAY,EACZ,OAAuB,EACvB,IAGC;;IAED,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,wCAAwC;QACxC,MAAM,IAAI,QAAQ,CAChB,sBAAsB,EACtB,+CAA+C,CAChD,CAAC;IACJ,CAAC;SAAM,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,6CAA6C;QAC7C,sBAAsB;QACtB,MAAM,IAAI,QAAQ,CAChB,sBAAsB,EACtB,6CAA6C,CAC9C,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,yCAAyC;QACzC,MAAM,KAAK,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,MAAI,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,0CAAE,QAAQ,CAAA,CAAC;QAC5D,MAAM,WAAW,CAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;YACrD,KAAK;YACL,MAAM,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM;SACrB,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -0,0 +1,37 @@
1
+ import { addItemResource } from "@esri/arcgis-rest-portal";
2
+ import HubError from "../HubError";
3
+ /**
4
+ * Thin wrapper around addItemResource to add a resource
5
+ * to a portal item and provide Hub-specific error
6
+ * handling.
7
+ *
8
+ * @param id - id of the item to add the resource to
9
+ * @param name - name of the resource file
10
+ * @param owner - owner of the item to add the resource to
11
+ * @param context - contextual portal and auth information
12
+ * @throws {HubError} if there is an error during the add process
13
+ */
14
+ export async function addResource(id, name, resource, context, opts) {
15
+ var _a;
16
+ try {
17
+ // Add the item resource
18
+ const owner = (opts === null || opts === void 0 ? void 0 : opts.owner) || ((_a = context === null || context === void 0 ? void 0 : context.currentUser) === null || _a === void 0 ? void 0 : _a.username);
19
+ const response = await addItemResource(Object.assign({ id,
20
+ owner,
21
+ resource, name: name, prefix: opts === null || opts === void 0 ? void 0 : opts.prefix }, context.userRequestOptions));
22
+ // If error, throw
23
+ if (!response.success) {
24
+ throw new HubError("Add Item Resource", `Error adding resource ${name} to item ${id}.`);
25
+ }
26
+ return response;
27
+ }
28
+ catch (err) {
29
+ if (err instanceof Error) {
30
+ throw new HubError("Add Item Resource", err.message, err);
31
+ }
32
+ else {
33
+ throw new HubError("Add Item Resource", `Error adding resource ${name} to item ${id}.`);
34
+ }
35
+ }
36
+ }
37
+ //# sourceMappingURL=addResource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addResource.js","sourceRoot":"","sources":["../../../src/resources/addResource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,QAAQ,MAAM,aAAa,CAAC;AAGnC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,EAAU,EACV,IAAY,EACZ,QAAiB,EACjB,OAAuB,EACvB,IAGC;;IAED,IAAI,CAAC;QACH,wBAAwB;QACxB,MAAM,KAAK,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,MAAI,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,0CAAE,QAAQ,CAAA,CAAC;QAC5D,MAAM,QAAQ,GAAG,MAAM,eAAe,iBACpC,EAAE;YACF,KAAK;YACL,QAAQ,EACR,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,IACjB,OAAO,CAAC,kBAAkB,EAC7B,CAAC;QAEH,kBAAkB;QAClB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,QAAQ,CAChB,mBAAmB,EACnB,yBAAyB,IAAI,YAAY,EAAE,GAAG,CAC/C,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,QAAQ,CAAC,mBAAmB,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,QAAQ,CAChB,mBAAmB,EACnB,yBAAyB,IAAI,YAAY,EAAE,GAAG,CAC/C,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,37 @@
1
+ import { getItemResource } from "@esri/arcgis-rest-portal";
2
+ import HubError from "../HubError";
3
+ /**
4
+ * Fetches a Hub entity resource. This util handles
5
+ * delegating to the correct resource fetching logic
6
+ * based on the entity type.
7
+ *
8
+ * @param type - type of the entity to fetch the resource for
9
+ * @param identifier - id of the entity to fetch the resource for
10
+ * @param fileName - name of the info file (including the optional folder path) to fetch
11
+ * @param context - contextual portal and auth information
12
+ * @returns the fetched resource
13
+ * @throws {HubError} if there is an error during the fetch process or if fetching is not yet implemented for the entity type
14
+ */
15
+ export async function fetchHubEntityResource(type, identifier, fileName, context) {
16
+ let resource;
17
+ if (type === "event") {
18
+ // TODO: add logic to fetch event resource
19
+ throw new HubError("fetchHubEntityResource", "Fetching event resources is not yet implemented");
20
+ }
21
+ else if (type === "group") {
22
+ // TODO: add logic to fetch group resource once
23
+ // supported by portal
24
+ throw new HubError("fetchHubEntityResource", "Fetching group resources is not yet supported");
25
+ }
26
+ else {
27
+ // default to item-based resource fetching for item-backed entities
28
+ try {
29
+ resource = await getItemResource(identifier, Object.assign(Object.assign({}, context.requestOptions), { fileName }));
30
+ }
31
+ catch (error) {
32
+ throw new HubError("Get Item Resource", `Failed to fetch resource ${fileName} for ${type} with identifier ${identifier}`, error);
33
+ }
34
+ }
35
+ return resource;
36
+ }
37
+ //# sourceMappingURL=fetchHubEntityResource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchHubEntityResource.js","sourceRoot":"","sources":["../../../src/resources/fetchHubEntityResource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAG3D,OAAO,QAAQ,MAAM,aAAa,CAAC;AAEnC;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAAmB,EACnB,UAAkB,EAClB,QAAgB,EAChB,OAAuB;IAEvB,IAAI,QAAiB,CAAC;IACtB,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,0CAA0C;QAC1C,MAAM,IAAI,QAAQ,CAChB,wBAAwB,EACxB,iDAAiD,CAClD,CAAC;IACJ,CAAC;SAAM,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,+CAA+C;QAC/C,sBAAsB;QACtB,MAAM,IAAI,QAAQ,CAChB,wBAAwB,EACxB,+CAA+C,CAChD,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,mEAAmE;QACnE,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,eAAe,CAAC,UAAU,kCACtC,OAAO,CAAC,cAAc,KACzB,QAAQ,IACR,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,QAAQ,CAChB,mBAAmB,EACnB,4BAA4B,QAAQ,QAAQ,IAAI,oBAAoB,UAAU,EAAE,EAChF,KAAc,CACf,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -0,0 +1,37 @@
1
+ import { getItemResources } from "@esri/arcgis-rest-portal";
2
+ import HubError from "../HubError";
3
+ /**
4
+ * Fetches a Hub entity's resources. This util handles
5
+ * delegating to the correct resource fetching logic
6
+ * based on the entity type.
7
+ *
8
+ * @param type - type of the entity to fetch the resources for
9
+ * @param identifier - id of the entity to fetch the resources for
10
+ * @param context - contextual portal and auth information
11
+ * @returns the fetched resources
12
+ * @throws {HubError} if there is an error during the fetch process or if fetching is not yet implemented for the entity type
13
+ */
14
+ export async function fetchHubEntityResources(type, identifier, context) {
15
+ let resources = [];
16
+ if (type === "event") {
17
+ // TODO: add logic to fetch event resources
18
+ throw new HubError("fetchHubEntityResource", "Fetching event resources is not yet implemented");
19
+ }
20
+ else if (type === "group") {
21
+ // TODO: add logic to fetch group resources once
22
+ // supported by portal
23
+ throw new HubError("fetchHubEntityResource", "Fetching group resources is not yet supported");
24
+ }
25
+ else {
26
+ // default to item-based resource fetching for item-backed entities
27
+ try {
28
+ const res = await getItemResources(identifier, context.requestOptions);
29
+ resources = res.resources.map((resource) => (Object.assign(Object.assign({}, resource), { name: resource.resource })));
30
+ }
31
+ catch (error) {
32
+ throw new HubError("Get Item Resources", `Failed to fetch resources for ${type} with identifier ${identifier}`, error);
33
+ }
34
+ }
35
+ return resources;
36
+ }
37
+ //# sourceMappingURL=fetchHubEntityResources.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchHubEntityResources.js","sourceRoot":"","sources":["../../../src/resources/fetchHubEntityResources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,OAAO,QAAQ,MAAM,aAAa,CAAC;AAEnC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,IAAmB,EACnB,UAAkB,EAClB,OAAuB;IAEvB,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,2CAA2C;QAC3C,MAAM,IAAI,QAAQ,CAChB,wBAAwB,EACxB,iDAAiD,CAClD,CAAC;IACJ,CAAC;SAAM,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,gDAAgD;QAChD,sBAAsB;QACtB,MAAM,IAAI,QAAQ,CAChB,wBAAwB,EACxB,+CAA+C,CAChD,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,mEAAmE;QACnE,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;YACvE,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,iCACvC,QAAQ,KACX,IAAI,EAAE,QAAQ,CAAC,QAAQ,IACvB,CAAC,CAAC;QACN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,QAAQ,CAChB,oBAAoB,EACpB,iCAAiC,IAAI,oBAAoB,UAAU,EAAE,EACrE,KAAc,CACf,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -0,0 +1,33 @@
1
+ import HubError from "../HubError";
2
+ import { removeResource } from "./removeResource";
3
+ /**
4
+ * Removes a Hub entity resource. This util handles delegating
5
+ * to the correct resource remove logic based on the entity type.
6
+ *
7
+ * @param type - type of the entity to remove the resource for
8
+ * @param identifier - id of the entity to remove the resource for
9
+ * @param name - name of the new/existing resource file
10
+ * @param context - contextual portal and auth information
11
+ * @param opts.owner - (optional) owner of the resource to add, defaults to the current user if not provided
12
+ * @param opts.prefix - (optional) folder in which to store the new resource
13
+ * @throws {HubError} if there is an error during the remove process or if removeing is not yet implemented for the entity type
14
+ */
15
+ export async function removeHubEntityResource(type, identifier, name, context, opts) {
16
+ var _a;
17
+ if (type === "event") {
18
+ // TODO: add logic to remove event resource
19
+ throw new HubError("removeHubEntityResource", "removing event resources is not yet implemented");
20
+ }
21
+ else if (type === "group") {
22
+ // TODO: add logic to remove group resource once
23
+ // supported by portal
24
+ throw new HubError("removeHubEntityResource", "removing group resources is not yet supported");
25
+ }
26
+ else {
27
+ // default logic for item-backed entities
28
+ const owner = (opts === null || opts === void 0 ? void 0 : opts.owner) || ((_a = context === null || context === void 0 ? void 0 : context.currentUser) === null || _a === void 0 ? void 0 : _a.username);
29
+ const fileName = (opts === null || opts === void 0 ? void 0 : opts.prefix) ? `${opts.prefix}/${name}` : name;
30
+ await removeResource(identifier, fileName, owner, context.userRequestOptions);
31
+ }
32
+ }
33
+ //# sourceMappingURL=removeHubEntityResource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"removeHubEntityResource.js","sourceRoot":"","sources":["../../../src/resources/removeHubEntityResource.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,aAAa,CAAC;AAEnC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,IAAmB,EACnB,UAAkB,EAClB,IAAY,EACZ,OAAuB,EACvB,IAGC;;IAED,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,2CAA2C;QAC3C,MAAM,IAAI,QAAQ,CAChB,yBAAyB,EACzB,iDAAiD,CAClD,CAAC;IACJ,CAAC;SAAM,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,gDAAgD;QAChD,sBAAsB;QACtB,MAAM,IAAI,QAAQ,CAChB,yBAAyB,EACzB,+CAA+C,CAChD,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,yCAAyC;QACzC,MAAM,KAAK,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,MAAI,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,0CAAE,QAAQ,CAAA,CAAC;QAC5D,MAAM,QAAQ,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAChE,MAAM,cAAc,CAClB,UAAU,EACV,QAAQ,EACR,KAAK,EACL,OAAO,CAAC,kBAAkB,CAC3B,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -0,0 +1,34 @@
1
+ import HubError from "../HubError";
2
+ import { upsertResource } from "./upsertResource";
3
+ /**
4
+ * Adds or updates a Hub entity resource depending on whether it
5
+ * already exists. This util handles delegating to the correct
6
+ * resource upsert logic based on the entity type.
7
+ *
8
+ * @param type - type of the entity to upsert the resource for
9
+ * @param identifier - id of the entity to upsert the resource for
10
+ * @param resource - the resource to upsert
11
+ * @param name - name of the new/existing resource file
12
+ * @param context - contextual portal and auth information
13
+ * @param opts.owner - (optional) owner of the resource to add, defaults to the current user if not provided
14
+ * @param opts.prefix - (optional) folder in which to store the new resource
15
+ * @throws {HubError} if there is an error during the upsert process or if upserting is not yet implemented for the entity type
16
+ */
17
+ export async function upsertHubEntityResource(type, identifier, resource, name, context, opts) {
18
+ var _a;
19
+ if (type === "event") {
20
+ // TODO: add logic to upsert event resource
21
+ throw new HubError("upsertHubEntityResource", "Upserting event resources is not yet implemented");
22
+ }
23
+ else if (type === "group") {
24
+ // TODO: add logic to upsert group resource once
25
+ // supported by portal
26
+ throw new HubError("upsertHubEntityResource", "Upserting group resources is not yet supported");
27
+ }
28
+ else {
29
+ // default logic for item-backed entities
30
+ const owner = (opts === null || opts === void 0 ? void 0 : opts.owner) || ((_a = context === null || context === void 0 ? void 0 : context.currentUser) === null || _a === void 0 ? void 0 : _a.username);
31
+ await upsertResource(identifier, owner, resource, name, context.userRequestOptions, opts === null || opts === void 0 ? void 0 : opts.prefix);
32
+ }
33
+ }
34
+ //# sourceMappingURL=upsertHubEntityResource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upsertHubEntityResource.js","sourceRoot":"","sources":["../../../src/resources/upsertHubEntityResource.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,aAAa,CAAC;AAEnC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,IAAmB,EACnB,UAAkB,EAClB,QAAiB,EACjB,IAAY,EACZ,OAAuB,EACvB,IAGC;;IAED,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,2CAA2C;QAC3C,MAAM,IAAI,QAAQ,CAChB,yBAAyB,EACzB,kDAAkD,CACnD,CAAC;IACJ,CAAC;SAAM,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,gDAAgD;QAChD,sBAAsB;QACtB,MAAM,IAAI,QAAQ,CAChB,yBAAyB,EACzB,gDAAgD,CACjD,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,yCAAyC;QACzC,MAAM,KAAK,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,MAAI,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,0CAAE,QAAQ,CAAA,CAAC;QAC5D,MAAM,cAAc,CAClB,UAAU,EACV,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,OAAO,CAAC,kBAAkB,EAC1B,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CACb,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -84,6 +84,10 @@ function getBasePropertyMap() {
84
84
  entityKey: "entitySettingsId",
85
85
  storeKey: "entitySettings.id",
86
86
  });
87
+ map.push({
88
+ entityKey: "currentVersions",
89
+ storeKey: "item.properties.currentVersions",
90
+ });
87
91
  return map;
88
92
  }
89
93
  //# sourceMappingURL=getBasePropertyMap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getBasePropertyMap.js","sourceRoot":"","sources":["../../../../src/core/_internal/getBasePropertyMap.ts"],"names":[],"mappings":";;AAQA,gDA8EC;AAtFD,0CAAmD;AAGnD;;;;GAIG;AACH,SAAgB,kBAAkB;IAChC,MAAM,SAAS,GAAG;QAChB,QAAQ;QACR,SAAS;QACT,SAAS;QACT,aAAa;QACb,QAAQ;QACR,IAAI;QACJ,aAAa;QACb,UAAU;QACV,OAAO;QACP,MAAM;QACN,YAAY;QACZ,MAAM;QACN,cAAc;QACd,WAAW;QACX,KAAK;QACL,OAAO;QACP,iFAAiF;KAClF,CAAC;IACF,MAAM,SAAS,GAAG;QAChB,SAAS;QACT,UAAU;QACV,MAAM;QACN,cAAc;QACd,UAAU;QACV,WAAW;QACX,QAAQ;KACT,CAAC;IACF,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,yBAAiB,CAAC,CAAC;IACrD,MAAM,GAAG,GAAmB,EAAE,CAAC;IAC/B,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC1B,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,KAAK,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IACH,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC1B,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,KAAK,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IACH,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC9B,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,KAAK,EAAE,EAAE,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IACH,kBAAkB;IAClB,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,MAAM;QACjB,QAAQ,EAAE,sBAAsB;KACjC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,cAAc;KACzB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,eAAe;QAC1B,QAAQ,EAAE,+BAA+B;KAC1C,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,WAAW;QACtB,QAAQ,EAAE,2BAA2B;KACtC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,MAAM;QACjB,QAAQ,EAAE,YAAY;KACvB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,UAAU;QACrB,QAAQ,EAAE,0BAA0B;KACrC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,UAAU;QACrB,QAAQ,EAAE,0BAA0B;KACrC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,oBAAoB;QAC/B,QAAQ,EAAE,qCAAqC;KAChD,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,kBAAkB;QAC7B,QAAQ,EAAE,mBAAmB;KAC9B,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"getBasePropertyMap.js","sourceRoot":"","sources":["../../../../src/core/_internal/getBasePropertyMap.ts"],"names":[],"mappings":";;AAQA,gDAkFC;AA1FD,0CAAmD;AAGnD;;;;GAIG;AACH,SAAgB,kBAAkB;IAChC,MAAM,SAAS,GAAG;QAChB,QAAQ;QACR,SAAS;QACT,SAAS;QACT,aAAa;QACb,QAAQ;QACR,IAAI;QACJ,aAAa;QACb,UAAU;QACV,OAAO;QACP,MAAM;QACN,YAAY;QACZ,MAAM;QACN,cAAc;QACd,WAAW;QACX,KAAK;QACL,OAAO;QACP,iFAAiF;KAClF,CAAC;IACF,MAAM,SAAS,GAAG;QAChB,SAAS;QACT,UAAU;QACV,MAAM;QACN,cAAc;QACd,UAAU;QACV,WAAW;QACX,QAAQ;KACT,CAAC;IACF,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,yBAAiB,CAAC,CAAC;IACrD,MAAM,GAAG,GAAmB,EAAE,CAAC;IAC/B,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC1B,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,KAAK,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IACH,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC1B,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,KAAK,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IACH,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC9B,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,KAAK,EAAE,EAAE,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IACH,kBAAkB;IAClB,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,MAAM;QACjB,QAAQ,EAAE,sBAAsB;KACjC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,cAAc;KACzB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,eAAe;QAC1B,QAAQ,EAAE,+BAA+B;KAC1C,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,WAAW;QACtB,QAAQ,EAAE,2BAA2B;KACtC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,MAAM;QACjB,QAAQ,EAAE,YAAY;KACvB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,UAAU;QACrB,QAAQ,EAAE,0BAA0B;KACrC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,UAAU;QACrB,QAAQ,EAAE,0BAA0B;KACrC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,oBAAoB;QAC/B,QAAQ,EAAE,qCAAqC;KAChD,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,kBAAkB;QAC7B,QAAQ,EAAE,mBAAmB;KAC9B,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,iBAAiB;QAC5B,QAAQ,EAAE,iCAAiC;KAC5C,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -4,6 +4,7 @@ exports.getDefaultImageEntityThumbnail = void 0;
4
4
  exports.getThumbnailUiSchemaElement = getThumbnailUiSchemaElement;
5
5
  const get_cdn_asset_url_1 = require("../../../urls/get-cdn-asset-url");
6
6
  const get_item_data_url_1 = require("../../../urls/get-item-data-url");
7
+ const checkPermission_1 = require("../../../permissions/checkPermission");
7
8
  const DEFAULT_ENTITY_THUMBNAILS = {
8
9
  discussion: "/ember-arcgis-opendata-components/assets/images/placeholders/discussion.png",
9
10
  group: "/ember-arcgis-opendata-components/assets/images/placeholders/group.png",
@@ -40,7 +41,8 @@ exports.getDefaultImageEntityThumbnail = getDefaultImageEntityThumbnail;
40
41
  * @param defaultThumbnailUrl optional default thumbnail url to use instead of the standard one
41
42
  * @returns the UI schema element for thumbnail editing
42
43
  */
43
- function getThumbnailUiSchemaElement(i18nScope, thumbnail, thumbnailUrl, entityType, requestOptions, defaultThumbnailUrl) {
44
+ function getThumbnailUiSchemaElement(i18nScope, thumbnail, thumbnailUrl, entityType, requestOptions, defaultThumbnailUrl, context // can remove this when we remove the event thumbnail upload source gating
45
+ ) {
44
46
  var _a;
45
47
  const defaultEntityThumbnail = (_a = DEFAULT_ENTITY_THUMBNAILS[entityType]) !== null && _a !== void 0 ? _a : DEFAULT_ENTITY_THUMBNAILS.content;
46
48
  const defaultImgUrl = defaultThumbnailUrl ||
@@ -55,12 +57,17 @@ function getThumbnailUiSchemaElement(i18nScope, thumbnail, thumbnailUrl, entityT
55
57
  };
56
58
  }
57
59
  else if (entityType === "event") {
60
+ const sources = [];
61
+ if ((0, checkPermission_1.checkPermission)("hub:feature:discussions:subscription", context).access) {
62
+ sources.push("upload");
63
+ }
64
+ sources.push("url");
58
65
  options = {
59
66
  aspectRatio: 1.5,
60
67
  sizeDescription: {
61
68
  labelKey: "shared.fields._thumbnail.sizeDescription",
62
69
  },
63
- sources: ["url"],
70
+ sources,
64
71
  };
65
72
  }
66
73
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"getThumbnailUiSchemaElement.js","sourceRoot":"","sources":["../../../../../src/core/schemas/internal/getThumbnailUiSchemaElement.ts"],"names":[],"mappings":";;;AAwDA,kEAyDC;AAhHD,uEAAiE;AAGjE,uEAAiE;AAKjE,MAAM,yBAAyB,GAA2C;IACxE,UAAU,EACR,6EAA6E;IAC/E,KAAK,EACH,wEAAwE;IAC1E,KAAK,EACH,wEAAwE;IAC1E,OAAO,EACL,0EAA0E;CAC7E,CAAC;AAEF;;;;;;;;;GASG;AACI,MAAM,8BAA8B,GAAG,CAC5C,OAAqC,EACrC,OAAuB,EACH,EAAE;;IACtB,OAAO,OAAO,CAAC,IAAI,KAAK,OAAO;QAC7B,CAAC,CAAC,4EAA4E;YAC5E,IAAA,kCAAc,EACZ,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAW,EACnD,OAAO,CAAC,iBAAiB,EACzB,MAAA,OAAO,CAAC,iBAAiB,CAAC,cAAc,0CAAE,KAAK,CAChD;QACH,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC,CAAC;AAZW,QAAA,8BAA8B,kCAYzC;AAEF;;;;;;;;;;;GAWG;AACH,SAAgB,2BAA2B,CACzC,SAAiB,EACjB,SAAiB,EACjB,YAAoB,EACpB,UAAyB,EACzB,cAA+B,EAC/B,mBAA4B;;IAE5B,MAAM,sBAAsB,GAC1B,MAAA,yBAAyB,CAAC,UAAU,CAAC,mCAAI,yBAAyB,CAAC,OAAO,CAAC;IAC7E,MAAM,aAAa,GACjB,mBAAmB;QACnB,IAAA,kCAAc,EAAC,sBAAsB,EAAE,cAAc,CAAC,CAAC;IAEzD,IAAI,OAAO,CAAC;IACZ,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QAC3B,OAAO,GAAG;YACR,WAAW,EAAE,CAAC;YACd,eAAe,EAAE;gBACf,QAAQ,EAAE,GAAG,SAAS,oCAAoC;aAC3D;SACF,CAAC;IACJ,CAAC;SAAM,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QAClC,OAAO,GAAG;YACR,WAAW,EAAE,GAAG;YAChB,eAAe,EAAE;gBACf,QAAQ,EAAE,0CAA0C;aACrD;YACD,OAAO,EAAE,CAAC,KAAK,CAAC;SACjB,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO,GAAG;YACR,WAAW,EAAE,GAAG;YAChB,eAAe,EAAE;gBACf,QAAQ,EAAE,0CAA0C;aACrD;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL;YACE,QAAQ,EACN,UAAU,KAAK,OAAO;gBACpB,CAAC,CAAC,GAAG,SAAS,0BAA0B;gBACxC,CAAC,CAAC,gCAAgC;YACtC,KAAK,EAAE,wBAAwB;YAC/B,IAAI,EAAE,SAAS;YACf,OAAO,kBACL,OAAO,EAAE,8BAA8B,EACvC,MAAM,EAAE,YAAY,EACpB,aAAa,EACb,QAAQ,EAAE,GAAG,EACb,SAAS,EAAE,GAAG,IACX,OAAO,CACX;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"getThumbnailUiSchemaElement.js","sourceRoot":"","sources":["../../../../../src/core/schemas/internal/getThumbnailUiSchemaElement.ts"],"names":[],"mappings":";;;AAyDA,kEAkEC;AA1HD,uEAAiE;AAGjE,uEAAiE;AAIjE,0EAAuE;AAEvE,MAAM,yBAAyB,GAA2C;IACxE,UAAU,EACR,6EAA6E;IAC/E,KAAK,EACH,wEAAwE;IAC1E,KAAK,EACH,wEAAwE;IAC1E,OAAO,EACL,0EAA0E;CAC7E,CAAC;AAEF;;;;;;;;;GASG;AACI,MAAM,8BAA8B,GAAG,CAC5C,OAAqC,EACrC,OAAuB,EACH,EAAE;;IACtB,OAAO,OAAO,CAAC,IAAI,KAAK,OAAO;QAC7B,CAAC,CAAC,4EAA4E;YAC5E,IAAA,kCAAc,EACZ,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAW,EACnD,OAAO,CAAC,iBAAiB,EACzB,MAAA,OAAO,CAAC,iBAAiB,CAAC,cAAc,0CAAE,KAAK,CAChD;QACH,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC,CAAC;AAZW,QAAA,8BAA8B,kCAYzC;AAEF;;;;;;;;;;;GAWG;AACH,SAAgB,2BAA2B,CACzC,SAAiB,EACjB,SAAiB,EACjB,YAAoB,EACpB,UAAyB,EACzB,cAA+B,EAC/B,mBAA4B,EAC5B,OAAwB,CAAC,0EAA0E;;;IAEnG,MAAM,sBAAsB,GAC1B,MAAA,yBAAyB,CAAC,UAAU,CAAC,mCAAI,yBAAyB,CAAC,OAAO,CAAC;IAC7E,MAAM,aAAa,GACjB,mBAAmB;QACnB,IAAA,kCAAc,EAAC,sBAAsB,EAAE,cAAc,CAAC,CAAC;IAEzD,IAAI,OAAO,CAAC;IACZ,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QAC3B,OAAO,GAAG;YACR,WAAW,EAAE,CAAC;YACd,eAAe,EAAE;gBACf,QAAQ,EAAE,GAAG,SAAS,oCAAoC;aAC3D;SACF,CAAC;IACJ,CAAC;SAAM,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,IACE,IAAA,iCAAe,EAAC,sCAAsC,EAAE,OAAO,CAAC,CAAC,MAAM,EACvE,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzB,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEpB,OAAO,GAAG;YACR,WAAW,EAAE,GAAG;YAChB,eAAe,EAAE;gBACf,QAAQ,EAAE,0CAA0C;aACrD;YACD,OAAO;SACR,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO,GAAG;YACR,WAAW,EAAE,GAAG;YAChB,eAAe,EAAE;gBACf,QAAQ,EAAE,0CAA0C;aACrD;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL;YACE,QAAQ,EACN,UAAU,KAAK,OAAO;gBACpB,CAAC,CAAC,GAAG,SAAS,0BAA0B;gBACxC,CAAC,CAAC,gCAAgC;YACtC,KAAK,EAAE,wBAAwB;YAC/B,IAAI,EAAE,SAAS;YACf,OAAO,kBACL,OAAO,EAAE,8BAA8B,EACvC,MAAM,EAAE,YAAY,EACpB,aAAa,EACb,QAAQ,EAAE,GAAG,EACb,SAAS,EAAE,GAAG,IACX,OAAO,CACX;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IWithVersions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IWithVersions.js","sourceRoot":"","sources":["../../../../src/core/traits/IWithVersions.ts"],"names":[],"mappings":""}
@@ -10,6 +10,7 @@ const shareEventWithGroups_1 = require("./_internal/shareEventWithGroups");
10
10
  const unshareEventWithGroups_1 = require("./_internal/unshareEventWithGroups");
11
11
  const HubError_1 = require("../HubError");
12
12
  const events_1 = require("./api/events");
13
+ const orval_events_1 = require("./api/orval/api/orval-events");
13
14
  const getEventGroups_1 = require("./getEventGroups");
14
15
  const hubItemEntityFromEditor_1 = require("../core/_internal/hubItemEntityFromEditor");
15
16
  const set_prop_1 = require("../objects/set-prop");
@@ -169,6 +170,7 @@ class HubEvent extends HubItemEntity_1.HubItemEntity {
169
170
  * @returns Promise<IHubEvent>
170
171
  */
171
172
  async fromEditor(editor) {
173
+ var _a;
172
174
  const thumbnail = editor._thumbnail;
173
175
  // delegate to an item-specific fromEditor util to
174
176
  // handle shared "fromEditor" logic
@@ -179,9 +181,42 @@ class HubEvent extends HubItemEntity_1.HubItemEntity {
179
181
  Object.entries(res).forEach(([key, value]) => {
180
182
  (0, set_prop_1.setProp)(key, value, this);
181
183
  });
182
- // 2. handle event-specific operations
184
+ // if undefined, thumbnail should not change
183
185
  if (thumbnail) {
184
- event.thumbnailUrl = thumbnail.url || null;
186
+ // delete the existing thumbnail if it exists
187
+ if (event.resourceId) {
188
+ await (0, events_1.deleteEventResource)(Object.assign({ eventId: event.id, resourceId: event.resourceId }, this.context.hubRequestOptions));
189
+ event.resourceId = null;
190
+ }
191
+ event.thumbnailUrl = null;
192
+ // if defined but without relevant props, thumbnail will be removed
193
+ if (thumbnail.source === "upload" && thumbnail.blob) {
194
+ try {
195
+ // upload thumbnail
196
+ const { resources, presignedUrl } = await (0, events_1.createEventResource)(Object.assign({ eventId: event.id, data: {
197
+ fileName: thumbnail.fileName,
198
+ mimeType: thumbnail.blob.type,
199
+ resourceType: orval_events_1.CreateEventResourceDtoResourceType.thumbnail,
200
+ } }, this.context.hubRequestOptions));
201
+ event.resourceId =
202
+ ((_a = resources[resources === null || resources === void 0 ? void 0 : resources.findIndex((r) => r.type === "thumbnail")]) === null || _a === void 0 ? void 0 : _a.id) || null;
203
+ // this step is necessary to actually upload the thumbnail to the presigned url
204
+ await fetch(presignedUrl, {
205
+ method: "PUT",
206
+ headers: {
207
+ "Content-Type": thumbnail.blob
208
+ .type,
209
+ },
210
+ body: thumbnail.blob,
211
+ });
212
+ }
213
+ catch (e) {
214
+ throw new Error(`There was an error uploading the thumbnail: ${e}`);
215
+ }
216
+ }
217
+ else if (thumbnail.source === "url" && thumbnail.url) {
218
+ event.thumbnailUrl = thumbnail.url;
219
+ }
185
220
  }
186
221
  // save or create the entity
187
222
  this.entity = event;