@nylas/web-elements 0.0.0-canary-20241008193213 → 0.0.0-canary-20241017103834

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 (825) hide show
  1. package/dist/cdn/add-circle/add-circle.es.js +1 -1
  2. package/dist/cdn/add-circle-icon/add-circle-icon.es.js +1 -1
  3. package/dist/cdn/archive-icon/archive-icon.es.js +127 -127
  4. package/dist/cdn/arrow-icon/arrow-icon.es.js +248 -248
  5. package/dist/cdn/bold-icon/bold-icon.es.js +1 -1
  6. package/dist/cdn/button-component/button-component.es.js +2 -2
  7. package/dist/cdn/calendar/calendar.es.js +77 -77
  8. package/dist/cdn/calendar-agenda/calendar-agenda.es.js +1 -1
  9. package/dist/cdn/calendar-agenda-fill/calendar-agenda-fill.es.js +1 -1
  10. package/dist/cdn/calendar-agenda-fill-icon/calendar-agenda-fill-icon.es.js +1 -1
  11. package/dist/cdn/calendar-agenda-icon/calendar-agenda-icon.es.js +1 -1
  12. package/dist/cdn/calendar-cancel/calendar-cancel.es.js +1 -1
  13. package/dist/cdn/calendar-cancel-icon/calendar-cancel-icon.es.js +1 -1
  14. package/dist/cdn/calendar-check/calendar-check.es.js +139 -139
  15. package/dist/cdn/calendar-check-icon/calendar-check-icon.es.js +14 -14
  16. package/dist/cdn/calendar-icon/calendar-icon.es.js +24 -24
  17. package/dist/cdn/calendar-info/calendar-info.es.js +1 -1
  18. package/dist/cdn/calendar-info-icon/calendar-info-icon.es.js +1 -1
  19. package/dist/cdn/calendar-patterns/calendar-patterns.es.js +1 -1
  20. package/dist/cdn/calendar-patterns-icon/calendar-patterns-icon.es.js +1 -1
  21. package/dist/cdn/checkbox-component/checkbox-component.es.js +1 -1
  22. package/dist/cdn/checkmark/checkmark.es.js +86 -86
  23. package/dist/cdn/checkmark-circle/checkmark-circle.es.js +99 -99
  24. package/dist/cdn/checkmark-circle-icon/checkmark-circle-icon.es.js +14 -14
  25. package/dist/cdn/checkmark-icon/checkmark-icon.es.js +1 -1
  26. package/dist/cdn/chevron/chevron.es.js +16 -16
  27. package/dist/cdn/chevron-icon/chevron-icon.es.js +14 -14
  28. package/dist/cdn/clock/clock.es.js +16 -16
  29. package/dist/cdn/clock-icon/clock-icon.es.js +14 -14
  30. package/dist/cdn/close/close.es.js +1 -1
  31. package/dist/cdn/close-icon/close-icon.es.js +54 -54
  32. package/dist/cdn/constants/constants.es.js +3 -3
  33. package/dist/cdn/copy/copy.es.js +239 -239
  34. package/dist/cdn/copy-icon/copy-icon.es.js +271 -271
  35. package/dist/cdn/delete/delete.es.js +1 -1
  36. package/dist/cdn/delete-icon/delete-icon.es.js +1 -1
  37. package/dist/cdn/document-refresh-icon/document-refresh-icon.es.js +1 -1
  38. package/dist/cdn/dragable/dragable.es.js +54 -54
  39. package/dist/cdn/dragable-icon/dragable-icon.es.js +1 -1
  40. package/dist/cdn/edit/edit.es.js +1 -1
  41. package/dist/cdn/edit-icon/edit-icon.es.js +1 -1
  42. package/dist/cdn/envelope/envelope.es.js +25 -25
  43. package/dist/cdn/envelope-fill/envelope-fill.es.js +16 -16
  44. package/dist/cdn/envelope-fill-icon/envelope-fill-icon.es.js +97 -97
  45. package/dist/cdn/envelope-icon/envelope-icon.es.js +24 -24
  46. package/dist/cdn/eye/eye.es.js +1 -1
  47. package/dist/cdn/eye-icon/eye-icon.es.js +1 -1
  48. package/dist/cdn/feedback-icon/feedback-icon.es.js +86 -86
  49. package/dist/cdn/flow/flow.es.js +1 -1
  50. package/dist/cdn/flow-icon/flow-icon.es.js +1 -1
  51. package/dist/cdn/folder-icon/folder-icon.es.js +14 -14
  52. package/dist/cdn/forward-icon/forward-icon.es.js +240 -240
  53. package/dist/cdn/globe/globe.es.js +1 -1
  54. package/dist/cdn/globe-icon/globe-icon.es.js +1 -1
  55. package/dist/cdn/google-logo/google-logo.es.js +1 -1
  56. package/dist/cdn/google-logo-icon/google-logo-icon.es.js +1 -1
  57. package/dist/cdn/google-meet/google-meet.es.js +15 -15
  58. package/dist/cdn/google-meet-icon/google-meet-icon.es.js +1 -1
  59. package/dist/cdn/inbox-icon/inbox-icon.es.js +1 -1
  60. package/dist/cdn/info/info.es.js +239 -239
  61. package/dist/cdn/info-icon/info-icon.es.js +240 -240
  62. package/dist/cdn/input-color-picker/input-color-picker.es.js +3 -3
  63. package/dist/cdn/input-component/input-component.es.js +1 -1
  64. package/dist/cdn/input-dropdown/input-dropdown.es.js +1 -1
  65. package/dist/cdn/input-image-url/input-image-url.es.js +366 -366
  66. package/dist/cdn/italic-icon/italic-icon.es.js +86 -86
  67. package/dist/cdn/loading/loading.es.js +270 -270
  68. package/dist/cdn/loading-icon/loading-icon.es.js +271 -271
  69. package/dist/cdn/location/location.es.js +100 -100
  70. package/dist/cdn/location-icon/location-icon.es.js +19 -19
  71. package/dist/cdn/location-off/location-off.es.js +86 -86
  72. package/dist/cdn/location-off-icon/location-off-icon.es.js +1 -1
  73. package/dist/cdn/microsof-teams/microsof-teams.es.js +96 -96
  74. package/dist/cdn/microsoft-logo/microsoft-logo.es.js +1 -1
  75. package/dist/cdn/microsoft-logo-icon/microsoft-logo-icon.es.js +1 -1
  76. package/dist/cdn/microsoft-teams-icon/microsoft-teams-icon.es.js +97 -97
  77. package/dist/cdn/multi-select-dropdown/multi-select-dropdown.es.js +3 -3
  78. package/dist/cdn/nylas-additional-participants/nylas-additional-participants.es.js +55 -57
  79. package/dist/cdn/nylas-availability-picker/nylas-availability-picker.es.js +15 -15
  80. package/dist/cdn/nylas-booked-event-card/nylas-booked-event-card.es.js +10 -10
  81. package/dist/cdn/nylas-booking-calendar-picker/nylas-booking-calendar-picker.es.js +5 -5
  82. package/dist/cdn/nylas-booking-confirmation-redirect/nylas-booking-confirmation-redirect.es.js +7 -7
  83. package/dist/cdn/nylas-booking-confirmation-type/nylas-booking-confirmation-type.es.js +733 -734
  84. package/dist/cdn/nylas-booking-form/nylas-booking-form.es.js +154 -151
  85. package/dist/cdn/nylas-booking-form-config/nylas-booking-form-config.es.js +9 -9
  86. package/dist/cdn/nylas-buffer-time/nylas-buffer-time.es.js +5 -5
  87. package/dist/cdn/nylas-calendar-picker/nylas-calendar-picker.es.js +7 -7
  88. package/dist/cdn/nylas-cancel-booking-form/nylas-cancel-booking-form.es.js +10 -10
  89. package/dist/cdn/nylas-cancellation-policy/nylas-cancellation-policy.es.js +3 -3
  90. package/dist/cdn/nylas-cancelled-event-card/nylas-cancelled-event-card.es.js +7 -7
  91. package/dist/cdn/nylas-confirmation-email/nylas-confirmation-email.es.js +99 -95
  92. package/dist/cdn/nylas-confirmed-event-card/nylas-confirmed-event-card.es.js +723 -723
  93. package/dist/cdn/nylas-connected-calendars/nylas-connected-calendars.es.js +179 -179
  94. package/dist/cdn/nylas-custom-booking-flow/nylas-custom-booking-flow.es.js +2 -2
  95. package/dist/cdn/nylas-custom-event-slug/nylas-custom-event-slug.es.js +7 -7
  96. package/dist/cdn/nylas-customize-booking-settings/nylas-customize-booking-settings.es.js +147 -147
  97. package/dist/cdn/nylas-date-picker/nylas-date-picker.es.js +7 -7
  98. package/dist/cdn/nylas-editor-tabs/nylas-editor-tabs.es.js +6451 -6036
  99. package/dist/cdn/nylas-event-description/nylas-event-description.es.js +3 -3
  100. package/dist/cdn/nylas-event-duration/nylas-event-duration.es.js +232 -232
  101. package/dist/cdn/nylas-event-info/nylas-event-info.es.js +2 -2
  102. package/dist/cdn/nylas-event-limits/nylas-event-limits.es.js +2 -2
  103. package/dist/cdn/nylas-event-location/nylas-event-location.es.js +2558 -2533
  104. package/dist/cdn/nylas-event-title/nylas-event-title.es.js +10 -5
  105. package/dist/cdn/nylas-feedback-form/nylas-feedback-form.es.js +8 -8
  106. package/dist/cdn/nylas-form-card/nylas-form-card.es.js +1 -1
  107. package/dist/cdn/nylas-if-state/nylas-if-state.es.js +1 -1
  108. package/dist/cdn/nylas-limit-future-bookings/nylas-limit-future-bookings.es.js +8 -8
  109. package/dist/cdn/nylas-list-configurations/nylas-list-configurations.es.js +21 -17
  110. package/dist/cdn/nylas-locale-switch/nylas-locale-switch.es.js +1168 -1168
  111. package/dist/cdn/nylas-login/nylas-login.es.js +1 -1
  112. package/dist/cdn/nylas-logo/nylas-logo.es.js +125 -125
  113. package/dist/cdn/nylas-min-booking-notice/nylas-min-booking-notice.es.js +10 -10
  114. package/dist/cdn/nylas-min-cancellation-notice/nylas-min-cancellation-notice.es.js +10 -10
  115. package/dist/cdn/nylas-notification/nylas-notification.es.js +3 -3
  116. package/dist/cdn/nylas-organizer-confirmation-card/nylas-organizer-confirmation-card.es.js +6 -6
  117. package/dist/cdn/nylas-page-name/nylas-page-name.es.js +7 -7
  118. package/dist/cdn/nylas-page-styling/nylas-page-styling.es.js +4 -4
  119. package/dist/cdn/nylas-participant-booking-calendars/nylas-participant-booking-calendars.es.js +8 -8
  120. package/dist/cdn/nylas-participants-custom-availability/nylas-participants-custom-availability.es.js +176 -176
  121. package/dist/cdn/nylas-provider/nylas-provider.es.js +652 -644
  122. package/dist/cdn/nylas-reminder-emails/nylas-reminder-emails.es.js +17 -17
  123. package/dist/cdn/nylas-reminder-time/nylas-reminder-time.es.js +5 -5
  124. package/dist/cdn/nylas-scheduler-editor/nylas-scheduler-editor.es.js +1430 -1001
  125. package/dist/cdn/nylas-scheduling/nylas-scheduling.es.js +1081 -1056
  126. package/dist/cdn/nylas-scheduling-method/nylas-scheduling-method.es.js +10 -12
  127. package/dist/cdn/nylas-selected-event-card/nylas-selected-event-card.es.js +4 -4
  128. package/dist/cdn/nylas-time-window-picker/nylas-time-window-picker.es.js +1 -1
  129. package/dist/cdn/nylas-timeslot-interval/nylas-timeslot-interval.es.js +147 -149
  130. package/dist/cdn/nylas-timeslot-picker/nylas-timeslot-picker.es.js +10 -9
  131. package/dist/cdn/paintbrush/paintbrush.es.js +239 -239
  132. package/dist/cdn/paintbrush-fill/paintbrush-fill.es.js +1 -1
  133. package/dist/cdn/paintbrush-fill-icon/paintbrush-fill-icon.es.js +1 -1
  134. package/dist/cdn/paintbrush-icon/paintbrush-icon.es.js +240 -240
  135. package/dist/cdn/people/people.es.js +1 -1
  136. package/dist/cdn/people-icon/people-icon.es.js +1 -1
  137. package/dist/cdn/person/person.es.js +1 -1
  138. package/dist/cdn/person-clipboard/person-clipboard.es.js +1 -1
  139. package/dist/cdn/person-clipboard-icon/person-clipboard-icon.es.js +1 -1
  140. package/dist/cdn/person-icon/person-icon.es.js +1 -1
  141. package/dist/cdn/play-icon/play-icon.es.js +248 -248
  142. package/dist/cdn/plus/plus.es.js +16 -16
  143. package/dist/cdn/plus-icon/plus-icon.es.js +14 -14
  144. package/dist/cdn/radio-button-group/radio-button-group.es.js +1 -1
  145. package/dist/cdn/refresh-icon/refresh-icon.es.js +14 -14
  146. package/dist/cdn/reply-all-icon/reply-all-icon.es.js +14 -14
  147. package/dist/cdn/reply-icon/reply-icon.es.js +14 -14
  148. package/dist/cdn/scheduler-store/scheduler-store.es.js +654 -646
  149. package/dist/cdn/search/search.es.js +1 -1
  150. package/dist/cdn/search-icon/search-icon.es.js +86 -86
  151. package/dist/cdn/select-dropdown/select-dropdown.es.js +3 -3
  152. package/dist/cdn/sent-icon/sent-icon.es.js +1 -1
  153. package/dist/cdn/spam-icon/spam-icon.es.js +86 -86
  154. package/dist/cdn/star-icon/star-icon.es.js +1 -1
  155. package/dist/cdn/stop-icon/stop-icon.es.js +1 -1
  156. package/dist/cdn/textarea-component/textarea-component.es.js +3 -3
  157. package/dist/cdn/time-period-selector/time-period-selector.es.js +230 -230
  158. package/dist/cdn/toggle-switch/toggle-switch.es.js +1 -1
  159. package/dist/cdn/toolitp-component/toolitp-component.es.js +23 -23
  160. package/dist/cdn/tooltip-component/tooltip-component.es.js +26 -26
  161. package/dist/cdn/translate/translate.es.js +246 -246
  162. package/dist/cdn/translate-icon/translate-icon.es.js +247 -247
  163. package/dist/cdn/trash/trash.es.js +1 -1
  164. package/dist/cdn/trash-fill-icon/trash-fill-icon.es.js +14 -14
  165. package/dist/cdn/trash-icon/trash-icon.es.js +1 -1
  166. package/dist/cdn/underline-icon/underline-icon.es.js +1 -1
  167. package/dist/cdn/warning/warning.es.js +247 -247
  168. package/dist/cdn/warning-icon/warning-icon.es.js +248 -248
  169. package/dist/cdn/zoom/zoom.es.js +1 -1
  170. package/dist/cdn/zoom-icon/zoom-icon.es.js +1 -1
  171. package/dist/cjs/add-circle-icon_2.cjs.entry.js +2 -2
  172. package/dist/cjs/archive-icon.cjs.entry.js +1 -1
  173. package/dist/cjs/arrow-icon.cjs.entry.js +1 -1
  174. package/dist/cjs/bold-icon.cjs.entry.js +1 -1
  175. package/dist/cjs/button-component_2.cjs.entry.js +2 -2
  176. package/dist/cjs/{calendar-agenda-fill-icon_51.cjs.entry.js → calendar-agenda-fill-icon_54.cjs.entry.js} +736 -326
  177. package/dist/cjs/calendar-agenda-fill-icon_54.cjs.entry.js.map +1 -0
  178. package/dist/cjs/calendar-cancel-icon.cjs.entry.js +1 -1
  179. package/dist/cjs/calendar-check-icon_2.cjs.entry.js +2 -2
  180. package/dist/cjs/calendar-icon.cjs.entry.js +1 -1
  181. package/dist/cjs/checkbox-component_2.cjs.entry.js +2 -2
  182. package/dist/cjs/chevron-icon_3.cjs.entry.js +3 -3
  183. package/dist/cjs/clock-icon_4.cjs.entry.js +4 -4
  184. package/dist/cjs/copy-icon.cjs.entry.js +1 -1
  185. package/dist/cjs/delete-icon.cjs.entry.js +1 -1
  186. package/dist/cjs/document-refresh-icon.cjs.entry.js +1 -1
  187. package/dist/cjs/folder-icon.cjs.entry.js +1 -1
  188. package/dist/cjs/forward-icon.cjs.entry.js +1 -1
  189. package/dist/cjs/globe-icon.cjs.entry.js +1 -1
  190. package/dist/cjs/google-logo-icon_4.cjs.entry.js +34 -23
  191. package/dist/cjs/google-logo-icon_4.cjs.entry.js.map +1 -1
  192. package/dist/cjs/inbox-icon.cjs.entry.js +1 -1
  193. package/dist/cjs/index-7af03e3f.js +2 -10
  194. package/dist/cjs/info-icon_2.cjs.entry.js +2 -2
  195. package/dist/cjs/input-color-picker.cjs.entry.js +2 -2
  196. package/dist/cjs/input-component.cjs.entry.js +1 -1
  197. package/dist/cjs/input-dropdown.cjs.entry.js +1 -1
  198. package/dist/cjs/italic-icon.cjs.entry.js +1 -1
  199. package/dist/cjs/loader.cjs.js +1 -1
  200. package/dist/cjs/multi-select-dropdown.cjs.entry.js +1 -1
  201. package/dist/cjs/nylas-booked-event-card_12.cjs.entry.js +35 -34
  202. package/dist/cjs/nylas-booked-event-card_12.cjs.entry.js.map +1 -1
  203. package/dist/cjs/nylas-form-card.cjs.entry.js +1 -1
  204. package/dist/cjs/nylas-if-state.cjs.entry.js +1 -1
  205. package/dist/cjs/nylas-login.cjs.entry.js +1 -1
  206. package/dist/cjs/nylas-provider.cjs.entry.js +2 -2
  207. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js +1 -1
  208. package/dist/cjs/nylas-scheduling.cjs.entry.js +22 -9
  209. package/dist/cjs/nylas-scheduling.cjs.entry.js.map +1 -1
  210. package/dist/cjs/nylas-time-window-picker.cjs.entry.js +1 -1
  211. package/dist/cjs/nylas-web-elements.cjs.js +1 -1
  212. package/dist/cjs/person-icon.cjs.entry.js +1 -1
  213. package/dist/cjs/play-icon.cjs.entry.js +1 -1
  214. package/dist/cjs/refresh-icon.cjs.entry.js +1 -1
  215. package/dist/cjs/reply-all-icon.cjs.entry.js +1 -1
  216. package/dist/cjs/reply-icon.cjs.entry.js +1 -1
  217. package/dist/cjs/{scheduler-store-4489a68b.js → scheduler-store-e3ddffc1.js} +13 -4
  218. package/dist/cjs/scheduler-store-e3ddffc1.js.map +1 -0
  219. package/dist/cjs/sent-icon.cjs.entry.js +1 -1
  220. package/dist/cjs/spam-icon.cjs.entry.js +1 -1
  221. package/dist/cjs/star-icon.cjs.entry.js +1 -1
  222. package/dist/cjs/stop-icon.cjs.entry.js +1 -1
  223. package/dist/cjs/textarea-component.cjs.entry.js +1 -1
  224. package/dist/cjs/time-period-selector.cjs.entry.js +1 -1
  225. package/dist/cjs/translate-icon.cjs.entry.js +1 -1
  226. package/dist/cjs/trash-fill-icon.cjs.entry.js +1 -1
  227. package/dist/cjs/underline-icon.cjs.entry.js +1 -1
  228. package/dist/cjs/warning-icon.cjs.entry.js +1 -1
  229. package/dist/collection/collection-manifest.json +1 -1
  230. package/dist/collection/common/icons/add-circle.js +1 -1
  231. package/dist/collection/common/icons/archive.js +1 -1
  232. package/dist/collection/common/icons/arrow.js +1 -1
  233. package/dist/collection/common/icons/bold.js +1 -1
  234. package/dist/collection/common/icons/calendar-agenda-fill.js +1 -1
  235. package/dist/collection/common/icons/calendar-agenda.js +1 -1
  236. package/dist/collection/common/icons/calendar-cancel.js +1 -1
  237. package/dist/collection/common/icons/calendar-check.js +1 -1
  238. package/dist/collection/common/icons/calendar-info.js +1 -1
  239. package/dist/collection/common/icons/calendar-patterns.js +1 -1
  240. package/dist/collection/common/icons/calendar.js +1 -1
  241. package/dist/collection/common/icons/checkmark-circle.js +1 -1
  242. package/dist/collection/common/icons/checkmark.js +1 -1
  243. package/dist/collection/common/icons/chevron.js +1 -1
  244. package/dist/collection/common/icons/clock.js +1 -1
  245. package/dist/collection/common/icons/close.js +1 -1
  246. package/dist/collection/common/icons/copy.js +1 -1
  247. package/dist/collection/common/icons/delete.js +1 -1
  248. package/dist/collection/common/icons/document-refresh.js +1 -1
  249. package/dist/collection/common/icons/dragable.js +1 -1
  250. package/dist/collection/common/icons/edit.js +1 -1
  251. package/dist/collection/common/icons/envelope-fill.js +1 -1
  252. package/dist/collection/common/icons/envelope.js +1 -1
  253. package/dist/collection/common/icons/eye.js +1 -1
  254. package/dist/collection/common/icons/feedback-icon.js +1 -1
  255. package/dist/collection/common/icons/flow.js +1 -1
  256. package/dist/collection/common/icons/folder.js +1 -1
  257. package/dist/collection/common/icons/forward.js +1 -1
  258. package/dist/collection/common/icons/globe.js +1 -1
  259. package/dist/collection/common/icons/google-logo.js +1 -1
  260. package/dist/collection/common/icons/google-meet.js +1 -1
  261. package/dist/collection/common/icons/inbox.js +1 -1
  262. package/dist/collection/common/icons/info.js +1 -1
  263. package/dist/collection/common/icons/italic.js +1 -1
  264. package/dist/collection/common/icons/loading.js +1 -1
  265. package/dist/collection/common/icons/location-off.js +1 -1
  266. package/dist/collection/common/icons/location.js +1 -1
  267. package/dist/collection/common/icons/microsof-teams.js +1 -1
  268. package/dist/collection/common/icons/microsoft-logo.js +1 -1
  269. package/dist/collection/common/icons/nylas-logo.js +1 -1
  270. package/dist/collection/common/icons/paintbrush-fill.js +1 -1
  271. package/dist/collection/common/icons/paintbrush.js +1 -1
  272. package/dist/collection/common/icons/people.js +1 -1
  273. package/dist/collection/common/icons/person-clipboard.js +1 -1
  274. package/dist/collection/common/icons/person.js +1 -1
  275. package/dist/collection/common/icons/play.js +1 -1
  276. package/dist/collection/common/icons/plus.js +1 -1
  277. package/dist/collection/common/icons/refresh.js +1 -1
  278. package/dist/collection/common/icons/reply-all.js +1 -1
  279. package/dist/collection/common/icons/reply.js +1 -1
  280. package/dist/collection/common/icons/search.js +1 -1
  281. package/dist/collection/common/icons/sent.js +1 -1
  282. package/dist/collection/common/icons/spam.js +1 -1
  283. package/dist/collection/common/icons/star.js +1 -1
  284. package/dist/collection/common/icons/stop.js +1 -1
  285. package/dist/collection/common/icons/translate.js +1 -1
  286. package/dist/collection/common/icons/trash-fill.js +1 -1
  287. package/dist/collection/common/icons/trash.js +1 -1
  288. package/dist/collection/common/icons/underline.js +1 -1
  289. package/dist/collection/common/icons/warning.js +1 -1
  290. package/dist/collection/common/icons/zoom.js +1 -1
  291. package/dist/collection/common/types.js.map +1 -1
  292. package/dist/collection/components/design-system/button-component/button-component.js +1 -1
  293. package/dist/collection/components/design-system/checkbox-component/checkbox-component.js +1 -1
  294. package/dist/collection/components/design-system/input-color-picker/input-color-picker.js +2 -2
  295. package/dist/collection/components/design-system/input-component/input-component.js +1 -1
  296. package/dist/collection/components/design-system/input-dropdown/input-dropdown.js +1 -1
  297. package/dist/collection/components/design-system/input-image-url/input-image-url.js +20 -2
  298. package/dist/collection/components/design-system/input-image-url/input-image-url.js.map +1 -1
  299. package/dist/collection/components/design-system/multi-select-dropdown/multi-select-dropdown.js +1 -1
  300. package/dist/collection/components/design-system/radio-button-group/radio-button-group.js +1 -1
  301. package/dist/collection/components/design-system/select-dropdown/select-dropdown.js +1 -1
  302. package/dist/collection/components/design-system/textarea-component/textarea-component.js +1 -1
  303. package/dist/collection/components/design-system/time-period-selector/time-period-selector.js +1 -1
  304. package/dist/collection/components/design-system/toggle-switch/toggle-switch.js +1 -1
  305. package/dist/collection/components/design-system/tooltip-component/toolitp-component.js +1 -1
  306. package/dist/collection/components/nylas-if-state/nylas-if-state.js +1 -1
  307. package/dist/collection/components/nylas-login/nylas-login.js +1 -1
  308. package/dist/collection/components/nylas-provider/nylas-provider.js +1 -1
  309. package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.css +23 -0
  310. package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.js +66 -51
  311. package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.js.map +1 -1
  312. package/dist/collection/components/scheduler/nylas-booking-form/nylas-booking-form.css +23 -0
  313. package/dist/collection/components/scheduler/nylas-booking-form/nylas-booking-form.js +35 -24
  314. package/dist/collection/components/scheduler/nylas-booking-form/nylas-booking-form.js.map +1 -1
  315. package/dist/collection/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.css +23 -0
  316. package/dist/collection/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.js +38 -29
  317. package/dist/collection/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.js.map +1 -1
  318. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.css +23 -0
  319. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js +26 -23
  320. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js.map +1 -1
  321. package/dist/collection/components/scheduler/nylas-confirmed-event-card/nylas-confirmed-event-card.js +26 -23
  322. package/dist/collection/components/scheduler/nylas-confirmed-event-card/nylas-confirmed-event-card.js.map +1 -1
  323. package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.css +23 -0
  324. package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.js +26 -20
  325. package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.js.map +1 -1
  326. package/dist/collection/components/scheduler/nylas-feedback-form/nylas-feedback-form.js +2 -2
  327. package/dist/collection/components/scheduler/nylas-locale-switch/nylas-locale-switch.css +23 -0
  328. package/dist/collection/components/scheduler/nylas-notification/nylas-notification.js +1 -1
  329. package/dist/collection/components/scheduler/nylas-organizer-confirmation-card/nylas-organizer-confirmation-card.js +29 -23
  330. package/dist/collection/components/scheduler/nylas-organizer-confirmation-card/nylas-organizer-confirmation-card.js.map +1 -1
  331. package/dist/collection/components/scheduler/nylas-scheduling/nylas-scheduling.js +24 -10
  332. package/dist/collection/components/scheduler/nylas-scheduling/nylas-scheduling.js.map +1 -1
  333. package/dist/collection/components/scheduler/nylas-scheduling/test/nylas-scheduling.spec.js +143 -0
  334. package/dist/collection/components/scheduler/nylas-scheduling/test/nylas-scheduling.spec.js.map +1 -1
  335. package/dist/collection/components/scheduler/nylas-selected-event-card/nylas-selected-event-card.css +23 -0
  336. package/dist/collection/components/scheduler/nylas-selected-event-card/nylas-selected-event-card.js +3 -3
  337. package/dist/collection/components/scheduler/nylas-selected-event-card/nylas-selected-event-card.js.map +1 -1
  338. package/dist/collection/components/scheduler/nylas-timeslot-picker/nylas-timeslot-picker.css +23 -0
  339. package/dist/collection/components/scheduler/nylas-timeslot-picker/nylas-timeslot-picker.js +50 -44
  340. package/dist/collection/components/scheduler/nylas-timeslot-picker/nylas-timeslot-picker.js.map +1 -1
  341. package/dist/collection/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.js +66 -55
  342. package/dist/collection/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.js.map +1 -1
  343. package/dist/collection/components/scheduler-editor/nylas-additional-participants/test/nylas-additional-participants.spec.js +106 -0
  344. package/dist/collection/components/scheduler-editor/nylas-additional-participants/test/nylas-additional-participants.spec.js.map +1 -0
  345. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js +44 -28
  346. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js.map +1 -1
  347. package/dist/collection/components/scheduler-editor/nylas-booking-calendar-picker/nylas-booking-calendar-picker.js +25 -10
  348. package/dist/collection/components/scheduler-editor/nylas-booking-calendar-picker/nylas-booking-calendar-picker.js.map +1 -1
  349. package/dist/collection/components/scheduler-editor/nylas-booking-confirmation-redirect/nylas-booking-confirmation-redirect.js +21 -9
  350. package/dist/collection/components/scheduler-editor/nylas-booking-confirmation-redirect/nylas-booking-confirmation-redirect.js.map +1 -1
  351. package/dist/collection/components/scheduler-editor/nylas-booking-confirmation-type/nylas-booking-confirmation-type.js +19 -10
  352. package/dist/collection/components/scheduler-editor/nylas-booking-confirmation-type/nylas-booking-confirmation-type.js.map +1 -1
  353. package/dist/collection/components/scheduler-editor/nylas-booking-form-config/nylas-booking-form-config.js +6 -3
  354. package/dist/collection/components/scheduler-editor/nylas-booking-form-config/nylas-booking-form-config.js.map +1 -1
  355. package/dist/collection/components/scheduler-editor/nylas-buffer-time/nylas-buffer-time.js +10 -4
  356. package/dist/collection/components/scheduler-editor/nylas-buffer-time/nylas-buffer-time.js.map +1 -1
  357. package/dist/collection/components/scheduler-editor/nylas-calendar-picker/nylas-calendar-picker.js +45 -33
  358. package/dist/collection/components/scheduler-editor/nylas-calendar-picker/nylas-calendar-picker.js.map +1 -1
  359. package/dist/collection/components/scheduler-editor/nylas-cancellation-policy/nylas-cancellation-policy.css +2 -1
  360. package/dist/collection/components/scheduler-editor/nylas-cancellation-policy/nylas-cancellation-policy.js +16 -7
  361. package/dist/collection/components/scheduler-editor/nylas-cancellation-policy/nylas-cancellation-policy.js.map +1 -1
  362. package/dist/collection/components/scheduler-editor/nylas-confirmation-email/nylas-confirmation-email.js +58 -30
  363. package/dist/collection/components/scheduler-editor/nylas-confirmation-email/nylas-confirmation-email.js.map +1 -1
  364. package/dist/collection/components/scheduler-editor/nylas-confirmation-email/test/nylas-confirmation-email.spec.js +33 -0
  365. package/dist/collection/components/scheduler-editor/nylas-confirmation-email/test/nylas-confirmation-email.spec.js.map +1 -0
  366. package/dist/collection/components/scheduler-editor/nylas-connected-calendars/nylas-connected-calendars.js +26 -10
  367. package/dist/collection/components/scheduler-editor/nylas-connected-calendars/nylas-connected-calendars.js.map +1 -1
  368. package/dist/collection/components/scheduler-editor/nylas-custom-booking-flow/nylas-custom-booking-flow.js +1 -1
  369. package/dist/collection/components/scheduler-editor/nylas-custom-booking-flow/nylas-custom-booking-flow.js.map +1 -1
  370. package/dist/collection/components/scheduler-editor/nylas-custom-event-slug/nylas-custom-event-slug.js +1 -0
  371. package/dist/collection/components/scheduler-editor/nylas-custom-event-slug/nylas-custom-event-slug.js.map +1 -1
  372. package/dist/collection/components/scheduler-editor/nylas-customize-booking-settings/nylas-customize-booking-settings.js +17 -11
  373. package/dist/collection/components/scheduler-editor/nylas-customize-booking-settings/nylas-customize-booking-settings.js.map +1 -1
  374. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js +62 -28
  375. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js.map +1 -1
  376. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js +1 -1
  377. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js.map +1 -1
  378. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/test/nylas-editor-tabs.spec.js +171 -1
  379. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/test/nylas-editor-tabs.spec.js.map +1 -1
  380. package/dist/collection/components/scheduler-editor/nylas-event-description/nylas-event-description.js +16 -7
  381. package/dist/collection/components/scheduler-editor/nylas-event-description/nylas-event-description.js.map +1 -1
  382. package/dist/collection/components/scheduler-editor/nylas-event-duration/nylas-event-duration.js +20 -9
  383. package/dist/collection/components/scheduler-editor/nylas-event-duration/nylas-event-duration.js.map +1 -1
  384. package/dist/collection/components/scheduler-editor/nylas-event-duration/test/nylas-event-duration.spec.js +55 -0
  385. package/dist/collection/components/scheduler-editor/nylas-event-duration/test/nylas-event-duration.spec.js.map +1 -0
  386. package/dist/collection/components/scheduler-editor/nylas-event-info/nylas-event-info.js +1 -1
  387. package/dist/collection/components/scheduler-editor/nylas-event-limits/nylas-event-limits.js +1 -1
  388. package/dist/collection/components/scheduler-editor/nylas-event-location/nylas-event-location.js +74 -29
  389. package/dist/collection/components/scheduler-editor/nylas-event-location/nylas-event-location.js.map +1 -1
  390. package/dist/collection/components/scheduler-editor/nylas-event-title/nylas-event-title.js +25 -11
  391. package/dist/collection/components/scheduler-editor/nylas-event-title/nylas-event-title.js.map +1 -1
  392. package/dist/collection/components/scheduler-editor/nylas-form-card/nylas-form-card.js +1 -1
  393. package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.js +16 -7
  394. package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.js.map +1 -1
  395. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.js +2 -2
  396. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.js.map +1 -1
  397. package/dist/collection/components/scheduler-editor/nylas-min-booking-notice/nylas-min-booking-notice.js +32 -23
  398. package/dist/collection/components/scheduler-editor/nylas-min-booking-notice/nylas-min-booking-notice.js.map +1 -1
  399. package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.js +32 -23
  400. package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.js.map +1 -1
  401. package/dist/collection/components/scheduler-editor/nylas-page-name/nylas-page-name.js +43 -28
  402. package/dist/collection/components/scheduler-editor/nylas-page-name/nylas-page-name.js.map +1 -1
  403. package/dist/collection/components/scheduler-editor/nylas-page-styling/nylas-page-styling.js +38 -26
  404. package/dist/collection/components/scheduler-editor/nylas-page-styling/nylas-page-styling.js.map +1 -1
  405. package/dist/collection/components/scheduler-editor/nylas-participant-booking-calendars/nylas-participant-booking-calendars.js +31 -12
  406. package/dist/collection/components/scheduler-editor/nylas-participant-booking-calendars/nylas-participant-booking-calendars.js.map +1 -1
  407. package/dist/collection/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.js +18 -8
  408. package/dist/collection/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.js.map +1 -1
  409. package/dist/collection/components/scheduler-editor/nylas-participants-custom-availability/test/nylas-participants-custom-availability.spec.js +47 -0
  410. package/dist/collection/components/scheduler-editor/nylas-participants-custom-availability/test/nylas-participants-custom-availability.spec.js.map +1 -0
  411. package/dist/collection/components/scheduler-editor/nylas-reminder-emails/nylas-reminder-emails.js +3 -3
  412. package/dist/collection/components/scheduler-editor/nylas-reminder-time/nylas-reminder-time.js +1 -1
  413. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js +1 -1
  414. package/dist/collection/components/scheduler-editor/nylas-scheduling-method/nylas-scheduling-method.js +34 -27
  415. package/dist/collection/components/scheduler-editor/nylas-scheduling-method/nylas-scheduling-method.js.map +1 -1
  416. package/dist/collection/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.js +1 -1
  417. package/dist/collection/components/scheduler-editor/nylas-timeslot-interval/nylas-timeslot-interval.js +18 -53
  418. package/dist/collection/components/scheduler-editor/nylas-timeslot-interval/nylas-timeslot-interval.js.map +1 -1
  419. package/dist/collection/connector/shared/api/scheduler.js +12 -3
  420. package/dist/collection/connector/shared/api/scheduler.js.map +1 -1
  421. package/dist/collection/types/index.js +7 -6
  422. package/dist/collection/types/index.js.map +1 -1
  423. package/dist/collection/utils/test-utils.js +9 -0
  424. package/dist/collection/utils/test-utils.js.map +1 -1
  425. package/dist/components/add-circle.js +1 -1
  426. package/dist/components/archive-icon.js +1 -1
  427. package/dist/components/arrow-icon.js +1 -1
  428. package/dist/components/bold-icon.js +1 -1
  429. package/dist/components/button-component2.js +1 -1
  430. package/dist/components/calendar-agenda-fill.js +1 -1
  431. package/dist/components/calendar-agenda.js +1 -1
  432. package/dist/components/calendar-cancel.js +1 -1
  433. package/dist/components/calendar-check.js +1 -1
  434. package/dist/components/calendar-info.js +1 -1
  435. package/dist/components/calendar-patterns.js +1 -1
  436. package/dist/components/calendar.js +1 -1
  437. package/dist/components/checkbox-component2.js +1 -1
  438. package/dist/components/checkmark-circle.js +1 -1
  439. package/dist/components/checkmark.js +1 -1
  440. package/dist/components/chevron.js +1 -1
  441. package/dist/components/clock.js +1 -1
  442. package/dist/components/close.js +1 -1
  443. package/dist/components/constants.js +1 -1
  444. package/dist/components/copy.js +1 -1
  445. package/dist/components/delete.js +1 -1
  446. package/dist/components/document-refresh-icon.js +1 -1
  447. package/dist/components/dragable.js +1 -1
  448. package/dist/components/edit.js +1 -1
  449. package/dist/components/envelope-fill.js +1 -1
  450. package/dist/components/envelope.js +1 -1
  451. package/dist/components/eye.js +1 -1
  452. package/dist/components/feedback-icon2.js +1 -1
  453. package/dist/components/flow.js +1 -1
  454. package/dist/components/folder-icon.js +1 -1
  455. package/dist/components/forward-icon.js +1 -1
  456. package/dist/components/globe.js +1 -1
  457. package/dist/components/google-logo.js +1 -1
  458. package/dist/components/google-meet.js +1 -1
  459. package/dist/components/inbox-icon.js +1 -1
  460. package/dist/components/info.js +1 -1
  461. package/dist/components/input-color-picker.js +2 -2
  462. package/dist/components/input-component2.js +1 -1
  463. package/dist/components/input-dropdown2.js +1 -1
  464. package/dist/components/input-image-url2.js +6 -2
  465. package/dist/components/input-image-url2.js.map +1 -1
  466. package/dist/components/italic-icon.js +1 -1
  467. package/dist/components/loading.js +1 -1
  468. package/dist/components/location-off.js +1 -1
  469. package/dist/components/location.js +1 -1
  470. package/dist/components/microsof-teams.js +1 -1
  471. package/dist/components/microsoft-logo.js +1 -1
  472. package/dist/components/multi-select-dropdown2.js +1 -1
  473. package/dist/components/nylas-additional-participants2.js +16 -20
  474. package/dist/components/nylas-additional-participants2.js.map +1 -1
  475. package/dist/components/nylas-availability-picker2.js +5 -4
  476. package/dist/components/nylas-availability-picker2.js.map +1 -1
  477. package/dist/components/nylas-booked-event-card2.js +8 -8
  478. package/dist/components/nylas-booked-event-card2.js.map +1 -1
  479. package/dist/components/nylas-booking-calendar-picker2.js.map +1 -1
  480. package/dist/components/nylas-booking-confirmation-redirect2.js +1 -1
  481. package/dist/components/nylas-booking-confirmation-redirect2.js.map +1 -1
  482. package/dist/components/nylas-booking-confirmation-type2.js +2 -2
  483. package/dist/components/nylas-booking-confirmation-type2.js.map +1 -1
  484. package/dist/components/nylas-booking-form-config2.js +1 -1
  485. package/dist/components/nylas-booking-form-config2.js.map +1 -1
  486. package/dist/components/nylas-booking-form2.js +6 -5
  487. package/dist/components/nylas-booking-form2.js.map +1 -1
  488. package/dist/components/nylas-buffer-time2.js.map +1 -1
  489. package/dist/components/nylas-calendar-picker2.js +4 -4
  490. package/dist/components/nylas-calendar-picker2.js.map +1 -1
  491. package/dist/components/nylas-cancel-booking-form2.js +4 -4
  492. package/dist/components/nylas-cancel-booking-form2.js.map +1 -1
  493. package/dist/components/nylas-cancellation-policy2.js +1 -1
  494. package/dist/components/nylas-cancellation-policy2.js.map +1 -1
  495. package/dist/components/nylas-cancelled-event-card2.js +4 -4
  496. package/dist/components/nylas-cancelled-event-card2.js.map +1 -1
  497. package/dist/components/nylas-confirmation-email2.js +16 -6
  498. package/dist/components/nylas-confirmation-email2.js.map +1 -1
  499. package/dist/components/nylas-confirmed-event-card2.js +3 -3
  500. package/dist/components/nylas-confirmed-event-card2.js.map +1 -1
  501. package/dist/components/nylas-connected-calendars2.js +6 -2
  502. package/dist/components/nylas-connected-calendars2.js.map +1 -1
  503. package/dist/components/nylas-custom-booking-flow2.js +1 -1
  504. package/dist/components/nylas-custom-booking-flow2.js.map +1 -1
  505. package/dist/components/nylas-custom-event-slug2.js +1 -0
  506. package/dist/components/nylas-custom-event-slug2.js.map +1 -1
  507. package/dist/components/nylas-customize-booking-settings2.js +4 -4
  508. package/dist/components/nylas-customize-booking-settings2.js.map +1 -1
  509. package/dist/components/nylas-date-picker2.js +4 -4
  510. package/dist/components/nylas-date-picker2.js.map +1 -1
  511. package/dist/components/nylas-editor-tabs2.js +196 -167
  512. package/dist/components/nylas-editor-tabs2.js.map +1 -1
  513. package/dist/components/nylas-event-description2.js +1 -1
  514. package/dist/components/nylas-event-description2.js.map +1 -1
  515. package/dist/components/nylas-event-duration2.js +5 -3
  516. package/dist/components/nylas-event-duration2.js.map +1 -1
  517. package/dist/components/nylas-event-info2.js +1 -1
  518. package/dist/components/nylas-event-limits2.js +1 -1
  519. package/dist/components/nylas-event-location2.js +39 -15
  520. package/dist/components/nylas-event-location2.js.map +1 -1
  521. package/dist/components/nylas-event-title2.js +10 -5
  522. package/dist/components/nylas-event-title2.js.map +1 -1
  523. package/dist/components/nylas-feedback-form2.js +2 -2
  524. package/dist/components/nylas-form-card2.js +1 -1
  525. package/dist/components/nylas-if-state.js +1 -1
  526. package/dist/components/nylas-limit-future-bookings2.js +1 -1
  527. package/dist/components/nylas-limit-future-bookings2.js.map +1 -1
  528. package/dist/components/nylas-list-configurations2.js +2 -2
  529. package/dist/components/nylas-list-configurations2.js.map +1 -1
  530. package/dist/components/nylas-locale-switch2.js +2 -2
  531. package/dist/components/nylas-locale-switch2.js.map +1 -1
  532. package/dist/components/nylas-login.js +1 -1
  533. package/dist/components/nylas-logo2.js +1 -1
  534. package/dist/components/nylas-min-booking-notice2.js +3 -3
  535. package/dist/components/nylas-min-booking-notice2.js.map +1 -1
  536. package/dist/components/nylas-min-cancellation-notice2.js +3 -3
  537. package/dist/components/nylas-min-cancellation-notice2.js.map +1 -1
  538. package/dist/components/nylas-notification2.js +1 -1
  539. package/dist/components/nylas-organizer-confirmation-card2.js +3 -3
  540. package/dist/components/nylas-organizer-confirmation-card2.js.map +1 -1
  541. package/dist/components/nylas-page-name2.js +3 -3
  542. package/dist/components/nylas-page-name2.js.map +1 -1
  543. package/dist/components/nylas-page-styling2.js +3 -3
  544. package/dist/components/nylas-page-styling2.js.map +1 -1
  545. package/dist/components/nylas-participant-booking-calendars2.js +6 -2
  546. package/dist/components/nylas-participant-booking-calendars2.js.map +1 -1
  547. package/dist/components/nylas-participants-custom-availability2.js +3 -2
  548. package/dist/components/nylas-participants-custom-availability2.js.map +1 -1
  549. package/dist/components/nylas-provider.js +1 -1
  550. package/dist/components/nylas-reminder-emails.js +1 -302
  551. package/dist/components/nylas-reminder-emails.js.map +1 -1
  552. package/dist/{esm/nylas-reminder-emails.entry.js → components/nylas-reminder-emails2.js} +123 -21
  553. package/dist/components/nylas-reminder-emails2.js.map +1 -0
  554. package/dist/components/nylas-reminder-time2.js +2 -2
  555. package/dist/components/nylas-scheduler-editor.js +179 -161
  556. package/dist/components/nylas-scheduler-editor.js.map +1 -1
  557. package/dist/components/nylas-scheduling-method2.js +4 -6
  558. package/dist/components/nylas-scheduling-method2.js.map +1 -1
  559. package/dist/components/nylas-scheduling.js +22 -8
  560. package/dist/components/nylas-scheduling.js.map +1 -1
  561. package/dist/components/nylas-selected-event-card2.js +3 -3
  562. package/dist/components/nylas-selected-event-card2.js.map +1 -1
  563. package/dist/components/nylas-time-window-picker2.js +1 -1
  564. package/dist/components/nylas-timeslot-interval2.js +4 -8
  565. package/dist/components/nylas-timeslot-interval2.js.map +1 -1
  566. package/dist/components/nylas-timeslot-picker2.js +7 -7
  567. package/dist/components/nylas-timeslot-picker2.js.map +1 -1
  568. package/dist/components/paintbrush-fill.js +1 -1
  569. package/dist/components/paintbrush.js +1 -1
  570. package/dist/components/people.js +1 -1
  571. package/dist/components/person-clipboard.js +1 -1
  572. package/dist/components/person.js +1 -1
  573. package/dist/components/play-icon.js +1 -1
  574. package/dist/components/plus.js +1 -1
  575. package/dist/components/radio-button-group2.js +1 -1
  576. package/dist/components/refresh-icon.js +1 -1
  577. package/dist/components/reply-all-icon.js +1 -1
  578. package/dist/components/reply-icon.js +1 -1
  579. package/dist/components/scheduler-store.js +12 -3
  580. package/dist/components/scheduler-store.js.map +1 -1
  581. package/dist/components/search.js +1 -1
  582. package/dist/components/select-dropdown2.js +1 -1
  583. package/dist/components/sent-icon.js +1 -1
  584. package/dist/components/spam-icon.js +1 -1
  585. package/dist/components/star-icon.js +1 -1
  586. package/dist/components/stop-icon.js +1 -1
  587. package/dist/components/textarea-component2.js +1 -1
  588. package/dist/components/time-period-selector2.js +1 -1
  589. package/dist/components/toggle-switch2.js +1 -1
  590. package/dist/components/toolitp-component.js +1 -1
  591. package/dist/components/translate.js +1 -1
  592. package/dist/components/trash-fill-icon.js +1 -1
  593. package/dist/components/trash.js +1 -1
  594. package/dist/components/underline-icon.js +1 -1
  595. package/dist/components/warning.js +1 -1
  596. package/dist/components/zoom.js +1 -1
  597. package/dist/esm/add-circle-icon_2.entry.js +2 -2
  598. package/dist/esm/archive-icon.entry.js +1 -1
  599. package/dist/esm/arrow-icon.entry.js +1 -1
  600. package/dist/esm/bold-icon.entry.js +1 -1
  601. package/dist/esm/button-component_2.entry.js +2 -2
  602. package/dist/esm/{calendar-agenda-fill-icon_51.entry.js → calendar-agenda-fill-icon_54.entry.js} +735 -328
  603. package/dist/esm/calendar-agenda-fill-icon_54.entry.js.map +1 -0
  604. package/dist/esm/calendar-cancel-icon.entry.js +1 -1
  605. package/dist/esm/calendar-check-icon_2.entry.js +2 -2
  606. package/dist/esm/calendar-icon.entry.js +1 -1
  607. package/dist/esm/checkbox-component_2.entry.js +2 -2
  608. package/dist/esm/chevron-icon_3.entry.js +3 -3
  609. package/dist/esm/clock-icon_4.entry.js +4 -4
  610. package/dist/esm/{constants-94520f89.js → constants-c549b12b.js} +2 -2
  611. package/dist/esm/{constants-94520f89.js.map → constants-c549b12b.js.map} +1 -1
  612. package/dist/esm/copy-icon.entry.js +1 -1
  613. package/dist/esm/delete-icon.entry.js +1 -1
  614. package/dist/esm/document-refresh-icon.entry.js +1 -1
  615. package/dist/esm/folder-icon.entry.js +1 -1
  616. package/dist/esm/forward-icon.entry.js +1 -1
  617. package/dist/esm/globe-icon.entry.js +1 -1
  618. package/dist/esm/google-logo-icon_4.entry.js +35 -24
  619. package/dist/esm/google-logo-icon_4.entry.js.map +1 -1
  620. package/dist/esm/inbox-icon.entry.js +1 -1
  621. package/dist/esm/index-7cb0dd3d.js +2 -10
  622. package/dist/esm/info-icon_2.entry.js +2 -2
  623. package/dist/esm/input-color-picker.entry.js +2 -2
  624. package/dist/esm/input-component.entry.js +1 -1
  625. package/dist/esm/input-dropdown.entry.js +1 -1
  626. package/dist/esm/italic-icon.entry.js +1 -1
  627. package/dist/esm/loader.js +1 -1
  628. package/dist/esm/multi-select-dropdown.entry.js +1 -1
  629. package/dist/esm/nylas-booked-event-card_12.entry.js +36 -35
  630. package/dist/esm/nylas-booked-event-card_12.entry.js.map +1 -1
  631. package/dist/esm/nylas-form-card.entry.js +1 -1
  632. package/dist/esm/nylas-if-state.entry.js +1 -1
  633. package/dist/esm/nylas-login.entry.js +1 -1
  634. package/dist/esm/nylas-provider.entry.js +2 -2
  635. package/dist/esm/nylas-scheduler-editor.entry.js +1 -1
  636. package/dist/esm/nylas-scheduling.entry.js +23 -10
  637. package/dist/esm/nylas-scheduling.entry.js.map +1 -1
  638. package/dist/esm/nylas-time-window-picker.entry.js +1 -1
  639. package/dist/esm/nylas-web-elements.js +1 -1
  640. package/dist/esm/person-icon.entry.js +1 -1
  641. package/dist/esm/play-icon.entry.js +1 -1
  642. package/dist/esm/refresh-icon.entry.js +1 -1
  643. package/dist/esm/reply-all-icon.entry.js +1 -1
  644. package/dist/esm/reply-icon.entry.js +1 -1
  645. package/dist/esm/{scheduler-store-24e5fb65.js → scheduler-store-d4784b24.js} +13 -4
  646. package/dist/esm/scheduler-store-d4784b24.js.map +1 -0
  647. package/dist/esm/sent-icon.entry.js +1 -1
  648. package/dist/esm/spam-icon.entry.js +1 -1
  649. package/dist/esm/star-icon.entry.js +1 -1
  650. package/dist/esm/stop-icon.entry.js +1 -1
  651. package/dist/esm/textarea-component.entry.js +1 -1
  652. package/dist/esm/time-period-selector.entry.js +1 -1
  653. package/dist/esm/translate-icon.entry.js +1 -1
  654. package/dist/esm/trash-fill-icon.entry.js +1 -1
  655. package/dist/esm/underline-icon.entry.js +1 -1
  656. package/dist/esm/warning-icon.entry.js +1 -1
  657. package/dist/nylas-web-elements/nylas-web-elements.esm.js +1 -1
  658. package/dist/nylas-web-elements/nylas-web-elements.esm.js.map +1 -1
  659. package/dist/nylas-web-elements/{p-14493c1f.entry.js → p-04d397d3.entry.js} +2 -2
  660. package/dist/nylas-web-elements/{p-b6e4de5b.js → p-08a590fe.js} +2 -2
  661. package/dist/nylas-web-elements/{p-7943a9f3.entry.js → p-108bd821.entry.js} +2 -2
  662. package/dist/nylas-web-elements/p-12d690b8.js +2 -0
  663. package/dist/nylas-web-elements/p-12d690b8.js.map +1 -0
  664. package/dist/nylas-web-elements/{p-d902a356.entry.js → p-1546bd61.entry.js} +2 -2
  665. package/dist/nylas-web-elements/{p-651232a3.entry.js → p-1c25b695.entry.js} +2 -2
  666. package/dist/nylas-web-elements/{p-caad44c4.entry.js → p-2c1432a2.entry.js} +2 -2
  667. package/dist/nylas-web-elements/{p-21fb688e.entry.js → p-2f91359b.entry.js} +2 -2
  668. package/dist/nylas-web-elements/{p-27074ad6.entry.js → p-3268077f.entry.js} +2 -2
  669. package/dist/nylas-web-elements/p-32bc7f60.entry.js +2 -0
  670. package/dist/nylas-web-elements/p-33800554.entry.js +2 -0
  671. package/dist/nylas-web-elements/p-3971e86b.entry.js +2 -0
  672. package/dist/nylas-web-elements/p-483f2fb4.entry.js +2 -0
  673. package/dist/nylas-web-elements/{p-8a082b24.entry.js → p-4e57a9ee.entry.js} +2 -2
  674. package/dist/nylas-web-elements/p-4fb91c8b.entry.js +2 -0
  675. package/dist/nylas-web-elements/{p-effd77ed.entry.js → p-525bd709.entry.js} +2 -2
  676. package/dist/nylas-web-elements/{p-7d5b3918.entry.js → p-56834b7a.entry.js} +2 -2
  677. package/dist/nylas-web-elements/{p-faeec15a.entry.js → p-5ed596d7.entry.js} +2 -2
  678. package/dist/nylas-web-elements/{p-6fa4597b.entry.js → p-6089d6fa.entry.js} +2 -2
  679. package/dist/nylas-web-elements/{p-39af67b7.entry.js → p-61ea19c2.entry.js} +2 -2
  680. package/dist/nylas-web-elements/p-713505c9.entry.js +2 -0
  681. package/dist/nylas-web-elements/{p-bd85bf92.entry.js → p-7140bca8.entry.js} +2 -2
  682. package/dist/nylas-web-elements/{p-3f2f3b85.entry.js → p-762ae706.entry.js} +2 -2
  683. package/dist/nylas-web-elements/p-7919d41d.entry.js +2 -0
  684. package/dist/nylas-web-elements/p-7a1d51ab.entry.js +2 -0
  685. package/dist/nylas-web-elements/p-7a1d51ab.entry.js.map +1 -0
  686. package/dist/nylas-web-elements/p-7bed0959.entry.js +2 -0
  687. package/dist/nylas-web-elements/p-7bed0959.entry.js.map +1 -0
  688. package/dist/nylas-web-elements/{p-27b52475.entry.js → p-7c20444b.entry.js} +2 -2
  689. package/dist/nylas-web-elements/{p-d55f619c.entry.js → p-988eee6f.entry.js} +2 -2
  690. package/dist/nylas-web-elements/{p-0519e48e.entry.js → p-9d8ffc7b.entry.js} +2 -2
  691. package/dist/nylas-web-elements/{p-fbddb6fe.entry.js → p-9f009793.entry.js} +2 -2
  692. package/dist/nylas-web-elements/{p-1e2ffdc6.entry.js → p-aa4b24ce.entry.js} +2 -2
  693. package/dist/nylas-web-elements/{p-5973b208.entry.js → p-ac8386d1.entry.js} +2 -2
  694. package/dist/nylas-web-elements/{p-062f6da2.entry.js → p-acfe4f6e.entry.js} +2 -2
  695. package/dist/nylas-web-elements/p-af2ab331.entry.js +2 -0
  696. package/dist/nylas-web-elements/{p-100c9ff7.entry.js → p-b110d5c1.entry.js} +2 -2
  697. package/dist/nylas-web-elements/p-bbf86b8c.entry.js +2 -0
  698. package/dist/nylas-web-elements/{p-e012eac3.entry.js → p-be938025.entry.js} +2 -2
  699. package/dist/nylas-web-elements/{p-36792b8a.entry.js → p-cad17478.entry.js} +2 -2
  700. package/dist/nylas-web-elements/p-ce2c8e67.entry.js +2 -0
  701. package/dist/nylas-web-elements/{p-68320c97.entry.js → p-d1abdef7.entry.js} +2 -2
  702. package/dist/nylas-web-elements/{p-8013d0a2.entry.js → p-dcdb47dd.entry.js} +2 -2
  703. package/dist/nylas-web-elements/p-df131a08.entry.js +8 -0
  704. package/dist/nylas-web-elements/p-df131a08.entry.js.map +1 -0
  705. package/dist/nylas-web-elements/{p-cc8f94f7.entry.js → p-e1cd1887.entry.js} +2 -2
  706. package/dist/nylas-web-elements/{p-00d89615.entry.js → p-eb2d8167.entry.js} +2 -2
  707. package/dist/nylas-web-elements/{p-9b62edf6.entry.js → p-ec302526.entry.js} +2 -2
  708. package/dist/nylas-web-elements/{p-bbcf8659.entry.js → p-ec528a20.entry.js} +2 -2
  709. package/dist/nylas-web-elements/{p-0e0c00cc.entry.js → p-eee29c7e.entry.js} +2 -2
  710. package/dist/nylas-web-elements/{p-f62df769.entry.js → p-f2ae34c9.entry.js} +2 -2
  711. package/dist/nylas-web-elements/p-fc6ae4ec.entry.js +2 -0
  712. package/dist/nylas-web-elements/p-fc6ae4ec.entry.js.map +1 -0
  713. package/dist/nylas-web-elements/p-fe34d0ee.entry.js +2 -0
  714. package/dist/nylas-web-elements/p-febf4adf.entry.js +2 -0
  715. package/dist/types/common/types.d.ts +3 -0
  716. package/dist/types/components/design-system/input-image-url/input-image-url.d.ts +4 -0
  717. package/dist/types/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.d.ts +2 -2
  718. package/dist/types/components/scheduler/nylas-booking-form/nylas-booking-form.d.ts +3 -4
  719. package/dist/types/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.d.ts +1 -1
  720. package/dist/types/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.d.ts +1 -1
  721. package/dist/types/components/scheduler/nylas-confirmed-event-card/nylas-confirmed-event-card.d.ts +1 -1
  722. package/dist/types/components/scheduler/nylas-date-picker/nylas-date-picker.d.ts +1 -1
  723. package/dist/types/components/scheduler/nylas-organizer-confirmation-card/nylas-organizer-confirmation-card.d.ts +1 -1
  724. package/dist/types/components/scheduler/nylas-scheduling/nylas-scheduling.d.ts +5 -3
  725. package/dist/types/components/scheduler/nylas-timeslot-picker/nylas-timeslot-picker.d.ts +2 -2
  726. package/dist/types/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.d.ts +3 -3
  727. package/dist/types/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.d.ts +1 -1
  728. package/dist/types/components/scheduler-editor/nylas-calendar-picker/nylas-calendar-picker.d.ts +2 -2
  729. package/dist/types/components/scheduler-editor/nylas-confirmation-email/nylas-confirmation-email.d.ts +5 -1
  730. package/dist/types/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.d.ts +2 -1
  731. package/dist/types/components/scheduler-editor/nylas-event-location/nylas-event-location.d.ts +2 -0
  732. package/dist/types/components/scheduler-editor/nylas-min-booking-notice/nylas-min-booking-notice.d.ts +1 -1
  733. package/dist/types/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.d.ts +1 -1
  734. package/dist/types/components/scheduler-editor/nylas-page-name/nylas-page-name.d.ts +1 -1
  735. package/dist/types/components/scheduler-editor/nylas-page-styling/nylas-page-styling.d.ts +1 -1
  736. package/dist/types/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.d.ts +1 -0
  737. package/dist/types/components/scheduler-editor/nylas-scheduling-method/nylas-scheduling-method.d.ts +1 -1
  738. package/dist/types/components/scheduler-editor/nylas-timeslot-interval/nylas-timeslot-interval.d.ts +0 -2
  739. package/dist/types/components.d.ts +265 -290
  740. package/dist/types/connector/shared/api/scheduler.d.ts +4 -4
  741. package/dist/types/types/index.d.ts +164 -32
  742. package/package.json +7 -5
  743. package/dist/cjs/calendar-agenda-fill-icon_51.cjs.entry.js.map +0 -1
  744. package/dist/cjs/nylas-reminder-emails.cjs.entry.js +0 -208
  745. package/dist/cjs/nylas-reminder-emails.cjs.entry.js.map +0 -1
  746. package/dist/cjs/nylas-reminder-time_2.cjs.entry.js +0 -175
  747. package/dist/cjs/nylas-reminder-time_2.cjs.entry.js.map +0 -1
  748. package/dist/cjs/scheduler-store-4489a68b.js.map +0 -1
  749. package/dist/esm/calendar-agenda-fill-icon_51.entry.js.map +0 -1
  750. package/dist/esm/nylas-reminder-emails.entry.js.map +0 -1
  751. package/dist/esm/nylas-reminder-time_2.entry.js +0 -170
  752. package/dist/esm/nylas-reminder-time_2.entry.js.map +0 -1
  753. package/dist/esm/scheduler-store-24e5fb65.js.map +0 -1
  754. package/dist/nylas-web-elements/p-06e44cfc.entry.js +0 -2
  755. package/dist/nylas-web-elements/p-06e44cfc.entry.js.map +0 -1
  756. package/dist/nylas-web-elements/p-2653e311.entry.js +0 -2
  757. package/dist/nylas-web-elements/p-3ff76491.entry.js +0 -2
  758. package/dist/nylas-web-elements/p-3ff76491.entry.js.map +0 -1
  759. package/dist/nylas-web-elements/p-51a66bf5.entry.js +0 -2
  760. package/dist/nylas-web-elements/p-5b237299.entry.js +0 -2
  761. package/dist/nylas-web-elements/p-63341f71.entry.js +0 -2
  762. package/dist/nylas-web-elements/p-6c833d5e.entry.js +0 -2
  763. package/dist/nylas-web-elements/p-6c833d5e.entry.js.map +0 -1
  764. package/dist/nylas-web-elements/p-742d7c3c.entry.js +0 -2
  765. package/dist/nylas-web-elements/p-76fc639b.entry.js +0 -2
  766. package/dist/nylas-web-elements/p-781e954b.entry.js +0 -2
  767. package/dist/nylas-web-elements/p-7f56a139.entry.js +0 -2
  768. package/dist/nylas-web-elements/p-7f56a139.entry.js.map +0 -1
  769. package/dist/nylas-web-elements/p-86194780.entry.js +0 -2
  770. package/dist/nylas-web-elements/p-86194780.entry.js.map +0 -1
  771. package/dist/nylas-web-elements/p-96bcc255.entry.js +0 -2
  772. package/dist/nylas-web-elements/p-aeab587c.entry.js +0 -2
  773. package/dist/nylas-web-elements/p-c417fd2f.entry.js +0 -2
  774. package/dist/nylas-web-elements/p-ef3561ae.js +0 -2
  775. package/dist/nylas-web-elements/p-ef3561ae.js.map +0 -1
  776. package/dist/nylas-web-elements/p-fbe814b2.entry.js +0 -8
  777. package/dist/nylas-web-elements/p-fbe814b2.entry.js.map +0 -1
  778. package/dist/nylas-web-elements/p-fdc60ce2.entry.js +0 -2
  779. package/dist/nylas-web-elements/p-fecf68ef.entry.js +0 -2
  780. /package/dist/nylas-web-elements/{p-14493c1f.entry.js.map → p-04d397d3.entry.js.map} +0 -0
  781. /package/dist/nylas-web-elements/{p-b6e4de5b.js.map → p-08a590fe.js.map} +0 -0
  782. /package/dist/nylas-web-elements/{p-7943a9f3.entry.js.map → p-108bd821.entry.js.map} +0 -0
  783. /package/dist/nylas-web-elements/{p-d902a356.entry.js.map → p-1546bd61.entry.js.map} +0 -0
  784. /package/dist/nylas-web-elements/{p-651232a3.entry.js.map → p-1c25b695.entry.js.map} +0 -0
  785. /package/dist/nylas-web-elements/{p-caad44c4.entry.js.map → p-2c1432a2.entry.js.map} +0 -0
  786. /package/dist/nylas-web-elements/{p-21fb688e.entry.js.map → p-2f91359b.entry.js.map} +0 -0
  787. /package/dist/nylas-web-elements/{p-27074ad6.entry.js.map → p-3268077f.entry.js.map} +0 -0
  788. /package/dist/nylas-web-elements/{p-aeab587c.entry.js.map → p-32bc7f60.entry.js.map} +0 -0
  789. /package/dist/nylas-web-elements/{p-76fc639b.entry.js.map → p-33800554.entry.js.map} +0 -0
  790. /package/dist/nylas-web-elements/{p-781e954b.entry.js.map → p-3971e86b.entry.js.map} +0 -0
  791. /package/dist/nylas-web-elements/{p-63341f71.entry.js.map → p-483f2fb4.entry.js.map} +0 -0
  792. /package/dist/nylas-web-elements/{p-8a082b24.entry.js.map → p-4e57a9ee.entry.js.map} +0 -0
  793. /package/dist/nylas-web-elements/{p-5b237299.entry.js.map → p-4fb91c8b.entry.js.map} +0 -0
  794. /package/dist/nylas-web-elements/{p-effd77ed.entry.js.map → p-525bd709.entry.js.map} +0 -0
  795. /package/dist/nylas-web-elements/{p-7d5b3918.entry.js.map → p-56834b7a.entry.js.map} +0 -0
  796. /package/dist/nylas-web-elements/{p-faeec15a.entry.js.map → p-5ed596d7.entry.js.map} +0 -0
  797. /package/dist/nylas-web-elements/{p-6fa4597b.entry.js.map → p-6089d6fa.entry.js.map} +0 -0
  798. /package/dist/nylas-web-elements/{p-39af67b7.entry.js.map → p-61ea19c2.entry.js.map} +0 -0
  799. /package/dist/nylas-web-elements/{p-fdc60ce2.entry.js.map → p-713505c9.entry.js.map} +0 -0
  800. /package/dist/nylas-web-elements/{p-bd85bf92.entry.js.map → p-7140bca8.entry.js.map} +0 -0
  801. /package/dist/nylas-web-elements/{p-3f2f3b85.entry.js.map → p-762ae706.entry.js.map} +0 -0
  802. /package/dist/nylas-web-elements/{p-c417fd2f.entry.js.map → p-7919d41d.entry.js.map} +0 -0
  803. /package/dist/nylas-web-elements/{p-27b52475.entry.js.map → p-7c20444b.entry.js.map} +0 -0
  804. /package/dist/nylas-web-elements/{p-d55f619c.entry.js.map → p-988eee6f.entry.js.map} +0 -0
  805. /package/dist/nylas-web-elements/{p-0519e48e.entry.js.map → p-9d8ffc7b.entry.js.map} +0 -0
  806. /package/dist/nylas-web-elements/{p-fbddb6fe.entry.js.map → p-9f009793.entry.js.map} +0 -0
  807. /package/dist/nylas-web-elements/{p-1e2ffdc6.entry.js.map → p-aa4b24ce.entry.js.map} +0 -0
  808. /package/dist/nylas-web-elements/{p-5973b208.entry.js.map → p-ac8386d1.entry.js.map} +0 -0
  809. /package/dist/nylas-web-elements/{p-062f6da2.entry.js.map → p-acfe4f6e.entry.js.map} +0 -0
  810. /package/dist/nylas-web-elements/{p-742d7c3c.entry.js.map → p-af2ab331.entry.js.map} +0 -0
  811. /package/dist/nylas-web-elements/{p-100c9ff7.entry.js.map → p-b110d5c1.entry.js.map} +0 -0
  812. /package/dist/nylas-web-elements/{p-fecf68ef.entry.js.map → p-bbf86b8c.entry.js.map} +0 -0
  813. /package/dist/nylas-web-elements/{p-e012eac3.entry.js.map → p-be938025.entry.js.map} +0 -0
  814. /package/dist/nylas-web-elements/{p-36792b8a.entry.js.map → p-cad17478.entry.js.map} +0 -0
  815. /package/dist/nylas-web-elements/{p-2653e311.entry.js.map → p-ce2c8e67.entry.js.map} +0 -0
  816. /package/dist/nylas-web-elements/{p-68320c97.entry.js.map → p-d1abdef7.entry.js.map} +0 -0
  817. /package/dist/nylas-web-elements/{p-8013d0a2.entry.js.map → p-dcdb47dd.entry.js.map} +0 -0
  818. /package/dist/nylas-web-elements/{p-cc8f94f7.entry.js.map → p-e1cd1887.entry.js.map} +0 -0
  819. /package/dist/nylas-web-elements/{p-00d89615.entry.js.map → p-eb2d8167.entry.js.map} +0 -0
  820. /package/dist/nylas-web-elements/{p-9b62edf6.entry.js.map → p-ec302526.entry.js.map} +0 -0
  821. /package/dist/nylas-web-elements/{p-bbcf8659.entry.js.map → p-ec528a20.entry.js.map} +0 -0
  822. /package/dist/nylas-web-elements/{p-0e0c00cc.entry.js.map → p-eee29c7e.entry.js.map} +0 -0
  823. /package/dist/nylas-web-elements/{p-f62df769.entry.js.map → p-f2ae34c9.entry.js.map} +0 -0
  824. /package/dist/nylas-web-elements/{p-96bcc255.entry.js.map → p-fe34d0ee.entry.js.map} +0 -0
  825. /package/dist/nylas-web-elements/{p-51a66bf5.entry.js.map → p-febf4adf.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"nylas-editor-tabs.js","sourceRoot":"","sources":["../../../../src/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.tsx"],"names":[],"mappings":"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","sourcesContent":["import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug, mergeDeep, parsePreviewLink } from '@/utils/utils';\nimport {\n AdditionalFields,\n Appearance,\n AvailabilityMethod,\n BookingType,\n Calendar,\n Conference,\n Configuration,\n EmailTemplate,\n EventReminder,\n OpenHours,\n Participant,\n} from '@nylas/core';\nimport { Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport TabContents, { Tab } from './tab-contents';\nimport { User } from '@/common/nylas-api-request';\nimport { DEFAULT_OPEN_HOURS } from '@/common/constants';\nimport { DataResponseReturnType } from '@/common/types';\nimport * as Sentry from '@sentry/browser';\n\ntype SchedulerEventDetail = {\n config: Partial<Configuration>;\n action: 'create' | 'edit';\n resetLoadingState?: (e: CustomEvent) => void;\n setError?: (error: Error) => void;\n};\n\n/**\n * The nylas-editor-tabs component provides the user interface for managing editor tabs within the scheduler editor.\n * It is primarily used to control the edit mode of the scheduler editor, and it is rendered automatically by the\n * parent component, nylas-scheduler-editor, during editing. There is no need to interact with this component directly\n * or set any props manually, as its behavior is fully managed by the parent component.\n *\n * @part nap__title - [nylas-additional-participants] The title of the component.\n * @part nap__subtitle - [nylas-additional-participants] The subtitle of the component.\n * @part nap__content - [nylas-additional-participants] The content of the component.\n * @part nap__input - [nylas-additional-participants] The input of the component.\n * @part nap__remove-participant - [nylas-additional-participants] The remove participant button of the component.\n * @part nap__add-participant - [nylas-additional-participants] The add participant button of the component.\n * @part nap__header - [nylas-availability-picker] The header of the availability picker\n * @part nap__select-timezone - [nylas-availability-picker] The timezone selection container\n * @part nap__select-timezone-button -[nylas-availability-picker] The timezone selection button\n * @part nap__select-timezone-dropdown-content -[nylas-availability-picker] The timezone selection dropdown content\n * @part nap__availability - [nylas-availability-picker] The availability container\n * @part nap__day - [nylas-availability-picker] The day container\n * @part nap__time-ranges - [nylas-availability-picker] The time ranges container\n * @part nap__time-range - [nylas-availability-picker] The time range container\n * @part nap__add-time-range - [nylas-availability-picker] The add time range button\n * @part nap__time-picker-container -[nylas-availability-picker] The time picker container\n * @part nap__time-picker-input - [nylas-availability-picker] The time picker input\n * @part nap__time-picker-times - [nylas-availability-picker] The time picker times\n * @part nbcp - [nylas-booking-calendar-picker] The booking calendar picker container\n * @part nbcp__header - [nylas-booking-calendar-picker] The header of the booking calendar picker\n * @part nbcp__input-label - [nylas-booking-calendar-picker] The input label of the booking calendar picker\n * @part nbcp__dropdown - [nylas-booking-calendar-picker] The dropdown container\n * @part nbcp__dropdown-button - [nylas-booking-calendar-picker] The dropdown button\n * @part nbcp__dropdown-content - [nylas-booking-calendar-picker] The dropdown content\n * @part nbt - [nylas-buffer-time] The buffer time container\n * @part nbt__header - [nylas-buffer-time] The header of the buffer time\n * @part nbt__body - [nylas-buffer-time] The body of the buffer time\n * @part nbt__dropdown-before - [nylas-buffer-time] The before buffer dropdown container\n * @part nbt__dropdown-button-before - [nylas-buffer-time] The before buffer dropdown button\n * @part nbt__dropdown-content-before - [nylas-buffer-time] The before buffer dropdown content\n * @part nbt__dropdown-after - [nylas-buffer-time] The after buffer dropdown container\n * @part nbt__dropdown-button-after - [nylas-buffer-time] The after buffer dropdown button\n * @part nbt__dropdown-content-after - [nylas-buffer-time] The after buffer dropdown content\n * @part nbt__preview - [nylas-buffer-time] The buffer time preview\n * @part ncp - [nylas-calendar-picker] The calendar picker container\n * @part ncp__header - [nylas-calendar-picker] The header of the calendar picker\n * @part ncp__dropdown - [nylas-calendar-picker] The dropdown container\n * @part ncp__dropdown-button - [nylas-calendar-picker] The dropdown button\n * @part ncp__dropdown-content - [nylas-calendar-picker] The dropdown content\n * @part ncbf - [nylas-custom-booking-flow] The custom booking flow container\n * @part ncbf__header - [nylas-custom-booking-flow] The header of the custom booking flow\n * @part ncbf__dropdown - [nylas-custom-booking-flow] The dropdown container\n * @part ncbf__dropdown-button - [nylas-custom-booking-flow] The dropdown button\n * @part ncbf__dropdown-content - [nylas-custom-booking-flow] The dropdown content\n * @part nedesc - [nylas-event-description] The event description container\n * @part nedesc__textarea - [nylas-event-description] The event description textarea\n * @part ned - [nylas-event-duration] The event duration container\n * @part ned__dropdown - [nylas-event-duration] The dropdown container for the duration increment\n * @part ned__dropdown-button - [nylas-event-duration] The dropdown button for the duration increment\n * @part ned__dropdown-content - [nylas-event-duration] The dropdown content for the duration increment\n * @part ned__input_dropdown - [nylas-event-duration] The input dropdown container for the duration minutes\n * @part ned__input_dropdown-input - [nylas-event-duration] The input for the duration minutes\n * @part ned__input_dropdown-content - [nylas-event-duration] The dropdown content for the input duration minutes\n * @part net - [nylas-event-title] The event title container\n * @part net__title - [nylas-event-title] The event title input\n * @part net__dropdown-content - [nylas-event-title] The token options container\n * @part nlfb - [nylas-limit-future-bookings] The limit future bookings container\n * @part nlfb__number-dropdown - [nylas-limit-future-bookings] The number dropdown container\n * @part nlfb__number-dropdown-button - [nylas-limit-future-bookings] The number dropdown button\n * @part nlfb__number-dropdown-content - [nylas-limit-future-bookings] The number dropdown content\n * @part nlfb__period-dropdown - [nylas-limit-future-bookings] The period dropdown container\n * @part nlfb__period-dropdown-button - [nylas-limit-future-bookings] The period dropdown button\n * @part nlfb__period-dropdown-content - [nylas-limit-future-bookings] The period dropdown content\n * @part nel - [nylas-event-location] The event location container\n * @part nel__location - [nylas-event-location] The event location input\n * @part nel__dropdown - [nylas-event-location] The dropdown container\n * @part nel__dropdown-button - [nylas-event-location] The dropdown button\n * @part nel__dropdown-content - [nylas-event-location] The dropdown content\n * @part nmbn - [nylas-min-booking-notice] The minimum booking notice container\n * @part nmbn__number-dropdown - [nylas-min-booking-notice] The number dropdown container\n * @part nmbn__number-dropdown-button - [nylas-min-booking-notice] The number dropdown button\n * @part nmbn__number-dropdown-content -[nylas-min-booking-notice] The number dropdown content\n * @part nmbn__period-dropdown - [nylas-min-booking-notice] The period dropdown container\n * @part nmbn__period-dropdown-button - [nylas-min-booking-notice] The period dropdown button\n * @part nmbn__period-dropdown-content - [nylas-min-booking-notice] The period dropdown content\n * @part nmcn - [nylas-min-cancellation-notice] The minimum cancellation notice container\n * @part nmcn__number-dropdown - [nylas-min-cancellation-notice] The number dropdown container\n * @part nmcn__number-dropdown-button - [nylas-min-cancellation-notice] The number dropdown button\n * @part nmcn__number-dropdown-content - [nylas-min-cancellation-notice] The number dropdown content\n * @part nmcn__period-dropdown - [nylas-min-cancellation-notice] The period dropdown container\n * @part nmcn__period-dropdown-button - [nylas-min-cancellation-notice] The period dropdown button\n * @part nmcn__period-dropdown-content - [nylas-min-cancellation-notice] The period dropdown content\n * @part ncpolicy - [nylas-cancellation-policy] The cancellation policy container\n * @part ncpolicy__textarea - [nylas-cancellation-policy] The cancellation policy textarea\n * @part nti - [nylas-timeslot-interval] The timeslot interval container\n * @part nti__header - [nylas-timeslot-interval] The header of the timeslot interval picker\n * @part nti__input-label - [nylas-timeslot-interval] The input label of the timeslot interval picker\n * @part nti__dropdown - [nylas-timeslot-interval] The dropdown container\n * @part nti__dropdown-button - [nylas-timeslot-interval] The dropdown button\n * @part nti__dropdown-content - [nylas-timeslot-interval] The dropdown content\n * @part npca - [nylas-participants-custom-availability] The participants custom availability container\n * @part npca__header - [nylas-participants-custom-availability] The header of the participants custom availability\n * @part npca__content - [nylas-participants-custom-availability] The content of the participants custom availability\n * @part npca__participant-container - [nylas-participants-custom-availability] The participant container\n * @part npca__participant-title - [nylas-participants-custom-availability] The participant title\n * @part npca__participant-toggle--container - [nylas-participants-custom-availability] The participant toggle container\n * @part npca__toggle-label - [nylas-participants-custom-availability] The toggle label\n * @part npca__toggle-input - [nylas-participants-custom-availability] The toggle input\n * @part npca__toggle-slider - [nylas-participants-custom-availability] The toggle slider\n * @part ncbs - [nylas-customize-booking-settings] The booking calendar picker container\n * @part ncbs__header - [nylas-customize-booking-settings] The header of the booking calendar picker\n * @part ncbs__settings - [nylas-customize-booking-settings] The settings container\n * @part ncbs__settings-div - [nylas-customize-booking-settings] The div inside the settings container that contains the checkbox and tooltip for each setting\n * @part ncbs__additional_guests - [nylas-customize-booking-settings] The additional guests setting\n * @part ncbs__cancellation_options - [nylas-customize-booking-settings] The cancellation options setting\n * @part ncbs__rescheduling_options - [nylas-customize-booking-settings] The rescheduling options setting\n * @part nsm - [nylas-scheduling-method] The booking calendar picker container\n * @part nsm__header - [nylas-scheduling-method] The header of the booking calendar picker\n * @part nsm__input-label - [nylas-scheduling-method] The input label of the booking calendar picker\n * @part nsm__dropdown - [nylas-scheduling-method] The dropdown container\n * @part nsm__dropdown-button - [nylas-scheduling-method] The dropdown button\n * @part nsm__dropdown-content - [nylas-scheduling-method] The dropdown content\n * @part npn - The nylas-page-name container\n * @part npn__body - The body of the event communication section\n * @part npn__header - The header of the event communication section\n * @part npn__drawer-toggle--container - The card's drawer toggle container\n * @part npn__input-textfield - The page name textfield\n */\n@Component({\n tag: 'nylas-editor-tabs',\n styleUrl: 'nylas-editor-tabs.scss',\n scoped: true,\n})\nexport class NylasEditorTabs {\n /**\n * The form reference to access the form data.\n */\n private formRef!: HTMLFormElement;\n /**\n * The host element.\n */\n @Element() host!: HTMLNylasEditorTabsElement;\n /**\n * The list of calendars to use in the editor when configuring availability.\n */\n @Prop() calendars?: Calendar[];\n /**\n * The selected configuration to use in the editor when editing an existing configuration or creating a new one.\n */\n @Prop() selectedConfiguration?: Configuration;\n\n /**\n * The list of configurations\n */\n @Prop() configurations?: Configuration[];\n\n /**\n * The current logged in user.\n */\n @Prop() currentUser?: User;\n /**\n * The scheduler preview link to use when the user clicks on the preview button.\n * You can use a placeholder `{config.id}` to replace the configuration id anywhere in the link.\n */\n @Prop({ attribute: 'scheduler-preview-link' }) schedulerPreviewLink: string = '';\n /**\n * The mode of the editor.\n * - `app`: The editor is used as a standalone app.\n * - `composable`: The editor is used as a composable component.\n */\n @Prop() mode?: 'app' | 'composable' = 'app';\n /**\n * This prop is passed down by the parent component.\n * It is an optional prop is used to hide tabs in the editor. Available tabs are:\n * eventInfo, availability, participants, bookingOptions, bookingForm\n */\n @Prop() hideEditorTabs?: Tab[] = [];\n /**\n * This prop is passed down by the parent component to enable or disable user feedback.\n */\n @Prop() enableUserFeedback?: boolean = true;\n\n /**\n * The action to perform in the editor.\n * - `create`: Create a new configuration.\n * - `edit`: Edit an existing configuration.\n */\n @State() action: 'create' | 'edit' = 'create';\n /**\n * The state for showing the feedback modal.\n */\n @State() showFeedbackModal: boolean = false;\n /**\n * The active tab in the editor.\n */\n @State() activeTab: Tab = Tab.EventInfo;\n /**\n * The loading state of the editor.\n */\n @State() isLoading: boolean = false;\n /**\n * The unsaved changes state of the editor.\n */\n @State() hasUnsavedChanges: boolean = false;\n /**\n * The changes saved state of the editor.\n */\n @State() changesSaved: boolean = false;\n /**\n * The form state of the editor.\n */\n @State() formState: Partial<{\n title: string;\n description: string;\n duration: string;\n availability?: {\n timezone: string;\n openHours?: OpenHours[];\n };\n additionalFields?: Record<string, AdditionalFields>;\n calendarIds: string[];\n participantCalendars?: { [key: string]: string[] };\n participants?: Participant[];\n participantOpenHours?: { [key: string]: OpenHours[] };\n participantBookingCalendars?: { [key: string]: string };\n bookingCalendar?: string;\n location?: string;\n conferencing?: Conference;\n bookingType?: string;\n buffer?: { before: number; after: number };\n cancellationPolicy?: string;\n availableDaysInFuture?: number;\n minCancellationNotice?: number;\n minBookingNotice?: number;\n timeslotInterval?: {\n interval?: number;\n roundTo?: number;\n };\n additionalGuestsHidden?: boolean;\n hideCancellationOptions?: boolean;\n hideReschedulingOptions?: boolean;\n reminders?: EventReminder[];\n emailTemplate?: EmailTemplate;\n redirectUrl?: string;\n availabilityMethod?: AvailabilityMethod;\n slug: string;\n appearance: Appearance;\n name: string;\n }> = {};\n /**\n * The error state of the editor.\n */\n @State() error?: string = '';\n /**\n * Event emitted when the configuration is created/updated (after the request is complete). This fires for both create and edit actions.\n */\n @Event() schedulerConfigChanged!: EventEmitter<SchedulerEventDetail>;\n /**\n * Event emitted when the user clicks the cancel button.\n */\n @Event() cancelButtonClick!: EventEmitter<void>;\n /**\n * Event emitted on form submission.\n */\n @Event({ bubbles: true, cancelable: true }) formSubmitted!: EventEmitter<void>;\n /**\n * Event emitted when the user clicks the preview button.\n */\n @Event() previewButtonClicked!: EventEmitter<HTMLNylasEditorTabsElement>;\n /**\n *\n * Event emitted when the value of a form field changes.\n */\n @Event() schedulerEditorFormUpdated!: EventEmitter<{ value: string; name: string }>;\n\n @Watch('selectedConfiguration')\n configChangedHandler(newConfig: Configuration) {\n debug('[nylas-editor-tabs]', 'configChangedHandler', newConfig, this.selectedConfiguration);\n this.formState = {\n ...this.getFormStateFromConfig(newConfig),\n };\n if (newConfig?.id) {\n this.action = 'edit';\n } else {\n this.action = 'create';\n }\n }\n\n @Watch('currentUser')\n userChangedHandler(newUser: User) {\n // Actively watch for changes in the current user to update the form state.\n debug('[nylas-editor-tabs]', 'userChangedHandler', newUser);\n if (newUser) {\n this.formState = {\n ...this.getFormStateFromConfig(this.selectedConfiguration),\n };\n }\n }\n\n connectedCallback() {\n debug('[nylas-editor-tabs]', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('[nylas-editor-tabs]', 'componentWillLoad');\n this.formState = this.getFormStateFromConfig(this.selectedConfiguration);\n }\n\n componentDidLoad() {\n debug('[nylas-editor-tabs]', 'componentDidLoad');\n if (this.enableUserFeedback && !Sentry.isInitialized()) {\n Sentry.init({\n dsn: 'https://9d5731f1c77ca84c9ed3fb9b3ccf7ee1@o74852.ingest.us.sentry.io/4507889638178816',\n release: process.env.PACKAGE_VERSION,\n integrations: integrations => [\n ...integrations.filter(_integration => false), // Removes default integrations (including Breadcrumbs)\n Sentry.feedbackIntegration({\n colorScheme: 'system',\n autoInject: false,\n }),\n ],\n // Disable all other event capture\n autoSessionTracking: false, // Disable session tracking\n beforeSend: () => null, // Prevents error events from being sent\n });\n }\n if (this.selectedConfiguration?.id) {\n this.configChangedHandler(this.selectedConfiguration);\n }\n const firstVisibleTab = (this.host.querySelector('button.tab:not(.hide)') as HTMLButtonElement)?.name as Tab;\n\n if (firstVisibleTab) {\n this.activeTab = firstVisibleTab;\n }\n }\n\n disconnectedCallback() {\n debug('[nylas-editor-tabs]', 'disconnectedCallback');\n }\n\n @Listen('valueChanged')\n handleValueChanged(event: CustomEvent) {\n debug('[nylas-editor-tabs]', 'handleValueChanged', event);\n const { name, value } = event.detail;\n this.setFormState(value, name);\n this.formState = { ...this.formState };\n this.hasUnsavedChanges = true;\n this.error = '';\n this.schedulerEditorFormUpdated.emit({\n value: event.detail.value,\n name: event.detail.name,\n });\n }\n\n @Listen('feedbackModalClosed')\n feedbackModalClosedHandler() {\n this.showFeedbackModal = false;\n }\n\n @Listen('feedbackSubmitted')\n feedbackSubmittedHandler(event: CustomEvent<{ feedback: string }>) {\n const eventId = Sentry.captureMessage('Scheduler Editor User Feedback');\n const feedback = {\n eventId: eventId,\n message: event.detail.feedback,\n };\n\n Sentry.captureFeedback(feedback, {\n includeReplay: true,\n captureContext: {\n tags: {\n 'nylas-web-element': 'nylas-scheduler-editor',\n 'nylas-web-element-version': process.env.PACKAGE_VERSION,\n },\n extra: {\n configId: this.selectedConfiguration?.id,\n slug: this.selectedConfiguration?.slug,\n },\n },\n });\n this.showFeedbackModal = false;\n }\n\n getFormStateFromConfig(config?: Configuration) {\n let organizerParticipant = config?.participants?.find(p => p.is_organizer);\n // If the config is round robin, there is no organizer set in the config, in that case flag the current user as the organizer.\n if (!organizerParticipant && config?.availability?.availability_rules?.availability_method !== 'collective') {\n organizerParticipant = config?.participants?.find(p => p.email === this.currentUser?.email);\n if (organizerParticipant) {\n organizerParticipant.is_organizer = true;\n }\n }\n if (config?.appearance) {\n console.info(\n 'Appearance settings have been returned from the given configuration; please remember to grab them from the configSettingsLoaded event and apply them as desired.',\n );\n }\n return {\n title: config?.event_booking?.title ?? '',\n description: config?.event_booking?.description ?? '',\n duration: config?.availability?.duration_minutes?.toString() ?? '30',\n availability: {\n timezone: config?.event_booking?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n openHours: config?.availability?.availability_rules?.default_open_hours ?? DEFAULT_OPEN_HOURS,\n },\n additionalFields: config?.scheduler?.additional_fields ?? {},\n conferencing: config?.event_booking?.conferencing ?? {},\n calendarIds: organizerParticipant?.availability?.calendar_ids ?? [],\n participants: config?.participants ?? [],\n bookingCalendar: organizerParticipant?.booking?.calendar_id ?? organizerParticipant?.email ?? '',\n location: config?.event_booking?.location ?? '',\n bookingType: config?.event_booking?.booking_type ?? 'booking',\n buffer: config?.availability?.availability_rules?.buffer ?? { before: 0, after: 0 },\n cancellationPolicy: config?.scheduler?.cancellation_policy ?? '',\n availableDaysInFuture: config?.scheduler?.available_days_in_future ?? 30,\n minCancellationNotice: config?.scheduler?.min_cancellation_notice ?? 0,\n minBookingNotice: config?.scheduler?.min_booking_notice ?? 60,\n timeslotInterval: {\n interval: config?.availability?.interval_minutes ?? config?.availability?.duration_minutes,\n roundTo: config?.availability?.round_to,\n },\n additionalGuestsHidden: config?.scheduler?.hide_additional_guests ?? false,\n hideCancellationOptions: config?.scheduler?.hide_cancellation_options ?? false,\n hideReschedulingOptions: config?.scheduler?.hide_rescheduling_options ?? false,\n participantBookingCalendars:\n config?.participants?.reduce((acc, p) => {\n if (p.booking?.calendar_id) {\n acc[p.email] = p.booking?.calendar_id;\n }\n return acc;\n }) ?? {},\n participantCalendars:\n config?.participants?.reduce((acc, p) => {\n acc[p.email] = p.availability?.calendar_ids;\n return acc;\n }, {}) ?? {},\n reminders: config?.event_booking?.reminders,\n emailTemplate: config?.scheduler?.email_template,\n redirectUrl: config?.scheduler?.confirmation_redirect_url,\n slug: config?.slug,\n appearance: config?.appearance,\n name: config?.name,\n };\n }\n\n setFormState(value, key) {\n switch (key) {\n case 'title':\n this.formState.title = value.toString();\n break;\n case 'description':\n this.formState.description = value.toString();\n break;\n case 'duration':\n this.formState.duration = value.toString();\n break;\n case 'availability':\n this.formState.availability = JSON.parse(value.toString());\n break;\n case 'participants':\n this.formState.participants = JSON.parse(value.toString());\n break;\n case 'booking-calendar':\n this.formState.bookingCalendar = value.toString();\n break;\n case 'participant-booking-calendars':\n this.formState.participantBookingCalendars = JSON.parse(value.toString());\n break;\n case 'location':\n this.formState.location = value.toString();\n break;\n case 'conference':\n this.formState.conferencing = JSON.parse(value.toString());\n break;\n case 'confirmation-type':\n this.formState.bookingType = value.toString();\n break;\n case 'buffer-time':\n this.formState.buffer = JSON.parse(value.toString());\n break;\n case 'limit-future-bookings':\n this.formState.availableDaysInFuture = parseInt(value.toString());\n break;\n case 'min-cancellation-notice':\n this.formState.minCancellationNotice = parseInt(value.toString());\n break;\n case 'min-booking-notice':\n this.formState.minBookingNotice = parseInt(value.toString());\n break;\n case 'cancellation-policy':\n this.formState.cancellationPolicy = value.toString();\n break;\n case 'timeslot-interval':\n this.formState.timeslotInterval = JSON.parse(value.toString());\n break;\n case 'customize-booking-settings':\n const settings = JSON.parse(value.toString());\n this.formState.additionalGuestsHidden = settings.additionalGuestsHidden;\n this.formState.hideCancellationOptions = settings.hideCancellationOptions;\n this.formState.hideReschedulingOptions = settings.hideReschedulingOptions;\n break;\n case 'participant-custom-availability':\n const participantOpenHours = JSON.parse(value.toString());\n this.formState.participantOpenHours = participantOpenHours;\n break;\n case 'additional-fields':\n this.formState.additionalFields = value;\n break;\n case 'connected-calendars':\n this.formState.participantCalendars = JSON.parse(value.toString());\n break;\n case 'confirmation-email-template':\n this.formState.emailTemplate = JSON.parse(value.toString());\n break;\n case 'reminder-overrides':\n this.formState.reminders = JSON.parse(value.toString());\n break;\n case 'confirmation-redirect':\n this.formState.redirectUrl = value.toString();\n break;\n case 'availability-method':\n this.formState.availabilityMethod = value.toString();\n break;\n case 'custom-event-slug':\n this.formState.slug = JSON.parse(value.toString());\n break;\n case 'page-styling':\n this.formState.appearance = JSON.parse(value.toString());\n break;\n case 'page-name':\n this.formState.name = JSON.parse(value.toString());\n break;\n }\n this.schedulerEditorFormUpdated.emit({\n value,\n name: key,\n });\n }\n\n updateFormState() {\n const formData = new FormData(this.formRef);\n formData.forEach((value, key) => {\n this.setFormState(value, key);\n });\n\n this.formState = { ...this.formState };\n return this.formState;\n }\n\n setActiveTab(e: Event, tabName: Tab) {\n e.preventDefault();\n this.updateFormState();\n this.activeTab = tabName;\n }\n\n setError = (error: Error) => {\n this.error = error.message;\n };\n\n formSubmissionHandler = async (event: Event) => {\n event.preventDefault();\n const formEvent = await this.formSubmitted.emit();\n debug('[nylas-editor-tabs]', 'formSubmissionHandler', formEvent);\n const valid = this.formRef.checkValidity();\n if (!valid || formEvent.defaultPrevented) {\n this.error = this.formRef.validationMessage || 'Please fix the form errors.';\n return;\n }\n this.isLoading = true;\n this.hasUnsavedChanges = false;\n const formState = this.updateFormState();\n const {\n title,\n description,\n duration,\n availability,\n bookingCalendar,\n location,\n bookingType,\n buffer,\n availableDaysInFuture,\n minCancellationNotice,\n minBookingNotice,\n cancellationPolicy,\n timeslotInterval,\n additionalGuestsHidden,\n hideCancellationOptions,\n hideReschedulingOptions,\n participants,\n participantOpenHours,\n additionalFields,\n participantCalendars,\n conferencing,\n participantBookingCalendars,\n reminders,\n emailTemplate,\n redirectUrl,\n availabilityMethod,\n slug,\n appearance,\n name,\n } = formState;\n const organizer = this.selectedConfiguration?.participants?.find(p => p.is_organizer) || participants?.find(p => p.is_organizer);\n const organizerCalendars = participantCalendars && organizer?.email ? participantCalendars[organizer?.email] : [];\n const organizerBookingCalendar = organizer?.booking?.calendar_id || bookingCalendar;\n const durationMinutes = duration ? parseInt(duration) : 30;\n\n const participantsList =\n participants && participants?.length > 0\n ? participants\n : [\n {\n name: organizer?.name ?? this.currentUser?.name ?? '',\n email: organizer?.email ?? this.currentUser?.email ?? '',\n is_organizer: true,\n timezone: availability?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n availability: {\n calendar_ids: organizerCalendars.length ? organizerCalendars : ['primary'],\n open_hours: [],\n },\n booking: {\n calendar_id: bookingCalendar && bookingCalendar !== '' ? bookingCalendar : 'primary',\n },\n },\n ];\n\n const configObject: Partial<Configuration> = {\n ...(this.selectedConfiguration?.id && { id: this.selectedConfiguration.id }),\n version: this.selectedConfiguration?.version ?? '1.0.0',\n slug: slug,\n name: name,\n availability: {\n duration_minutes: durationMinutes,\n interval_minutes: timeslotInterval?.interval ?? durationMinutes,\n round_to: timeslotInterval?.roundTo,\n availability_rules: {\n availability_method: availabilityMethod ? availabilityMethod : this.selectedConfiguration?.availability?.availability_rules?.availability_method ?? 'collective',\n buffer: buffer || { before: 0, after: 0 },\n default_open_hours: availability?.openHours ?? this.selectedConfiguration?.availability?.availability_rules?.default_open_hours ?? DEFAULT_OPEN_HOURS,\n round_robin_group_id: this.selectedConfiguration?.availability?.availability_rules?.round_robin_group_id ?? '',\n },\n },\n participants: [\n ...participantsList?.map(p => {\n if (p.is_organizer) {\n return {\n name: p.name ?? '',\n email: p.email,\n is_organizer: true,\n timezone: participantOpenHours?.[p.email]?.[0]?.timezone ?? p.availability?.open_hours?.[0]?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n availability: {\n calendar_ids: participantCalendars?.[p.email] ? participantCalendars?.[p.email] : organizerCalendars?.length ? organizerCalendars : ['primary'],\n open_hours: participantOpenHours?.[p.email] ?? p.availability?.open_hours ?? [],\n },\n booking: {\n calendar_id: participantBookingCalendars?.[p.email] ? participantBookingCalendars?.[p.email] : organizerBookingCalendar ? organizerBookingCalendar : 'primary',\n },\n };\n }\n return {\n ...p,\n timezone: participantOpenHours?.[p.email]?.[0]?.timezone ?? p.availability?.open_hours?.[0]?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n availability: p.availability\n ? {\n calendar_ids: participantCalendars?.[p.email] ?? p.availability?.calendar_ids ?? ['primary'],\n open_hours: participantOpenHours?.[p.email] ?? p.availability?.open_hours ?? [],\n }\n : undefined,\n booking: participantBookingCalendars?.[p.email] ? { calendar_id: participantBookingCalendars?.[p.email] } : p?.booking ?? undefined,\n };\n }),\n ],\n event_booking: {\n title: title?.toString() ?? '',\n description: description?.toString() ?? '',\n location: location?.toString() ?? '',\n booking_type: (bookingType?.toString() as BookingType) ?? 'booking',\n timezone: availability?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n conferencing: conferencing,\n reminders: reminders,\n },\n scheduler: {\n cancellation_policy: cancellationPolicy ?? '',\n available_days_in_future: availableDaysInFuture ?? 30,\n min_cancellation_notice: minCancellationNotice ?? 0,\n min_booking_notice: minBookingNotice ?? 60,\n hide_additional_guests: additionalGuestsHidden ?? false,\n hide_cancellation_options: hideCancellationOptions ?? false,\n hide_rescheduling_options: hideReschedulingOptions ?? false,\n additional_fields: additionalFields,\n email_template: emailTemplate,\n confirmation_redirect_url: redirectUrl,\n },\n appearance: appearance,\n };\n\n const configObjectWithDeveloperSettings = mergeDeep(configObject, this.selectedConfiguration || {});\n\n const finalConfig = this.action === 'create' ? configObjectWithDeveloperSettings : configObject;\n\n if (this.isConfigRoundRobin(finalConfig)) {\n // If the config is round robin, no participant should be flagged as the organizer\n finalConfig.participants = finalConfig.participants.map(p => ({ ...p, is_organizer: undefined }));\n }\n const resetLoadingState = (_e: CustomEvent) => {\n this.isLoading = false;\n this.changesSaved = true;\n setTimeout(() => {\n this.changesSaved = false;\n }, 5000);\n };\n\n // Check for client side errors using the selected config from the list configs (stored in API)\n const currentConfig = this.configurations?.find(c => c.id === this.selectedConfiguration?.id) || {};\n const hasError = this.checkForClientSideErrors(mergeDeep(finalConfig, currentConfig));\n\n if (hasError) {\n return;\n }\n this.schedulerConfigChanged.emit({ config: finalConfig, resetLoadingState, setError: this.setError, action: this.action });\n };\n\n isConfigRoundRobin = (config: Configuration) => {\n return config.availability?.availability_rules?.availability_method === 'max-availability' || config.availability?.availability_rules?.availability_method === 'max-fairness';\n };\n\n checkForClientSideErrors = config => {\n // Check additional Fields in config\n let hasError = false;\n let errorMessage = '';\n const additionalFields = config.scheduler?.additional_fields;\n const isOrganizerConfirmationType = config.event_booking?.booking_type === 'organizer-confirmation';\n const organizerConfirmationUrl = config.scheduler?.organizer_confirmation_url;\n if (additionalFields) {\n errorMessage = 'Booking form error: ';\n Object.entries(additionalFields).forEach(entry => {\n const field = entry[1] as AdditionalFields;\n if (field.label === '') {\n errorMessage += `Label is required for field of type ${field.type}.`;\n hasError = true;\n return;\n }\n if (field.options) {\n for (const option of field.options) {\n if (option === '') {\n errorMessage += `Empty option detected inside ${field.label} of type ${field.type}.`;\n hasError = true;\n break;\n }\n }\n }\n });\n }\n if (isOrganizerConfirmationType && !organizerConfirmationUrl) {\n errorMessage += 'Organizer confirmation URL is required when using organizer confirmation booking type.';\n hasError = true;\n }\n if (hasError) {\n this.isLoading = false;\n this.setError(new Error(errorMessage));\n }\n return hasError;\n };\n\n hideTab(tab: Tab) {\n return this.hideEditorTabs?.includes(tab) || false;\n }\n\n onFeedbackClick() {\n this.showFeedbackModal = true;\n }\n\n @RegisterComponent<NylasEditorTabs, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-editor-tabs',\n stateToProps: new Map([\n ['schedulerConfig.calendars', 'calendars'],\n ['schedulerConfig.selectedConfiguration', 'selectedConfiguration'],\n ['schedulerConfig.currentUser', 'currentUser'],\n ['schedulerConfig.configurations', 'configurations'],\n ]),\n eventToProps: {\n schedulerConfigChanged: async (event: CustomEvent<SchedulerEventDetail>, nylasSchedulerConfigConnector: NylasSchedulerConfigConnector) => {\n const { resetLoadingState, setError, action, config } = event.detail;\n\n const checkForErrors = (response: DataResponseReturnType) => {\n const [data, error] = response;\n if (!data && error && setError) {\n setError(error as Error);\n }\n if (resetLoadingState) {\n resetLoadingState(event);\n }\n };\n\n // If we have an ID, we are updating an existing configuration\n if (action === 'edit') {\n const response = await nylasSchedulerConfigConnector.schedulerConfig.updateConfiguration(config);\n checkForErrors(response);\n } else {\n const response = await nylasSchedulerConfigConnector.schedulerConfig.createConfiguration(config);\n checkForErrors(response);\n }\n },\n cancelButtonClick: async (_, nylasSchedulerConfigConnector) => {\n nylasSchedulerConfigConnector.schedulerConfigStore.state.action = null;\n },\n previewButtonClicked: async (_, nylasSchedulerConfigConnector) => {\n debug('[nylas-editor-tabs]', 'previewButtonClicked', nylasSchedulerConfigConnector);\n },\n formSubmitted: async (_, nylasSchedulerConfigConnector) => {\n debug('[nylas-editor-tabs]', 'formSubmitted', nylasSchedulerConfigConnector);\n },\n schedulerEditorFormUpdated: async (event: CustomEvent<{ value: string; name: string }>, _nylasSchedulerConfigConnector) => {\n debug('[nylas-editor-tabs]', 'schedulerEditorFormUpdated', event);\n },\n },\n localPropsToProp: new Map([\n ['schedulerPreviewLink', 'schedulerPreviewLink'],\n ['enableUserFeedback', 'enableUserFeedback'],\n ['hideEditorTabs', 'hideEditorTabs'],\n ]),\n fireRegisterEvent: true,\n })\n render() {\n debug('[nylas-editor-tabs]', 'render', this.formState);\n // TODO: Remove this check when the feature is ready to be released\n // const showInDevelopmentTabs = localStorage.getItem('nylas') === 'Nylas Developer';\n\n return (\n <Host>\n <form onSubmit={this.formSubmissionHandler} class=\"scheduler-editor\" ref={el => (this.formRef = el as HTMLFormElement)} noValidate>\n {this.mode === 'app' ? (\n <div class=\"form-contents\">\n <div class=\"tabs\">\n <button\n name={Tab.EventInfo}\n class={{ tab: true, active: this.activeTab == Tab.EventInfo, hide: this.hideTab(Tab.EventInfo) }}\n part=\"editortab__event-info\"\n onClick={e => this.setActiveTab(e, Tab.EventInfo)}\n >\n <calendar-info-icon width=\"16\" height=\"16\" />\n Event info\n </button>\n <button\n name={Tab.Availability}\n class={{ tab: true, active: this.activeTab == Tab.Availability, hide: this.hideTab(Tab.Availability) }}\n part=\"editortab__availability\"\n onClick={e => this.setActiveTab(e, Tab.Availability)}\n >\n <calendar-patterns-icon width=\"16\" height=\"16\" />\n Availability\n </button>\n <button\n name={Tab.Participants}\n class={{ tab: true, active: this.activeTab == Tab.Participants, hide: this.hideTab(Tab.Participants) }}\n part=\"editortab__participants\"\n onClick={e => this.setActiveTab(e, Tab.Participants)}\n >\n <people-icon width=\"16\" height=\"16\" />\n Participants\n </button>\n <button\n name={Tab.BookingOptions}\n class={{ tab: true, active: this.activeTab == Tab.BookingOptions, hide: this.hideTab(Tab.BookingOptions) }}\n part=\"editortab__booking-options\"\n onClick={e => this.setActiveTab(e, Tab.BookingOptions)}\n >\n <flow-icon width=\"16\" height=\"16\" />\n Booking options\n </button>\n <button\n name={Tab.BookingForm}\n class={{ tab: true, active: this.activeTab == 'bookingForm', hide: this.hideTab(Tab.BookingForm) }}\n part=\"editortab__booking-form\"\n onClick={e => this.setActiveTab(e, Tab.BookingForm)}\n >\n {this.activeTab == Tab.BookingForm ? <calendar-agenda-fill-icon width=\"16\" height=\"16\" /> : <calendar-agenda-icon width=\"16\" height=\"16\" />}\n Booking form\n </button>\n <button\n name={Tab.Communications}\n class={{ tab: true, active: this.activeTab == 'communications', hide: this.hideTab(Tab.Communications) }}\n onClick={e => this.setActiveTab(e, Tab.Communications)}\n >\n {this.activeTab == Tab.Communications ? <envelope-fill-icon width=\"16\" height=\"16\" /> : <envelope-icon width=\"16\" height=\"16\" />}\n Communications\n </button>\n <button\n name={Tab.PageStyles}\n class={{ tab: true, active: this.activeTab == 'pageStyles', hide: this.hideTab(Tab.PageStyles) }}\n onClick={e => this.setActiveTab(e, Tab.PageStyles)}\n >\n {this.activeTab == Tab.PageStyles ? <paintbrush-fill-icon width=\"16\" height=\"16\" /> : <paintbrush-icon width=\"16\" height=\"16\" />}\n Page styles\n </button>\n </div>\n <div class=\"tab-content\">\n <TabContents\n formState={this.formState}\n activeTab={this.activeTab}\n currentUser={this.currentUser}\n calendars={this.calendars}\n id={this.selectedConfiguration?.id ?? 'new'}\n />\n </div>\n </div>\n ) : (\n <div class=\"composable\" key={this.selectedConfiguration?.id}>\n <slot></slot>\n </div>\n )}\n\n <div class=\"footer\" part=\"editor__footer\">\n <div class=\"preview\" part=\"editor__footer-preview\">\n {this.enableUserFeedback && (\n <button-component title=\"Share your feedback\" id=\"report-issue\" variant={'basic'} onClick={() => this.onFeedbackClick()}>\n <feedback-icon />\n </button-component>\n )}\n </div>\n <div class=\"buttons\" part=\"editor__footer-buttons\">\n <p\n class={{\n 'unsaved-changes': this.hasUnsavedChanges && !this.changesSaved,\n 'saved-changes': this.changesSaved,\n 'error': this.error !== '',\n 'error-full-width': this.error !== '' && this.action === 'create',\n }}\n >\n {this.error !== '' ? this.error : ''}\n {this.error == '' && this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : this.error == '' && this.changesSaved ? 'Changes saved!' : ''}\n </p>\n {this.schedulerPreviewLink !== '' && this.action === 'edit' && (\n <button-component\n title=\"Preview\"\n type=\"button\"\n disabled={this.isLoading}\n clickHandler={event => {\n event.preventDefault();\n const previewEvent = this.previewButtonClicked.emit(this.host);\n if (!previewEvent.defaultPrevented) {\n window.open(parsePreviewLink(this.schedulerPreviewLink, this.selectedConfiguration), '_blank');\n }\n }}\n variant={'basic'}\n >\n <eye-icon />\n </button-component>\n )}\n <button-component\n type=\"button\"\n disabled={this.isLoading}\n clickHandler={event => {\n event.preventDefault();\n this.cancelButtonClick.emit();\n this.error = '';\n }}\n variant={'basic'}\n part=\"editor__footer-cancel\"\n >\n Back\n </button-component>\n <button-component type=\"submit\" disabled={this.isLoading} part=\"editor__footer-cta\">\n {this.isLoading ? (\n <span>\n Saving\n <loading-icon />{' '}\n </span>\n ) : this.action === 'create' ? (\n 'Create'\n ) : (\n 'Save changes'\n )}\n </button-component>\n </div>\n </div>\n </form>\n {this.showFeedbackModal && <nylas-feedback-form></nylas-feedback-form>}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"nylas-editor-tabs.js","sourceRoot":"","sources":["../../../../src/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.tsx"],"names":[],"mappings":"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","sourcesContent":["import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug, mergeDeep, parsePreviewLink } from '@/utils/utils';\nimport {\n AdditionalFields,\n Appearance,\n AvailabilityMethod,\n BookingType,\n Calendar,\n Conference,\n Configuration,\n EmailTemplate,\n EventReminder,\n OpenHours,\n Participant,\n} from '@nylas/core';\nimport { Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport TabContents, { Tab } from './tab-contents';\nimport { User } from '@/common/nylas-api-request';\nimport { DEFAULT_OPEN_HOURS } from '@/common/constants';\nimport { DataResponseReturnType } from '@/common/types';\nimport * as Sentry from '@sentry/browser';\n\ntype SchedulerEventDetail = {\n config: Partial<Configuration>;\n action: 'create' | 'edit';\n resetLoadingState?: (e: CustomEvent) => void;\n setError?: (error: Error) => void;\n};\n\n/**\n * The nylas-editor-tabs component provides the user interface for managing editor tabs within the scheduler editor.\n * It is primarily used to control the edit mode of the scheduler editor, and it is rendered automatically by the\n * parent component, nylas-scheduler-editor, during editing. There is no need to interact with this component directly\n * or set any props manually, as its behavior is fully managed by the parent component.\n *\n * @part nap__title - [nylas-additional-participants] The title of the component.\n * @part nap__subtitle - [nylas-additional-participants] The subtitle of the component.\n * @part nap__content - [nylas-additional-participants] The content of the component.\n * @part nap__input - [nylas-additional-participants] The input of the component.\n * @part nap__remove-participant - [nylas-additional-participants] The remove participant button of the component.\n * @part nap__add-participant - [nylas-additional-participants] The add participant button of the component.\n * @part nap__header - [nylas-availability-picker] The header of the availability picker\n * @part nap__select-timezone - [nylas-availability-picker] The timezone selection container\n * @part nap__select-timezone-button -[nylas-availability-picker] The timezone selection button\n * @part nap__select-timezone-dropdown-content -[nylas-availability-picker] The timezone selection dropdown content\n * @part nap__availability - [nylas-availability-picker] The availability container\n * @part nap__day - [nylas-availability-picker] The day container\n * @part nap__time-ranges - [nylas-availability-picker] The time ranges container\n * @part nap__time-range - [nylas-availability-picker] The time range container\n * @part nap__add-time-range - [nylas-availability-picker] The add time range button\n * @part nap__time-picker-container -[nylas-availability-picker] The time picker container\n * @part nap__time-picker-input - [nylas-availability-picker] The time picker input\n * @part nap__time-picker-times - [nylas-availability-picker] The time picker times\n * @part nbcp - [nylas-booking-calendar-picker] The booking calendar picker container\n * @part nbcp__header - [nylas-booking-calendar-picker] The header of the booking calendar picker\n * @part nbcp__input-label - [nylas-booking-calendar-picker] The input label of the booking calendar picker\n * @part nbcp__dropdown - [nylas-booking-calendar-picker] The dropdown container\n * @part nbcp__dropdown-button - [nylas-booking-calendar-picker] The dropdown button\n * @part nbcp__dropdown-content - [nylas-booking-calendar-picker] The dropdown content\n * @part nbt - [nylas-buffer-time] The buffer time container\n * @part nbt__header - [nylas-buffer-time] The header of the buffer time\n * @part nbt__body - [nylas-buffer-time] The body of the buffer time\n * @part nbt__dropdown-before - [nylas-buffer-time] The before buffer dropdown container\n * @part nbt__dropdown-button-before - [nylas-buffer-time] The before buffer dropdown button\n * @part nbt__dropdown-content-before - [nylas-buffer-time] The before buffer dropdown content\n * @part nbt__dropdown-after - [nylas-buffer-time] The after buffer dropdown container\n * @part nbt__dropdown-button-after - [nylas-buffer-time] The after buffer dropdown button\n * @part nbt__dropdown-content-after - [nylas-buffer-time] The after buffer dropdown content\n * @part nbt__preview - [nylas-buffer-time] The buffer time preview\n * @part ncp - [nylas-calendar-picker] The calendar picker container\n * @part ncp__header - [nylas-calendar-picker] The header of the calendar picker\n * @part ncp__dropdown - [nylas-calendar-picker] The dropdown container\n * @part ncp__dropdown-button - [nylas-calendar-picker] The dropdown button\n * @part ncp__dropdown-content - [nylas-calendar-picker] The dropdown content\n * @part ncbf - [nylas-custom-booking-flow] The custom booking flow container\n * @part ncbf__header - [nylas-custom-booking-flow] The header of the custom booking flow\n * @part ncbf__dropdown - [nylas-custom-booking-flow] The dropdown container\n * @part ncbf__dropdown-button - [nylas-custom-booking-flow] The dropdown button\n * @part ncbf__dropdown-content - [nylas-custom-booking-flow] The dropdown content\n * @part nedesc - [nylas-event-description] The event description container\n * @part nedesc__textarea - [nylas-event-description] The event description textarea\n * @part ned - [nylas-event-duration] The event duration container\n * @part ned__dropdown - [nylas-event-duration] The dropdown container for the duration increment\n * @part ned__dropdown-button - [nylas-event-duration] The dropdown button for the duration increment\n * @part ned__dropdown-content - [nylas-event-duration] The dropdown content for the duration increment\n * @part ned__input_dropdown - [nylas-event-duration] The input dropdown container for the duration minutes\n * @part ned__input_dropdown-input - [nylas-event-duration] The input for the duration minutes\n * @part ned__input_dropdown-content - [nylas-event-duration] The dropdown content for the input duration minutes\n * @part net - [nylas-event-title] The event title container\n * @part net__title - [nylas-event-title] The event title input\n * @part net__dropdown-content - [nylas-event-title] The token options container\n * @part nlfb - [nylas-limit-future-bookings] The limit future bookings container\n * @part nlfb__number-dropdown - [nylas-limit-future-bookings] The number dropdown container\n * @part nlfb__number-dropdown-button - [nylas-limit-future-bookings] The number dropdown button\n * @part nlfb__number-dropdown-content - [nylas-limit-future-bookings] The number dropdown content\n * @part nlfb__period-dropdown - [nylas-limit-future-bookings] The period dropdown container\n * @part nlfb__period-dropdown-button - [nylas-limit-future-bookings] The period dropdown button\n * @part nlfb__period-dropdown-content - [nylas-limit-future-bookings] The period dropdown content\n * @part nel - [nylas-event-location] The event location container\n * @part nel__location - [nylas-event-location] The event location input\n * @part nel__dropdown - [nylas-event-location] The dropdown container\n * @part nel__dropdown-button - [nylas-event-location] The dropdown button\n * @part nel__dropdown-content - [nylas-event-location] The dropdown content\n * @part nmbn - [nylas-min-booking-notice] The minimum booking notice container\n * @part nmbn__number-dropdown - [nylas-min-booking-notice] The number dropdown container\n * @part nmbn__number-dropdown-button - [nylas-min-booking-notice] The number dropdown button\n * @part nmbn__number-dropdown-content -[nylas-min-booking-notice] The number dropdown content\n * @part nmbn__period-dropdown - [nylas-min-booking-notice] The period dropdown container\n * @part nmbn__period-dropdown-button - [nylas-min-booking-notice] The period dropdown button\n * @part nmbn__period-dropdown-content - [nylas-min-booking-notice] The period dropdown content\n * @part nmcn - [nylas-min-cancellation-notice] The minimum cancellation notice container\n * @part nmcn__number-dropdown - [nylas-min-cancellation-notice] The number dropdown container\n * @part nmcn__number-dropdown-button - [nylas-min-cancellation-notice] The number dropdown button\n * @part nmcn__number-dropdown-content - [nylas-min-cancellation-notice] The number dropdown content\n * @part nmcn__period-dropdown - [nylas-min-cancellation-notice] The period dropdown container\n * @part nmcn__period-dropdown-button - [nylas-min-cancellation-notice] The period dropdown button\n * @part nmcn__period-dropdown-content - [nylas-min-cancellation-notice] The period dropdown content\n * @part ncpolicy - [nylas-cancellation-policy] The cancellation policy container\n * @part ncpolicy__textarea - [nylas-cancellation-policy] The cancellation policy textarea\n * @part nti - [nylas-timeslot-interval] The timeslot interval container\n * @part nti__header - [nylas-timeslot-interval] The header of the timeslot interval picker\n * @part nti__input-label - [nylas-timeslot-interval] The input label of the timeslot interval picker\n * @part nti__dropdown - [nylas-timeslot-interval] The dropdown container\n * @part nti__dropdown-button - [nylas-timeslot-interval] The dropdown button\n * @part nti__dropdown-content - [nylas-timeslot-interval] The dropdown content\n * @part npca - [nylas-participants-custom-availability] The participants custom availability container\n * @part npca__header - [nylas-participants-custom-availability] The header of the participants custom availability\n * @part npca__content - [nylas-participants-custom-availability] The content of the participants custom availability\n * @part npca__participant-container - [nylas-participants-custom-availability] The participant container\n * @part npca__participant-title - [nylas-participants-custom-availability] The participant title\n * @part npca__participant-toggle--container - [nylas-participants-custom-availability] The participant toggle container\n * @part npca__toggle-label - [nylas-participants-custom-availability] The toggle label\n * @part npca__toggle-input - [nylas-participants-custom-availability] The toggle input\n * @part npca__toggle-slider - [nylas-participants-custom-availability] The toggle slider\n * @part ncbs - [nylas-customize-booking-settings] The booking calendar picker container\n * @part ncbs__header - [nylas-customize-booking-settings] The header of the booking calendar picker\n * @part ncbs__settings - [nylas-customize-booking-settings] The settings container\n * @part ncbs__settings-div - [nylas-customize-booking-settings] The div inside the settings container that contains the checkbox and tooltip for each setting\n * @part ncbs__additional_guests - [nylas-customize-booking-settings] The additional guests setting\n * @part ncbs__cancellation_options - [nylas-customize-booking-settings] The cancellation options setting\n * @part ncbs__rescheduling_options - [nylas-customize-booking-settings] The rescheduling options setting\n * @part nsm - [nylas-scheduling-method] The booking calendar picker container\n * @part nsm__header - [nylas-scheduling-method] The header of the booking calendar picker\n * @part nsm__input-label - [nylas-scheduling-method] The input label of the booking calendar picker\n * @part nsm__dropdown - [nylas-scheduling-method] The dropdown container\n * @part nsm__dropdown-button - [nylas-scheduling-method] The dropdown button\n * @part nsm__dropdown-content - [nylas-scheduling-method] The dropdown content\n * @part npn - The nylas-page-name container\n * @part npn__body - The body of the event communication section\n * @part npn__header - The header of the event communication section\n * @part npn__drawer-toggle--container - The card's drawer toggle container\n * @part npn__input-textfield - The page name textfield\n */\n@Component({\n tag: 'nylas-editor-tabs',\n styleUrl: 'nylas-editor-tabs.scss',\n scoped: true,\n})\nexport class NylasEditorTabs {\n /**\n * The form reference to access the form data.\n */\n private formRef!: HTMLFormElement;\n /**\n * The host element.\n */\n @Element() host!: HTMLNylasEditorTabsElement;\n /**\n * @standalone\n * The list of calendars to use in the editor when configuring availability.\n */\n @Prop() calendars?: Calendar[];\n /**\n * @standalone\n * The selected configuration to use in the editor when editing an existing configuration or creating a new one.\n */\n @Prop() selectedConfiguration?: Configuration;\n\n /**\n * @standalone\n * The list of configurations\n */\n @Prop() configurations?: Configuration[];\n\n /**\n * @standalone\n * The current logged in user.\n */\n @Prop() currentUser?: User;\n /**\n * @standalone\n * The scheduler preview link to use when the user clicks on the preview button.\n * You can use a placeholder `{config.id}` to replace the configuration id anywhere in the link.\n */\n @Prop({ attribute: 'scheduler-preview-link' }) schedulerPreviewLink: string = '';\n /**\n * @standalone\n * The mode of the editor.\n * - `app`: The editor is used as a standalone app.\n * - `composable`: The editor is used as a composable component.\n */\n @Prop() mode?: 'app' | 'composable' = 'app';\n /**\n * @standalone\n * This prop is passed down by the parent component.\n * It is an optional prop is used to hide tabs in the editor. Available tabs are:\n * eventInfo, availability, participants, bookingOptions, bookingForm\n */\n @Prop() hideEditorTabs?: Tab[] = [];\n /**\n * @standalone\n * This prop is passed down by the parent component to enable or disable user feedback.\n */\n @Prop() enableUserFeedback?: boolean = true;\n\n /**\n * The action to perform in the editor.\n * - `create`: Create a new configuration.\n * - `edit`: Edit an existing configuration.\n */\n @State() action: 'create' | 'edit' = 'create';\n /**\n * The state for showing the feedback modal.\n */\n @State() showFeedbackModal: boolean = false;\n /**\n * The active tab in the editor.\n */\n @State() activeTab: Tab = Tab.EventInfo;\n /**\n * The loading state of the editor.\n */\n @State() isLoading: boolean = false;\n /**\n * The unsaved changes state of the editor.\n */\n @State() hasUnsavedChanges: boolean = false;\n /**\n * The changes saved state of the editor.\n */\n @State() changesSaved: boolean = false;\n /**\n * The form state of the editor.\n */\n @State() formState: Partial<{\n title: string;\n description: string;\n duration: string;\n availability?: {\n timezone: string;\n openHours?: OpenHours[];\n };\n additionalFields?: Record<string, AdditionalFields>;\n calendarIds: string[];\n participantCalendars?: { [key: string]: string[] };\n participants?: Participant[];\n participantOpenHours?: { [key: string]: OpenHours[] };\n participantBookingCalendars?: { [key: string]: string };\n bookingCalendar?: string;\n location?: string;\n conferencing?: Conference;\n bookingType?: string;\n buffer?: { before: number; after: number };\n cancellationPolicy?: string;\n availableDaysInFuture?: number;\n minCancellationNotice?: number;\n minBookingNotice?: number;\n timeslotInterval?: {\n interval?: number;\n roundTo?: number;\n };\n additionalGuestsHidden?: boolean;\n hideCancellationOptions?: boolean;\n hideReschedulingOptions?: boolean;\n reminders?: EventReminder[];\n emailTemplate?: EmailTemplate;\n redirectUrl?: string;\n availabilityMethod?: AvailabilityMethod;\n slug: string;\n appearance: Appearance;\n name: string;\n }> = {};\n /**\n * The error state of the editor.\n */\n @State() error?: string = '';\n /**\n * Event emitted when the configuration is created/updated (after the request is complete). This fires for both create and edit actions.\n */\n @Event() schedulerConfigChanged!: EventEmitter<SchedulerEventDetail>;\n /**\n * Event emitted when the user clicks the cancel button.\n */\n @Event() cancelButtonClick!: EventEmitter<void>;\n /**\n * Event emitted on form submission.\n */\n @Event({ bubbles: true, cancelable: true }) formSubmitted!: EventEmitter<void>;\n /**\n * Event emitted when the user clicks the preview button.\n */\n @Event() previewButtonClicked!: EventEmitter<HTMLNylasEditorTabsElement>;\n /**\n *\n * Event emitted when the value of a form field changes.\n */\n @Event() schedulerEditorFormUpdated!: EventEmitter<{ value: string; name: string }>;\n\n @Watch('selectedConfiguration')\n configChangedHandler(newConfig: Configuration) {\n debug('[nylas-editor-tabs]', 'configChangedHandler', newConfig, this.selectedConfiguration);\n this.formState = {\n ...this.getFormStateFromConfig(newConfig),\n };\n if (newConfig?.id) {\n this.action = 'edit';\n } else {\n this.action = 'create';\n }\n }\n\n @Watch('currentUser')\n userChangedHandler(newUser: User) {\n // Actively watch for changes in the current user to update the form state.\n debug('[nylas-editor-tabs]', 'userChangedHandler', newUser);\n if (newUser) {\n this.formState = {\n ...this.getFormStateFromConfig(this.selectedConfiguration),\n };\n }\n }\n\n connectedCallback() {\n debug('[nylas-editor-tabs]', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('[nylas-editor-tabs]', 'componentWillLoad');\n this.formState = this.getFormStateFromConfig(this.selectedConfiguration);\n }\n\n componentDidLoad() {\n debug('[nylas-editor-tabs]', 'componentDidLoad');\n if (this.enableUserFeedback && !Sentry.isInitialized()) {\n Sentry.init({\n dsn: 'https://9d5731f1c77ca84c9ed3fb9b3ccf7ee1@o74852.ingest.us.sentry.io/4507889638178816',\n release: process.env.PACKAGE_VERSION,\n integrations: integrations => [\n ...integrations.filter(_integration => false), // Removes default integrations (including Breadcrumbs)\n Sentry.feedbackIntegration({\n colorScheme: 'system',\n autoInject: false,\n }),\n ],\n // Disable all other event capture\n autoSessionTracking: false, // Disable session tracking\n beforeSend: () => null, // Prevents error events from being sent\n });\n }\n if (this.selectedConfiguration?.id) {\n this.configChangedHandler(this.selectedConfiguration);\n }\n const firstVisibleTab = (this.host.querySelector('button.tab:not(.hide)') as HTMLButtonElement)?.name as Tab;\n\n if (firstVisibleTab) {\n this.activeTab = firstVisibleTab;\n }\n }\n\n disconnectedCallback() {\n debug('[nylas-editor-tabs]', 'disconnectedCallback');\n }\n\n @Listen('valueChanged')\n handleValueChanged(event: CustomEvent) {\n debug('[nylas-editor-tabs]', 'handleValueChanged', event);\n const { name, value } = event.detail;\n this.setFormState(value, name);\n this.formState = { ...this.formState };\n this.hasUnsavedChanges = true;\n this.error = '';\n this.schedulerEditorFormUpdated.emit({\n value: event.detail.value,\n name: event.detail.name,\n });\n }\n\n @Listen('feedbackModalClosed')\n feedbackModalClosedHandler() {\n this.showFeedbackModal = false;\n }\n\n @Listen('feedbackSubmitted')\n feedbackSubmittedHandler(event: CustomEvent<{ feedback: string }>) {\n const eventId = Sentry.captureMessage('Scheduler Editor User Feedback');\n const feedback = {\n eventId: eventId,\n message: event.detail.feedback,\n };\n\n Sentry.captureFeedback(feedback, {\n includeReplay: true,\n captureContext: {\n tags: {\n 'nylas-web-element': 'nylas-scheduler-editor',\n 'nylas-web-element-version': process.env.PACKAGE_VERSION,\n },\n extra: {\n configId: this.selectedConfiguration?.id,\n slug: this.selectedConfiguration?.slug,\n },\n },\n });\n this.showFeedbackModal = false;\n }\n\n getFormStateFromConfig(config?: Configuration) {\n let organizerParticipant = config?.participants?.find(p => p.is_organizer);\n // If the config is round robin, there is no organizer set in the config, in that case flag the current user as the organizer.\n if (!organizerParticipant && config?.availability?.availability_rules?.availability_method !== 'collective') {\n organizerParticipant = config?.participants?.find(p => p.email === this.currentUser?.email);\n if (organizerParticipant) {\n organizerParticipant.is_organizer = true;\n }\n }\n if (config?.appearance) {\n console.info(\n 'Appearance settings have been returned from the given configuration; please remember to grab them from the configSettingsLoaded event and apply them as desired.',\n );\n }\n return {\n title: config?.event_booking?.title ?? '',\n description: config?.event_booking?.description ?? '',\n duration: config?.availability?.duration_minutes?.toString() ?? '30',\n availability: {\n timezone: config?.event_booking?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n openHours: config?.availability?.availability_rules?.default_open_hours ?? DEFAULT_OPEN_HOURS,\n },\n additionalFields: config?.scheduler?.additional_fields ?? {},\n conferencing: config?.event_booking?.conferencing ?? {},\n calendarIds: organizerParticipant?.availability?.calendar_ids ?? [],\n participants: config?.participants ?? [],\n bookingCalendar: organizerParticipant?.booking?.calendar_id ?? organizerParticipant?.email ?? '',\n location: config?.event_booking?.location ?? '',\n bookingType: config?.event_booking?.booking_type ?? 'booking',\n buffer: config?.availability?.availability_rules?.buffer ?? { before: 0, after: 0 },\n cancellationPolicy: config?.scheduler?.cancellation_policy ?? '',\n availableDaysInFuture: config?.scheduler?.available_days_in_future ?? 30,\n minCancellationNotice: config?.scheduler?.min_cancellation_notice ?? 0,\n minBookingNotice: config?.scheduler?.min_booking_notice ?? 60,\n timeslotInterval: {\n interval: config?.availability?.interval_minutes ?? config?.availability?.duration_minutes,\n roundTo: config?.availability?.round_to,\n },\n additionalGuestsHidden: config?.scheduler?.hide_additional_guests ?? false,\n hideCancellationOptions: config?.scheduler?.hide_cancellation_options ?? false,\n hideReschedulingOptions: config?.scheduler?.hide_rescheduling_options ?? false,\n participantBookingCalendars:\n config?.participants?.reduce((acc, p) => {\n if (p.booking?.calendar_id) {\n acc[p.email] = p.booking?.calendar_id;\n }\n return acc;\n }) ?? {},\n participantCalendars:\n config?.participants?.reduce((acc, p) => {\n acc[p.email] = p.availability?.calendar_ids;\n return acc;\n }, {}) ?? {},\n reminders: config?.event_booking?.reminders,\n emailTemplate: config?.scheduler?.email_template,\n redirectUrl: config?.scheduler?.confirmation_redirect_url,\n slug: config?.slug,\n appearance: config?.appearance,\n name: config?.name,\n };\n }\n\n setFormState(value, key) {\n switch (key) {\n case 'title':\n this.formState.title = value.toString();\n break;\n case 'description':\n this.formState.description = value.toString();\n break;\n case 'duration':\n this.formState.duration = value.toString();\n break;\n case 'availability':\n this.formState.availability = JSON.parse(value.toString());\n break;\n case 'participants':\n this.formState.participants = JSON.parse(value.toString());\n break;\n case 'booking-calendar':\n this.formState.bookingCalendar = value.toString();\n break;\n case 'participant-booking-calendars':\n this.formState.participantBookingCalendars = JSON.parse(value.toString());\n break;\n case 'location':\n this.formState.location = value.toString();\n break;\n case 'conference':\n this.formState.conferencing = JSON.parse(value.toString());\n break;\n case 'confirmation-type':\n this.formState.bookingType = value.toString();\n break;\n case 'buffer-time':\n this.formState.buffer = JSON.parse(value.toString());\n break;\n case 'limit-future-bookings':\n this.formState.availableDaysInFuture = parseInt(value.toString());\n break;\n case 'min-cancellation-notice':\n this.formState.minCancellationNotice = parseInt(value.toString());\n break;\n case 'min-booking-notice':\n this.formState.minBookingNotice = parseInt(value.toString());\n break;\n case 'cancellation-policy':\n this.formState.cancellationPolicy = value.toString();\n break;\n case 'timeslot-interval':\n this.formState.timeslotInterval = JSON.parse(value.toString());\n break;\n case 'customize-booking-settings':\n const settings = JSON.parse(value.toString());\n this.formState.additionalGuestsHidden = settings.additionalGuestsHidden;\n this.formState.hideCancellationOptions = settings.hideCancellationOptions;\n this.formState.hideReschedulingOptions = settings.hideReschedulingOptions;\n break;\n case 'participant-custom-availability':\n const participantOpenHours = JSON.parse(value.toString());\n this.formState.participantOpenHours = participantOpenHours;\n break;\n case 'additional-fields':\n this.formState.additionalFields = value;\n break;\n case 'connected-calendars':\n this.formState.participantCalendars = JSON.parse(value.toString());\n break;\n case 'confirmation-email-template':\n this.formState.emailTemplate = JSON.parse(value.toString());\n break;\n case 'reminder-overrides':\n this.formState.reminders = JSON.parse(value.toString());\n break;\n case 'confirmation-redirect':\n this.formState.redirectUrl = value.toString();\n break;\n case 'availability-method':\n this.formState.availabilityMethod = value.toString();\n break;\n case 'custom-event-slug':\n this.formState.slug = JSON.parse(value.toString());\n break;\n case 'page-styling':\n this.formState.appearance = JSON.parse(value.toString());\n break;\n case 'page-name':\n this.formState.name = JSON.parse(value.toString());\n break;\n }\n this.schedulerEditorFormUpdated.emit({\n value,\n name: key,\n });\n }\n\n updateFormState() {\n const formData = new FormData(this.formRef);\n formData.forEach((value, key) => {\n this.setFormState(value, key);\n });\n\n this.formState = { ...this.formState };\n return this.formState;\n }\n\n setActiveTab(e: Event, tabName: Tab) {\n e.preventDefault();\n this.updateFormState();\n this.activeTab = tabName;\n }\n\n setError = (error: Error) => {\n this.error = error.message;\n };\n\n formSubmissionHandler = async (event: Event) => {\n event.preventDefault();\n const formEvent = await this.formSubmitted.emit();\n debug('[nylas-editor-tabs]', 'formSubmissionHandler', formEvent);\n const valid = this.formRef.checkValidity();\n if (!valid || formEvent.defaultPrevented) {\n this.error = this.formRef.validationMessage || 'Please fix the form errors.';\n return;\n }\n this.isLoading = true;\n this.hasUnsavedChanges = false;\n const formState = this.updateFormState();\n const {\n title,\n description,\n duration,\n availability,\n bookingCalendar,\n location,\n bookingType,\n buffer,\n availableDaysInFuture,\n minCancellationNotice,\n minBookingNotice,\n cancellationPolicy,\n timeslotInterval,\n additionalGuestsHidden,\n hideCancellationOptions,\n hideReschedulingOptions,\n participants,\n participantOpenHours,\n additionalFields,\n participantCalendars,\n conferencing,\n participantBookingCalendars,\n reminders,\n emailTemplate,\n redirectUrl,\n availabilityMethod,\n slug,\n appearance,\n name,\n } = formState;\n const organizer = this.selectedConfiguration?.participants?.find(p => p.is_organizer) || participants?.find(p => p.is_organizer);\n const organizerCalendars = participantCalendars && organizer?.email ? participantCalendars[organizer?.email] : [];\n const organizerBookingCalendar = organizer?.booking?.calendar_id || bookingCalendar;\n const durationMinutes = duration ? parseInt(duration) : 30;\n\n const participantsList =\n participants && participants?.length > 0\n ? participants\n : [\n {\n name: organizer?.name ?? this.currentUser?.name ?? '',\n email: organizer?.email ?? this.currentUser?.email ?? '',\n is_organizer: true,\n timezone: availability?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n availability: {\n calendar_ids: organizerCalendars.length ? organizerCalendars : ['primary'],\n open_hours: [],\n },\n booking: {\n calendar_id: bookingCalendar && bookingCalendar !== '' ? bookingCalendar : 'primary',\n },\n },\n ];\n\n const configObject: Partial<Configuration> = {\n ...(this.selectedConfiguration?.id && { id: this.selectedConfiguration.id }),\n version: this.selectedConfiguration?.version ?? '1.0.0',\n slug: slug,\n name: name,\n availability: {\n duration_minutes: durationMinutes,\n interval_minutes: timeslotInterval?.interval ?? durationMinutes,\n round_to: timeslotInterval?.roundTo,\n availability_rules: {\n availability_method: availabilityMethod ? availabilityMethod : this.selectedConfiguration?.availability?.availability_rules?.availability_method ?? 'collective',\n buffer: buffer || { before: 0, after: 0 },\n default_open_hours: availability?.openHours ?? this.selectedConfiguration?.availability?.availability_rules?.default_open_hours ?? DEFAULT_OPEN_HOURS,\n round_robin_group_id: this.selectedConfiguration?.availability?.availability_rules?.round_robin_group_id ?? '',\n },\n },\n participants: [\n ...participantsList?.map(p => {\n if (p.is_organizer) {\n return {\n name: p.name ?? '',\n email: p.email,\n is_organizer: true,\n timezone: participantOpenHours?.[p.email]?.[0]?.timezone ?? p.availability?.open_hours?.[0]?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n availability: {\n calendar_ids: participantCalendars?.[p.email] ? participantCalendars?.[p.email] : organizerCalendars?.length ? organizerCalendars : ['primary'],\n open_hours: participantOpenHours?.[p.email] ?? p.availability?.open_hours ?? [],\n },\n booking: {\n calendar_id: participantBookingCalendars?.[p.email] ? participantBookingCalendars?.[p.email] : organizerBookingCalendar ? organizerBookingCalendar : 'primary',\n },\n };\n }\n return {\n ...p,\n timezone: participantOpenHours?.[p.email]?.[0]?.timezone ?? p.availability?.open_hours?.[0]?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n availability: p.availability\n ? {\n calendar_ids: participantCalendars?.[p.email] ?? p.availability?.calendar_ids ?? ['primary'],\n open_hours: participantOpenHours?.[p.email] ?? p.availability?.open_hours ?? [],\n }\n : undefined,\n booking: participantBookingCalendars?.[p.email] ? { calendar_id: participantBookingCalendars?.[p.email] } : p?.booking ?? undefined,\n };\n }),\n ],\n event_booking: {\n title: title?.toString() ?? '',\n description: description?.toString() ?? '',\n location: location?.toString() ?? '',\n booking_type: (bookingType?.toString() as BookingType) ?? 'booking',\n timezone: availability?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n conferencing: conferencing,\n reminders: reminders,\n },\n scheduler: {\n cancellation_policy: cancellationPolicy ?? '',\n available_days_in_future: availableDaysInFuture ?? 30,\n min_cancellation_notice: minCancellationNotice ?? 0,\n min_booking_notice: minBookingNotice ?? 60,\n hide_additional_guests: additionalGuestsHidden ?? false,\n hide_cancellation_options: hideCancellationOptions ?? false,\n hide_rescheduling_options: hideReschedulingOptions ?? false,\n additional_fields: additionalFields,\n email_template: emailTemplate,\n confirmation_redirect_url: redirectUrl,\n },\n appearance: appearance,\n };\n\n const configObjectWithDeveloperSettings = mergeDeep(configObject, this.selectedConfiguration || {});\n\n const finalConfig = this.action === 'create' ? configObjectWithDeveloperSettings : configObject;\n\n if (this.isConfigRoundRobin(finalConfig)) {\n // If the config is round robin, no participant should be flagged as the organizer\n finalConfig.participants = finalConfig.participants.map(p => ({ ...p, is_organizer: undefined }));\n }\n const resetLoadingState = (_e: CustomEvent) => {\n this.isLoading = false;\n this.changesSaved = true;\n setTimeout(() => {\n this.changesSaved = false;\n }, 5000);\n };\n\n const hasBookingError = this.checkForBookingFormErrors(finalConfig);\n\n // Check for client side errors using the selected config from the list configs (stored in API)\n const currentConfig = this.configurations?.find(c => c.id === this.selectedConfiguration?.id) || {};\n const hasOrganizerConfirmationError = this.checkForOrganizerConfirmationError(mergeDeep(finalConfig, currentConfig));\n\n if (hasBookingError || hasOrganizerConfirmationError) {\n return;\n }\n this.schedulerConfigChanged.emit({ config: finalConfig, resetLoadingState, setError: this.setError, action: this.action });\n };\n\n isConfigRoundRobin = (config: Configuration) => {\n return config?.availability?.availability_rules?.availability_method === 'max-availability' || config.availability?.availability_rules?.availability_method === 'max-fairness';\n };\n\n checkForOrganizerConfirmationError = config => {\n // Check additional Fields in config\n let hasError = false;\n let errorMessage = '';\n const isOrganizerConfirmationType = config.event_booking?.booking_type === 'organizer-confirmation';\n const organizerConfirmationUrl = config.scheduler?.organizer_confirmation_url;\n\n if (isOrganizerConfirmationType && !organizerConfirmationUrl) {\n errorMessage += 'Organizer confirmation URL is required when using organizer confirmation booking type.';\n hasError = true;\n }\n if (hasError) {\n this.isLoading = false;\n this.setError(new Error(errorMessage));\n }\n return hasError;\n };\n\n checkForBookingFormErrors = config => {\n // Check additional Fields in config\n let hasError = false;\n let errorMessage = '';\n const additionalFields = config.scheduler?.additional_fields;\n if (additionalFields) {\n errorMessage = 'Booking form error: ';\n Object.entries(additionalFields).forEach(entry => {\n const field = entry[1] as AdditionalFields;\n if (field.label === '') {\n errorMessage += `Label is required for field of type ${field.type}.`;\n hasError = true;\n return;\n }\n if (field.options) {\n for (const option of field.options) {\n if (option === '') {\n errorMessage += `Empty option detected inside ${field.label} of type ${field.type}.`;\n hasError = true;\n break;\n }\n }\n }\n });\n }\n if (hasError) {\n this.isLoading = false;\n this.setError(new Error(errorMessage));\n }\n return hasError;\n };\n\n hideTab(tab: Tab) {\n return this.hideEditorTabs?.includes(tab) || false;\n }\n\n onFeedbackClick() {\n this.showFeedbackModal = true;\n }\n\n @RegisterComponent<NylasEditorTabs, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-editor-tabs',\n stateToProps: new Map([\n ['schedulerConfig.calendars', 'calendars'],\n ['schedulerConfig.selectedConfiguration', 'selectedConfiguration'],\n ['schedulerConfig.currentUser', 'currentUser'],\n ['schedulerConfig.configurations', 'configurations'],\n ]),\n eventToProps: {\n schedulerConfigChanged: async (event: CustomEvent<SchedulerEventDetail>, nylasSchedulerConfigConnector: NylasSchedulerConfigConnector) => {\n const { resetLoadingState, setError, action, config } = event.detail;\n\n const checkForErrors = (response: DataResponseReturnType) => {\n const [data, error] = response;\n if (!data && error && setError) {\n setError(error as Error);\n }\n if (resetLoadingState) {\n resetLoadingState(event);\n }\n };\n\n // If we have an ID, we are updating an existing configuration\n if (action === 'edit') {\n const response = await nylasSchedulerConfigConnector.schedulerConfig.updateConfiguration(config);\n checkForErrors(response);\n } else {\n const response = await nylasSchedulerConfigConnector.schedulerConfig.createConfiguration(config);\n checkForErrors(response);\n }\n },\n cancelButtonClick: async (_, nylasSchedulerConfigConnector) => {\n nylasSchedulerConfigConnector.schedulerConfigStore.state.action = null;\n },\n previewButtonClicked: async (_, nylasSchedulerConfigConnector) => {\n debug('[nylas-editor-tabs]', 'previewButtonClicked', nylasSchedulerConfigConnector);\n },\n formSubmitted: async (_, nylasSchedulerConfigConnector) => {\n debug('[nylas-editor-tabs]', 'formSubmitted', nylasSchedulerConfigConnector);\n },\n schedulerEditorFormUpdated: async (event: CustomEvent<{ value: string; name: string }>, _nylasSchedulerConfigConnector) => {\n debug('[nylas-editor-tabs]', 'schedulerEditorFormUpdated', event);\n },\n },\n localPropsToProp: new Map([\n ['schedulerPreviewLink', 'schedulerPreviewLink'],\n ['enableUserFeedback', 'enableUserFeedback'],\n ['hideEditorTabs', 'hideEditorTabs'],\n ]),\n fireRegisterEvent: true,\n })\n render() {\n debug('[nylas-editor-tabs]', 'render', this.formState);\n // TODO: Remove this check when the feature is ready to be released\n // const showInDevelopmentTabs = localStorage.getItem('nylas') === 'Nylas Developer';\n\n return (\n <Host>\n <form onSubmit={this.formSubmissionHandler} class=\"scheduler-editor\" ref={el => (this.formRef = el as HTMLFormElement)} noValidate>\n {this.mode === 'app' ? (\n <div class=\"form-contents\">\n <div class=\"tabs\">\n <button\n name={Tab.EventInfo}\n class={{ tab: true, active: this.activeTab == Tab.EventInfo, hide: this.hideTab(Tab.EventInfo) }}\n part=\"editortab__event-info\"\n onClick={e => this.setActiveTab(e, Tab.EventInfo)}\n >\n <calendar-info-icon width=\"16\" height=\"16\" />\n Event info\n </button>\n <button\n name={Tab.Availability}\n class={{ tab: true, active: this.activeTab == Tab.Availability, hide: this.hideTab(Tab.Availability) }}\n part=\"editortab__availability\"\n onClick={e => this.setActiveTab(e, Tab.Availability)}\n >\n <calendar-patterns-icon width=\"16\" height=\"16\" />\n Availability\n </button>\n <button\n name={Tab.Participants}\n class={{ tab: true, active: this.activeTab == Tab.Participants, hide: this.hideTab(Tab.Participants) }}\n part=\"editortab__participants\"\n onClick={e => this.setActiveTab(e, Tab.Participants)}\n >\n <people-icon width=\"16\" height=\"16\" />\n Participants\n </button>\n <button\n name={Tab.BookingOptions}\n class={{ tab: true, active: this.activeTab == Tab.BookingOptions, hide: this.hideTab(Tab.BookingOptions) }}\n part=\"editortab__booking-options\"\n onClick={e => this.setActiveTab(e, Tab.BookingOptions)}\n >\n <flow-icon width=\"16\" height=\"16\" />\n Booking options\n </button>\n <button\n name={Tab.BookingForm}\n class={{ tab: true, active: this.activeTab == 'bookingForm', hide: this.hideTab(Tab.BookingForm) }}\n part=\"editortab__booking-form\"\n onClick={e => this.setActiveTab(e, Tab.BookingForm)}\n >\n {this.activeTab == Tab.BookingForm ? <calendar-agenda-fill-icon width=\"16\" height=\"16\" /> : <calendar-agenda-icon width=\"16\" height=\"16\" />}\n Booking form\n </button>\n <button\n name={Tab.Communications}\n class={{ tab: true, active: this.activeTab == 'communications', hide: this.hideTab(Tab.Communications) }}\n onClick={e => this.setActiveTab(e, Tab.Communications)}\n >\n {this.activeTab == Tab.Communications ? <envelope-fill-icon width=\"16\" height=\"16\" /> : <envelope-icon width=\"16\" height=\"16\" />}\n Communications\n </button>\n <button\n name={Tab.PageStyles}\n class={{ tab: true, active: this.activeTab == 'pageStyles', hide: this.hideTab(Tab.PageStyles) }}\n onClick={e => this.setActiveTab(e, Tab.PageStyles)}\n >\n {this.activeTab == Tab.PageStyles ? <paintbrush-fill-icon width=\"16\" height=\"16\" /> : <paintbrush-icon width=\"16\" height=\"16\" />}\n Page styles\n </button>\n </div>\n <div class=\"tab-content\">\n <TabContents\n formState={this.formState}\n activeTab={this.activeTab}\n currentUser={this.currentUser}\n calendars={this.calendars}\n id={this.selectedConfiguration?.id ?? 'new'}\n />\n </div>\n </div>\n ) : (\n <div class=\"composable\" key={this.selectedConfiguration?.id}>\n <slot></slot>\n </div>\n )}\n\n <div class=\"footer\" part=\"editor__footer\">\n <div class=\"preview\" part=\"editor__footer-preview\">\n {this.enableUserFeedback && (\n <button-component title=\"Share your feedback\" id=\"report-issue\" variant={'basic'} onClick={() => this.onFeedbackClick()}>\n <feedback-icon />\n </button-component>\n )}\n </div>\n <div class=\"buttons\" part=\"editor__footer-buttons\">\n <p\n class={{\n 'unsaved-changes': this.hasUnsavedChanges && !this.changesSaved,\n 'saved-changes': this.changesSaved,\n 'error': this.error !== '',\n 'error-full-width': this.error !== '' && this.action === 'create',\n }}\n >\n {this.error !== '' ? this.error : ''}\n {this.error == '' && this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : this.error == '' && this.changesSaved ? 'Changes saved!' : ''}\n </p>\n {this.schedulerPreviewLink !== '' && this.action === 'edit' && (\n <button-component\n title=\"Preview\"\n type=\"button\"\n disabled={this.isLoading}\n clickHandler={event => {\n event.preventDefault();\n const previewEvent = this.previewButtonClicked.emit(this.host);\n if (!previewEvent.defaultPrevented) {\n window.open(parsePreviewLink(this.schedulerPreviewLink, this.selectedConfiguration), '_blank');\n }\n }}\n variant={'basic'}\n >\n <eye-icon />\n </button-component>\n )}\n <button-component\n type=\"button\"\n disabled={this.isLoading}\n clickHandler={event => {\n event.preventDefault();\n this.cancelButtonClick.emit();\n this.error = '';\n }}\n variant={'basic'}\n part=\"editor__footer-cancel\"\n >\n Back\n </button-component>\n <button-component type=\"submit\" disabled={this.isLoading} part=\"editor__footer-cta\">\n {this.isLoading ? (\n <span>\n Saving\n <loading-icon />{' '}\n </span>\n ) : this.action === 'create' ? (\n 'Create'\n ) : (\n 'Save changes'\n )}\n </button-component>\n </div>\n </div>\n </form>\n {this.showFeedbackModal && <nylas-feedback-form></nylas-feedback-form>}\n </Host>\n );\n }\n}\n"]}
@@ -10,6 +10,6 @@ export var Tab;
10
10
  Tab["PageStyles"] = "pageStyles";
11
11
  })(Tab || (Tab = {}));
12
12
  export default function TabContents({ id, formState, activeTab }, children) {
13
- return (h(Fragment, null, h("div", { key: `event-info-${id}`, class: { hide: activeTab !== Tab.EventInfo } }, h("nylas-event-info", null, h("div", { slot: "inputs" }, h("nylas-event-title", { name: "title", exportparts: "net, net__title, net__dropdown-content" }), h("nylas-event-duration", { name: "duration", exportparts: "ned, ned__dropdown, ned__dropdown-button, ned__dropdown-content, ned__input_dropdown, ned__input_dropdown-input, ned__input_dropdown-content" }), h("nylas-event-location", { name: "location", exportparts: "nel, nel__location, nel__dropdown, nel__dropdown-button, nel__dropdown-content" }), h("nylas-event-description", { name: "description", exportparts: "nedesc, nedesc__textarea" })))), h("div", { key: `availability-${id}`, class: { hide: activeTab !== Tab.Availability } }, h("nylas-participant-booking-calendars", { participants: formState.participants, name: "participant-booking-calendars" }), h("nylas-connected-calendars", { participants: formState.participants, name: "connected-calendars" }), h("nylas-availability-picker", { name: "availability", exportparts: 'nap__header, nap__select-timezone, nap__select-timezone-button, nap__select-timezone-dropdown-content, nap__availability, nap__day, nap__time-ranges, nap__time-range, nap__add-time-range, nap__time-picker-container, nap__time-picker-input, nap__time-picker-times' })), h("div", { key: `booking-options-${id}`, class: { hide: activeTab !== Tab.BookingOptions } }, h("nylas-scheduling-method", { name: "availability-method", readOnly: true, exportparts: "nsm, nsm__header, nsm__input-label, nsm__dropdown, nsm__dropdown-button, nsm__dropdown-content" }), h("nylas-custom-booking-flow", null, h("div", { slot: "inputs" }, h("nylas-booking-confirmation-type", { name: "confirmation-type", exportparts: 'nbct, nbct__header, nbct__dropdown, nbct__dropdown-button, nbct__dropdown-content' }), h("nylas-booking-confirmation-redirect", { name: "confirmation-redirect", exportparts: 'nbcr, nbcr__header, nbcr__dropdown, nbcr__dropdown-button, nbcr__dropdown-content, nbcr__input-textfield' }))), h("nylas-buffer-time", { name: "buffer-time", exportparts: 'nbt, nbt__header, nbt__body, nbt__dropdown-before, nbt__dropdown-button-before, nbt__dropdown-content-before, nbt__dropdown-after, nbt__dropdown-button-after, nbt__dropdown-content-after, nbt__preview' }), h("nylas-event-limits", null, h("div", { slot: "inputs" }, h("nylas-min-booking-notice", { name: "min-booking-notice", exportparts: "nmbn, nmbn__number-dropdown, nmbn__number-dropdown-button, nmbn__number-dropdown-content, nmbn__period-dropdown, nmbn__period-dropdown-button, nmbn__period-dropdown-content" }), h("nylas-limit-future-bookings", { name: "limit-future-bookings", exportparts: "nlfb, nlfb__number-dropdown, nlfb__number-dropdown-button, nlfb__number-dropdown-content, nlfb__period-dropdown, nlfb__period-dropdown-button, nlfb__period-dropdown-content" }), h("nylas-min-cancellation-notice", { name: "min-cancellation-notice", exportparts: "nmcn, nmcn__number-dropdown, nmcn__number-dropdown-button, nmcn__number-dropdown-content, nmcn__period-dropdown, nmcn__period-dropdown-button, nmcn__period-dropdown-content" }), h("nylas-cancellation-policy", { name: "cancellation-policy", exportparts: "ncpolicy, ncpolicy__textarea" }))), h("nylas-timeslot-interval", { name: "timeslot-interval", exportparts: "nti, nti__header, nti__input-label, nti__dropdown, nti__dropdown-button, nti__dropdown-content" }), h("nylas-customize-booking-settings", { name: "customize-booking-settings", exportparts: "ncbs, ncbs__header, ncbs__settings, ncbs__settings-div, ncbs__additional_guests, ncbs__cancellation_options, ncbs__rescheduling_options" })), h("div", { key: `communications-${id}`, class: { hide: activeTab !== Tab.Communications } }, h("div", { class: "tab-header" }, h("h3", null, "Event communications"), h("p", null, "Set up automatic confirmation emails.")), h("nylas-confirmation-email", { name: "confirmation-email-template", exportparts: 'nce, nce__tab-heading, nce__header, nce__body, nce__confirmation-email-toggle--container, nce__summary, nce__reminder-input_dropdown, nce__reminder-input_dropdown-input, nce__reminder-input_dropdown-content' })), h("div", { key: `participants-${id}`, class: { hide: activeTab !== Tab.Participants } }, h("nylas-additional-participants", { name: "participants", exportparts: "nap__title, nap__subtitle, nap__content, nap__input_group, nap__input_wrapper, nap__input, nap__remove-participant" }), h("nylas-participants-custom-availability", { participants: formState.participants, name: "participant-custom-availability", exportparts: "npca, npca__header, npca__content, npca__participant-container, npca__participant-title, npca__participant-toggle--container, npca__toggle-label, npca__toggle-input, npca__toggle-slider" })), h("div", { key: `page-styles-${id}`, class: { hide: activeTab !== Tab.PageStyles } }, h("nylas-custom-event-slug", { name: "custom-event-slug", exportparts: "nces, nces__body, nces__header, nces__drawer-toggle--container, nces__input-textfield" }), h("nylas-page-name", { name: "page-name", exportparts: "npn, npn__body, npn__header, npn__drawer-toggle--container, npn__input-textfield" }), h("nylas-page-styling", { name: "page-styling", exportparts: "nps, nps__header, nps__drawer-toggle--container, nps__body, nps__title-input-textfield, nps__company-logo-input-textfield, nps__color-picker, nps__color-picker-button, nps__color-picker-button-label, nps__color-picker-selected-label, nps__submit-button-label-input-textfield, nps__message-textarea" }, children)), h("div", { key: `booking-form-${id}`, class: { hide: activeTab !== Tab.BookingForm } }, h("nylas-booking-form-config", { name: "additional-fields" }))));
13
+ return (h(Fragment, null, h("div", { key: `event-info-${id}`, class: { hide: activeTab !== Tab.EventInfo } }, h("nylas-event-info", null, h("div", { slot: "inputs" }, h("nylas-event-title", { name: "title", exportparts: "net, net__title, net__dropdown-content" }), h("nylas-event-duration", { name: "duration", exportparts: "ned, ned__dropdown, ned__dropdown-button, ned__dropdown-content, ned__input_dropdown, ned__input_dropdown-input, ned__input_dropdown-content" }), h("nylas-event-location", { name: "location", exportparts: "nel, nel__location, nel__dropdown, nel__dropdown-button, nel__dropdown-content" }), h("nylas-event-description", { name: "description", exportparts: "nedesc, nedesc__textarea" })))), h("div", { key: `availability-${id}`, class: { hide: activeTab !== Tab.Availability } }, h("nylas-participant-booking-calendars", { participants: formState.participants, name: "participant-booking-calendars", exportparts: 'npbc, npbc__header, npbc__content, npbc__participant-container, npbc__participant-title' }), h("nylas-connected-calendars", { participants: formState.participants, name: "connected-calendars", exportparts: 'nccals, nccals__header, nccals__content, nccals__container, nccals__title, nccals__toggle-container, npbc__participant-toggle-container' }), h("nylas-availability-picker", { name: "availability", exportparts: 'nap, nap__header, nap__select-timezone, nap__select-timezone-button, nap__select-timezone-dropdown-content, nap__availability, nap__day, nap__time-ranges, nap__time-range, nap__add-time-range, nap__time-picker-container, nap__time-picker-input, nap__time-picker-times' })), h("div", { key: `booking-options-${id}`, class: { hide: activeTab !== Tab.BookingOptions } }, h("nylas-scheduling-method", { name: "availability-method", readOnly: true, exportparts: "nsm, nsm__header, nsm__input-label, nsm__dropdown, nsm__dropdown-button, nsm__dropdown-content" }), h("nylas-custom-booking-flow", { exportparts: 'ncbflow, ncbflow__header, ncbflow__title, ncbflow__content' }, h("div", { slot: "inputs" }, h("nylas-booking-confirmation-type", { name: "confirmation-type", exportparts: 'nbct, nbct__header, nbct__dropdown, nbct__dropdown-button, nbct__dropdown-content' }), h("nylas-booking-confirmation-redirect", { name: "confirmation-redirect", exportparts: 'nbcr, nbcr__header, nbcr__dropdown, nbcr__dropdown-button, nbcr__dropdown-content, nbcr__input-textfield' }))), h("nylas-buffer-time", { name: "buffer-time", exportparts: 'nbt, nbt__header, nbt__body, nbt__dropdown-before, nbt__dropdown-button-before, nbt__dropdown-content-before, nbt__dropdown-after, nbt__dropdown-button-after, nbt__dropdown-content-after, nbt__preview' }), h("nylas-event-limits", null, h("div", { slot: "inputs" }, h("nylas-min-booking-notice", { name: "min-booking-notice", exportparts: "nmbn, nmbn__number-dropdown, nmbn__number-dropdown-button, nmbn__number-dropdown-content, nmbn__period-dropdown, nmbn__period-dropdown-button, nmbn__period-dropdown-content" }), h("nylas-limit-future-bookings", { name: "limit-future-bookings", exportparts: "nlfb, nlfb__number-dropdown, nlfb__number-dropdown-button, nlfb__number-dropdown-content, nlfb__period-dropdown, nlfb__period-dropdown-button, nlfb__period-dropdown-content" }), h("nylas-min-cancellation-notice", { name: "min-cancellation-notice", exportparts: "nmcn, nmcn__number-dropdown, nmcn__number-dropdown-button, nmcn__number-dropdown-content, nmcn__period-dropdown, nmcn__period-dropdown-button, nmcn__period-dropdown-content" }), h("nylas-cancellation-policy", { name: "cancellation-policy", exportparts: "ncpolicy, ncpolicy__textarea" }))), h("nylas-timeslot-interval", { name: "timeslot-interval", exportparts: "nti, nti__header, nti__input-label, nti__dropdown, nti__dropdown-button, nti__dropdown-content" }), h("nylas-customize-booking-settings", { name: "customize-booking-settings", exportparts: "ncbs, ncbs__header, ncbs__settings, ncbs__settings-div, ncbs__additional_guests, ncbs__cancellation_options, ncbs__rescheduling_options" })), h("div", { key: `communications-${id}`, class: { hide: activeTab !== Tab.Communications } }, h("div", { class: "tab-header" }, h("h3", null, "Event communications"), h("p", null, "Set up automatic confirmation emails.")), h("nylas-confirmation-email", { name: "confirmation-email-template", exportparts: 'nce, nce__tab-heading, nce__header, nce__body, nce__confirmation-email-toggle--container, nce__summary, nce__reminder-input_dropdown, nce__reminder-input_dropdown-input, nce__reminder-input_dropdown-content' }), h("nylas-reminder-emails", { name: "reminder-emails", exportparts: 'nre, nre__tab-heading, nre__header, nre__body, nre__confirmation-email-toggle--container, nre__summary, nre__reminder-input_dropdown, nre__reminder-input_dropdown-input, nre__reminder-input_dropdown-content' })), h("div", { key: `participants-${id}`, class: { hide: activeTab !== Tab.Participants } }, h("nylas-additional-participants", { name: "participants", exportparts: "nap, nap__title, nap__subtitle, nap__content, nap__input_group, nap__input_wrapper, nap__input, nap__remove-participant" }), h("nylas-participants-custom-availability", { participants: formState.participants, name: "participant-custom-availability", exportparts: "npca, npca__header, npca__content, npca__participant-container, npca__participant-title, npca__participant-toggle--container, npca__toggle-label, npca__toggle-input, npca__toggle-slider" })), h("div", { key: `page-styles-${id}`, class: { hide: activeTab !== Tab.PageStyles } }, h("nylas-custom-event-slug", { name: "custom-event-slug", exportparts: "nces, nces__body, nces__header, nces__drawer-toggle--container, nces__input-textfield" }), h("nylas-page-name", { name: "page-name", exportparts: "npn, npn__body, npn__header, npn__drawer-toggle--container, npn__input-textfield" }), h("nylas-page-styling", { name: "page-styling", exportparts: "nps, nps__header, nps__drawer-toggle--container, nps__body, nps__title-input-textfield, nps__company-logo-input-textfield, nps__color-picker, nps__color-picker-button, nps__color-picker-button-label, nps__color-picker-selected-label, nps__submit-button-label-input-textfield, nps__message-textarea" }, children)), h("div", { key: `booking-form-${id}`, class: { hide: activeTab !== Tab.BookingForm } }, h("nylas-booking-form-config", { name: "additional-fields", exportparts: "nbfc, nbfc__header, nbfc__add_field, nbfc__add_field-button, nbfc__add_field-content, nbfc__additional_fields, nbfc__form-field, nbfc__form-field-header, nbfc__form-field-content" }))));
14
14
  }
15
15
  //# sourceMappingURL=tab-contents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab-contents.js","sourceRoot":"","sources":["../../../../src/components/scheduler-editor/nylas-editor-tabs/tab-contents.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Fragment, h } from '@stencil/core';\n\nexport enum Tab {\n EventInfo = 'eventInfo',\n Availability = 'availability',\n BookingOptions = 'bookingOptions',\n Communications = 'communications',\n Participants = 'participants',\n BookingForm = 'bookingForm',\n PageStyles = 'pageStyles',\n}\n\nexport type TabContentsProps = {\n id: string;\n formState: any;\n activeTab: Tab;\n calendars?: any[];\n currentUser?: any;\n};\n\nexport default function TabContents({ id, formState, activeTab }: TabContentsProps, children: any) {\n return (\n <Fragment>\n <div key={`event-info-${id}`} class={{ hide: activeTab !== Tab.EventInfo }}>\n <nylas-event-info>\n <div slot=\"inputs\">\n <nylas-event-title name=\"title\" exportparts=\"net, net__title, net__dropdown-content\" />\n <nylas-event-duration\n name=\"duration\"\n exportparts=\"ned, ned__dropdown, ned__dropdown-button, ned__dropdown-content, ned__input_dropdown, ned__input_dropdown-input, ned__input_dropdown-content\"\n />\n <nylas-event-location name=\"location\" exportparts=\"nel, nel__location, nel__dropdown, nel__dropdown-button, nel__dropdown-content\" />\n <nylas-event-description name=\"description\" exportparts=\"nedesc, nedesc__textarea\" />\n </div>\n </nylas-event-info>\n </div>\n <div key={`availability-${id}`} class={{ hide: activeTab !== Tab.Availability }}>\n <nylas-participant-booking-calendars participants={formState.participants} name=\"participant-booking-calendars\" />\n <nylas-connected-calendars participants={formState.participants} name=\"connected-calendars\" />\n <nylas-availability-picker\n name=\"availability\"\n exportparts={\n 'nap__header, nap__select-timezone, nap__select-timezone-button, nap__select-timezone-dropdown-content, nap__availability, nap__day, nap__time-ranges, nap__time-range, nap__add-time-range, nap__time-picker-container, nap__time-picker-input, nap__time-picker-times'\n }\n />\n </div>\n <div key={`booking-options-${id}`} class={{ hide: activeTab !== Tab.BookingOptions }}>\n <nylas-scheduling-method\n name=\"availability-method\"\n readOnly={true}\n exportparts=\"nsm, nsm__header, nsm__input-label, nsm__dropdown, nsm__dropdown-button, nsm__dropdown-content\"\n />\n <nylas-custom-booking-flow>\n <div slot=\"inputs\">\n <nylas-booking-confirmation-type name=\"confirmation-type\" exportparts={'nbct, nbct__header, nbct__dropdown, nbct__dropdown-button, nbct__dropdown-content'} />\n <nylas-booking-confirmation-redirect\n name=\"confirmation-redirect\"\n exportparts={'nbcr, nbcr__header, nbcr__dropdown, nbcr__dropdown-button, nbcr__dropdown-content, nbcr__input-textfield'}\n />\n </div>\n </nylas-custom-booking-flow>\n <nylas-buffer-time\n name=\"buffer-time\"\n exportparts={\n 'nbt, nbt__header, nbt__body, nbt__dropdown-before, nbt__dropdown-button-before, nbt__dropdown-content-before, nbt__dropdown-after, nbt__dropdown-button-after, nbt__dropdown-content-after, nbt__preview'\n }\n />\n <nylas-event-limits>\n <div slot=\"inputs\">\n <nylas-min-booking-notice\n name=\"min-booking-notice\"\n exportparts=\"nmbn, nmbn__number-dropdown, nmbn__number-dropdown-button, nmbn__number-dropdown-content, nmbn__period-dropdown, nmbn__period-dropdown-button, nmbn__period-dropdown-content\"\n />\n <nylas-limit-future-bookings\n name=\"limit-future-bookings\"\n exportparts=\"nlfb, nlfb__number-dropdown, nlfb__number-dropdown-button, nlfb__number-dropdown-content, nlfb__period-dropdown, nlfb__period-dropdown-button, nlfb__period-dropdown-content\"\n />\n <nylas-min-cancellation-notice\n name=\"min-cancellation-notice\"\n exportparts=\"nmcn, nmcn__number-dropdown, nmcn__number-dropdown-button, nmcn__number-dropdown-content, nmcn__period-dropdown, nmcn__period-dropdown-button, nmcn__period-dropdown-content\"\n />\n <nylas-cancellation-policy name=\"cancellation-policy\" exportparts=\"ncpolicy, ncpolicy__textarea\" />\n </div>\n </nylas-event-limits>\n <nylas-timeslot-interval name=\"timeslot-interval\" exportparts=\"nti, nti__header, nti__input-label, nti__dropdown, nti__dropdown-button, nti__dropdown-content\" />\n <nylas-customize-booking-settings\n name=\"customize-booking-settings\"\n exportparts=\"ncbs, ncbs__header, ncbs__settings, ncbs__settings-div, ncbs__additional_guests, ncbs__cancellation_options, ncbs__rescheduling_options\"\n />\n </div>\n <div key={`communications-${id}`} class={{ hide: activeTab !== Tab.Communications }}>\n <div class=\"tab-header\">\n <h3>Event communications</h3>\n <p>Set up automatic confirmation emails.</p>\n </div>\n <nylas-confirmation-email\n name=\"confirmation-email-template\"\n exportparts={\n 'nce, nce__tab-heading, nce__header, nce__body, nce__confirmation-email-toggle--container, nce__summary, nce__reminder-input_dropdown, nce__reminder-input_dropdown-input, nce__reminder-input_dropdown-content'\n }\n />\n {/* <nylas-reminder-emails\n name=\"reminder-emails\"\n exportparts={\n 'nre, nre__tab-heading, nre__header, nre__body, nre__confirmation-email-toggle--container, nre__summary, nre__reminder-input_dropdown, nre__reminder-input_dropdown-input, nre__reminder-input_dropdown-content'\n }\n /> */}\n </div>\n <div key={`participants-${id}`} class={{ hide: activeTab !== Tab.Participants }}>\n <nylas-additional-participants\n name=\"participants\"\n exportparts=\"nap__title, nap__subtitle, nap__content, nap__input_group, nap__input_wrapper, nap__input, nap__remove-participant\"\n />\n <nylas-participants-custom-availability\n participants={formState.participants}\n name=\"participant-custom-availability\"\n exportparts=\"npca, npca__header, npca__content, npca__participant-container, npca__participant-title, npca__participant-toggle--container, npca__toggle-label, npca__toggle-input, npca__toggle-slider\"\n />\n </div>\n <div key={`page-styles-${id}`} class={{ hide: activeTab !== Tab.PageStyles }}>\n <nylas-custom-event-slug name=\"custom-event-slug\" exportparts=\"nces, nces__body, nces__header, nces__drawer-toggle--container, nces__input-textfield\" />\n <nylas-page-name name=\"page-name\" exportparts=\"npn, npn__body, npn__header, npn__drawer-toggle--container, npn__input-textfield\" />\n <nylas-page-styling\n name=\"page-styling\"\n exportparts=\"nps, nps__header, nps__drawer-toggle--container, nps__body, nps__title-input-textfield, nps__company-logo-input-textfield, nps__color-picker, nps__color-picker-button, nps__color-picker-button-label, nps__color-picker-selected-label, nps__submit-button-label-input-textfield, nps__message-textarea\"\n >\n {children}\n </nylas-page-styling>\n </div>\n <div key={`booking-form-${id}`} class={{ hide: activeTab !== Tab.BookingForm }}>\n <nylas-booking-form-config name=\"additional-fields\" />\n </div>\n </Fragment>\n );\n}\n"]}
1
+ {"version":3,"file":"tab-contents.js","sourceRoot":"","sources":["../../../../src/components/scheduler-editor/nylas-editor-tabs/tab-contents.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Fragment, h } from '@stencil/core';\n\nexport enum Tab {\n EventInfo = 'eventInfo',\n Availability = 'availability',\n BookingOptions = 'bookingOptions',\n Communications = 'communications',\n Participants = 'participants',\n BookingForm = 'bookingForm',\n PageStyles = 'pageStyles',\n}\n\nexport type TabContentsProps = {\n id: string;\n formState: any;\n activeTab: Tab;\n calendars?: any[];\n currentUser?: any;\n};\n\nexport default function TabContents({ id, formState, activeTab }: TabContentsProps, children: any) {\n return (\n <Fragment>\n <div key={`event-info-${id}`} class={{ hide: activeTab !== Tab.EventInfo }}>\n <nylas-event-info>\n <div slot=\"inputs\">\n <nylas-event-title name=\"title\" exportparts=\"net, net__title, net__dropdown-content\" />\n <nylas-event-duration\n name=\"duration\"\n exportparts=\"ned, ned__dropdown, ned__dropdown-button, ned__dropdown-content, ned__input_dropdown, ned__input_dropdown-input, ned__input_dropdown-content\"\n />\n <nylas-event-location name=\"location\" exportparts=\"nel, nel__location, nel__dropdown, nel__dropdown-button, nel__dropdown-content\" />\n <nylas-event-description name=\"description\" exportparts=\"nedesc, nedesc__textarea\" />\n </div>\n </nylas-event-info>\n </div>\n <div key={`availability-${id}`} class={{ hide: activeTab !== Tab.Availability }}>\n <nylas-participant-booking-calendars\n participants={formState.participants}\n name=\"participant-booking-calendars\"\n exportparts={'npbc, npbc__header, npbc__content, npbc__participant-container, npbc__participant-title'}\n />\n <nylas-connected-calendars\n participants={formState.participants}\n name=\"connected-calendars\"\n exportparts={'nccals, nccals__header, nccals__content, nccals__container, nccals__title, nccals__toggle-container, npbc__participant-toggle-container'}\n />\n <nylas-availability-picker\n name=\"availability\"\n exportparts={\n 'nap, nap__header, nap__select-timezone, nap__select-timezone-button, nap__select-timezone-dropdown-content, nap__availability, nap__day, nap__time-ranges, nap__time-range, nap__add-time-range, nap__time-picker-container, nap__time-picker-input, nap__time-picker-times'\n }\n />\n </div>\n <div key={`booking-options-${id}`} class={{ hide: activeTab !== Tab.BookingOptions }}>\n <nylas-scheduling-method\n name=\"availability-method\"\n readOnly={true}\n exportparts=\"nsm, nsm__header, nsm__input-label, nsm__dropdown, nsm__dropdown-button, nsm__dropdown-content\"\n />\n <nylas-custom-booking-flow exportparts={'ncbflow, ncbflow__header, ncbflow__title, ncbflow__content'}>\n <div slot=\"inputs\">\n <nylas-booking-confirmation-type name=\"confirmation-type\" exportparts={'nbct, nbct__header, nbct__dropdown, nbct__dropdown-button, nbct__dropdown-content'} />\n <nylas-booking-confirmation-redirect\n name=\"confirmation-redirect\"\n exportparts={'nbcr, nbcr__header, nbcr__dropdown, nbcr__dropdown-button, nbcr__dropdown-content, nbcr__input-textfield'}\n />\n </div>\n </nylas-custom-booking-flow>\n <nylas-buffer-time\n name=\"buffer-time\"\n exportparts={\n 'nbt, nbt__header, nbt__body, nbt__dropdown-before, nbt__dropdown-button-before, nbt__dropdown-content-before, nbt__dropdown-after, nbt__dropdown-button-after, nbt__dropdown-content-after, nbt__preview'\n }\n />\n <nylas-event-limits>\n <div slot=\"inputs\">\n <nylas-min-booking-notice\n name=\"min-booking-notice\"\n exportparts=\"nmbn, nmbn__number-dropdown, nmbn__number-dropdown-button, nmbn__number-dropdown-content, nmbn__period-dropdown, nmbn__period-dropdown-button, nmbn__period-dropdown-content\"\n />\n <nylas-limit-future-bookings\n name=\"limit-future-bookings\"\n exportparts=\"nlfb, nlfb__number-dropdown, nlfb__number-dropdown-button, nlfb__number-dropdown-content, nlfb__period-dropdown, nlfb__period-dropdown-button, nlfb__period-dropdown-content\"\n />\n <nylas-min-cancellation-notice\n name=\"min-cancellation-notice\"\n exportparts=\"nmcn, nmcn__number-dropdown, nmcn__number-dropdown-button, nmcn__number-dropdown-content, nmcn__period-dropdown, nmcn__period-dropdown-button, nmcn__period-dropdown-content\"\n />\n <nylas-cancellation-policy name=\"cancellation-policy\" exportparts=\"ncpolicy, ncpolicy__textarea\" />\n </div>\n </nylas-event-limits>\n <nylas-timeslot-interval name=\"timeslot-interval\" exportparts=\"nti, nti__header, nti__input-label, nti__dropdown, nti__dropdown-button, nti__dropdown-content\" />\n <nylas-customize-booking-settings\n name=\"customize-booking-settings\"\n exportparts=\"ncbs, ncbs__header, ncbs__settings, ncbs__settings-div, ncbs__additional_guests, ncbs__cancellation_options, ncbs__rescheduling_options\"\n />\n </div>\n <div key={`communications-${id}`} class={{ hide: activeTab !== Tab.Communications }}>\n <div class=\"tab-header\">\n <h3>Event communications</h3>\n <p>Set up automatic confirmation emails.</p>\n </div>\n <nylas-confirmation-email\n name=\"confirmation-email-template\"\n exportparts={\n 'nce, nce__tab-heading, nce__header, nce__body, nce__confirmation-email-toggle--container, nce__summary, nce__reminder-input_dropdown, nce__reminder-input_dropdown-input, nce__reminder-input_dropdown-content'\n }\n />\n <nylas-reminder-emails\n name=\"reminder-emails\"\n exportparts={\n 'nre, nre__tab-heading, nre__header, nre__body, nre__confirmation-email-toggle--container, nre__summary, nre__reminder-input_dropdown, nre__reminder-input_dropdown-input, nre__reminder-input_dropdown-content'\n }\n />\n </div>\n <div key={`participants-${id}`} class={{ hide: activeTab !== Tab.Participants }}>\n <nylas-additional-participants\n name=\"participants\"\n exportparts=\"nap, nap__title, nap__subtitle, nap__content, nap__input_group, nap__input_wrapper, nap__input, nap__remove-participant\"\n />\n <nylas-participants-custom-availability\n participants={formState.participants}\n name=\"participant-custom-availability\"\n exportparts=\"npca, npca__header, npca__content, npca__participant-container, npca__participant-title, npca__participant-toggle--container, npca__toggle-label, npca__toggle-input, npca__toggle-slider\"\n />\n </div>\n <div key={`page-styles-${id}`} class={{ hide: activeTab !== Tab.PageStyles }}>\n <nylas-custom-event-slug name=\"custom-event-slug\" exportparts=\"nces, nces__body, nces__header, nces__drawer-toggle--container, nces__input-textfield\" />\n <nylas-page-name name=\"page-name\" exportparts=\"npn, npn__body, npn__header, npn__drawer-toggle--container, npn__input-textfield\" />\n <nylas-page-styling\n name=\"page-styling\"\n exportparts=\"nps, nps__header, nps__drawer-toggle--container, nps__body, nps__title-input-textfield, nps__company-logo-input-textfield, nps__color-picker, nps__color-picker-button, nps__color-picker-button-label, nps__color-picker-selected-label, nps__submit-button-label-input-textfield, nps__message-textarea\"\n >\n {children}\n </nylas-page-styling>\n </div>\n <div key={`booking-form-${id}`} class={{ hide: activeTab !== Tab.BookingForm }}>\n <nylas-booking-form-config\n name=\"additional-fields\"\n exportparts=\"nbfc, nbfc__header, nbfc__add_field, nbfc__add_field-button, nbfc__add_field-content, nbfc__additional_fields, nbfc__form-field, nbfc__form-field-header, nbfc__form-field-content\"\n />\n </div>\n </Fragment>\n );\n}\n"]}