@esri/hub-common 18.13.0 → 19.0.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 (119) hide show
  1. package/dist/esm/core/_internal/PropertyMapper.js +1 -1
  2. package/dist/esm/core/_internal/PropertyMapper.js.map +1 -1
  3. package/dist/esm/core/_internal/hubItemEntityFromEditor.js +99 -0
  4. package/dist/esm/core/_internal/hubItemEntityFromEditor.js.map +1 -0
  5. package/dist/esm/core/schemas/internal/buildCatalogSetupUiSchemaElement.js +95 -0
  6. package/dist/esm/core/schemas/internal/buildCatalogSetupUiSchemaElement.js.map +1 -0
  7. package/dist/esm/core/schemas/internal/metrics/setMetricAndDisplay.js.map +1 -1
  8. package/dist/esm/core/schemas/shared/HubItemEntitySchema.js +31 -25
  9. package/dist/esm/core/schemas/shared/HubItemEntitySchema.js.map +1 -1
  10. package/dist/esm/core/schemas/shared/subschemas.js +33 -0
  11. package/dist/esm/core/schemas/shared/subschemas.js.map +1 -1
  12. package/dist/esm/discussions/HubDiscussion.js +45 -11
  13. package/dist/esm/discussions/HubDiscussion.js.map +1 -1
  14. package/dist/esm/events/HubEvent.js +15 -3
  15. package/dist/esm/events/HubEvent.js.map +1 -1
  16. package/dist/esm/events/_internal/EventSchemaCreate.js +3 -2
  17. package/dist/esm/events/_internal/EventSchemaCreate.js.map +1 -1
  18. package/dist/esm/events/_internal/EventUiSchemaCreate.js +2 -0
  19. package/dist/esm/events/_internal/EventUiSchemaCreate.js.map +1 -1
  20. package/dist/esm/events/edit.js +1 -0
  21. package/dist/esm/events/edit.js.map +1 -1
  22. package/dist/esm/initiative-templates/HubInitiativeTemplate.js +10 -20
  23. package/dist/esm/initiative-templates/HubInitiativeTemplate.js.map +1 -1
  24. package/dist/esm/initiatives/HubInitiative.js +43 -59
  25. package/dist/esm/initiatives/HubInitiative.js.map +1 -1
  26. package/dist/esm/initiatives/HubInitiatives.js +2 -64
  27. package/dist/esm/initiatives/HubInitiatives.js.map +1 -1
  28. package/dist/esm/initiatives/_internal/InitiativeUiSchemaCreate2.js +3 -1
  29. package/dist/esm/initiatives/_internal/InitiativeUiSchemaCreate2.js.map +1 -1
  30. package/dist/esm/pages/HubPage.js +10 -23
  31. package/dist/esm/pages/HubPage.js.map +1 -1
  32. package/dist/esm/projects/HubProject.js +16 -54
  33. package/dist/esm/projects/HubProject.js.map +1 -1
  34. package/dist/esm/projects/_internal/ProjectUiSchemaCreate2.js +3 -1
  35. package/dist/esm/projects/_internal/ProjectUiSchemaCreate2.js.map +1 -1
  36. package/dist/esm/projects/edit.js +2 -34
  37. package/dist/esm/projects/edit.js.map +1 -1
  38. package/dist/esm/search/initCatalogOnEntityCreate.js +40 -0
  39. package/dist/esm/search/initCatalogOnEntityCreate.js.map +1 -0
  40. package/dist/esm/search/types/types.js +10 -0
  41. package/dist/esm/search/types/types.js.map +1 -1
  42. package/dist/esm/search/upgradeCatalogSchema.js +2 -1
  43. package/dist/esm/search/upgradeCatalogSchema.js.map +1 -1
  44. package/dist/esm/sites/HubSite.js +17 -27
  45. package/dist/esm/sites/HubSite.js.map +1 -1
  46. package/dist/esm/sites/_internal/SiteUiSchemaCreate.js +2 -0
  47. package/dist/esm/sites/_internal/SiteUiSchemaCreate.js.map +1 -1
  48. package/dist/esm/templates/HubTemplate.js +11 -21
  49. package/dist/esm/templates/HubTemplate.js.map +1 -1
  50. package/dist/esm/utils/get-hub-product.js.map +1 -1
  51. package/dist/node/core/_internal/PropertyMapper.js +3 -3
  52. package/dist/node/core/_internal/PropertyMapper.js.map +1 -1
  53. package/dist/node/core/_internal/hubItemEntityFromEditor.js +102 -0
  54. package/dist/node/core/_internal/hubItemEntityFromEditor.js.map +1 -0
  55. package/dist/node/core/schemas/internal/buildCatalogSetupUiSchemaElement.js +99 -0
  56. package/dist/node/core/schemas/internal/buildCatalogSetupUiSchemaElement.js.map +1 -0
  57. package/dist/node/core/schemas/internal/metrics/setMetricAndDisplay.js.map +1 -1
  58. package/dist/node/core/schemas/shared/HubItemEntitySchema.js +30 -24
  59. package/dist/node/core/schemas/shared/HubItemEntitySchema.js.map +1 -1
  60. package/dist/node/core/schemas/shared/subschemas.js +34 -1
  61. package/dist/node/core/schemas/shared/subschemas.js.map +1 -1
  62. package/dist/node/discussions/HubDiscussion.js +45 -11
  63. package/dist/node/discussions/HubDiscussion.js.map +1 -1
  64. package/dist/node/events/HubEvent.js +15 -3
  65. package/dist/node/events/HubEvent.js.map +1 -1
  66. package/dist/node/events/_internal/EventSchemaCreate.js +1 -0
  67. package/dist/node/events/_internal/EventSchemaCreate.js.map +1 -1
  68. package/dist/node/events/_internal/EventUiSchemaCreate.js +2 -0
  69. package/dist/node/events/_internal/EventUiSchemaCreate.js.map +1 -1
  70. package/dist/node/events/edit.js +1 -0
  71. package/dist/node/events/edit.js.map +1 -1
  72. package/dist/node/initiative-templates/HubInitiativeTemplate.js +10 -20
  73. package/dist/node/initiative-templates/HubInitiativeTemplate.js.map +1 -1
  74. package/dist/node/initiatives/HubInitiative.js +40 -56
  75. package/dist/node/initiatives/HubInitiative.js.map +1 -1
  76. package/dist/node/initiatives/HubInitiatives.js +1 -64
  77. package/dist/node/initiatives/HubInitiatives.js.map +1 -1
  78. package/dist/node/initiatives/_internal/InitiativeUiSchemaCreate2.js +3 -1
  79. package/dist/node/initiatives/_internal/InitiativeUiSchemaCreate2.js.map +1 -1
  80. package/dist/node/pages/HubPage.js +10 -23
  81. package/dist/node/pages/HubPage.js.map +1 -1
  82. package/dist/node/projects/HubProject.js +14 -52
  83. package/dist/node/projects/HubProject.js.map +1 -1
  84. package/dist/node/projects/_internal/ProjectUiSchemaCreate2.js +3 -1
  85. package/dist/node/projects/_internal/ProjectUiSchemaCreate2.js.map +1 -1
  86. package/dist/node/projects/edit.js +1 -34
  87. package/dist/node/projects/edit.js.map +1 -1
  88. package/dist/node/search/initCatalogOnEntityCreate.js +43 -0
  89. package/dist/node/search/initCatalogOnEntityCreate.js.map +1 -0
  90. package/dist/node/search/types/types.js +11 -0
  91. package/dist/node/search/types/types.js.map +1 -1
  92. package/dist/node/search/upgradeCatalogSchema.js +4 -3
  93. package/dist/node/search/upgradeCatalogSchema.js.map +1 -1
  94. package/dist/node/sites/HubSite.js +17 -27
  95. package/dist/node/sites/HubSite.js.map +1 -1
  96. package/dist/node/sites/_internal/SiteUiSchemaCreate.js +2 -0
  97. package/dist/node/sites/_internal/SiteUiSchemaCreate.js.map +1 -1
  98. package/dist/node/templates/HubTemplate.js +10 -20
  99. package/dist/node/templates/HubTemplate.js.map +1 -1
  100. package/dist/node/utils/get-hub-product.js.map +1 -1
  101. package/dist/types/core/_internal/hubItemEntityFromEditor.d.ts +18 -0
  102. package/dist/types/core/schemas/internal/buildCatalogSetupUiSchemaElement.d.ts +12 -0
  103. package/dist/types/core/schemas/internal/metrics/setMetricAndDisplay.d.ts +2 -2
  104. package/dist/types/core/schemas/shared/subschemas.d.ts +1 -0
  105. package/dist/types/core/types/IHubItemEntity.d.ts +7 -0
  106. package/dist/types/initiatives/HubInitiatives.d.ts +1 -9
  107. package/dist/types/initiatives/_internal/InitiativeUiSchemaCreate2.d.ts +1 -1
  108. package/dist/types/projects/HubProject.d.ts +6 -4
  109. package/dist/types/projects/_internal/ProjectUiSchemaCreate2.d.ts +1 -1
  110. package/dist/types/projects/edit.d.ts +1 -9
  111. package/dist/types/search/initCatalogOnEntityCreate.d.ts +12 -0
  112. package/dist/types/search/types/types.d.ts +15 -0
  113. package/dist/types/search/upgradeCatalogSchema.d.ts +1 -0
  114. package/package.json +1 -1
  115. package/dist/esm/core/schemas/internal/metrics/editorToEntity.js +0 -37
  116. package/dist/esm/core/schemas/internal/metrics/editorToEntity.js.map +0 -1
  117. package/dist/node/core/schemas/internal/metrics/editorToEntity.js +0 -41
  118. package/dist/node/core/schemas/internal/metrics/editorToEntity.js.map +0 -1
  119. package/dist/types/core/schemas/internal/metrics/editorToEntity.d.ts +0 -10
