@esri/hub-common 14.110.1 → 14.111.1

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 (175) hide show
  1. package/dist/esm/core/EntityEditor.js +4 -0
  2. package/dist/esm/core/EntityEditor.js.map +1 -1
  3. package/dist/esm/core/fetchHubEntity.js +4 -0
  4. package/dist/esm/core/fetchHubEntity.js.map +1 -1
  5. package/dist/esm/core/getTypeFromEntity.js +3 -0
  6. package/dist/esm/core/getTypeFromEntity.js.map +1 -1
  7. package/dist/esm/core/schemas/internal/getEditorSchemas.js +13 -0
  8. package/dist/esm/core/schemas/internal/getEditorSchemas.js.map +1 -1
  9. package/dist/esm/core/schemas/internal/metrics/MetricSchema.js +4 -0
  10. package/dist/esm/core/schemas/internal/metrics/MetricSchema.js.map +1 -1
  11. package/dist/esm/core/schemas/types.js +2 -0
  12. package/dist/esm/core/schemas/types.js.map +1 -1
  13. package/dist/esm/core/types/HubEntityType.js +1 -0
  14. package/dist/esm/core/types/HubEntityType.js.map +1 -1
  15. package/dist/esm/core/updateHubEntity.js +8 -0
  16. package/dist/esm/core/updateHubEntity.js.map +1 -1
  17. package/dist/esm/discussions/_internal/DiscussionBusinessRules.js +7 -0
  18. package/dist/esm/discussions/_internal/DiscussionBusinessRules.js.map +1 -1
  19. package/dist/esm/discussions/api/settings/getDefaultEntitySettings.js +1 -0
  20. package/dist/esm/discussions/api/settings/getDefaultEntitySettings.js.map +1 -1
  21. package/dist/esm/events/HubEvent.js +149 -0
  22. package/dist/esm/events/HubEvent.js.map +1 -0
  23. package/dist/esm/events/_internal/EventBusinessRules.js +115 -0
  24. package/dist/esm/events/_internal/EventBusinessRules.js.map +1 -0
  25. package/dist/esm/events/_internal/EventSchemaCreate.js +50 -0
  26. package/dist/esm/events/_internal/EventSchemaCreate.js.map +1 -0
  27. package/dist/esm/events/_internal/EventSchemaEdit.js +77 -0
  28. package/dist/esm/events/_internal/EventSchemaEdit.js.map +1 -0
  29. package/dist/esm/events/_internal/EventUiSchemaCreate.js +165 -0
  30. package/dist/esm/events/_internal/EventUiSchemaCreate.js.map +1 -0
  31. package/dist/esm/events/_internal/EventUiSchemaEdit.js +371 -0
  32. package/dist/esm/events/_internal/EventUiSchemaEdit.js.map +1 -0
  33. package/dist/esm/events/_internal/PropertyMapper.js +134 -0
  34. package/dist/esm/events/_internal/PropertyMapper.js.map +1 -0
  35. package/dist/esm/events/_internal/getDefaultEventDatesAndTimes.js +28 -0
  36. package/dist/esm/events/_internal/getDefaultEventDatesAndTimes.js.map +1 -0
  37. package/dist/esm/events/_internal/getISOStringFromClientDateTime.js +28 -0
  38. package/dist/esm/events/_internal/getISOStringFromClientDateTime.js.map +1 -0
  39. package/dist/esm/events/_internal/getPropertyMap.js +47 -0
  40. package/dist/esm/events/_internal/getPropertyMap.js.map +1 -0
  41. package/dist/esm/events/_internal/validations.js +53 -0
  42. package/dist/esm/events/_internal/validations.js.map +1 -0
  43. package/dist/esm/events/defaults.js +32 -0
  44. package/dist/esm/events/defaults.js.map +1 -0
  45. package/dist/esm/events/edit.js +81 -0
  46. package/dist/esm/events/edit.js.map +1 -0
  47. package/dist/esm/events/fetch.js +29 -0
  48. package/dist/esm/events/fetch.js.map +1 -0
  49. package/dist/esm/events/index.js +4 -1
  50. package/dist/esm/events/index.js.map +1 -1
  51. package/dist/esm/events/types.js +12 -0
  52. package/dist/esm/events/types.js.map +1 -0
  53. package/dist/esm/index.js +1 -0
  54. package/dist/esm/index.js.map +1 -1
  55. package/dist/esm/permissions/HubPermissionPolicies.js +2 -0
  56. package/dist/esm/permissions/HubPermissionPolicies.js.map +1 -1
  57. package/dist/esm/permissions/types/Permission.js +2 -0
  58. package/dist/esm/permissions/types/Permission.js.map +1 -1
  59. package/dist/esm/surveys/HubSurvey.js +24 -0
  60. package/dist/esm/surveys/HubSurvey.js.map +1 -1
  61. package/dist/esm/surveys/_internal/SurveyBusinessRules.js +14 -1
  62. package/dist/esm/surveys/_internal/SurveyBusinessRules.js.map +1 -1
  63. package/dist/esm/utils/date/getDatePickerDate.js +27 -0
  64. package/dist/esm/utils/date/getDatePickerDate.js.map +1 -0
  65. package/dist/esm/utils/date/getTimePickerTime.js +33 -0
  66. package/dist/esm/utils/date/getTimePickerTime.js.map +1 -0
  67. package/dist/esm/utils/date/guessTimeZone.js +8 -0
  68. package/dist/esm/utils/date/guessTimeZone.js.map +1 -0
  69. package/dist/esm/utils/date/index.js +4 -0
  70. package/dist/esm/utils/date/index.js.map +1 -0
  71. package/dist/esm/utils/index.js +1 -0
  72. package/dist/esm/utils/index.js.map +1 -1
  73. package/dist/node/core/EntityEditor.js +4 -0
  74. package/dist/node/core/EntityEditor.js.map +1 -1
  75. package/dist/node/core/fetchHubEntity.js +4 -0
  76. package/dist/node/core/fetchHubEntity.js.map +1 -1
  77. package/dist/node/core/getTypeFromEntity.js +3 -0
  78. package/dist/node/core/getTypeFromEntity.js.map +1 -1
  79. package/dist/node/core/schemas/internal/getEditorSchemas.js +13 -0
  80. package/dist/node/core/schemas/internal/getEditorSchemas.js.map +1 -1
  81. package/dist/node/core/schemas/internal/metrics/MetricSchema.js +4 -0
  82. package/dist/node/core/schemas/internal/metrics/MetricSchema.js.map +1 -1
  83. package/dist/node/core/schemas/types.js +2 -0
  84. package/dist/node/core/schemas/types.js.map +1 -1
  85. package/dist/node/core/types/HubEntityType.js +1 -0
  86. package/dist/node/core/types/HubEntityType.js.map +1 -1
  87. package/dist/node/core/updateHubEntity.js +8 -0
  88. package/dist/node/core/updateHubEntity.js.map +1 -1
  89. package/dist/node/discussions/_internal/DiscussionBusinessRules.js +7 -0
  90. package/dist/node/discussions/_internal/DiscussionBusinessRules.js.map +1 -1
  91. package/dist/node/discussions/api/settings/getDefaultEntitySettings.js +1 -0
  92. package/dist/node/discussions/api/settings/getDefaultEntitySettings.js.map +1 -1
  93. package/dist/node/events/HubEvent.js +153 -0
  94. package/dist/node/events/HubEvent.js.map +1 -0
  95. package/dist/node/events/_internal/EventBusinessRules.js +118 -0
  96. package/dist/node/events/_internal/EventBusinessRules.js.map +1 -0
  97. package/dist/node/events/_internal/EventSchemaCreate.js +53 -0
  98. package/dist/node/events/_internal/EventSchemaCreate.js.map +1 -0
  99. package/dist/node/events/_internal/EventSchemaEdit.js +80 -0
  100. package/dist/node/events/_internal/EventSchemaEdit.js.map +1 -0
  101. package/dist/node/events/_internal/EventUiSchemaCreate.js +168 -0
  102. package/dist/node/events/_internal/EventUiSchemaCreate.js.map +1 -0
  103. package/dist/node/events/_internal/EventUiSchemaEdit.js +374 -0
  104. package/dist/node/events/_internal/EventUiSchemaEdit.js.map +1 -0
  105. package/dist/node/events/_internal/PropertyMapper.js +138 -0
  106. package/dist/node/events/_internal/PropertyMapper.js.map +1 -0
  107. package/dist/node/events/_internal/getDefaultEventDatesAndTimes.js +31 -0
  108. package/dist/node/events/_internal/getDefaultEventDatesAndTimes.js.map +1 -0
  109. package/dist/node/events/_internal/getISOStringFromClientDateTime.js +32 -0
  110. package/dist/node/events/_internal/getISOStringFromClientDateTime.js.map +1 -0
  111. package/dist/node/events/_internal/getPropertyMap.js +51 -0
  112. package/dist/node/events/_internal/getPropertyMap.js.map +1 -0
  113. package/dist/node/events/_internal/validations.js +56 -0
  114. package/dist/node/events/_internal/validations.js.map +1 -0
  115. package/dist/node/events/defaults.js +37 -0
  116. package/dist/node/events/defaults.js.map +1 -0
  117. package/dist/node/events/edit.js +86 -0
  118. package/dist/node/events/edit.js.map +1 -0
  119. package/dist/node/events/fetch.js +34 -0
  120. package/dist/node/events/fetch.js.map +1 -0
  121. package/dist/node/events/index.js +4 -1
  122. package/dist/node/events/index.js.map +1 -1
  123. package/dist/node/events/types.js +15 -0
  124. package/dist/node/events/types.js.map +1 -0
  125. package/dist/node/index.js +1 -0
  126. package/dist/node/index.js.map +1 -1
  127. package/dist/node/permissions/HubPermissionPolicies.js +2 -0
  128. package/dist/node/permissions/HubPermissionPolicies.js.map +1 -1
  129. package/dist/node/permissions/types/Permission.js +2 -0
  130. package/dist/node/permissions/types/Permission.js.map +1 -1
  131. package/dist/node/surveys/HubSurvey.js +24 -0
  132. package/dist/node/surveys/HubSurvey.js.map +1 -1
  133. package/dist/node/surveys/_internal/SurveyBusinessRules.js +14 -1
  134. package/dist/node/surveys/_internal/SurveyBusinessRules.js.map +1 -1
  135. package/dist/node/utils/date/getDatePickerDate.js +31 -0
  136. package/dist/node/utils/date/getDatePickerDate.js.map +1 -0
  137. package/dist/node/utils/date/getTimePickerTime.js +37 -0
  138. package/dist/node/utils/date/getTimePickerTime.js.map +1 -0
  139. package/dist/node/utils/date/guessTimeZone.js +12 -0
  140. package/dist/node/utils/date/guessTimeZone.js.map +1 -0
  141. package/dist/node/utils/date/index.js +7 -0
  142. package/dist/node/utils/date/index.js.map +1 -0
  143. package/dist/node/utils/index.js +1 -0
  144. package/dist/node/utils/index.js.map +1 -1
  145. package/dist/types/core/schemas/types.d.ts +2 -2
  146. package/dist/types/core/types/HubEntity.d.ts +2 -1
  147. package/dist/types/core/types/HubEntityType.d.ts +1 -1
  148. package/dist/types/core/types/IHubEvent.d.ts +113 -5
  149. package/dist/types/discussions/_internal/DiscussionBusinessRules.d.ts +1 -1
  150. package/dist/types/events/HubEvent.d.ts +77 -0
  151. package/dist/types/events/_internal/EventBusinessRules.d.ts +12 -0
  152. package/dist/types/events/_internal/EventSchemaCreate.d.ts +8 -0
  153. package/dist/types/events/_internal/EventSchemaEdit.d.ts +6 -0
  154. package/dist/types/events/_internal/EventUiSchemaCreate.d.ts +10 -0
  155. package/dist/types/events/_internal/EventUiSchemaEdit.d.ts +10 -0
  156. package/dist/types/events/_internal/PropertyMapper.d.ts +35 -0
  157. package/dist/types/events/_internal/getDefaultEventDatesAndTimes.d.ts +14 -0
  158. package/dist/types/events/_internal/getISOStringFromClientDateTime.d.ts +18 -0
  159. package/dist/types/events/_internal/getPropertyMap.d.ts +8 -0
  160. package/dist/types/events/_internal/validations.d.ts +58 -0
  161. package/dist/types/events/defaults.d.ts +10 -0
  162. package/dist/types/events/edit.d.ts +21 -0
  163. package/dist/types/events/fetch.d.ts +19 -0
  164. package/dist/types/events/index.d.ts +4 -1
  165. package/dist/types/events/types.d.ts +9 -0
  166. package/dist/types/index.d.ts +1 -0
  167. package/dist/types/permissions/types/Permission.d.ts +2 -1
  168. package/dist/types/surveys/HubSurvey.d.ts +7 -0
  169. package/dist/types/surveys/_internal/SurveyBusinessRules.d.ts +1 -1
  170. package/dist/types/utils/date/getDatePickerDate.d.ts +17 -0
  171. package/dist/types/utils/date/getTimePickerTime.d.ts +17 -0
  172. package/dist/types/utils/date/guessTimeZone.d.ts +5 -0
  173. package/dist/types/utils/date/index.d.ts +3 -0
  174. package/dist/types/utils/index.d.ts +1 -0
  175. package/package.json +1 -1