@@ -1,4 +1,4 @@
1
- import { CANNOT_DISCUSS } from "../../discussions";
1
+ import { CANNOT_DISCUSS } from "../../discussions/constants";
2
2
  import { isDiscussable } from "../../discussions/utils";
3
3
  import { deepSet, getProp, setProp } from "../../objects";
4
4
  import { cloneObject } from "../../util";
@@ -1 +1 @@
1
- {"version":3,"file":"PropertyMapper.js","sourceRoot":"","sources":["../../../../src/core/_internal/PropertyMapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PropertyMapper.js","sourceRoot":"","sources":["../../../../src/core/_internal/PropertyMapper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,99 @@
1
+ import { Catalog } from "../../search/Catalog";
2
+ import { truncateSlug } from "../../items/_internal/slugs";
3
+ import { editorToMetric } from "../../metrics";
4
+ import { upsertResource, doesResourceExist, removeResource, } from "../../resources";
5
+ import { initCatalogOnEntityCreate } from "../../search/initCatalogOnEntityCreate";
6
+ import { camelize, cloneObject, createId } from "../../util";
7
+ import { setMetricAndDisplay } from "../schemas/internal/metrics/setMetricAndDisplay";
8
+ /**
9
+ * Convert editor values back into an IHubItemEntity,
10
+ * performing any pre-save operations/XHRs/transforms.
11
+ * @param editor - the editor object to convert
12
+ * @param context - contextual portal & auth information
13
+ */
14
+ export const hubItemEntityFromEditor = async (editor, context) => {
15
+ var _a, _b, _c;
16
+ let catalog;
17
+ let thumbnailCache;
18
+ // 1. extract the ephemeral props we graft onto the
19
+ // editor for later use
20
+ const _thumbnail = editor._thumbnail;
21
+ const _catalogSetup = editor._catalogSetup;
22
+ const _metric = editor._metric;
23
+ const _slug = editor._slug;
24
+ const _featuredImage = (_a = editor.view) === null || _a === void 0 ? void 0 : _a.featuredImage;
25
+ // 2. remove the ephemeral props we graft onto the editor
26
+ delete editor._groups;
27
+ delete editor._thumbnail;
28
+ (_b = editor.view) === null || _b === void 0 ? true : delete _b.featuredImage;
29
+ delete editor._metric;
30
+ delete editor._catalogSetup;
31
+ delete editor._slug;
32
+ let entity = cloneObject(editor);
33
+ // 3. ensure orgUrlKey is set
34
+ entity.orgUrlKey = editor.orgUrlKey
35
+ ? editor.orgUrlKey
36
+ : context.portal.urlKey || "";
37
+ // 4. copy the configured location extent up one level
38
+ // on the entity.
39
+ entity.extent = (_c = editor.location) === null || _c === void 0 ? void 0 : _c.extent;
40
+ // 5. Perform pre-save operations using the ephemeral
41
+ // properties that were extracted above.
42
+ // a. ensure the slug is truncated
43
+ if (_slug) {
44
+ // ensure the slug is truncated
45
+ entity.slug = truncateSlug(_slug, entity.orgUrlKey);
46
+ }
47
+ else {
48
+ // if no slug is passed in, save an empty string as
49
+ // the slug, so that it is not saved as the orgUrlKey
50
+ // truncated with an empty string
51
+ entity.slug = "";
52
+ }
53
+ // b. conditionally set the thumbnailCache to
54
+ // ensure that the configured thumbnail is updated
55
+ // on the next save
56
+ if (_thumbnail) {
57
+ if (_thumbnail.blob) {
58
+ thumbnailCache = {
59
+ file: _thumbnail.blob,
60
+ filename: _thumbnail.fileName,
61
+ clear: false,
62
+ };
63
+ }
64
+ else {
65
+ thumbnailCache = {
66
+ clear: true,
67
+ };
68
+ }
69
+ }
70
+ // c. conditionally upsert or remove the configured
71
+ // featured image
72
+ if (_featuredImage) {
73
+ let featuredImageUrl = null;
74
+ if (_featuredImage.blob) {
75
+ featuredImageUrl = await upsertResource(entity.id, entity.owner, _featuredImage.blob, "featuredImage.png", context.userRequestOptions);
76
+ }
77
+ else if (await doesResourceExist(entity.id, "featuredImage.png", context.userRequestOptions)) {
78
+ await removeResource(entity.id, "featuredImage.png", entity.owner, context.userRequestOptions);
79
+ }
80
+ entity.view = Object.assign(Object.assign({}, entity.view), { featuredImageUrl });
81
+ }
82
+ // d. handle catalog setup
83
+ if ((_catalogSetup === null || _catalogSetup === void 0 ? void 0 : _catalogSetup.type) === "newGroup" ||
84
+ ((_catalogSetup === null || _catalogSetup === void 0 ? void 0 : _catalogSetup.type) === "existingGroup" && _catalogSetup.groupId)) {
85
+ entity.catalog = await initCatalogOnEntityCreate(entity, _catalogSetup, context);
86
+ catalog = Catalog.fromJson(entity.catalog, context);
87
+ }
88
+ // e. handle metrics
89
+ if (_metric && Object.keys(_metric).length) {
90
+ const metricId = _metric.metricId ||
91
+ createId(camelize(`${_metric.cardTitle}_`));
92
+ const { metric, displayConfig } = editorToMetric(_metric, metricId, {
93
+ metricName: _metric.cardTitle,
94
+ });
95
+ entity = setMetricAndDisplay(entity, metric, displayConfig);
96
+ }
97
+ return Object.assign(Object.assign({ entity }, (thumbnailCache && { thumbnailCache })), (catalog && { _catalog: catalog }));
98
+ };
99
+ //# sourceMappingURL=hubItemEntityFromEditor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hubItemEntityFromEditor.js","sourceRoot":"","sources":["../../../../src/core/_internal/hubItemEntityFromEditor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,95 @@
1
+ import { getWellKnownCatalogs } from "../../../search";
2
+ import { UiSchemaRuleEffects } from "../types";
3
+ import { checkPermission } from "../../../permissions/checkPermission";
4
+ /**
5
+ * When creating an entity, an editor can elect to initialize
6
+ * the entity's catalog with a new group or an existing group.
7
+ * The following util builds the UiSchema elements to render
8
+ * this configuration in various creation flows.
9
+ *
10
+ * @param i18nScope intl - scope for translations
11
+ * @param context contextual - portal & auth information
12
+ */
13
+ export function buildCatalogSetupUiSchemaElement(i18nScope, context) {
14
+ const canCreateViewGroup = checkPermission("hub:group:create:view", context).access;
15
+ return [
16
+ {
17
+ scope: "/properties/_catalogSetup/properties/type",
18
+ type: "Control",
19
+ label: "{{shared.fields._catalogSetup.type.label:translate}}",
20
+ options: {
21
+ control: "hub-field-input-tile-select",
22
+ helperText: {
23
+ label: `{{${i18nScope}.fields._catalogSetup.type.helperText:translate}}`,
24
+ },
25
+ layout: "horizontal",
26
+ scale: "m",
27
+ labels: [
28
+ "{{shared.fields._catalogSetup.type.blank.label:translate}}",
29
+ "{{shared.fields._catalogSetup.type.newGroup.label:translate}}",
30
+ "{{shared.fields._catalogSetup.type.existingGroup.label:translate}}",
31
+ ],
32
+ descriptions: [
33
+ "{{shared.fields._catalogSetup.type.blank.description:translate}}",
34
+ "{{shared.fields._catalogSetup.type.newGroup.description:translate}}",
35
+ "{{shared.fields._catalogSetup.type.existingGroup.description:translate}}",
36
+ ],
37
+ rules: [
38
+ [
39
+ {
40
+ effect: "SHOW",
41
+ conditions: [true],
42
+ },
43
+ ],
44
+ // only show the "quick start" option if the user is
45
+ // able to create a view group
46
+ [
47
+ {
48
+ effect: "SHOW",
49
+ conditions: [canCreateViewGroup],
50
+ },
51
+ ],
52
+ [
53
+ {
54
+ effect: "SHOW",
55
+ conditions: [true],
56
+ },
57
+ ],
58
+ ],
59
+ icons: ["rectangle", "rectangle-plus", "group"],
60
+ },
61
+ },
62
+ {
63
+ scope: "/properties/_catalogSetup/properties/groupId",
64
+ type: "Control",
65
+ options: {
66
+ control: "hub-field-input-gallery-picker",
67
+ targetEntity: "group",
68
+ linkTarget: "siteRelative",
69
+ catalogs: getWellKnownCatalogs("shared.wellKnownCatalogs.group", "group", ["myGroups", "orgGroups", "communityGroups", "publicGroups"], context),
70
+ facets: ["group-role", "group-type", "group-access"],
71
+ canReorder: false,
72
+ messages: [
73
+ {
74
+ type: "ERROR",
75
+ keyword: "required",
76
+ icon: true,
77
+ label: "{{shared.fields._catalogSetup.groupId.requiredError:translate}}",
78
+ },
79
+ ],
80
+ },
81
+ rules: [
82
+ {
83
+ effect: UiSchemaRuleEffects.SHOW,
84
+ conditions: [
85
+ {
86
+ scope: "/properties/_catalogSetup/properties/type",
87
+ schema: { const: "existingGroup" },
88
+ },
89
+ ],
90
+ },
91
+ ],
92
+ },
93
+ ];
94
+ }
95
+ //# sourceMappingURL=buildCatalogSetupUiSchemaElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildCatalogSetupUiSchemaElement.js","sourceRoot":"","sources":["../../../../../src/core/schemas/internal/buildCatalogSetupUiSchemaElement.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAoB,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAEvE;;;;;;;;GAQG;AACH,MAAM,UAAU,gCAAgC,CAC9C,SAAiB,EACjB,OAAuB;IAEvB,MAAM,kBAAkB,GAAG,eAAe,CACxC,uBAAuB,EACvB,OAAO,CACR,CAAC,MAAM,CAAC;IACT,OAAO;QACL;YACE,KAAK,EAAE,2CAA2C;YAClD,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,sDAAsD;YAC7D,OAAO,EAAE;gBACP,OAAO,EAAE,6BAA6B;gBACtC,UAAU,EAAE;oBACV,KAAK,EAAE,KAAK,SAAS,mDAAmD;iBACzE;gBACD,MAAM,EAAE,YAAY;gBACpB,KAAK,EAAE,GAAG;gBACV,MAAM,EAAE;oBACN,4DAA4D;oBAC5D,+DAA+D;oBAC/D,oEAAoE;iBACrE;gBACD,YAAY,EAAE;oBACZ,kEAAkE;oBAClE,qEAAqE;oBACrE,0EAA0E;iBAC3E;gBACD,KAAK,EAAE;oBACL;wBACE;4BACE,MAAM,EAAE,MAAM;4BACd,UAAU,EAAE,CAAC,IAAI,CAAC;yBACnB;qBACF;oBACD,oDAAoD;oBACpD,8BAA8B;oBAC9B;wBACE;4BACE,MAAM,EAAE,MAAM;4BACd,UAAU,EAAE,CAAC,kBAAkB,CAAC;yBACjC;qBACF;oBACD;wBACE;4BACE,MAAM,EAAE,MAAM;4BACd,UAAU,EAAE,CAAC,IAAI,CAAC;yBACnB;qBACF;iBACF;gBACD,KAAK,EAAE,CAAC,WAAW,EAAE,gBAAgB,EAAE,OAAO,CAAC;aAChD;SACF;QACD;YACE,KAAK,EAAE,8CAA8C;YACrD,IAAI,EAAE,SAAS;YACf,OAAO,EAAE;gBACP,OAAO,EAAE,gCAAgC;gBACzC,YAAY,EAAE,OAAO;gBACrB,UAAU,EAAE,cAAc;gBAC1B,QAAQ,EAAE,oBAAoB,CAC5B,gCAAgC,EAChC,OAAO,EACP,CAAC,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE,cAAc,CAAC,EAC5D,OAAO,CACR;gBACD,MAAM,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,cAAc,CAAC;gBACpD,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE;oBACR;wBACE,IAAI,EAAE,OAAO;wBACb,OAAO,EAAE,UAAU;wBACnB,IAAI,EAAE,IAAI;wBACV,KAAK,EACH,iEAAiE;qBACpE;iBACF;aACF;YACD,KAAK,EAAE;gBACL;oBACE,MAAM,EAAE,mBAAmB,CAAC,IAAI;oBAChC,UAAU,EAAE;wBACV;4BACE,KAAK,EAAE,2CAA2C;4BAClD,MAAM,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE;yBACnC;qBACF;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"setMetricAndDisplay.js","sourceRoot":"","sources":["../../../../../../src/core/schemas/internal/metrics/setMetricAndDisplay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAI/C;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAmB,EACnB,MAAe,EACf,aAAmC;IAEnC,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC;IAE3B,8DAA8D;IAC9D,MAAM,OAAO,GAAG,cAAc,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;IAEpE,gDAAgD;IAChD,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,EAAE,qBAAqB,EAAE,EAAE,CAAC,CAAC;IACvE,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,CAC/B,CAAC,CAAuB,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CACrD,CAAC;IAEF,yBAAyB;IACzB,IAAI,MAAM,GAAG,CAAC,CAAC,EAAE;QACf,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;KAC1B;SAAM;QACL,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACtB;IAED,0BAA0B;IAC1B,IAAI,MAAM,GAAG,CAAC,CAAC,EAAE;QACf,QAAQ,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC;KAClC;SAAM;QACL,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;KAC9B;IAED,mBAAmB;IACnB,UAAU,CAAC,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC;IAC1C,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;IAE7B,OAAO,UAAU,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"setMetricAndDisplay.js","sourceRoot":"","sources":["../../../../../../src/core/schemas/internal/metrics/setMetricAndDisplay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAI/C;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAsB,EACtB,MAAe,EACf,aAAmC;IAEnC,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC;IAE3B,8DAA8D;IAC9D,MAAM,OAAO,GAAG,cAAc,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;IAEpE,gDAAgD;IAChD,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,EAAE,qBAAqB,EAAE,EAAE,CAAC,CAAC;IACvE,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,CAC/B,CAAC,CAAuB,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CACrD,CAAC;IAEF,yBAAyB;IACzB,IAAI,MAAM,GAAG,CAAC,CAAC,EAAE;QACf,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;KAC1B;SAAM;QACL,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACtB;IAED,0BAA0B;IAC1B,IAAI,MAAM,GAAG,CAAC,CAAC,EAAE;QACf,QAAQ,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC;KAClC;SAAM;QACL,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;KAC9B;IAED,mBAAmB;IACnB,UAAU,CAAC,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC;IAC1C,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;IAE7B,OAAO,UAAU,CAAC;AACpB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { HubEntityHero } from "../../../hub-types";
2
- import { ENTITY_ACCESS_SCHEMA, ENTITY_CATEGORIES_SCHEMA, ENTITY_FEATURED_CONTENT_SCHEMA, ENTITY_IMAGE_SCHEMA, ENTITY_IS_DISCUSSABLE_SCHEMA, ENTITY_LOCATION_SCHEMA, ENTITY_MAP_SCHEMA, ENTITY_NAME_SCHEMA, ENTITY_SUMMARY_SCHEMA, ENTITY_TAGS_SCHEMA, ENTITY_TIMELINE_SCHEMA, SLUG_SCHEMA, } from "./subschemas";
2
+ import { ENTITY_ACCESS_SCHEMA, ENTITY_CATALOG_SETUP_SCHEMA, ENTITY_CATEGORIES_SCHEMA, ENTITY_FEATURED_CONTENT_SCHEMA, ENTITY_IMAGE_SCHEMA, ENTITY_IS_DISCUSSABLE_SCHEMA, ENTITY_LOCATION_SCHEMA, ENTITY_MAP_SCHEMA, ENTITY_NAME_SCHEMA, ENTITY_SUMMARY_SCHEMA, ENTITY_TAGS_SCHEMA, ENTITY_TIMELINE_SCHEMA, SLUG_SCHEMA, } from "./subschemas";
3
3
  /**
4
4
  * Defines a default schema for an IHubItemEntity's editiable fields.
5
5
  * All item entity schemas should leverage this base schema.
@@ -18,29 +18,6 @@ export const HubItemEntitySchema = {
18
18
  tags: ENTITY_TAGS_SCHEMA,
19
19
  categories: ENTITY_CATEGORIES_SCHEMA,
20
20
  isDiscussable: ENTITY_IS_DISCUSSABLE_SCHEMA,
21
- _thumbnail: ENTITY_IMAGE_SCHEMA,
22
- _followers: {
23
- type: "object",
24
- properties: {
25
- groupAccess: Object.assign(Object.assign({}, ENTITY_ACCESS_SCHEMA), { enum: ["private", "org", "public"] }),
26
- showFollowAction: {
27
- type: "boolean",
28
- default: true,
29
- },
30
- isDiscussable: ENTITY_IS_DISCUSSABLE_SCHEMA,
31
- },
32
- },
33
- _associations: {
34
- type: "object",
35
- properties: {
36
- groupAccess: Object.assign(Object.assign({}, ENTITY_ACCESS_SCHEMA), { enum: ["private", "org", "public"], default: "private" }),
37
- membershipAccess: {
38
- type: "string",
39
- enum: ["organization", "collaborators", "anyone"],
40
- default: "organization",
41
- },
42
- },
43
- },
44
21
  view: {
45
22
  type: "object",
46
23
  properties: {
@@ -59,7 +36,6 @@ export const HubItemEntitySchema = {
59
36
  heroActions: { type: "array" },
60
37
  },
61
38
  },
62
- _slug: SLUG_SCHEMA,
63
39
  assistant: {
64
40
  type: "object",
65
41
  required: [
@@ -107,6 +83,36 @@ export const HubItemEntitySchema = {
107
83
  },
108
84
  },
109
85
  },
86
+ // "ephemeral" properties that are not actually persisted
87
+ // on the entity themselves - instead, they are used to
88
+ // perform after-save actions/xhrs/transformations. For
89
+ // example, we take the inputs from the _thumbnail property
90
+ // to persist a thumbnail resource on the underlying item.
91
+ _thumbnail: ENTITY_IMAGE_SCHEMA,
92
+ _slug: SLUG_SCHEMA,
93
+ _followers: {
94
+ type: "object",
95
+ properties: {
96
+ groupAccess: Object.assign(Object.assign({}, ENTITY_ACCESS_SCHEMA), { enum: ["private", "org", "public"] }),
97
+ showFollowAction: {
98
+ type: "boolean",
99
+ default: true,
100
+ },
101
+ isDiscussable: ENTITY_IS_DISCUSSABLE_SCHEMA,
102
+ },
103
+ },
104
+ _associations: {
105
+ type: "object",
106
+ properties: {
107
+ groupAccess: Object.assign(Object.assign({}, ENTITY_ACCESS_SCHEMA), { enum: ["private", "org", "public"], default: "private" }),
108
+ membershipAccess: {
109
+ type: "string",
110
+ enum: ["organization", "collaborators", "anyone"],
111
+ default: "organization",
112
+ },
113
+ },
114
+ },
115
+ _catalogSetup: ENTITY_CATALOG_SETUP_SCHEMA,
110
116
  },
111
117
  };
112
118
  //# sourceMappingURL=HubItemEntitySchema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HubItemEntitySchema.js","sourceRoot":"","sources":["../../../../../src/core/schemas/shared/HubItemEntitySchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HubItemEntitySchema.js","sourceRoot":"","sources":["../../../../../src/core/schemas/shared/HubItemEntitySchema.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  * For consistency and validation purposes, leverage these commonly
3
3
  * re-used subschemas in your schema definitions
4
4
  */
5
+ import { CATALOG_SETUP_TYPES } from "../../../search/types";
5
6
  export const ENTITY_NAME_SCHEMA = {
6
7
  type: "string",
7
8
  minLength: 1,
@@ -172,4 +173,36 @@ export const SLUG_SCHEMA = {
172
173
  // this will prevent trailing - or multiple - in a row
173
174
  pattern: "^[a-z0-9]+(?:-[a-z0-9]+)*$",
174
175
  };
176
+ // When creating an entity, an editor can elect to initialize
177
+ // the entity's catalog with a new group or an existing group.
178
+ // The following schema defines the properties for this setup
179
+ // experience.
180
+ export const ENTITY_CATALOG_SETUP_SCHEMA = {
181
+ type: "object",
182
+ properties: {
183
+ type: {
184
+ type: "string",
185
+ enum: [...CATALOG_SETUP_TYPES],
186
+ default: "blank",
187
+ },
188
+ groupId: {
189
+ type: "array",
190
+ maxItems: 1,
191
+ items: {
192
+ type: "string",
193
+ },
194
+ },
195
+ },
196
+ allOf: [
197
+ {
198
+ if: {
199
+ required: ["type"],
200
+ properties: { type: { const: "existingGroup" } },
201
+ },
202
+ then: {
203
+ required: ["groupId"],
204
+ },
205
+ },
206
+ ],
207
+ };
175
208
  //# sourceMappingURL=subschemas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"subschemas.js","sourceRoot":"","sources":["../../../../../src/core/schemas/shared/subschemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subschemas.js","sourceRoot":"","sources":["../../../../../src/core/schemas/shared/subschemas.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import { getEditorConfig } from "../core/schemas/getEditorConfig";
5
5
  import { cloneObject } from "../util";
6
6
  import { enrichEntity } from "../core/enrichEntity";
7
7
  import { getEditorSlug } from "../core/_internal/getEditorSlug";
8
- import { editorToEntity } from "../core/schemas/internal/metrics/editorToEntity";
8
+ import { truncateSlug } from "../items/_internal/slugs";
9
9
  /**
10
10
  * Hub Discussion Class
11
11
  */
@@ -139,15 +139,50 @@ export class HubDiscussion extends HubItemEntity {
139
139
  * @returns
140
140
  */
141
141
  async fromEditor(editor) {
142
- // TODO: move this into a util
143
- // Setting the thumbnailCache will ensure that
144
- // the thumbnail is updated on next save
145
- if (editor._thumbnail) {
146
- const thumb = editor._thumbnail;
147
- if (thumb.blob) {
142
+ // TODO: Ideally we should delegate out to the
143
+ // hubItemEntityFromEditor util to handle shared
144
+ // "fromEditor" logic; however, when I attempted
145
+ // to do this, I ran into issues with circular
146
+ // dependencies and test failures that felt out
147
+ // of scope for this work. For now, we'll copy
148
+ // the relevant logic here.
149
+ var _a;
150
+ // 1. extract the ephemeral props we graft onto the
151
+ // editor for later user
152
+ const _thumbnail = editor._thumbnail;
153
+ const _slug = editor._slug;
154
+ // 2. remove the ephemeral props we graft onto the editor
155
+ delete editor._thumbnail;
156
+ delete editor._slug;
157
+ const entity = cloneObject(editor);
158
+ // 3. ensure orgUrlKey is set
159
+ entity.orgUrlKey = editor.orgUrlKey
160
+ ? editor.orgUrlKey
161
+ : this.context.portal.urlKey || "";
162
+ // 4. copy the configured location extent up one level
163
+ // on the entity.
164
+ entity.extent = (_a = editor.location) === null || _a === void 0 ? void 0 : _a.extent;
165
+ // 5. Perform pre-save operations using the ephemeral
166
+ // properties that were extracted above.
167
+ // a. ensure the slug is truncated
168
+ if (_slug) {
169
+ // ensure the slug is truncated
170
+ entity.slug = truncateSlug(_slug, entity.orgUrlKey);
171
+ }
172
+ else {
173
+ // if no slug is passed in, save an empty string as
174
+ // the slug, so that it is not saved as the orgUrlKey
175
+ // truncated with an empty string
176
+ entity.slug = "";
177
+ }
178
+ // b. conditionally set the thumbnailCache to
179
+ // ensure that the configured thumbnail is updated
180
+ // on the next save
181
+ if (_thumbnail) {
182
+ if (_thumbnail.blob) {
148
183
  this.thumbnailCache = {
149
- file: thumb.blob,
150
- filename: thumb.fileName,
184
+ file: _thumbnail.blob,
185
+ filename: _thumbnail.fileName,
151
186
  clear: false,
152
187
  };
153
188
  }
@@ -157,9 +192,8 @@ export class HubDiscussion extends HubItemEntity {
157
192
  };
158
193
  }
159
194
  }
160
- delete editor._thumbnail;
161
195
  // Save, which will also create new content if new
162
- this.entity = editorToEntity(editor, this.context.portal);
196
+ this.entity = entity;
163
197
  await this.save();
164
198
  return this.entity;
165
199
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HubDiscussion.js","sourceRoot":"","sources":["../../../src/discussions/HubDiscussion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HubDiscussion.js","sourceRoot":"","sources":["../../../src/discussions/HubDiscussion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAShD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAGlE,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD;;GAEG;AAEH,MAAM,OAAO,aACX,SAAQ,aAA6B;IAMrC;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CACb,IAA6B,EAC7B,OAAuB;QAEvB,6CAA6C;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/C,OAAO,IAAI,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CACjB,iBAA0C,EAC1C,OAAuB,EACvB,IAAI,GAAG,KAAK;QAEZ,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QAC5D,sCAAsC;QACtC,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACvD,IAAI,IAAI,EAAE;YACR,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;SACvB;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,KAAK,CAChB,UAAkB,EAClB,OAAuB;QAEvB,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,eAAe,CAClC,UAAU,EACV,OAAO,CAAC,iBAAiB,CAC1B,CAAC;YACF,sDAAsD;YACtD,OAAO,aAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAChD;QAAC,OAAO,EAAE,EAAE;YACX,MAAO,EAAY,CAAC,OAAO;gBACzB,oDAAoD;gBACpD,CAAC,CAAC,IAAI,KAAK,CAAC,uBAAuB,CAAC;gBACpC,CAAC,CAAC,EAAE,CAAC;SACR;IACH,CAAC;IAEO,MAAM,CAAC,aAAa,CAC1B,iBAA0C,EAC1C,OAAuB;QAEvB,+BAA+B;QAC/B,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE;YAChC,iBAAiB,CAAC,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,MAAgB,CAAC;SAC/D;QACD,uCAAuC;QACvC,MAAM,IAAI,GAAG,gCACR,kBAAkB,GAClB,iBAAiB,CACH,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,OAAgC;QACrC,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;SACxD;QACD,qCAAqC;QACrC,IAAI,CAAC,MAAM,mCAAQ,IAAI,CAAC,MAAM,GAAK,OAAO,CAAE,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;SACxD;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;YAClB,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;YACpD,YAAY;YACZ,IAAI,CAAC,MAAM,GAAG,MAAM,gBAAgB,CAClC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAC/B,CAAC;SACH;aAAM;YACL,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;YACpD,YAAY;YACZ,IAAI,CAAC,MAAM,GAAG,MAAM,gBAAgB,CAClC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAC/B,CAAC;SACH;QAED,yCAAyC;QACzC,MAAM,KAAK,CAAC,SAAS,EAAE,CAAC;QAExB,OAAO;IACT,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM;QACV,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;SACxD;QACD,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;QACpD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,wBAAwB;QACxB,MAAM,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACzE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,eAAe,CACnB,SAAiB,EACjB,IAA0B;QAE1B,mCAAmC;QACnC,OAAO,eAAe,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACrE,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,QAAQ,CACZ,iBAAuC,EAAE,EACzC,UAAoB,EAAE;QAEtB,iDAAiD;QACjD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM;YAC3B,CAAC,CAAE,CAAC,MAAM,YAAY,CAClB,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EACxB,OAAO,EACP,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAC/B,CAA0B;YAC7B,CAAC,CAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAA0B,CAAC;QAEvD,wDAAwD;QACxD,gCAAgC;QAChC,MAAM,CAAC,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1C,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,MAA4B;QAC3C,8CAA8C;QAC9C,gDAAgD;QAChD,gDAAgD;QAChD,8CAA8C;QAC9C,+CAA+C;QAC/C,8CAA8C;QAC9C,2BAA2B;;QAE3B,mDAAmD;QACnD,wBAAwB;QACxB,MAAM,UAAU,GAAG,MAAM,CAAC,UAAgD,CAAC;QAC3E,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAE3B,yDAAyD;QACzD,OAAO,MAAM,CAAC,UAAU,CAAC;QACzB,OAAO,MAAM,CAAC,KAAK,CAAC;QAEpB,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAmB,CAAC;QAErD,6BAA6B;QAC7B,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS;YACjC,CAAC,CAAE,MAAM,CAAC,SAAoB;YAC9B,CAAC,CAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAiB,IAAK,EAAa,CAAC;QAE7D,sDAAsD;QACtD,iBAAiB;QACjB,MAAM,CAAC,MAAM,SAAI,MAAM,CAAC,QAAyB,0CAAE,MAAM,CAAC;QAE1D,qDAAqD;QACrD,wCAAwC;QAExC,kCAAkC;QAClC,IAAI,KAAK,EAAE;YACT,+BAA+B;YAC/B,MAAM,CAAC,IAAI,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;SACrD;aAAM;YACL,mDAAmD;YACnD,qDAAqD;YACrD,iCAAiC;YACjC,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;SAClB;QAED,6CAA6C;QAC7C,kDAAkD;QAClD,mBAAmB;QACnB,IAAI,UAAU,EAAE;YACd,IAAI,UAAU,CAAC,IAAI,EAAE;gBACnB,IAAI,CAAC,cAAc,GAAG;oBACpB,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,QAAQ,EAAE,UAAU,CAAC,QAAQ;oBAC7B,KAAK,EAAE,KAAK;iBACb,CAAC;aACH;iBAAM;gBACL,IAAI,CAAC,cAAc,GAAG;oBACpB,KAAK,EAAE,IAAI;iBACZ,CAAC;aACH;SACF;QAED,kDAAkD;QAClD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAElB,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF"}
@@ -8,6 +8,8 @@ import { unshareEventWithGroups } from "./_internal/unshareEventWithGroups";
8
8
  import HubError from "../HubError";
9
9
  import { updateEvent } from "./api/events";
10
10
  import { getEventGroups } from "./getEventGroups";
11
+ import { hubItemEntityFromEditor } from "../core/_internal/hubItemEntityFromEditor";
12
+ import { setProp } from "../objects";
11
13
  /**
12
14
  * Defines the properties of a Hub Event object
13
15
  * @internal
@@ -163,11 +165,21 @@ export class HubEvent extends HubItemEntity {
163
165
  */
164
166
  async fromEditor(editor) {
165
167
  const thumbnail = editor._thumbnail;
166
- const entity = cloneObject(editor);
168
+ // delegate to an item-specific fromEditor util to
169
+ // handle shared "fromEditor" logic
170
+ const res = await hubItemEntityFromEditor(editor, this.context);
171
+ const event = res.entity;
172
+ // iterate over the res object keys and set the values
173
+ // on the HubEvent instance
174
+ Object.entries(res).forEach(([key, value]) => {
175
+ setProp(key, value, this);
176
+ });
177
+ // 2. handle event-specific operations
167
178
  if (thumbnail) {
168
- entity.thumbnailUrl = thumbnail.url || null;
179
+ event.thumbnailUrl = thumbnail.url || null;
169
180
  }
170
- this.entity = entity;
181
+ // save or create the entity
182
+ this.entity = event;
171
183
  await this.save();
172
184
  return this.entity;
173
185
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HubEvent.js","sourceRoot":"","sources":["../../../src/events/HubEvent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HubEvent.js","sourceRoot":"","sources":["../../../src/events/HubEvent.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { ENTITY_NAME_SCHEMA } from "../../core/schemas/shared/subschemas";
1
+ import { ENTITY_CATALOG_SETUP_SCHEMA, ENTITY_NAME_SCHEMA, } from "../../core/schemas/shared/subschemas";
2
2
  import { getDefaultEventDatesAndTimes } from "./getDefaultEventDatesAndTimes";
3
- import { TIME_VALIDATIONS_WHEN_NOT_ALL_DAY, } from "./validations";
3
+ import { TIME_VALIDATIONS_WHEN_NOT_ALL_DAY } from "./validations";
4
4
  export const EventEditorTypes = [
5
5
  "hub:event:create",
6
6
  "hub:event:edit",
@@ -32,6 +32,7 @@ export const buildSchema = () => {
32
32
  type: "boolean",
33
33
  default: false,
34
34
  },
35
+ _catalogSetup: ENTITY_CATALOG_SETUP_SCHEMA,
35
36
  },
36
37
  allOf: [TIME_VALIDATIONS_WHEN_NOT_ALL_DAY],
37
38
  };
@@ -1 +1 @@
1
- {"version":3,"file":"EventSchemaCreate.js","sourceRoot":"","sources":["../../../../src/events/_internal/EventSchemaCreate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EACL,iCAAiC,GAClC,MAAM,eAAe,CAAC;AAGvB,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,kBAAkB;IAClB,gBAAgB;IAChB,uBAAuB;CACf,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,GAAyB,EAAE;IACpD,MAAM,EAAE,SAAS,EAAE,GAAG,4BAA4B,EAAE,CAAC;IACrD,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC;QAC1C,UAAU,EAAE;YACV,IAAI,EAAE,kBAAkB;YACxB,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,MAAM;gBACd,aAAa,EAAE,SAAS;aACzB;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;aACf;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;aACf;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;aACf;SAUF;QACD,KAAK,EAAE,CAAC,iCAAiC,CAAC;KACnB,CAAC;AAC5B,CAAC,CAAC"}
1
+ {"version":3,"file":"EventSchemaCreate.js","sourceRoot":"","sources":["../../../../src/events/_internal/EventSchemaCreate.ts"],"names":[],"mappings":"AACA,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,iCAAiC,EAAE,MAAM,eAAe,CAAC;AAGlE,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,kBAAkB;IAClB,gBAAgB;IAChB,uBAAuB;CACf,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,GAAyB,EAAE;IACpD,MAAM,EAAE,SAAS,EAAE,GAAG,4BAA4B,EAAE,CAAC;IACrD,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC;QAC1C,UAAU,EAAE;YACV,IAAI,EAAE,kBAAkB;YACxB,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,MAAM;gBACd,aAAa,EAAE,SAAS;aACzB;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;aACf;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;aACf;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;aACf;YACD,aAAa,EAAE,2BAA2B;SAU3C;QACD,KAAK,EAAE,CAAC,iCAAiC,CAAC;KACnB,CAAC;AAC5B,CAAC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { UiSchemaRuleEffects } from "../../core/schemas/types";
2
2
  import { getDatePickerDate } from "../../utils/date/getDatePickerDate";
3
+ import { buildCatalogSetupUiSchemaElement } from "../../core/schemas/internal/buildCatalogSetupUiSchemaElement";
3
4
  /**
4
5
  * @private
5
6
  * constructs the complete create uiSchema for Hub Events.
@@ -115,6 +116,7 @@ export const buildUiSchema = async (i18nScope, options, context) => {
115
116
  ],
116
117
  },
117
118
  },
119
+ ...buildCatalogSetupUiSchemaElement(i18nScope, context),
118
120
  ],
119
121
  };
120
122
  };
@@ -1 +1 @@
1
- {"version":3,"file":"EventUiSchemaCreate.js","sourceRoot":"","sources":["../../../../src/events/_internal/EventUiSchemaCreate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EventUiSchemaCreate.js","sourceRoot":"","sources":["../../../../src/events/_internal/EventUiSchemaCreate.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,7 @@ export async function createHubEvent(partialEvent, requestOptions) {
29
29
  allowRegistration: model.allowRegistration,
30
30
  associations,
31
31
  attendanceType: model.attendanceType,
32
+ capabilities: model.capabilities,
32
33
  categories: model.categories,
33
34
  description: model.description,
34
35
  editGroups: model.editGroups,