@@ -0,0 +1,374 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildUiSchema = void 0;
4
+ const types_1 = require("../../core/schemas/types");
5
+ const getDatePickerDate_1 = require("../../utils/date/getDatePickerDate");
6
+ const getCategoryItems_1 = require("../../core/schemas/internal/getCategoryItems");
7
+ const getTagItems_1 = require("../../core/schemas/internal/getTagItems");
8
+ const types_2 = require("../types");
9
+ /**
10
+ * @private
11
+ * constructs the complete edit uiSchema for Hub Events.
12
+ * This defines how the schema properties should be
13
+ * rendered in the event creation experience
14
+ */
15
+ exports.buildUiSchema = async (i18nScope, options, context) => {
16
+ const minStartEndDate = getDatePickerDate_1.getDatePickerDate(new Date(), options.timeZone);
17
+ return {
18
+ type: "Layout",
19
+ elements: [
20
+ {
21
+ type: "Section",
22
+ labelKey: `${i18nScope}.sections.eventInfo.label`,
23
+ elements: [
24
+ {
25
+ labelKey: `${i18nScope}.fields.name.label`,
26
+ scope: "/properties/name",
27
+ type: "Control",
28
+ options: {
29
+ messages: [
30
+ {
31
+ type: "ERROR",
32
+ keyword: "required",
33
+ icon: true,
34
+ labelKey: `${i18nScope}.fields.name.requiredError`,
35
+ },
36
+ {
37
+ type: "ERROR",
38
+ keyword: "maxLength",
39
+ icon: true,
40
+ labelKey: `shared.fields.title.maxLengthError`,
41
+ },
42
+ ],
43
+ },
44
+ },
45
+ {
46
+ labelKey: `${i18nScope}.fields.description.label`,
47
+ scope: "/properties/description",
48
+ type: "Control",
49
+ options: {
50
+ control: "hub-field-input-rich-text",
51
+ type: "textarea",
52
+ helperText: {
53
+ labelKey: `${i18nScope}.fields.description.helperText`,
54
+ },
55
+ messages: [
56
+ {
57
+ type: "ERROR",
58
+ keyword: "required",
59
+ icon: true,
60
+ labelKey: `${i18nScope}.fields.description.requiredError`,
61
+ },
62
+ ],
63
+ },
64
+ },
65
+ ],
66
+ },
67
+ {
68
+ type: "Section",
69
+ labelKey: `${i18nScope}.sections.dateTime.label`,
70
+ elements: [
71
+ {
72
+ labelKey: `${i18nScope}.fields.startDate.label`,
73
+ scope: "/properties/startDate",
74
+ type: "Control",
75
+ options: {
76
+ control: "hub-field-input-date",
77
+ min: minStartEndDate,
78
+ messages: [
79
+ {
80
+ type: "ERROR",
81
+ keyword: "required",
82
+ icon: true,
83
+ labelKey: `${i18nScope}.fields.startDate.requiredError`,
84
+ },
85
+ {
86
+ type: "ERROR",
87
+ keyword: "formatMinimum",
88
+ icon: true,
89
+ labelKey: `${i18nScope}.fields.startDate.minDateError`,
90
+ },
91
+ ],
92
+ },
93
+ },
94
+ {
95
+ labelKey: `${i18nScope}.fields.endDate.label`,
96
+ scope: "/properties/endDate",
97
+ type: "Control",
98
+ options: {
99
+ control: "hub-field-input-date",
100
+ min: minStartEndDate,
101
+ messages: [
102
+ {
103
+ type: "ERROR",
104
+ keyword: "required",
105
+ icon: true,
106
+ labelKey: `${i18nScope}.fields.endDate.requiredError`,
107
+ },
108
+ {
109
+ type: "ERROR",
110
+ keyword: "formatMinimum",
111
+ icon: true,
112
+ labelKey: `${i18nScope}.fields.endDate.minDateError`,
113
+ },
114
+ ],
115
+ },
116
+ },
117
+ {
118
+ labelKey: `${i18nScope}.fields.allDay.label`,
119
+ type: "Control",
120
+ scope: "/properties/isAllDay",
121
+ options: {
122
+ control: "hub-field-input-switch",
123
+ },
124
+ },
125
+ {
126
+ labelKey: `${i18nScope}.fields.startTime.label`,
127
+ scope: "/properties/startTime",
128
+ type: "Control",
129
+ rule: {
130
+ condition: {
131
+ scope: "/properties/isAllDay",
132
+ schema: { const: false },
133
+ },
134
+ effect: types_1.UiSchemaRuleEffects.SHOW,
135
+ },
136
+ options: {
137
+ control: "hub-field-input-time",
138
+ messages: [
139
+ {
140
+ type: "ERROR",
141
+ keyword: "required",
142
+ icon: true,
143
+ labelKey: `${i18nScope}.fields.startTime.requiredError`,
144
+ },
145
+ ],
146
+ },
147
+ },
148
+ {
149
+ labelKey: `${i18nScope}.fields.endTime.label`,
150
+ scope: "/properties/endTime",
151
+ type: "Control",
152
+ rule: {
153
+ condition: {
154
+ scope: "/properties/isAllDay",
155
+ schema: { const: false },
156
+ },
157
+ effect: types_1.UiSchemaRuleEffects.SHOW,
158
+ },
159
+ options: {
160
+ control: "hub-field-input-time",
161
+ messages: [
162
+ {
163
+ type: "ERROR",
164
+ keyword: "required",
165
+ icon: true,
166
+ labelKey: `${i18nScope}.fields.endTime.requiredError`,
167
+ },
168
+ {
169
+ type: "ERROR",
170
+ keyword: "formatExclusiveMinimum",
171
+ icon: true,
172
+ labelKey: `${i18nScope}.fields.endTime.minTimeError`,
173
+ },
174
+ ],
175
+ },
176
+ },
177
+ ],
178
+ },
179
+ {
180
+ type: "Section",
181
+ labelKey: `${i18nScope}.sections.location.label`,
182
+ elements: [
183
+ {
184
+ labelKey: `${i18nScope}.fields.attendanceType.label`,
185
+ scope: "/properties/attendanceType",
186
+ type: "Control",
187
+ options: {
188
+ control: "hub-field-input-radio-group",
189
+ enum: { i18nScope: `${i18nScope}.fields.attendanceType` },
190
+ },
191
+ },
192
+ {
193
+ labelKey: `${i18nScope}.fields.onlineUrl.label`,
194
+ scope: "/properties/onlineUrl",
195
+ type: "Control",
196
+ rule: {
197
+ condition: {
198
+ scope: "/properties/attendanceType",
199
+ schema: {
200
+ enum: [
201
+ types_2.HubEventAttendanceType.Online,
202
+ types_2.HubEventAttendanceType.Both,
203
+ ],
204
+ },
205
+ },
206
+ effect: types_1.UiSchemaRuleEffects.SHOW,
207
+ },
208
+ options: {
209
+ control: "hub-field-input-input",
210
+ messages: [
211
+ {
212
+ type: "ERROR",
213
+ keyword: "required",
214
+ icon: true,
215
+ labelKey: `${i18nScope}.fields.onlineUrl.requiredError`,
216
+ },
217
+ {
218
+ type: "ERROR",
219
+ keyword: "format",
220
+ icon: true,
221
+ labelKey: `${i18nScope}.fields.onlineUrl.linkHrefFormatError`,
222
+ },
223
+ ],
224
+ },
225
+ },
226
+ {
227
+ labelKey: `${i18nScope}.fields.onlineDetails.label`,
228
+ scope: "/properties/onlineDetails",
229
+ type: "Control",
230
+ rule: {
231
+ condition: {
232
+ scope: "/properties/attendanceType",
233
+ schema: {
234
+ enum: [
235
+ types_2.HubEventAttendanceType.Online,
236
+ types_2.HubEventAttendanceType.Both,
237
+ ],
238
+ },
239
+ },
240
+ effect: types_1.UiSchemaRuleEffects.SHOW,
241
+ },
242
+ options: {
243
+ control: "hub-field-input-rich-text",
244
+ type: "textarea",
245
+ helperText: {
246
+ labelKey: `${i18nScope}.fields.onlineDetails.helperText`,
247
+ },
248
+ },
249
+ },
250
+ {
251
+ labelKey: `${i18nScope}.fields.onlineCapacityType.label`,
252
+ scope: "/properties/onlineCapacityType",
253
+ type: "Control",
254
+ rule: {
255
+ condition: {
256
+ scope: "/properties/attendanceType",
257
+ schema: {
258
+ enum: [
259
+ types_2.HubEventAttendanceType.Online,
260
+ types_2.HubEventAttendanceType.Both,
261
+ ],
262
+ },
263
+ },
264
+ effect: types_1.UiSchemaRuleEffects.SHOW,
265
+ },
266
+ options: {
267
+ control: "hub-field-input-radio-group",
268
+ enum: { i18nScope: `${i18nScope}.fields.onlineCapacityType` },
269
+ },
270
+ },
271
+ {
272
+ labelKey: `${i18nScope}.fields.onlineCapacity.label`,
273
+ scope: "/properties/onlineCapacity",
274
+ type: "Control",
275
+ rule: {
276
+ condition: {
277
+ schema: {
278
+ properties: {
279
+ attendanceType: {
280
+ enum: [
281
+ types_2.HubEventAttendanceType.Online,
282
+ types_2.HubEventAttendanceType.Both,
283
+ ],
284
+ },
285
+ onlineCapacityType: {
286
+ const: types_2.HubEventOnlineCapacityType.Fixed,
287
+ },
288
+ },
289
+ },
290
+ },
291
+ effect: types_1.UiSchemaRuleEffects.SHOW,
292
+ },
293
+ options: {
294
+ control: "hub-field-input-input",
295
+ type: "number",
296
+ messages: [
297
+ {
298
+ type: "ERROR",
299
+ keyword: "required",
300
+ icon: true,
301
+ labelKey: `${i18nScope}.fields.onlineCapacity.requiredError`,
302
+ },
303
+ {
304
+ type: "ERROR",
305
+ keyword: "minimum",
306
+ icon: true,
307
+ labelKey: `${i18nScope}.fields.onlineCapacity.minimumError`,
308
+ },
309
+ ],
310
+ },
311
+ },
312
+ ],
313
+ },
314
+ {
315
+ type: "Section",
316
+ labelKey: `${i18nScope}.sections.discoverability.label`,
317
+ elements: [
318
+ {
319
+ labelKey: `${i18nScope}.fields.tags.label`,
320
+ scope: "/properties/tags",
321
+ type: "Control",
322
+ options: {
323
+ control: "hub-field-input-combobox",
324
+ items: await getTagItems_1.getTagItems(options.tags, context.portal.id, context.hubRequestOptions),
325
+ allowCustomValues: true,
326
+ selectionMode: "multiple",
327
+ placeholderIcon: "label",
328
+ helperText: {
329
+ labelKey: `${i18nScope}.fields.tags.helperText`,
330
+ },
331
+ },
332
+ },
333
+ {
334
+ labelKey: `${i18nScope}.fields.categories.label`,
335
+ scope: "/properties/categories",
336
+ type: "Control",
337
+ options: {
338
+ control: "hub-field-input-combobox",
339
+ items: await getCategoryItems_1.getCategoryItems(context.portal.id, context.hubRequestOptions),
340
+ allowCustomValues: false,
341
+ selectionMode: "multiple",
342
+ placeholderIcon: "select-category",
343
+ helperText: {
344
+ labelKey: `${i18nScope}.fields.categories.helperText`,
345
+ },
346
+ },
347
+ },
348
+ {
349
+ labelKey: `${i18nScope}.fields.summary.label`,
350
+ scope: "/properties/summary",
351
+ type: "Control",
352
+ options: {
353
+ control: "hub-field-input-input",
354
+ type: "textarea",
355
+ rows: 4,
356
+ helperText: {
357
+ labelKey: `${i18nScope}.fields.summary.helperText`,
358
+ },
359
+ messages: [
360
+ {
361
+ type: "ERROR",
362
+ keyword: "maxLength",
363
+ icon: true,
364
+ labelKey: `shared.fields.summary.maxLengthError`,
365
+ },
366
+ ],
367
+ },
368
+ },
369
+ ],
370
+ },
371
+ ],
372
+ };
373
+ };
374
+ //# sourceMappingURL=EventUiSchemaEdit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventUiSchemaEdit.js","sourceRoot":"","sources":["../../../../src/events/_internal/EventUiSchemaEdit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EventPropertyMapper = void 0;
4
+ const PropertyMapper_1 = require("../../core/_internal/PropertyMapper");
5
+ const util_1 = require("../../util");
6
+ const getDatePickerDate_1 = require("../../utils/date/getDatePickerDate");
7
+ const getTimePickerTime_1 = require("../../utils/date/getTimePickerTime");
8
+ const getISOStringFromClientDateTime_1 = require("./getISOStringFromClientDateTime");
9
+ const orval_events_1 = require("../api/orval/api/orval-events");
10
+ const types_1 = require("../types");
11
+ /**
12
+ * @private
13
+ * Manage forward and backward property mappings to
14
+ * streamline conversion between a Hub Event, and
15
+ * the backing Store objects.
16
+ */
17
+ class EventPropertyMapper extends PropertyMapper_1.PropertyMapper {
18
+ /**
19
+ * Map properties from a Store object, on to an Entity object.
20
+ *
21
+ * Used when constructing an Entity from a fetched Store object,
22
+ * in which case the Entity should be an empty object (`{}`).
23
+ *
24
+ * Can also be used to apply changes to an Entity from a Store,
25
+ * in which case an existing Entity can be passed in.
26
+ * @param store
27
+ * @param entity
28
+ * @returns
29
+ */
30
+ storeToEntity(store, entity) {
31
+ // TODO: support locations
32
+ // TODO: thumbnail & thumbnail url
33
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
34
+ const obj = PropertyMapper_1.mapStoreToEntity(store, entity, this.mappings);
35
+ obj.type = "Event";
36
+ obj.access = store.access.toLowerCase();
37
+ obj.isCanceled = store.status === orval_events_1.EventStatus.CANCELED;
38
+ obj.isPlanned = store.status === orval_events_1.EventStatus.PLANNED;
39
+ obj.isRemoved = store.status === orval_events_1.EventStatus.REMOVED;
40
+ if (store.attendanceType.includes(orval_events_1.EventAttendanceType.IN_PERSON) &&
41
+ store.attendanceType.includes(orval_events_1.EventAttendanceType.VIRTUAL)) {
42
+ obj.attendanceType = types_1.HubEventAttendanceType.Both;
43
+ }
44
+ else if (store.attendanceType.includes(orval_events_1.EventAttendanceType.IN_PERSON)) {
45
+ obj.attendanceType = types_1.HubEventAttendanceType.InPerson;
46
+ }
47
+ else {
48
+ obj.attendanceType = types_1.HubEventAttendanceType.Online;
49
+ }
50
+ obj.inPersonCapacity = (_c = (_b = (_a = store.addresses) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.capacity) !== null && _c !== void 0 ? _c : null;
51
+ obj.onlineCapacity = (_f = (_e = (_d = store.onlineMeetings) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.capacity) !== null && _f !== void 0 ? _f : null;
52
+ obj.onlineCapacityType = ((_h = (_g = store.onlineMeetings) === null || _g === void 0 ? void 0 : _g[0]) === null || _h === void 0 ? void 0 : _h.capacity) ? types_1.HubEventOnlineCapacityType.Fixed
53
+ : types_1.HubEventOnlineCapacityType.Unlimited;
54
+ obj.onlineDetails = (_l = (_k = (_j = store.onlineMeetings) === null || _j === void 0 ? void 0 : _j[0]) === null || _k === void 0 ? void 0 : _k.details) !== null && _l !== void 0 ? _l : null;
55
+ obj.onlineUrl = (_p = (_o = (_m = store.onlineMeetings) === null || _m === void 0 ? void 0 : _m[0]) === null || _o === void 0 ? void 0 : _o.url) !== null && _p !== void 0 ? _p : null;
56
+ obj.canChangeAccess = [
57
+ store.permission.canSetAccessToPublic,
58
+ store.permission.canSetAccessToOrg,
59
+ store.permission.canSetAccessToPrivate,
60
+ ].some(Boolean);
61
+ obj.canChangeStatus = [
62
+ store.permission.canSetStatusToCancelled,
63
+ store.permission.canSetStatusToRemoved,
64
+ ].some(Boolean);
65
+ // Handle Dates
66
+ obj.createdDate = new Date(store.createdAt);
67
+ obj.startDateTime = new Date(store.startDateTime);
68
+ obj.endDateTime = new Date(store.endDateTime);
69
+ obj.startDate = getDatePickerDate_1.getDatePickerDate(store.startDateTime, store.timeZone);
70
+ obj.endDate = getDatePickerDate_1.getDatePickerDate(store.endDateTime, store.timeZone);
71
+ obj.startTime = getTimePickerTime_1.getTimePickerTime(store.startDateTime, store.timeZone);
72
+ obj.endTime = getTimePickerTime_1.getTimePickerTime(store.endDateTime, store.timeZone);
73
+ obj.createdDateSource = "createdAt";
74
+ obj.updatedDate = new Date(store.updatedAt);
75
+ obj.updatedDateSource = "updatedAt";
76
+ return obj;
77
+ }
78
+ /**
79
+ * Map properties from an entity object onto a model.
80
+ *
81
+ * Typically the model will already exist, and this
82
+ * method is used to transfer changes to the model
83
+ * prior to storage.
84
+ * @param entity
85
+ * @param store
86
+ * @returns
87
+ */
88
+ entityToStore(entity, store) {
89
+ // TODO: support locations
90
+ // TODO: thumbnail & thumbnail url
91
+ const clonedEntity = util_1.cloneObject(entity);
92
+ const obj = PropertyMapper_1.mapEntityToStore(clonedEntity, store, this.mappings);
93
+ obj.access = clonedEntity.access.toUpperCase();
94
+ if (clonedEntity.isRemoved) {
95
+ obj.status = orval_events_1.EventStatus.REMOVED;
96
+ }
97
+ else if (clonedEntity.isCanceled) {
98
+ obj.status = orval_events_1.EventStatus.CANCELED;
99
+ }
100
+ else {
101
+ obj.status = orval_events_1.EventStatus.PLANNED;
102
+ }
103
+ if (clonedEntity.attendanceType === types_1.HubEventAttendanceType.Both) {
104
+ obj.attendanceType = [
105
+ orval_events_1.EventAttendanceType.IN_PERSON,
106
+ orval_events_1.EventAttendanceType.VIRTUAL,
107
+ ];
108
+ }
109
+ else if (clonedEntity.attendanceType === types_1.HubEventAttendanceType.InPerson) {
110
+ obj.attendanceType = [orval_events_1.EventAttendanceType.IN_PERSON];
111
+ }
112
+ else {
113
+ obj.attendanceType = [orval_events_1.EventAttendanceType.VIRTUAL];
114
+ }
115
+ if ([types_1.HubEventAttendanceType.Online, types_1.HubEventAttendanceType.Both].includes(clonedEntity.attendanceType)) {
116
+ obj.onlineMeetings = [
117
+ {
118
+ details: clonedEntity.onlineDetails,
119
+ capacity: clonedEntity.onlineCapacityType === types_1.HubEventOnlineCapacityType.Fixed
120
+ ? clonedEntity.onlineCapacity
121
+ : null,
122
+ url: clonedEntity.onlineUrl,
123
+ },
124
+ ];
125
+ }
126
+ // override startTime & endTime for all-day events
127
+ if (clonedEntity.isAllDay) {
128
+ clonedEntity.startTime = "00:00:00";
129
+ clonedEntity.endTime = "23:59:59";
130
+ }
131
+ // build start & end date/time iso strings, adjusted for desired time zone
132
+ obj.startDateTime = getISOStringFromClientDateTime_1.getISOStringFromClientDateTime(clonedEntity.startDate, clonedEntity.startTime);
133
+ obj.endDateTime = getISOStringFromClientDateTime_1.getISOStringFromClientDateTime(clonedEntity.endDate, clonedEntity.endTime);
134
+ return obj;
135
+ }
136
+ }
137
+ exports.EventPropertyMapper = EventPropertyMapper;
138
+ //# sourceMappingURL=PropertyMapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyMapper.js","sourceRoot":"","sources":["../../../../src/events/_internal/PropertyMapper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getDefaultEventDatesAndTimes = void 0;
4
+ const getDatePickerDate_1 = require("../../utils/date/getDatePickerDate");
5
+ const getTimePickerTime_1 = require("../../utils/date/getTimePickerTime");
6
+ const guessTimeZone_1 = require("../../utils/date/guessTimeZone");
7
+ /**
8
+ * @private
9
+ * Builds an object containing the user's guessed timezone and default
10
+ * event start/end dates and times
11
+ */
12
+ exports.getDefaultEventDatesAndTimes = () => {
13
+ const hour = 1000 * 60 * 60;
14
+ const nowPlus1Hour = new Date(Date.now() + hour);
15
+ const nextFullHour = new Date(nowPlus1Hour.getFullYear(), nowPlus1Hour.getMonth(), nowPlus1Hour.getDate(), nowPlus1Hour.getHours());
16
+ const sDate = nextFullHour.toISOString();
17
+ const eDate = new Date(nextFullHour.valueOf() + hour).toISOString();
18
+ const timeZone = guessTimeZone_1.guessTimeZone();
19
+ const startDate = getDatePickerDate_1.getDatePickerDate(sDate, timeZone);
20
+ const endDate = getDatePickerDate_1.getDatePickerDate(eDate, timeZone);
21
+ return {
22
+ startDate,
23
+ startDateTime: new Date(sDate),
24
+ startTime: getTimePickerTime_1.getTimePickerTime(sDate, timeZone),
25
+ endDate,
26
+ endDateTime: new Date(eDate),
27
+ endTime: getTimePickerTime_1.getTimePickerTime(eDate, timeZone),
28
+ timeZone,
29
+ };
30
+ };
31
+ //# sourceMappingURL=getDefaultEventDatesAndTimes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getDefaultEventDatesAndTimes.js","sourceRoot":"","sources":["../../../../src/events/_internal/getDefaultEventDatesAndTimes.ts"],"names":[],"mappings":";;;AAAA,0EAAuE;AACvE,0EAAuE;AACvE,kEAA+D;AAE/D;;;;GAIG;AACU,QAAA,4BAA4B,GAAG,GAAG,EAAE;IAC/C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC;IAC5B,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IACjD,MAAM,YAAY,GAAG,IAAI,IAAI,CAC3B,YAAY,CAAC,WAAW,EAAE,EAC1B,YAAY,CAAC,QAAQ,EAAE,EACvB,YAAY,CAAC,OAAO,EAAE,EACtB,YAAY,CAAC,QAAQ,EAAE,CACxB,CAAC;IACF,MAAM,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IACpE,MAAM,QAAQ,GAAG,6BAAa,EAAE,CAAC;IACjC,MAAM,SAAS,GAAG,qCAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,qCAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACnD,OAAO;QACL,SAAS;QACT,aAAa,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC;QAC9B,SAAS,EAAE,qCAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC;QAC7C,OAAO;QACP,WAAW,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC;QAC5B,OAAO,EAAE,qCAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC;QAC3C,QAAQ;KACT,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getISOStringFromClientDateTime = void 0;
4
+ /**
5
+ * @private
6
+ * A utility method to aid in generating an ISO-8601 UTC date/time string from separate date & time
7
+ * inputs for the client's current locale.
8
+ *
9
+ * // a user in the America/New_York timeZone
10
+ * getTimeZoneISOStringFromLocalDateTime('2024-03-29', '13:00:00')
11
+ * // => `2024-03-29T17:00:00.000Z`
12
+ *
13
+ * // a user in America/Los_Angeles timeZone
14
+ * getTimeZoneISOStringFromLocalDateTime('2024-03-29', '13:00:00')
15
+ * // => `2024-03-29T20:00:00.000Z`
16
+ *
17
+ * @param date A date string in the format of `2024-03-29`
18
+ * @param time A time string in 24-hour format of `13:00:00`
19
+ * @returns an ISO-8601 UTC date/time string, e.g. `2024-03-29T16:00:00.000Z`
20
+ */
21
+ function getISOStringFromClientDateTime(date, time) {
22
+ const [yr, mon, day] = date
23
+ .split("-")
24
+ .map((segment) => parseInt(segment, 10));
25
+ const [hr, min, sec] = time
26
+ .split(":")
27
+ .map((segment) => parseInt(segment, 10));
28
+ const timeZoneDateTime = new Date(yr, mon - 1, day, hr, min, sec, 0);
29
+ return timeZoneDateTime.toISOString();
30
+ }
31
+ exports.getISOStringFromClientDateTime = getISOStringFromClientDateTime;
32
+ //# sourceMappingURL=getISOStringFromClientDateTime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getISOStringFromClientDateTime.js","sourceRoot":"","sources":["../../../../src/events/_internal/getISOStringFromClientDateTime.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,8BAA8B,CAC5C,IAAY,EACZ,IAAY;IAEZ,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI;SACxB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3C,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI;SACxB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3C,MAAM,gBAAgB,GAAG,IAAI,IAAI,CAAC,EAAE,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IACrE,OAAO,gBAAgB,CAAC,WAAW,EAAE,CAAC;AACxC,CAAC;AAZD,wEAYC"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPropertyMap = void 0;
4
+ /**
5
+ * @private
6
+ * Returns an Array of IPropertyMap objects
7
+ * that define the projection of properties from an IEvent to an IHubEvent
8
+ * @returns an IPropertyMap array
9
+ */
10
+ function getPropertyMap() {
11
+ const commonPropNames = [
12
+ "orgId",
13
+ "description",
14
+ "id",
15
+ "tags",
16
+ "categories",
17
+ "timeZone",
18
+ "summary",
19
+ "notifyAttendees",
20
+ "allowRegistration",
21
+ ];
22
+ return commonPropNames.reduce((acc, propName) => [...acc, { entityKey: propName, storeKey: propName }], [
23
+ { entityKey: "isAllDay", storeKey: "allDay" },
24
+ { entityKey: "name", storeKey: "title" },
25
+ { entityKey: "owner", storeKey: "createdById" },
26
+ { entityKey: "canEdit", storeKey: "permission.canEdit" },
27
+ { entityKey: "canDelete", storeKey: "permission.canDelete" },
28
+ {
29
+ entityKey: "canChangeAccessOrg",
30
+ storeKey: "permission.canSetAccessToOrg",
31
+ },
32
+ {
33
+ entityKey: "canChangeAccessPrivate",
34
+ storeKey: "permission.canSetAccessToPrivate",
35
+ },
36
+ {
37
+ entityKey: "canChangeAccessPublic",
38
+ storeKey: "permission.canSetAccessToPublic",
39
+ },
40
+ {
41
+ entityKey: "canChangeStatusCancelled",
42
+ storeKey: "permission.canSetStatusToCancelled",
43
+ },
44
+ {
45
+ entityKey: "canChangeStatusRemoved",
46
+ storeKey: "permission.canSetStatusToRemoved",
47
+ },
48
+ ]);
49
+ }
50
+ exports.getPropertyMap = getPropertyMap;
51
+ //# sourceMappingURL=getPropertyMap.js.map