@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
- {"file":"nylas-timeslot-interval2.js","mappings":"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","names":[],"sources":["src/components/scheduler-editor/nylas-timeslot-interval/nylas-timeslot-interval.scss?tag=nylas-timeslot-interval&encapsulation=shadow","src/components/scheduler-editor/nylas-timeslot-interval/nylas-timeslot-interval.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n\n:host {\n display: block;\n @include default-css-variables;\n width: inherit;\n}\n\n.nylas-timeslot-interval {\n width: inherit;\n display: flex;\n flex-direction: column;\n margin: 1rem;\n border-radius: var(--nylas-border-radius-2x);\n border: 1px solid var(--nylas-base-200);\n .header {\n padding: 1rem;\n border-bottom: 1px solid var(--nylas-base-200);\n h3 {\n margin: 0;\n font-size: 1rem;\n font-weight: 600;\n line-height: 20px;\n color: var(--nylas-base-900);\n text-align: left;\n }\n p {\n margin: 0.25rem 0 0 0;\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 20px;\n color: var(--nylas-base-600);\n text-align: left;\n }\n }\n .nylas-timeslot-interval__dropdown {\n padding: 1rem;\n display: flex;\n flex-direction: column;\n gap: 4px;\n span.label {\n display: flex;\n align-items: center;\n gap: 4px;\n color: var(--nylas-base-800);\n tooltip-component {\n display: flex;\n }\n }\n select-dropdown {\n margin-bottom: 1.5rem;\n }\n select-dropdown::part(sd_dropdown) {\n width: 100%;\n }\n select-dropdown::part(sd_dropdown-content) {\n width: 100%;\n max-width: unset;\n }\n select-dropdown::part(sd_dropdown-button) {\n width: 100%;\n display: flex;\n justify-content: space-between;\n align-items: center;\n border: 1px solid var(--nylas-base-200);\n border-radius: var(--nylas-border-radius-2x);\n padding: 1rem;\n }\n select-dropdown::part(sd_dropdown-button-selected-label) {\n max-width: calc(100% - 2rem);\n font-family: var(--nylas-font-family);\n font-size: 16px;\n line-height: 24px;\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { AttachInternals, Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport { Configuration } from '@nylas/core';\n\nconst defaultRoundToMinutes = 15;\n/**\n * The `nylas-timeslot-interval` component allows users to set their time slot interval preferences.\n * This component provides an option to set both `interval_minutes` and `round_to` in the configuration.\n *\n * @part nti - The timeslot interval container\n * @part nti__header - The header of the timeslot interval picker\n * @part nti__input-label - The input label of the timeslot interval picker\n * @part nti__dropdown - The dropdown container\n * @part nti__dropdown-button - The dropdown button\n * @part nti__dropdown-content - The dropdown content\n */\n@Component({\n tag: 'nylas-timeslot-interval',\n styleUrl: 'nylas-timeslot-interval.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasTimeslotInterval {\n @Element() host!: HTMLNylasTimeslotIntervalElement;\n /**\n * The selected config\n */\n @Prop() selectedConfiguration?: Configuration;\n /**\n * The name of the calendar picker.\n */\n @Prop() name: string = 'timeslot-picker';\n\n /**\n * The event duration in minutes.\n */\n @Prop() eventDurationMinutes?: number = this.selectedConfiguration?.availability?.duration_minutes;\n /**\n * @deprecated The default interval minutes.\n */\n @Prop() defaultIntervalMinutes: number = this.selectedConfiguration?.availability?.interval_minutes ?? this.eventDurationMinutes ?? 10;\n /**\n * @deprecated The round to option in minutes as set in the configuration.\n */\n @Prop() defaultRoundTo?: number = this.selectedConfiguration?.availability?.round_to ?? undefined;\n\n /**\n * The element internals.\n */\n @AttachInternals() internals!: ElementInternals;\n\n /**\n * The internal event duration minutes state.\n */\n @State() internalEventDurationMinutes!: number;\n\n /**\n * The selected interval minutes.\n */\n @State() selectedInterval!: number;\n\n /**\n * The selected round to minutes.\n */\n @State() selectedRoundTo!: boolean;\n\n /***\n * The state to store that component is ready to render.\n */\n @State() componentLoaded: boolean = false;\n\n /**\n * This event is fired when the selected booking calendar changes.\n */\n @Event() valueChanged!: EventEmitter<{\n value: string;\n name: string;\n }>;\n\n /**\n * When a name prop is passed, stencil does not automatically set the name attribute on the host element.\n * Since this component is form-associated, the name attribute is required for form submission.\n * This is a workaround to ensure that the name attribute is set on the host element.\n */\n @Watch('name')\n elementNameChangedHandler(newValue: string) {\n debug('nylas-timeslot-interval', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @Watch('selectedConfiguration')\n selectedConfigurationChangedHandler(newValue: Configuration) {\n debug('nylas-timeslot-interval', 'selectedConfigurationChangedHandler', newValue);\n this.internalEventDurationMinutes = newValue?.availability?.duration_minutes ?? this.eventDurationMinutes ?? 30;\n const internalIntervalMinutes = newValue.availability?.interval_minutes ?? this.internalEventDurationMinutes ?? 30;\n this.selectedInterval = newValue.availability?.interval_minutes ?? internalIntervalMinutes ?? 10;\n const roundToMinutes = newValue.availability?.round_to || null;\n this.selectedRoundTo = roundToMinutes && roundToMinutes === internalIntervalMinutes ? true : false;\n }\n\n // Lifecycle methods\n connectedCallback() {\n debug('nylas-timeslot-interval', 'connectedCallback');\n }\n\n disconnectedCallback() {\n debug('nylas-timeslot-interval', 'disconnectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-timeslot-interval', 'componentWillLoad');\n // See comment in the @Watch('name') decorator for more information.\n this.host.setAttribute('name', this.name);\n }\n\n componentDidLoad() {\n debug('nylas-timeslot-interval', 'componentDidLoad');\n if (this.selectedConfiguration) {\n this.selectedConfigurationChangedHandler(this.selectedConfiguration);\n } else {\n this.internalEventDurationMinutes = this.eventDurationMinutes ?? 30;\n const internalIntervalMinutes = this.internalEventDurationMinutes;\n this.selectedInterval = internalIntervalMinutes ?? 10;\n this.selectedRoundTo = false;\n }\n this.componentLoaded = true;\n }\n\n componentWillUpdate() {\n debug('nylas-timeslot-interval', 'componentWillUpdate');\n }\n\n componentDidUpdate() {\n debug('nylas-timeslot-interval', 'componentDidUpdate');\n }\n\n componentWillRender() {\n debug('nylas-timeslot-interval', 'componentWillRender');\n }\n\n componentDidRender() {\n debug('nylas-timeslot-interval', 'componentDidRender');\n }\n\n @Listen('nylasFormDropdownChanged')\n nylasFormDropdownChangedHandler(event: CustomEvent<{ value: string; name: string }>) {\n debug('nylas-timeslot-interval', 'nylasFormDropdownChangedHandler', event.detail);\n const value = event.detail.value;\n if (value === 'duration') {\n this.selectedInterval = this.internalEventDurationMinutes ?? 10;\n } else {\n this.selectedInterval = parseInt(event.detail.value);\n }\n\n this.valueChanged.emit({\n value: JSON.stringify({\n interval: this.selectedInterval,\n roundTo: this.selectedRoundTo ? this.selectedInterval : defaultRoundToMinutes,\n }),\n name: this.name,\n });\n if (typeof this.internals.setFormValue === 'function') {\n this.internals.setFormValue(JSON.stringify({ interval: this.selectedInterval, roundTo: this.selectedRoundTo ? this.selectedInterval : defaultRoundToMinutes }), this.name);\n }\n }\n\n @Listen('nylasFormRadioChanged')\n nylasFormRadioChangedHandler(event: CustomEvent<{ value: string; name: string }>) {\n debug('nylas-timeslot-interval', 'nylasFormRadioChangedHandler', event.detail);\n const value = event.detail.value;\n if (value === 'no-rounding') {\n this.selectedRoundTo = false;\n } else {\n this.selectedRoundTo = true;\n }\n\n this.valueChanged.emit({\n value: JSON.stringify({\n interval: this.selectedInterval,\n roundTo: this.selectedRoundTo ? this.selectedInterval : defaultRoundToMinutes,\n }),\n name: this.name,\n });\n if (typeof this.internals.setFormValue === 'function') {\n this.internals.setFormValue(JSON.stringify({ interval: this.selectedInterval, roundTo: this.selectedRoundTo ? this.selectedInterval : defaultRoundToMinutes }), this.name);\n }\n }\n\n @RegisterComponent<NylasTimeslotInterval, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-timeslot-interval',\n stateToProps: new Map([['schedulerConfig.selectedConfiguration', 'selectedConfiguration']]),\n fireRegisterEvent: true,\n })\n render() {\n const intervalPreferenceOptions = [\n { value: 'duration', label: 'Length of the booking' },\n { value: '5', label: '5 mins' },\n { value: '10', label: '10 mins' },\n { value: '15', label: '15 mins' },\n { value: '20', label: '20 mins' },\n { value: '30', label: '30 mins' },\n { value: '45', label: '45 mins' },\n { value: '60', label: '60 mins' },\n ];\n\n const defaultSelectedInterval =\n typeof this.selectedInterval !== 'undefined'\n ? this.selectedInterval == this.internalEventDurationMinutes\n ? intervalPreferenceOptions[0]\n : intervalPreferenceOptions.find(op => op.value == this.selectedInterval.toString()) ?? intervalPreferenceOptions[0]\n : undefined;\n\n return (\n <Host>\n <div class=\"nylas-timeslot-interval\" part=\"nti\">\n <div class=\"header\" part=\"nti__header\">\n <h3>Time slot settings</h3>\n </div>\n\n <div class=\"nylas-timeslot-interval__dropdown\">\n <span class=\"label\" part=\"nti__input-label\">\n Time slot interval.\n </span>\n {defaultSelectedInterval?.label && (\n <select-dropdown\n name=\"interval-minutes\"\n options={intervalPreferenceOptions}\n withSearch={false}\n exportparts=\"sd_dropdown: nti__dropdown, sd_dropdown-button: nti__dropdown-button, sd_dropdown-content: nti__dropdown-content\"\n defaultSelectedOption={defaultSelectedInterval}\n />\n )}\n <span slot=\"label\" class=\"label\" part=\"nti__input-label\">\n Time slot rounding type\n <tooltip-component>\n <info-icon slot=\"tooltip-icon\" />\n <span slot=\"tooltip-content\">Select if you want to round the time slots to the nearest interval.</span>\n </tooltip-component>\n </span>\n {this.componentLoaded && (\n <radio-button-group\n name=\"interval-preference\"\n defaultSelectedValue={this.selectedRoundTo ? 'rounding' : 'no-rounding'}\n options={[\n { value: 'no-rounding', label: 'Default', description: 'Time slots will be rounded to the nearest quarter-hour.' },\n {\n value: 'rounding',\n label: 'Interval rounding',\n description: 'Time slots will begin at times rounded to the interval value.',\n },\n ]}\n />\n )}\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nylas-timeslot-interval2.js","mappings":"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","names":[],"sources":["src/components/scheduler-editor/nylas-timeslot-interval/nylas-timeslot-interval.scss?tag=nylas-timeslot-interval&encapsulation=shadow","src/components/scheduler-editor/nylas-timeslot-interval/nylas-timeslot-interval.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n\n:host {\n display: block;\n @include default-css-variables;\n width: inherit;\n}\n\n.nylas-timeslot-interval {\n width: inherit;\n display: flex;\n flex-direction: column;\n margin: 1rem;\n border-radius: var(--nylas-border-radius-2x);\n border: 1px solid var(--nylas-base-200);\n .header {\n padding: 1rem;\n border-bottom: 1px solid var(--nylas-base-200);\n h3 {\n margin: 0;\n font-size: 1rem;\n font-weight: 600;\n line-height: 20px;\n color: var(--nylas-base-900);\n text-align: left;\n }\n p {\n margin: 0.25rem 0 0 0;\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 20px;\n color: var(--nylas-base-600);\n text-align: left;\n }\n }\n .nylas-timeslot-interval__dropdown {\n padding: 1rem;\n display: flex;\n flex-direction: column;\n gap: 4px;\n span.label {\n display: flex;\n align-items: center;\n gap: 4px;\n color: var(--nylas-base-800);\n tooltip-component {\n display: flex;\n }\n }\n select-dropdown {\n margin-bottom: 1.5rem;\n }\n select-dropdown::part(sd_dropdown) {\n width: 100%;\n }\n select-dropdown::part(sd_dropdown-content) {\n width: 100%;\n max-width: unset;\n }\n select-dropdown::part(sd_dropdown-button) {\n width: 100%;\n display: flex;\n justify-content: space-between;\n align-items: center;\n border: 1px solid var(--nylas-base-200);\n border-radius: var(--nylas-border-radius-2x);\n padding: 1rem;\n }\n select-dropdown::part(sd_dropdown-button-selected-label) {\n max-width: calc(100% - 2rem);\n font-family: var(--nylas-font-family);\n font-size: 16px;\n line-height: 24px;\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { AttachInternals, Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport { Configuration } from '@nylas/core';\n\nconst defaultRoundToMinutes = 15;\n/**\n * The `nylas-timeslot-interval` component allows users to set their time slot interval preferences.\n * This component provides an option to set both `interval_minutes` and `round_to` in the configuration.\n *\n * @part nti - The timeslot interval container\n * @part nti__header - The header of the timeslot interval picker\n * @part nti__input-label - The input label of the timeslot interval picker\n * @part nti__dropdown - The dropdown container\n * @part nti__dropdown-button - The dropdown button\n * @part nti__dropdown-content - The dropdown content\n */\n@Component({\n tag: 'nylas-timeslot-interval',\n styleUrl: 'nylas-timeslot-interval.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasTimeslotInterval {\n @Element() host!: HTMLNylasTimeslotIntervalElement;\n /**\n * @standalone\n * The selected config\n */\n @Prop() selectedConfiguration?: Configuration;\n /**\n * @standalone\n * The name of the calendar picker.\n */\n @Prop() name: string = 'timeslot-picker';\n\n /**\n * @standalone\n * The event duration in minutes.\n */\n @Prop() eventDurationMinutes?: number = this.selectedConfiguration?.availability?.duration_minutes;\n\n /**\n * The element internals.\n */\n @AttachInternals() internals!: ElementInternals;\n\n /**\n * The internal event duration minutes state.\n */\n @State() internalEventDurationMinutes!: number;\n\n /**\n * The selected interval minutes.\n */\n @State() selectedInterval!: number;\n\n /**\n * The selected round to minutes.\n */\n @State() selectedRoundTo!: boolean;\n\n /***\n * The state to store that component is ready to render.\n */\n @State() componentLoaded: boolean = false;\n\n /**\n * This event is fired when the selected booking calendar changes.\n */\n @Event() valueChanged!: EventEmitter<{\n value: string;\n name: string;\n }>;\n\n /**\n * When a name prop is passed, stencil does not automatically set the name attribute on the host element.\n * Since this component is form-associated, the name attribute is required for form submission.\n * This is a workaround to ensure that the name attribute is set on the host element.\n */\n @Watch('name')\n elementNameChangedHandler(newValue: string) {\n debug('nylas-timeslot-interval', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @Watch('selectedConfiguration')\n selectedConfigurationChangedHandler(newValue: Configuration) {\n debug('nylas-timeslot-interval', 'selectedConfigurationChangedHandler', newValue);\n this.internalEventDurationMinutes = newValue?.availability?.duration_minutes ?? this.eventDurationMinutes ?? 30;\n const internalIntervalMinutes = newValue?.availability?.interval_minutes ?? this.internalEventDurationMinutes ?? 30;\n this.selectedInterval = newValue?.availability?.interval_minutes ?? internalIntervalMinutes ?? 10;\n const roundToMinutes = newValue?.availability?.round_to || null;\n this.selectedRoundTo = roundToMinutes && roundToMinutes === internalIntervalMinutes ? true : false;\n }\n\n // Lifecycle methods\n connectedCallback() {\n debug('nylas-timeslot-interval', 'connectedCallback');\n }\n\n disconnectedCallback() {\n debug('nylas-timeslot-interval', 'disconnectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-timeslot-interval', 'componentWillLoad');\n // See comment in the @Watch('name') decorator for more information.\n this.host.setAttribute('name', this.name);\n }\n\n componentDidLoad() {\n debug('nylas-timeslot-interval', 'componentDidLoad');\n if (this.selectedConfiguration) {\n this.selectedConfigurationChangedHandler(this.selectedConfiguration);\n } else {\n this.internalEventDurationMinutes = this.eventDurationMinutes ?? 30;\n const internalIntervalMinutes = this.internalEventDurationMinutes;\n this.selectedInterval = internalIntervalMinutes ?? 10;\n this.selectedRoundTo = false;\n }\n this.componentLoaded = true;\n }\n\n componentWillUpdate() {\n debug('nylas-timeslot-interval', 'componentWillUpdate');\n }\n\n componentDidUpdate() {\n debug('nylas-timeslot-interval', 'componentDidUpdate');\n }\n\n componentWillRender() {\n debug('nylas-timeslot-interval', 'componentWillRender');\n }\n\n componentDidRender() {\n debug('nylas-timeslot-interval', 'componentDidRender');\n }\n\n @Listen('nylasFormDropdownChanged')\n nylasFormDropdownChangedHandler(event: CustomEvent<{ value: string; name: string }>) {\n debug('nylas-timeslot-interval', 'nylasFormDropdownChangedHandler', event.detail);\n const value = event.detail.value;\n if (value === 'duration') {\n this.selectedInterval = this.internalEventDurationMinutes ?? 10;\n } else {\n this.selectedInterval = parseInt(event.detail.value);\n }\n\n this.valueChanged.emit({\n value: JSON.stringify({\n interval: this.selectedInterval,\n roundTo: this.selectedRoundTo ? this.selectedInterval : defaultRoundToMinutes,\n }),\n name: this.name,\n });\n if (typeof this.internals.setFormValue === 'function') {\n this.internals.setFormValue(JSON.stringify({ interval: this.selectedInterval, roundTo: this.selectedRoundTo ? this.selectedInterval : defaultRoundToMinutes }), this.name);\n }\n }\n\n @Listen('nylasFormRadioChanged')\n nylasFormRadioChangedHandler(event: CustomEvent<{ value: string; name: string }>) {\n debug('nylas-timeslot-interval', 'nylasFormRadioChangedHandler', event.detail);\n const value = event.detail.value;\n if (value === 'no-rounding') {\n this.selectedRoundTo = false;\n } else {\n this.selectedRoundTo = true;\n }\n\n this.valueChanged.emit({\n value: JSON.stringify({\n interval: this.selectedInterval,\n roundTo: this.selectedRoundTo ? this.selectedInterval : defaultRoundToMinutes,\n }),\n name: this.name,\n });\n if (typeof this.internals.setFormValue === 'function') {\n this.internals.setFormValue(JSON.stringify({ interval: this.selectedInterval, roundTo: this.selectedRoundTo ? this.selectedInterval : defaultRoundToMinutes }), this.name);\n }\n }\n\n @RegisterComponent<NylasTimeslotInterval, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-timeslot-interval',\n stateToProps: new Map([['schedulerConfig.selectedConfiguration', 'selectedConfiguration']]),\n fireRegisterEvent: true,\n })\n render() {\n const intervalPreferenceOptions = [\n { value: 'duration', label: 'Length of the booking' },\n { value: '5', label: '5 mins' },\n { value: '10', label: '10 mins' },\n { value: '15', label: '15 mins' },\n { value: '20', label: '20 mins' },\n { value: '30', label: '30 mins' },\n { value: '45', label: '45 mins' },\n { value: '60', label: '60 mins' },\n ];\n\n const defaultSelectedInterval =\n typeof this.selectedInterval !== 'undefined'\n ? this.selectedInterval == this.internalEventDurationMinutes\n ? intervalPreferenceOptions[0]\n : intervalPreferenceOptions.find(op => op.value == this.selectedInterval.toString()) ?? intervalPreferenceOptions[0]\n : undefined;\n\n return (\n <Host>\n <div class=\"nylas-timeslot-interval\" part=\"nti\">\n <div class=\"header\" part=\"nti__header\">\n <h3>Time slot settings</h3>\n </div>\n\n <div class=\"nylas-timeslot-interval__dropdown\">\n <span class=\"label\" part=\"nti__input-label\">\n Time slot interval.\n </span>\n {defaultSelectedInterval?.label && (\n <select-dropdown\n name=\"interval-minutes\"\n options={intervalPreferenceOptions}\n withSearch={false}\n exportparts=\"sd_dropdown: nti__dropdown, sd_dropdown-button: nti__dropdown-button, sd_dropdown-content: nti__dropdown-content\"\n defaultSelectedOption={defaultSelectedInterval}\n />\n )}\n <span slot=\"label\" class=\"label\" part=\"nti__input-label\">\n Time slot rounding type\n <tooltip-component>\n <info-icon slot=\"tooltip-icon\" />\n <span slot=\"tooltip-content\">Select if you want to round the time slots to the nearest interval.</span>\n </tooltip-component>\n </span>\n {this.componentLoaded && (\n <radio-button-group\n name=\"interval-preference\"\n defaultSelectedValue={this.selectedRoundTo ? 'rounding' : 'no-rounding'}\n options={[\n { value: 'no-rounding', label: 'Default', description: 'Time slots will be rounded to the nearest quarter-hour.' },\n {\n value: 'rounding',\n label: 'Interval rounding',\n description: 'Time slots will begin at times rounded to the interval value.',\n },\n ]}\n />\n )}\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -4,7 +4,7 @@ import { a as debug, n as instance, y as isSameDay } from './utils.js';
4
4
  import { d as defineCustomElement$2 } from './button-component2.js';
5
5
  import { d as defineCustomElement$1 } from './loading.js';
6
6
 
7
- const nylasTimeslotPickerCss = ":host{display:block;height:calc(100% - 48px)}.time-picker-wrapper{display:flex;flex-direction:column;height:100%}.timeslots{position:relative;display:flex;flex-direction:column;gap:0.75rem;align-items:center;overflow-y:scroll;padding:0.5rem 1.5rem 1.5rem;flex:1}.time{box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:4px 12px;gap:0.5rem;font-size:16px;font-weight:500;font-family:inherit;width:100%;height:48px;color:var(--nylas-base-800);background:var(--nylas-base-0);border:none;outline:1.5px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);flex:none;order:4;align-self:stretch;flex-grow:0;cursor:pointer}.time:hover,.time:focus{color:var(--nylas-primary);outline-color:var(--nylas-primary)}.time.selected{font-weight:600;color:var(--nylas-primary);outline:2px solid var(--nylas-primary);border-color:transparent;box-shadow:0 0 0 2px var(--nylas-primary)}.empty{text-align:center;padding:0 1.5rem;color:var(--nylas-base-600);font-size:min(max(12px, 2vw), 14px);height:450px;display:flex;align-items:center;justify-content:center}@keyframes pulsate{0%{background-color:var(--nylas-base-50)}50%{background-color:var(--nylas-base-100)}100%{background-color:var(--nylas-base-50)}}.loading{padding:0 1.5rem}.loading .timeslot-skeleton{width:100%;height:4rem;background-color:var(--nylas-base-50);margin-bottom:0.5rem;border-radius:var(--nylas-border-radius-2x);animation:pulsate 1.5s infinite ease-in-out}.footer{width:100%;padding:14px;box-sizing:border-box;border-top:1px solid var(--nylas-base-200)}";
7
+ const nylasTimeslotPickerCss = ":host{display:block;height:calc(100% - 48px);--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif}.time-picker-wrapper{display:flex;flex-direction:column;height:100%}.timeslots{position:relative;display:flex;flex-direction:column;gap:0.75rem;align-items:center;overflow-y:scroll;padding:0.5rem 1.5rem 1.5rem;flex:1}.time{box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:4px 12px;gap:0.5rem;font-size:16px;font-weight:500;font-family:inherit;width:100%;height:48px;color:var(--nylas-base-800);background:var(--nylas-base-0);border:none;outline:1.5px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);flex:none;order:4;align-self:stretch;flex-grow:0;cursor:pointer}.time:hover,.time:focus{color:var(--nylas-primary);outline-color:var(--nylas-primary)}.time.selected{font-weight:600;color:var(--nylas-primary);outline:2px solid var(--nylas-primary);border-color:transparent;box-shadow:0 0 0 2px var(--nylas-primary)}.empty{text-align:center;padding:0 1.5rem;color:var(--nylas-base-600);font-size:min(max(12px, 2vw), 14px);height:450px;display:flex;align-items:center;justify-content:center}@keyframes pulsate{0%{background-color:var(--nylas-base-50)}50%{background-color:var(--nylas-base-100)}100%{background-color:var(--nylas-base-50)}}.loading{padding:0 1.5rem}.loading .timeslot-skeleton{width:100%;height:4rem;background-color:var(--nylas-base-50);margin-bottom:0.5rem;border-radius:var(--nylas-border-radius-2x);animation:pulsate 1.5s infinite ease-in-out}.footer{width:100%;padding:14px;box-sizing:border-box;border-top:1px solid var(--nylas-base-200)}";
8
8
  const NylasTimeslotPickerStyle0 = nylasTimeslotPickerCss;
9
9
 
10
10
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
@@ -39,11 +39,11 @@ const NylasTimeslotPicker = proxyCustomElement(class NylasTimeslotPicker extends
39
39
  this.handleMouseLeave = () => {
40
40
  this.hoveredTimeslotIndex = -1;
41
41
  };
42
- this.selectedDate = new Date();
43
42
  this.availability = undefined;
44
- this.selectedTimeslot = undefined;
45
43
  this.isLoading = undefined;
44
+ this.selectedTimeslot = undefined;
46
45
  this.selectedTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
46
+ this.selectedDate = new Date();
47
47
  this.selectedLanguage = undefined;
48
48
  this.times = [];
49
49
  this.hoveredTimeslotIndex = undefined;
@@ -72,12 +72,12 @@ const NylasTimeslotPicker = proxyCustomElement(class NylasTimeslotPicker extends
72
72
  connectedCallback() { }
73
73
  disconnectedCallback() { }
74
74
  async componentWillLoad() {
75
- const availableTimes = this.availability?.filter(timeslot => this.selectedDate && isSameDay(timeslot.start_time, this.selectedDate)).map(timeslot => timeslot);
76
- this.times = availableTimes || [];
77
75
  debug(`[nylas-timeslot-picker] Component will load`, { selectedDate: this.selectedDate, availability: this.availability, times: this.times });
78
76
  }
79
77
  async componentDidLoad() {
80
78
  debug(`[nylas-timeslot-picker] Component did load`);
79
+ const availableTimes = this.availability?.filter(timeslot => this.selectedDate && isSameDay(timeslot.start_time, this.selectedDate)).map(timeslot => timeslot);
80
+ this.times = availableTimes || [];
81
81
  }
82
82
  getTimeslotId(date, index) {
83
83
  return `${date.toLocaleDateString()}-${index}`;
@@ -125,11 +125,11 @@ const NylasTimeslotPicker = proxyCustomElement(class NylasTimeslotPicker extends
125
125
  }; }
126
126
  static get style() { return NylasTimeslotPickerStyle0; }
127
127
  }, [1, "nylas-timeslot-picker", {
128
- "selectedDate": [16],
129
128
  "availability": [16],
130
- "selectedTimeslot": [16],
131
129
  "isLoading": [4, "loading-state"],
130
+ "selectedTimeslot": [16],
132
131
  "selectedTimezone": [1, "selected-timezone"],
132
+ "selectedDate": [16],
133
133
  "selectedLanguage": [1, "selected-language"],
134
134
  "times": [32],
135
135
  "hoveredTimeslotIndex": [32],
@@ -1 +1 @@
1
- {"file":"nylas-timeslot-picker2.js","mappings":"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","names":["i18next"],"sources":["src/components/scheduler/nylas-timeslot-picker/nylas-timeslot-picker.scss?tag=nylas-timeslot-picker&encapsulation=shadow","src/components/scheduler/nylas-timeslot-picker/nylas-timeslot-picker.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n\n:host {\n display: block;\n height: calc(100% - 48px); //48px is the height of the header\n}\n\n.time-picker-wrapper {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\n.timeslots {\n position: relative;\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n align-items: center;\n overflow-y: scroll;\n padding: 0.5rem 1.5rem 1.5rem;\n flex: 1;\n}\n\n.time {\n /* Frame 12 */\n box-sizing: border-box;\n\n /* Auto layout */\n\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n padding: 4px 12px;\n gap: 0.5rem;\n font-size: 16px;\n font-weight: 500;\n font-family: inherit;\n\n width: 100%;\n height: 48px;\n\n color: var(--nylas-base-800);\n background: var(--nylas-base-0);\n border: none;\n outline: 1.5px solid var(--nylas-base-200);\n border-radius: var(--nylas-border-radius-2x);\n\n flex: none;\n order: 4;\n align-self: stretch;\n flex-grow: 0;\n\n cursor: pointer;\n\n &:hover,\n &:focus {\n color: var(--nylas-primary);\n outline-color: var(--nylas-primary);\n }\n\n &.selected {\n font-weight: 600;\n color: var(--nylas-primary);\n outline: 2px solid var(--nylas-primary);\n border-color: transparent;\n box-shadow: 0 0 0 2px var(--nylas-primary);\n }\n}\n\n.empty {\n text-align: center;\n padding: 0 1.5rem;\n color: var(--nylas-base-600);\n font-size: min(max(12px, 2vw), 14px);\n height: 450px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n@keyframes pulsate {\n 0% {\n background-color: var(--nylas-base-50);\n }\n\n 50% {\n background-color: var(--nylas-base-100);\n }\n\n 100% {\n background-color: var(--nylas-base-50);\n }\n}\n\n.loading {\n padding: 0 1.5rem;\n\n .timeslot-skeleton {\n width: 100%;\n height: 4rem;\n background-color: var(--nylas-base-50);\n margin-bottom: 0.5rem;\n border-radius: var(--nylas-border-radius-2x);\n animation: pulsate 1.5s infinite ease-in-out;\n }\n}\n\n.footer {\n width: 100%;\n padding: 14px;\n box-sizing: border-box;\n border-top: 1px solid var(--nylas-base-200);\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { debug, isSameDay } from '@/utils/utils';\nimport { Component, Event, EventEmitter, Host, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerConnector } from '../../..';\nimport { NylasScheduling } from '../nylas-scheduling/nylas-scheduling';\nimport { AvailabilityTimeslot } from '@/stores/scheduler-store';\nimport type { Timeslot } from '@nylas/core';\nimport i18next from '@/utils/i18n';\n\n/**\n * The `nylas-timeslot-picker` component is a UI component that allows users to select a timeslot from a list of available timeslots.\n *\n * @slot timeslot-picker-cta-label - The label for the timeslot picker CTA. Default is \"Next\".\n * @part ntp - The timeslot picker component.\n * @part ntp__timeslot - The timeslot button.\n * @part ntp__timeslot--selected - The selected timeslot button.\n * @part ntp__button-primary - The timeslot picker CTA.\n */\n@Component({\n tag: 'nylas-timeslot-picker',\n styleUrl: 'nylas-timeslot-picker.scss',\n shadow: true,\n})\nexport class NylasTimeslotPicker {\n /**\n * The selected date.\n */\n @Prop({ attribute: 'selected-date' }) readonly selectedDate?: Date = new Date();\n /**\n * The available timeslots.\n */\n @Prop({ attribute: 'availability' }) readonly availability?: AvailabilityTimeslot[];\n /**\n * The selected timeslot.\n */\n @Prop({ attribute: 'selected-timeslot' }) readonly selectedTimeslot?: Timeslot;\n /**\n * The loading state prop. Used to display loading state when fetching availability.\n */\n @Prop({ attribute: 'loading-state' }) readonly isLoading?: boolean;\n /**\n * The selected timezone.\n */\n @Prop({ attribute: 'selected-timezone' }) readonly selectedTimezone: string = Intl.DateTimeFormat().resolvedOptions().timeZone;\n /**\n * The selected language.\n */\n @Prop() selectedLanguage?: string;\n\n /**\n * This event is fired when a timeslot is selected.\n */\n @Event() readonly timeslotSelected!: EventEmitter<Timeslot>;\n /**\n * This event is fired when a timeslot is confirmed. By default, this will proceed to the booking form page.\n */\n @Event() readonly timeslotConfirmed!: EventEmitter<Timeslot>;\n\n @State() times: AvailabilityTimeslot[] = [];\n @State() hoveredTimeslotIndex?: number;\n @State() selectedTimeslotIndex?: string;\n\n @Watch('selectedLanguage')\n selectedLanguageChanged(newLanguage: string) {\n i18next.changeLanguage(newLanguage);\n }\n\n @Watch('selectedDate')\n selectedDateChanged(newVal: Date | null | undefined) {\n debug(`[nylas-timeslot-picker] Selected date changed`, { newVal });\n\n if (newVal) {\n this.selectedTimeslotIndex = '';\n if (typeof newVal !== 'undefined') {\n const availableTimes = this.availability?.filter(timeslot => isSameDay(timeslot.start_time, newVal)).map(timeslot => timeslot);\n this.times = availableTimes || [];\n }\n }\n }\n\n @Watch('availability')\n availabilityChanged(newVal: AvailabilityTimeslot[] | undefined) {\n debug(`[nylas-timeslot-picker] Available times changed`, { newVal, selectedDate: this.selectedDate });\n\n if (typeof newVal !== 'undefined') {\n const availableTimes = newVal?.filter(timeslot => this.selectedDate && isSameDay(timeslot.start_time, this.selectedDate)).map(timeslot => timeslot);\n this.times = availableTimes || [];\n }\n }\n\n connectedCallback() {}\n\n disconnectedCallback() {}\n\n async componentWillLoad() {\n const availableTimes = this.availability?.filter(timeslot => this.selectedDate && isSameDay(timeslot.start_time, this.selectedDate)).map(timeslot => timeslot);\n this.times = availableTimes || [];\n debug(`[nylas-timeslot-picker] Component will load`, { selectedDate: this.selectedDate, availability: this.availability, times: this.times });\n }\n\n async componentDidLoad() {\n debug(`[nylas-timeslot-picker] Component did load`);\n }\n\n private getTimeslotId(date: Date, index: number) {\n return `${date.toLocaleDateString()}-${index}`;\n }\n\n private onClickSelectTime(timeslot: Timeslot, index: number) {\n debug(`[nylas-timeslot-picker] Time selected`, timeslot, index);\n this.selectedTimeslotIndex = this.getTimeslotId(timeslot.start_time, index);\n this.timeslotSelected.emit({\n start_time: timeslot.start_time,\n end_time: timeslot.end_time,\n emails: timeslot.emails,\n });\n }\n\n private handleConfirmedTimeslot = async (event: Event, timeslot: Timeslot | undefined) => {\n event.preventDefault();\n debug(`[nylas-timeslot-picker] Confirm timeslot`, timeslot);\n this.timeslotConfirmed.emit(timeslot);\n };\n\n private handleMouseEnter = (index: number) => {\n this.hoveredTimeslotIndex = index;\n };\n\n private handleMouseLeave = () => {\n this.hoveredTimeslotIndex = -1;\n };\n\n private getTimeSlotLabel(timeslot: Timeslot) {\n const timeFormat = new Intl.DateTimeFormat('en-US', {\n hour: '2-digit',\n minute: '2-digit',\n timeZone: this.selectedTimezone,\n });\n return `${timeFormat.format(timeslot.start_time)} - ${timeFormat.format(timeslot.end_time)}`;\n }\n\n @RegisterComponent<NylasTimeslotPicker, NylasSchedulerConnector, Exclude<NylasScheduling['stores'], undefined>>({\n name: 'nylas-timeslot-picker',\n stateToProps: new Map([\n ['scheduler.selectedDate', 'selectedDate'],\n ['scheduler.availability', 'availability'],\n ['scheduler.selectedTimeslot', 'selectedTimeslot'],\n ['scheduler.selectedTimezone', 'selectedTimezone'],\n ['scheduler.selectedLanguage', 'selectedLanguage'],\n ['scheduler.isLoading', 'isLoading'],\n ]),\n eventToProps: {\n timeslotSelected: async (event: CustomEvent<Timeslot>, nylasSchedulerConnector: NylasSchedulerConnector) => {\n debug('nylas-timeslot-picker', 'timeslotSelected', event.detail);\n nylasSchedulerConnector.scheduler.selectTime(event.detail);\n },\n timeslotConfirmed: async (event: CustomEvent<Timeslot>, nylasSchedulerConnector: NylasSchedulerConnector) => {\n debug('nylas-timeslot-picker', 'timeslotConfirmed', event.detail);\n if (event.detail) {\n nylasSchedulerConnector.scheduler.toggleAdditionalData(true);\n }\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n if (this.isLoading) {\n return (\n <Host>\n <div class={'loading'}>\n {new Array(6).fill(0).map((_, i) => (\n <div class={'timeslot-skeleton'} style={{ animationDelay: `${i * 20}ms` }} />\n ))}\n </div>\n </Host>\n );\n }\n\n if (this.availability && this.availability.length === 0) {\n return (\n <Host>\n <div class={'empty'}>\n <span>No dates available</span>\n </div>\n </Host>\n );\n }\n\n if ((!this.times || this.times.length === 0) && !!this.selectedDate) {\n return (\n <Host>\n <div class={'empty'}>\n <span>No time slots available for selected date</span>\n </div>\n </Host>\n );\n }\n\n if (!this.selectedDate) return <Host></Host>;\n\n return (\n <Host part=\"ntp\">\n <div class={'time-picker-wrapper'}>\n <div class={'timeslots'}>\n {this.times.map((timeslot, index) => (\n <button\n part={`ntp__timeslot ${this.selectedTimeslot?.start_time?.getTime() === timeslot.start_time.getTime() ? 'ntp__timeslot--selected' : ''}`}\n aria-role=\"button\"\n class={{\n time: true,\n selected: typeof this.selectedTimeslot !== 'undefined' && this.selectedTimeslot?.start_time?.getTime() === timeslot.start_time.getTime(),\n }}\n onClick={() => this.onClickSelectTime(timeslot, index)}\n onMouseEnter={() => this.handleMouseEnter(index)}\n onMouseLeave={() => this.handleMouseLeave()}\n >\n {this.hoveredTimeslotIndex == index || this.selectedTimeslotIndex == this.getTimeslotId(timeslot.start_time, index)\n ? this.getTimeSlotLabel(timeslot)\n : timeslot.start_time.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit', timeZone: this.selectedTimezone })}\n </button>\n ))}\n </div>\n {this.selectedTimeslot && (\n <div class={'footer'}>\n <button-component variant={'primary'} onClick={(event: Event) => this.handleConfirmedTimeslot(event, this.selectedTimeslot)} part=\"ntp__button-primary\">\n <slot name=\"timeslot-picker-cta-label\">{i18next.t('nextButton')}</slot>\n </button-component>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nylas-timeslot-picker2.js","mappings":"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","names":["i18next"],"sources":["src/components/scheduler/nylas-timeslot-picker/nylas-timeslot-picker.scss?tag=nylas-timeslot-picker&encapsulation=shadow","src/components/scheduler/nylas-timeslot-picker/nylas-timeslot-picker.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n\n:host {\n display: block;\n height: calc(100% - 48px); //48px is the height of the header\n @include default-css-variables;\n}\n\n.time-picker-wrapper {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\n.timeslots {\n position: relative;\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n align-items: center;\n overflow-y: scroll;\n padding: 0.5rem 1.5rem 1.5rem;\n flex: 1;\n}\n\n.time {\n /* Frame 12 */\n box-sizing: border-box;\n\n /* Auto layout */\n\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n padding: 4px 12px;\n gap: 0.5rem;\n font-size: 16px;\n font-weight: 500;\n font-family: inherit;\n\n width: 100%;\n height: 48px;\n\n color: var(--nylas-base-800);\n background: var(--nylas-base-0);\n border: none;\n outline: 1.5px solid var(--nylas-base-200);\n border-radius: var(--nylas-border-radius-2x);\n\n flex: none;\n order: 4;\n align-self: stretch;\n flex-grow: 0;\n\n cursor: pointer;\n\n &:hover,\n &:focus {\n color: var(--nylas-primary);\n outline-color: var(--nylas-primary);\n }\n\n &.selected {\n font-weight: 600;\n color: var(--nylas-primary);\n outline: 2px solid var(--nylas-primary);\n border-color: transparent;\n box-shadow: 0 0 0 2px var(--nylas-primary);\n }\n}\n\n.empty {\n text-align: center;\n padding: 0 1.5rem;\n color: var(--nylas-base-600);\n font-size: min(max(12px, 2vw), 14px);\n height: 450px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n@keyframes pulsate {\n 0% {\n background-color: var(--nylas-base-50);\n }\n\n 50% {\n background-color: var(--nylas-base-100);\n }\n\n 100% {\n background-color: var(--nylas-base-50);\n }\n}\n\n.loading {\n padding: 0 1.5rem;\n\n .timeslot-skeleton {\n width: 100%;\n height: 4rem;\n background-color: var(--nylas-base-50);\n margin-bottom: 0.5rem;\n border-radius: var(--nylas-border-radius-2x);\n animation: pulsate 1.5s infinite ease-in-out;\n }\n}\n\n.footer {\n width: 100%;\n padding: 14px;\n box-sizing: border-box;\n border-top: 1px solid var(--nylas-base-200);\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { debug, isSameDay } from '@/utils/utils';\nimport { Component, Event, EventEmitter, Host, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerConnector } from '../../..';\nimport { NylasScheduling } from '../nylas-scheduling/nylas-scheduling';\nimport { AvailabilityTimeslot } from '@/stores/scheduler-store';\nimport type { Timeslot } from '@nylas/core';\nimport i18next from '@/utils/i18n';\n\n/**\n * The `nylas-timeslot-picker` component is a UI component that allows users to select a timeslot from a list of available timeslots.\n *\n * @slot timeslot-picker-cta-label - The label for the timeslot picker CTA. Default is \"Next\".\n * @part ntp - The timeslot picker component.\n * @part ntp__timeslot - The timeslot button.\n * @part ntp__timeslot--selected - The selected timeslot button.\n * @part ntp__button-primary - The timeslot picker CTA.\n */\n@Component({\n tag: 'nylas-timeslot-picker',\n styleUrl: 'nylas-timeslot-picker.scss',\n shadow: true,\n})\nexport class NylasTimeslotPicker {\n /**\n * @standalone\n * The available timeslots.\n */\n @Prop({ attribute: 'availability' }) readonly availability?: AvailabilityTimeslot[];\n /**\n * @standalone\n * The loading state prop. Used to display loading state when fetching availability.\n */\n @Prop({ attribute: 'loading-state' }) readonly isLoading?: boolean;\n /**\n * The selected timeslot.\n */\n @Prop({ attribute: 'selected-timeslot' }) readonly selectedTimeslot?: Timeslot;\n /**\n * The selected timezone.\n */\n @Prop({ attribute: 'selected-timezone' }) readonly selectedTimezone: string = Intl.DateTimeFormat().resolvedOptions().timeZone;\n /**\n * The selected date.\n */\n @Prop({ attribute: 'selected-date' }) readonly selectedDate?: Date = new Date();\n /**\n * The selected language.\n */\n @Prop() selectedLanguage?: string;\n\n /**\n * This event is fired when a timeslot is selected.\n */\n @Event() readonly timeslotSelected!: EventEmitter<Timeslot>;\n /**\n * This event is fired when a timeslot is confirmed. By default, this will proceed to the booking form page.\n */\n @Event() readonly timeslotConfirmed!: EventEmitter<Timeslot>;\n\n @State() times: AvailabilityTimeslot[] = [];\n @State() hoveredTimeslotIndex?: number;\n @State() selectedTimeslotIndex?: string;\n\n @Watch('selectedLanguage')\n selectedLanguageChanged(newLanguage: string) {\n i18next.changeLanguage(newLanguage);\n }\n\n @Watch('selectedDate')\n selectedDateChanged(newVal: Date | null | undefined) {\n debug(`[nylas-timeslot-picker] Selected date changed`, { newVal });\n\n if (newVal) {\n this.selectedTimeslotIndex = '';\n if (typeof newVal !== 'undefined') {\n const availableTimes = this.availability?.filter(timeslot => isSameDay(timeslot.start_time, newVal)).map(timeslot => timeslot);\n this.times = availableTimes || [];\n }\n }\n }\n\n @Watch('availability')\n availabilityChanged(newVal: AvailabilityTimeslot[] | undefined) {\n debug(`[nylas-timeslot-picker] Available times changed`, { newVal, selectedDate: this.selectedDate });\n\n if (typeof newVal !== 'undefined') {\n const availableTimes = newVal?.filter(timeslot => this.selectedDate && isSameDay(timeslot.start_time, this.selectedDate)).map(timeslot => timeslot);\n this.times = availableTimes || [];\n }\n }\n\n connectedCallback() {}\n\n disconnectedCallback() {}\n\n async componentWillLoad() {\n debug(`[nylas-timeslot-picker] Component will load`, { selectedDate: this.selectedDate, availability: this.availability, times: this.times });\n }\n\n async componentDidLoad() {\n debug(`[nylas-timeslot-picker] Component did load`);\n const availableTimes = this.availability?.filter(timeslot => this.selectedDate && isSameDay(timeslot.start_time, this.selectedDate)).map(timeslot => timeslot);\n this.times = availableTimes || [];\n }\n\n private getTimeslotId(date: Date, index: number) {\n return `${date.toLocaleDateString()}-${index}`;\n }\n\n private onClickSelectTime(timeslot: Timeslot, index: number) {\n debug(`[nylas-timeslot-picker] Time selected`, timeslot, index);\n this.selectedTimeslotIndex = this.getTimeslotId(timeslot.start_time, index);\n this.timeslotSelected.emit({\n start_time: timeslot.start_time,\n end_time: timeslot.end_time,\n emails: timeslot.emails,\n });\n }\n\n private handleConfirmedTimeslot = async (event: Event, timeslot: Timeslot | undefined) => {\n event.preventDefault();\n debug(`[nylas-timeslot-picker] Confirm timeslot`, timeslot);\n this.timeslotConfirmed.emit(timeslot);\n };\n\n private handleMouseEnter = (index: number) => {\n this.hoveredTimeslotIndex = index;\n };\n\n private handleMouseLeave = () => {\n this.hoveredTimeslotIndex = -1;\n };\n\n private getTimeSlotLabel(timeslot: Timeslot) {\n const timeFormat = new Intl.DateTimeFormat('en-US', {\n hour: '2-digit',\n minute: '2-digit',\n timeZone: this.selectedTimezone,\n });\n return `${timeFormat.format(timeslot.start_time)} - ${timeFormat.format(timeslot.end_time)}`;\n }\n\n @RegisterComponent<NylasTimeslotPicker, NylasSchedulerConnector, Exclude<NylasScheduling['stores'], undefined>>({\n name: 'nylas-timeslot-picker',\n stateToProps: new Map([\n ['scheduler.selectedDate', 'selectedDate'],\n ['scheduler.availability', 'availability'],\n ['scheduler.selectedTimeslot', 'selectedTimeslot'],\n ['scheduler.selectedTimezone', 'selectedTimezone'],\n ['scheduler.selectedLanguage', 'selectedLanguage'],\n ['scheduler.isLoading', 'isLoading'],\n ]),\n eventToProps: {\n timeslotSelected: async (event: CustomEvent<Timeslot>, nylasSchedulerConnector: NylasSchedulerConnector) => {\n debug('nylas-timeslot-picker', 'timeslotSelected', event.detail);\n nylasSchedulerConnector.scheduler.selectTime(event.detail);\n },\n timeslotConfirmed: async (event: CustomEvent<Timeslot>, nylasSchedulerConnector: NylasSchedulerConnector) => {\n debug('nylas-timeslot-picker', 'timeslotConfirmed', event.detail);\n if (event.detail) {\n nylasSchedulerConnector.scheduler.toggleAdditionalData(true);\n }\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n if (this.isLoading) {\n return (\n <Host>\n <div class={'loading'}>\n {new Array(6).fill(0).map((_, i) => (\n <div class={'timeslot-skeleton'} style={{ animationDelay: `${i * 20}ms` }} />\n ))}\n </div>\n </Host>\n );\n }\n\n if (this.availability && this.availability.length === 0) {\n return (\n <Host>\n <div class={'empty'}>\n <span>No dates available</span>\n </div>\n </Host>\n );\n }\n\n if ((!this.times || this.times.length === 0) && !!this.selectedDate) {\n return (\n <Host>\n <div class={'empty'}>\n <span>No time slots available for selected date</span>\n </div>\n </Host>\n );\n }\n\n if (!this.selectedDate) return <Host></Host>;\n\n return (\n <Host part=\"ntp\">\n <div class={'time-picker-wrapper'}>\n <div class={'timeslots'}>\n {this.times.map((timeslot, index) => (\n <button\n part={`ntp__timeslot ${this.selectedTimeslot?.start_time?.getTime() === timeslot.start_time.getTime() ? 'ntp__timeslot--selected' : ''}`}\n aria-role=\"button\"\n class={{\n time: true,\n selected: typeof this.selectedTimeslot !== 'undefined' && this.selectedTimeslot?.start_time?.getTime() === timeslot.start_time.getTime(),\n }}\n onClick={() => this.onClickSelectTime(timeslot, index)}\n onMouseEnter={() => this.handleMouseEnter(index)}\n onMouseLeave={() => this.handleMouseLeave()}\n >\n {this.hoveredTimeslotIndex == index || this.selectedTimeslotIndex == this.getTimeslotId(timeslot.start_time, index)\n ? this.getTimeSlotLabel(timeslot)\n : timeslot.start_time.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit', timeZone: this.selectedTimezone })}\n </button>\n ))}\n </div>\n {this.selectedTimeslot && (\n <div class={'footer'}>\n <button-component variant={'primary'} onClick={(event: Event) => this.handleConfirmedTimeslot(event, this.selectedTimeslot)} part=\"ntp__button-primary\">\n <slot name=\"timeslot-picker-cta-label\">{i18next.t('nextButton')}</slot>\n </button-component>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -11,7 +11,7 @@ const PaintbrushFillIcon = proxyCustomElement(class PaintbrushFillIcon extends H
11
11
  this.height = '13';
12
12
  }
13
13
  render() {
14
- return (h("svg", { key: '4075fbeb50b3ba8c85a602b2429c5f656eb44316', width: "16", height: "17", viewBox: "-3 0 16 17", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'eca6d393a33533ef57d5a2d0069b29fea9372703', d: "M5 2.875V0.375H0.5C0.223858 0.375 0 0.598858 0 0.875V7.37585H10V0.875C10 0.598858 9.77614 0.375 9.5 0.375H8V3.87722C8 4.15337 7.77614 4.37722 7.5 4.37722C7.22386 4.37722 7 4.15337 7 3.87722V0.375H6V2.875C6 3.15114 5.77614 3.375 5.5 3.375C5.22386 3.375 5 3.15114 5 2.875ZM10 8.37585H0V9.37938C0 10.4839 0.895431 11.3794 2 11.3794H3.5V14.8767C3.5 15.7051 4.17157 16.3767 5 16.3767C5.82843 16.3767 6.5 15.7051 6.5 14.8767V11.3794H8C9.10457 11.3794 10 10.4839 10 9.37938V8.37585Z", fill: "currentColor" })));
14
+ return (h("svg", { key: 'e4684ac3235a59975a67508b6a5019e70b1a3a5a', width: "16", height: "17", viewBox: "-3 0 16 17", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '00dee1b55784f1191d56a8c1b420f0076575a197', d: "M5 2.875V0.375H0.5C0.223858 0.375 0 0.598858 0 0.875V7.37585H10V0.875C10 0.598858 9.77614 0.375 9.5 0.375H8V3.87722C8 4.15337 7.77614 4.37722 7.5 4.37722C7.22386 4.37722 7 4.15337 7 3.87722V0.375H6V2.875C6 3.15114 5.77614 3.375 5.5 3.375C5.22386 3.375 5 3.15114 5 2.875ZM10 8.37585H0V9.37938C0 10.4839 0.895431 11.3794 2 11.3794H3.5V14.8767C3.5 15.7051 4.17157 16.3767 5 16.3767C5.82843 16.3767 6.5 15.7051 6.5 14.8767V11.3794H8C9.10457 11.3794 10 10.4839 10 9.37938V8.37585Z", fill: "currentColor" })));
15
15
  }
16
16
  static get style() { return PaintbrushFillIconStyle0; }
17
17
  }, [2, "paintbrush-fill-icon", {
@@ -11,7 +11,7 @@ const PaintbrushIcon = proxyCustomElement(class PaintbrushIcon extends HTMLEleme
11
11
  this.height = '13';
12
12
  }
13
13
  render() {
14
- return (h("svg", { key: '4472640da732e0bbecd5d0ab5c5bde685902fa5b', width: "16", height: "16", viewBox: "-3 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '95d773e309ec469fa3fe8e36e5ed1b94a877c73d', d: "M0.5 -0.000976562C0.223858 -0.000976562 0 0.222881 0 0.499023L1.90735e-05 9.00337C1.90735e-05 10.1079 0.89545 11.0034 2.00002 11.0034H3.00411V14.0007C3.00411 15.1053 3.89954 16.0007 5.00411 16.0007C6.10868 16.0007 7.00411 15.1053 7.00411 14.0007V11.0034H8.00002C9.10459 11.0034 10 10.1079 10 9.00337V7.50339L10 7.49897V0.499023C10 0.222881 9.77614 -0.000976562 9.5 -0.000976562H0.5ZM1.00002 8.00342H9.00002V9.00337C9.00002 9.55566 8.5523 10.0034 8.00002 10.0034H6.50411C6.22797 10.0034 6.00411 10.2272 6.00411 10.5034V14.0007C6.00411 14.553 5.5564 15.0007 5.00411 15.0007C4.45183 15.0007 4.00411 14.553 4.00411 14.0007V10.5034C4.00411 10.2272 3.78026 10.0034 3.50411 10.0034H2.00002C1.44773 10.0034 1.00002 9.55566 1.00002 9.00337V8.00342ZM9 7.00339H1V0.999023H5V2.49902C5 2.77517 5.22386 2.99902 5.5 2.99902C5.77614 2.99902 6 2.77517 6 2.49902V0.999023H7V3.50122C7 3.77736 7.22386 4.00122 7.5 4.00122C7.77614 4.00122 8 3.77736 8 3.50122V0.999023H9V7.00339Z", fill: "currentColor" })));
14
+ return (h("svg", { key: '8ed14deda237ca56daa7b7cfd55788700ecf8614', width: "16", height: "16", viewBox: "-3 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '5100cb1d8fba90615962e57facfd3361cd31f4e5', d: "M0.5 -0.000976562C0.223858 -0.000976562 0 0.222881 0 0.499023L1.90735e-05 9.00337C1.90735e-05 10.1079 0.89545 11.0034 2.00002 11.0034H3.00411V14.0007C3.00411 15.1053 3.89954 16.0007 5.00411 16.0007C6.10868 16.0007 7.00411 15.1053 7.00411 14.0007V11.0034H8.00002C9.10459 11.0034 10 10.1079 10 9.00337V7.50339L10 7.49897V0.499023C10 0.222881 9.77614 -0.000976562 9.5 -0.000976562H0.5ZM1.00002 8.00342H9.00002V9.00337C9.00002 9.55566 8.5523 10.0034 8.00002 10.0034H6.50411C6.22797 10.0034 6.00411 10.2272 6.00411 10.5034V14.0007C6.00411 14.553 5.5564 15.0007 5.00411 15.0007C4.45183 15.0007 4.00411 14.553 4.00411 14.0007V10.5034C4.00411 10.2272 3.78026 10.0034 3.50411 10.0034H2.00002C1.44773 10.0034 1.00002 9.55566 1.00002 9.00337V8.00342ZM9 7.00339H1V0.999023H5V2.49902C5 2.77517 5.22386 2.99902 5.5 2.99902C5.77614 2.99902 6 2.77517 6 2.49902V0.999023H7V3.50122C7 3.77736 7.22386 4.00122 7.5 4.00122C7.77614 4.00122 8 3.77736 8 3.50122V0.999023H9V7.00339Z", fill: "currentColor" })));
15
15
  }
16
16
  static get style() { return PaintbrushIconStyle0; }
17
17
  }, [2, "paintbrush-icon", {
@@ -11,7 +11,7 @@ const PeopleIcon = proxyCustomElement(class PeopleIcon extends HTMLElement {
11
11
  this.height = '20';
12
12
  }
13
13
  render() {
14
- return (h("svg", { key: '2613090eb412a2ba47dbdd422774e25c31cfa582', xmlns: "http://www.w3.org/2000/svg", width: this.width, height: this.height, fill: "none", viewBox: "0 0 20 20" }, h("path", { key: '1a05bed27ce93789c43880b7830484bff3ff7140', fill: "currentColor", d: "M11 10a2 2 0 0 1 2 2v1.5c0 2.054-2.088 3.5-5.5 3.5S2 15.554 2 13.5V12a2 2 0 0 1 2-2h7Zm0 1H4a1 1 0 0 0-1 1v1.5C3 14.907 4.579 16 7.5 16c2.921 0 4.5-1.093 4.5-2.5V12a1 1 0 0 0-1-1Zm5-1a2 2 0 0 1 2 2v.5c0 2.089-1.568 3.5-4.5 3.5-.141 0-.28-.003-.414-.01.208-.242.382-.502.522-.781l.097-.213h.039C15.976 14.931 17 13.96 17 12.5V12a1 1 0 0 0-1-1h-2.171a3 3 0 0 0-.594-1H16ZM7.5 2a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7Zm7 2a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5Zm-7-1a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5Zm7 2a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Z" })));
14
+ return (h("svg", { key: 'e7e23abad1ff011b5e2d8931755a605179586351', xmlns: "http://www.w3.org/2000/svg", width: this.width, height: this.height, fill: "none", viewBox: "0 0 20 20" }, h("path", { key: '3ddb5e0a172b339cd8d33c3ae95fda09c0edd3bb', fill: "currentColor", d: "M11 10a2 2 0 0 1 2 2v1.5c0 2.054-2.088 3.5-5.5 3.5S2 15.554 2 13.5V12a2 2 0 0 1 2-2h7Zm0 1H4a1 1 0 0 0-1 1v1.5C3 14.907 4.579 16 7.5 16c2.921 0 4.5-1.093 4.5-2.5V12a1 1 0 0 0-1-1Zm5-1a2 2 0 0 1 2 2v.5c0 2.089-1.568 3.5-4.5 3.5-.141 0-.28-.003-.414-.01.208-.242.382-.502.522-.781l.097-.213h.039C15.976 14.931 17 13.96 17 12.5V12a1 1 0 0 0-1-1h-2.171a3 3 0 0 0-.594-1H16ZM7.5 2a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7Zm7 2a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5Zm-7-1a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5Zm7 2a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Z" })));
15
15
  }
16
16
  static get style() { return PeopleIconStyle0; }
17
17
  }, [2, "people-icon", {
@@ -11,7 +11,7 @@ const PersonClipboardIcon = proxyCustomElement(class PersonClipboardIcon extends
11
11
  this.height = '17';
12
12
  }
13
13
  render() {
14
- return (h("svg", { key: '1d8ab8f6ceeb439b39ac290f2e9951ba8e2788ac', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '9e20a5e2abda42d1ec04c57d66bc1518a717f919', d: "M4 7.5C4 6.39543 4.89543 5.5 6 5.5C7.10457 5.5 8 6.39543 8 7.5C8 8.60457 7.10457 9.5 6 9.5C4.89543 9.5 4 8.60457 4 7.5ZM6 6.5C5.44772 6.5 5 6.94772 5 7.5C5 8.05228 5.44772 8.5 6 8.5C6.55228 8.5 7 8.05228 7 7.5C7 6.94772 6.55228 6.5 6 6.5ZM3.72077 10.5C3.10838 10.5 2.40961 10.9146 2.38992 11.6973C2.37693 12.2135 2.48426 12.9381 3.04816 13.5319C3.61451 14.1283 4.55301 14.5 6.00001 14.5C7.44702 14.5 8.38552 14.1283 8.95187 13.5319C9.51577 12.9381 9.6231 12.2135 9.61011 11.6973C9.59042 10.9146 8.89165 10.5 8.27925 10.5H3.72077ZM3.3896 11.7225C3.39099 11.6675 3.41262 11.6226 3.46275 11.582C3.51876 11.5366 3.6101 11.5 3.72077 11.5H8.27925C8.38993 11.5 8.48127 11.5366 8.53728 11.582C8.58741 11.6226 8.60904 11.6675 8.61042 11.7225C8.61975 12.0933 8.53969 12.5138 8.22676 12.8433C7.91628 13.1702 7.28849 13.5 6.00001 13.5C4.71154 13.5 4.08375 13.1702 3.77327 12.8433C3.46033 12.5138 3.38027 12.0933 3.3896 11.7225ZM5 0.5C3.89543 0.5 3 1.39543 3 2.5H1.5C0.671573 2.5 0 3.17157 0 4V15C0 15.8284 0.671572 16.5 1.5 16.5H10.5C11.3284 16.5 12 15.8284 12 15V4C12 3.17157 11.3284 2.5 10.5 2.5H9C9 1.39543 8.10457 0.5 7 0.5H5ZM8.73244 3.5H10.5C10.7761 3.5 11 3.72386 11 4V15C11 15.2761 10.7761 15.5 10.5 15.5H1.5C1.22386 15.5 1 15.2761 1 15V4C1 3.72386 1.22386 3.5 1.5 3.5H3.26756C3.61337 4.0978 4.25972 4.5 5 4.5H7C7.74028 4.5 8.38663 4.0978 8.73244 3.5ZM4 2.5C4 1.94772 4.44772 1.5 5 1.5H7C7.55228 1.5 8 1.94772 8 2.5C8 3.05228 7.55228 3.5 7 3.5H5C4.44772 3.5 4 3.05228 4 2.5Z", fill: "currentColor" })));
14
+ return (h("svg", { key: '2e3618690c5d268ec3517fd925382a6d77b18ff4', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '20417bc769578a6d1ccdda59b7834807521b7fb2', d: "M4 7.5C4 6.39543 4.89543 5.5 6 5.5C7.10457 5.5 8 6.39543 8 7.5C8 8.60457 7.10457 9.5 6 9.5C4.89543 9.5 4 8.60457 4 7.5ZM6 6.5C5.44772 6.5 5 6.94772 5 7.5C5 8.05228 5.44772 8.5 6 8.5C6.55228 8.5 7 8.05228 7 7.5C7 6.94772 6.55228 6.5 6 6.5ZM3.72077 10.5C3.10838 10.5 2.40961 10.9146 2.38992 11.6973C2.37693 12.2135 2.48426 12.9381 3.04816 13.5319C3.61451 14.1283 4.55301 14.5 6.00001 14.5C7.44702 14.5 8.38552 14.1283 8.95187 13.5319C9.51577 12.9381 9.6231 12.2135 9.61011 11.6973C9.59042 10.9146 8.89165 10.5 8.27925 10.5H3.72077ZM3.3896 11.7225C3.39099 11.6675 3.41262 11.6226 3.46275 11.582C3.51876 11.5366 3.6101 11.5 3.72077 11.5H8.27925C8.38993 11.5 8.48127 11.5366 8.53728 11.582C8.58741 11.6226 8.60904 11.6675 8.61042 11.7225C8.61975 12.0933 8.53969 12.5138 8.22676 12.8433C7.91628 13.1702 7.28849 13.5 6.00001 13.5C4.71154 13.5 4.08375 13.1702 3.77327 12.8433C3.46033 12.5138 3.38027 12.0933 3.3896 11.7225ZM5 0.5C3.89543 0.5 3 1.39543 3 2.5H1.5C0.671573 2.5 0 3.17157 0 4V15C0 15.8284 0.671572 16.5 1.5 16.5H10.5C11.3284 16.5 12 15.8284 12 15V4C12 3.17157 11.3284 2.5 10.5 2.5H9C9 1.39543 8.10457 0.5 7 0.5H5ZM8.73244 3.5H10.5C10.7761 3.5 11 3.72386 11 4V15C11 15.2761 10.7761 15.5 10.5 15.5H1.5C1.22386 15.5 1 15.2761 1 15V4C1 3.72386 1.22386 3.5 1.5 3.5H3.26756C3.61337 4.0978 4.25972 4.5 5 4.5H7C7.74028 4.5 8.38663 4.0978 8.73244 3.5ZM4 2.5C4 1.94772 4.44772 1.5 5 1.5H7C7.55228 1.5 8 1.94772 8 2.5C8 3.05228 7.55228 3.5 7 3.5H5C4.44772 3.5 4 3.05228 4 2.5Z", fill: "currentColor" })));
15
15
  }
16
16
  static get style() { return PersonClipboardIconStyle0; }
17
17
  }, [2, "person-clipboard-icon", {
@@ -11,7 +11,7 @@ const PersonIcon = proxyCustomElement(class PersonIcon extends HTMLElement {
11
11
  this.height = '16';
12
12
  }
13
13
  render() {
14
- return (h("svg", { key: 'ce837bb2bd6980c62d563f8bc4d5b1618cc717b5', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'fa24a15fa2e88fb2ca17700b998f71a10a9017de', d: "M7 0C4.79086 0 3 1.79086 3 4C3 6.20914 4.79086 8 7 8C9.20914 8 11 6.20914 11 4C11 1.79086 9.20914 0 7 0ZM4 4C4 2.34315 5.34315 1 7 1C8.65685 1 10 2.34315 10 4C10 5.65685 8.65685 7 7 7C5.34315 7 4 5.65685 4 4ZM2.00873 9C0.903151 9 0 9.88687 0 11C0 12.6912 0.83281 13.9663 2.13499 14.7966C3.41697 15.614 5.14526 16 7 16C8.85474 16 10.583 15.614 11.865 14.7966C13.1672 13.9663 14 12.6912 14 11C14 9.89557 13.1045 9.00001 12 9.00001L2.00873 9ZM1 11C1 10.4467 1.44786 10 2.00873 10L12 10C12.5522 10 13 10.4478 13 11C13 12.3088 12.3777 13.2837 11.3274 13.9534C10.2568 14.636 8.73511 15 7 15C5.26489 15 3.74318 14.636 2.67262 13.9534C1.62226 13.2837 1 12.3088 1 11Z", fill: "currentColor" })));
14
+ return (h("svg", { key: 'bf77344f510a860cf3b05daea1254dbe06465bcf', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '6704d143c071b2de1ce05a823bb98ba59fbffba7', d: "M7 0C4.79086 0 3 1.79086 3 4C3 6.20914 4.79086 8 7 8C9.20914 8 11 6.20914 11 4C11 1.79086 9.20914 0 7 0ZM4 4C4 2.34315 5.34315 1 7 1C8.65685 1 10 2.34315 10 4C10 5.65685 8.65685 7 7 7C5.34315 7 4 5.65685 4 4ZM2.00873 9C0.903151 9 0 9.88687 0 11C0 12.6912 0.83281 13.9663 2.13499 14.7966C3.41697 15.614 5.14526 16 7 16C8.85474 16 10.583 15.614 11.865 14.7966C13.1672 13.9663 14 12.6912 14 11C14 9.89557 13.1045 9.00001 12 9.00001L2.00873 9ZM1 11C1 10.4467 1.44786 10 2.00873 10L12 10C12.5522 10 13 10.4478 13 11C13 12.3088 12.3777 13.2837 11.3274 13.9534C10.2568 14.636 8.73511 15 7 15C5.26489 15 3.74318 14.636 2.67262 13.9534C1.62226 13.2837 1 12.3088 1 11Z", fill: "currentColor" })));
15
15
  }
16
16
  static get style() { return PersonIconStyle0; }
17
17
  }, [2, "person-icon", {
@@ -11,7 +11,7 @@ const PlayIcon$1 = proxyCustomElement(class PlayIcon extends HTMLElement {
11
11
  this.height = '15';
12
12
  }
13
13
  render() {
14
- return (h("svg", { key: '1ddd0443515a158f09d0c4e8fd7c79d0645f8540', width: this.width, height: this.height, viewBox: "0 0 24 24", fill: "auto", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '11bd5ae0c5df52b1d51a80f7ec5723b949089fdb', d: "M21 12L3 21V3L21 12Z", stroke: "auto", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" })));
14
+ return (h("svg", { key: '09672d0e495dea5c057e0459bbaf09e05c5f6d92', width: this.width, height: this.height, viewBox: "0 0 24 24", fill: "auto", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'f2d1b1e318670f9dac0c53f4e6bfe209fb6bb073', d: "M21 12L3 21V3L21 12Z", stroke: "auto", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" })));
15
15
  }
16
16
  static get style() { return PlayIconStyle0; }
17
17
  }, [2, "play-icon", {
@@ -11,7 +11,7 @@ const PlusIcon = proxyCustomElement(class PlusIcon extends HTMLElement {
11
11
  this.height = '20';
12
12
  }
13
13
  render() {
14
- return (h("svg", { key: 'b773f84aedcf985122fd77f62de6bc2628e96f5b', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '9a54c311983e551ad2ade042fd7cea6c0f7b691a', d: "M8.5 1C8.5 0.723858 8.27614 0.5 8 0.5C7.72386 0.5 7.5 0.723858 7.5 1V7.5H1C0.723858 7.5 0.5 7.72386 0.5 8C0.5 8.27614 0.723858 8.5 1 8.5H7.5V15C7.5 15.2761 7.72386 15.5 8 15.5C8.27614 15.5 8.5 15.2761 8.5 15V8.5H15C15.2761 8.5 15.5 8.27614 15.5 8C15.5 7.72386 15.2761 7.5 15 7.5H8.5V1Z", fill: "currentColor" })));
14
+ return (h("svg", { key: '9a8bcebf970778b50ae8de1eebd6a97e36e24dbd', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '6ba418b474b1ff82faadb820dbd8760531165f75', d: "M8.5 1C8.5 0.723858 8.27614 0.5 8 0.5C7.72386 0.5 7.5 0.723858 7.5 1V7.5H1C0.723858 7.5 0.5 7.72386 0.5 8C0.5 8.27614 0.723858 8.5 1 8.5H7.5V15C7.5 15.2761 7.72386 15.5 8 15.5C8.27614 15.5 8.5 15.2761 8.5 15V8.5H15C15.2761 8.5 15.5 8.27614 15.5 8C15.5 7.72386 15.2761 7.5 15 7.5H8.5V1Z", fill: "currentColor" })));
15
15
  }
16
16
  static get style() { return PlusIconStyle0; }
17
17
  }, [2, "plus-icon", {
@@ -46,7 +46,7 @@ const RadioButtonGroup = proxyCustomElement(class RadioButtonGroup extends HTMLE
46
46
  });
47
47
  }
48
48
  render() {
49
- return (h("div", { key: '6f0060f42904099fb5a9dd4fad67bb52a04daa73', class: "radio-group" }, h("slot", { key: '670730b884d45e19fb27ccb66fe5029c656ac8dd', name: "label" }, this.label && (h("p", { class: { error: !!this.error } }, h("span", { class: "label" }, this.label), this.required && h("span", { class: "required" }, "*")))), this.options.map(option => (h("label", null, h("div", { class: "radio-option" }, h("input", { type: "radio", name: this.name, value: option.value, checked: this.selectedValue === option.value, onChange: () => this.handleChange(option.value) }), h("p", null, h("span", { class: "title" }, option.label), h("span", { class: "description" }, option.description)))))), this.error && h("span", { class: "error help-text" }, this.error)));
49
+ return (h("div", { key: '6848b97b9a503ab19ce43b405d86d6e98ca3caaa', class: "radio-group" }, h("slot", { key: 'be574ba6675264e5f616f55126a6a83f3706975f', name: "label" }, this.label && (h("p", { class: { error: !!this.error } }, h("span", { class: "label" }, this.label), this.required && h("span", { class: "required" }, "*")))), this.options.map(option => (h("label", null, h("div", { class: "radio-option" }, h("input", { type: "radio", name: this.name, value: option.value, checked: this.selectedValue === option.value, onChange: () => this.handleChange(option.value) }), h("p", null, h("span", { class: "title" }, option.label), h("span", { class: "description" }, option.description)))))), this.error && h("span", { class: "error help-text" }, this.error)));
50
50
  }
51
51
  get el() { return this; }
52
52
  static get watchers() { return {
@@ -11,7 +11,7 @@ const RefreshIcon$1 = proxyCustomElement(class RefreshIcon extends HTMLElement {
11
11
  this.height = '15';
12
12
  }
13
13
  render() {
14
- return (h("svg", { key: 'fb5eb381a876c9e533df1c22aee66519f25f3af5', fill: "auto", width: this.width, height: this.height, viewBox: "0 0 32 32", version: "1.1", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'f4a74f247ded2b9623ebf922a52baff4e375bdd1', d: "M15.544 28.080c-0.002-0.006-0.008-0.010-0.012-0.015l-2.873-4.489c-0.204-0.335-0.646-0.454-0.992-0.266l-0.256 0.157c-0.344 0.188-0.337 0.673-0.133 1.008l1.841 2.857c-0.157-0.035-0.316-0.063-0.471-0.103-3.224-0.843-5.953-3.026-7.485-5.988-1.448-2.797-1.72-5.99-0.766-8.992s3.118-5.452 5.915-6.899c0.476-0.247 0.662-0.832 0.416-1.308-0.246-0.477-0.832-0.663-1.308-0.416-3.258 1.686-5.763 4.54-6.874 8.036s-0.794 7.215 0.892 10.473c1.786 3.448 4.963 5.989 8.72 6.973 0.043 0.011 0.087 0.017 0.13 0.028l-2.541 1.288c-0.344 0.189-0.458 0.613-0.254 0.948l0.098 0.256c0.205 0.335 0.557 0.454 0.9 0.266l4.651-2.381c0.006-0.004 0.012-0.003 0.018-0.007l0.312-0.171c0.172-0.095 0.287-0.249 0.332-0.422 0.047-0.172 0.025-0.364-0.076-0.531zM28.559 10.025c-1.783-3.447-4.862-5.988-8.618-6.972-0.267-0.070-0.541-0.124-0.814-0.179l2.494-1.265c0.344-0.189 0.549-0.614 0.345-0.949l-0.099-0.255c-0.205-0.336-0.648-0.454-0.991-0.267l-4.651 2.381c-0.006 0.003-0.012 0.002-0.018 0.006l-0.312 0.171c-0.173 0.095-0.287 0.249-0.332 0.422-0.047 0.172-0.025 0.364 0.077 0.53l0.185 0.304c0.003 0.006 0.008 0.010 0.012 0.016l2.873 4.489c0.203 0.335 0.646 0.454 0.991 0.266l0.226-0.157c0.344-0.188 0.366-0.673 0.163-1.008l-1.85-2.87c0.407 0.063 0.811 0.138 1.207 0.242 3.226 0.845 5.856 3.027 7.387 5.986 1.448 2.797 1.72 5.99 0.765 8.991s-3.020 5.451-5.818 6.901c-0.476 0.247-0.662 0.831-0.415 1.308 0.172 0.332 0.511 0.524 0.863 0.524 0.15 0 0.302-0.035 0.446-0.109 3.259-1.686 5.664-4.54 6.776-8.035 1.111-3.497 0.794-7.217-0.893-10.473z" })));
14
+ return (h("svg", { key: '2e53f7097cb59c8a341225fdde738395247fe681', fill: "auto", width: this.width, height: this.height, viewBox: "0 0 32 32", version: "1.1", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '6e99de42fd10abc8e6c9f705ea770431ac131d66', d: "M15.544 28.080c-0.002-0.006-0.008-0.010-0.012-0.015l-2.873-4.489c-0.204-0.335-0.646-0.454-0.992-0.266l-0.256 0.157c-0.344 0.188-0.337 0.673-0.133 1.008l1.841 2.857c-0.157-0.035-0.316-0.063-0.471-0.103-3.224-0.843-5.953-3.026-7.485-5.988-1.448-2.797-1.72-5.99-0.766-8.992s3.118-5.452 5.915-6.899c0.476-0.247 0.662-0.832 0.416-1.308-0.246-0.477-0.832-0.663-1.308-0.416-3.258 1.686-5.763 4.54-6.874 8.036s-0.794 7.215 0.892 10.473c1.786 3.448 4.963 5.989 8.72 6.973 0.043 0.011 0.087 0.017 0.13 0.028l-2.541 1.288c-0.344 0.189-0.458 0.613-0.254 0.948l0.098 0.256c0.205 0.335 0.557 0.454 0.9 0.266l4.651-2.381c0.006-0.004 0.012-0.003 0.018-0.007l0.312-0.171c0.172-0.095 0.287-0.249 0.332-0.422 0.047-0.172 0.025-0.364-0.076-0.531zM28.559 10.025c-1.783-3.447-4.862-5.988-8.618-6.972-0.267-0.070-0.541-0.124-0.814-0.179l2.494-1.265c0.344-0.189 0.549-0.614 0.345-0.949l-0.099-0.255c-0.205-0.336-0.648-0.454-0.991-0.267l-4.651 2.381c-0.006 0.003-0.012 0.002-0.018 0.006l-0.312 0.171c-0.173 0.095-0.287 0.249-0.332 0.422-0.047 0.172-0.025 0.364 0.077 0.53l0.185 0.304c0.003 0.006 0.008 0.010 0.012 0.016l2.873 4.489c0.203 0.335 0.646 0.454 0.991 0.266l0.226-0.157c0.344-0.188 0.366-0.673 0.163-1.008l-1.85-2.87c0.407 0.063 0.811 0.138 1.207 0.242 3.226 0.845 5.856 3.027 7.387 5.986 1.448 2.797 1.72 5.99 0.765 8.991s-3.020 5.451-5.818 6.901c-0.476 0.247-0.662 0.831-0.415 1.308 0.172 0.332 0.511 0.524 0.863 0.524 0.15 0 0.302-0.035 0.446-0.109 3.259-1.686 5.664-4.54 6.776-8.035 1.111-3.497 0.794-7.217-0.893-10.473z" })));
15
15
  }
16
16
  static get style() { return RefreshIconStyle0; }
17
17
  }, [2, "refresh-icon", {
@@ -11,7 +11,7 @@ const ReplyAllIcon$1 = proxyCustomElement(class ReplyAllIcon extends HTMLElement
11
11
  this.height = '15';
12
12
  }
13
13
  render() {
14
- return (h("svg", { key: '9749cbb476cd24fa7749f74c84451915b0bbd389', fill: "auto", width: this.width, height: this.height, viewBox: "0 0 1920 1920", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '8abb22a5118d9b46ae17cdf0f158eea3286844d7', d: "m1030.975 188 81.249 81.249-429.228 429.228h300.747c516.223 0 936.257 420.034 936.257 936.257v98.028h-114.92v-98.028c0-452.901-368.436-821.337-821.337-821.337H682.996l429.228 429.229-81.25 81.248-567.936-567.937L1030.975 188Zm-463.038.011 81.249 81.25-486.688 486.688 486.688 486.688-81.249 81.249L0 755.949 567.937 188.01Z", "fill-rule": "evenodd" })));
14
+ return (h("svg", { key: '731c2f8765e8d12717f1e021f6ea9fda06bdd336', fill: "auto", width: this.width, height: this.height, viewBox: "0 0 1920 1920", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '79807cd8dd4aaa49fc2c6be33b18974b9d7874f7', d: "m1030.975 188 81.249 81.249-429.228 429.228h300.747c516.223 0 936.257 420.034 936.257 936.257v98.028h-114.92v-98.028c0-452.901-368.436-821.337-821.337-821.337H682.996l429.228 429.229-81.25 81.248-567.936-567.937L1030.975 188Zm-463.038.011 81.249 81.25-486.688 486.688 486.688 486.688-81.249 81.249L0 755.949 567.937 188.01Z", "fill-rule": "evenodd" })));
15
15
  }
16
16
  static get style() { return ReplyAllIconStyle0; }
17
17
  }, [2, "reply-all-icon", {
@@ -11,7 +11,7 @@ const ReplyIcon$1 = proxyCustomElement(class ReplyIcon extends HTMLElement {
11
11
  this.height = '15';
12
12
  }
13
13
  render() {
14
- return (h("svg", { key: 'ff9ce6eae8940b2b906b6447b9cca4041bbce563', fill: "auto", width: this.width, height: this.height, viewBox: "0 0 1920 1920", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'e1d7626352bb59a4d86272c3aadfbc1bc5245ed1', d: "M835.942 632.563H244.966l478.08-478.08-90.496-90.496L-.026 696.563 632.55 1329.14l90.496-90.496-478.08-478.08h590.976c504.448 0 914.816 410.368 914.816 914.816v109.184h128V1675.38c0-574.976-467.84-1042.816-1042.816-1042.816", "fill-rule": "evenodd" })));
14
+ return (h("svg", { key: 'c28f9fd8ada1318b9d8c35dc2361f105ef2daba1', fill: "auto", width: this.width, height: this.height, viewBox: "0 0 1920 1920", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '07d39c83f7b5423b81583d4909d1763877369b8d', d: "M835.942 632.563H244.966l478.08-478.08-90.496-90.496L-.026 696.563 632.55 1329.14l90.496-90.496-478.08-478.08h590.976c504.448 0 914.816 410.368 914.816 914.816v109.184h128V1675.38c0-574.976-467.84-1042.816-1042.816-1042.816", "fill-rule": "evenodd" })));
15
15
  }
16
16
  static get style() { return ReplyIconStyle0; }
17
17
  }, [2, "reply-icon", {
@@ -319,6 +319,7 @@ class NylaSchedulerAPIConnector {
319
319
  return { error: this.errors.component(instance.t('createBookingErrorTitle')).no_timeslot_selected() };
320
320
  }
321
321
  const timezone = data && data?.timezone ? data?.timezone : selectedTimezone;
322
+ const language = selectedLanguage || 'en-US';
322
323
  if (!timezone) {
323
324
  return { error: this.errors.component(instance.t('createBookingErrorTitle')).no_timezone_selected() };
324
325
  }
@@ -333,9 +334,13 @@ class NylaSchedulerAPIConnector {
333
334
  }
334
335
  }
335
336
  }
337
+ const addFields = {};
338
+ Object.entries(bookingInfo?.additionalFields || {}).forEach(([key, entry]) => {
339
+ addFields[key] = entry.value;
340
+ });
336
341
  const primaryGuest = data ? data?.primaryParticipant : bookingInfo?.primaryParticipant;
337
342
  const guests = data ? data?.guests || [] : bookingInfo?.guests || [];
338
- const additional_fields = data ? data?.additionalFields : bookingInfo?.additionalFields;
343
+ const additional_fields = data ? data?.additionalFields : addFields;
339
344
  const headers = this.getHeaders();
340
345
  const configIdParam = !this.sessionId && this.configId
341
346
  ? `?configuration_id=${this.configId}`
@@ -351,7 +356,7 @@ class NylaSchedulerAPIConnector {
351
356
  start_time: timeslot.start_time.getTime() / 1000,
352
357
  end_time: timeslot.end_time.getTime() / 1000,
353
358
  timezone: timezone,
354
- email_language: this.getTwoLetterLanguageCode(selectedLanguage),
359
+ email_language: this.getTwoLetterLanguageCode(language),
355
360
  }), headers);
356
361
  if ('error' in response) {
357
362
  this.schedulerStore.set('isLoading', false);
@@ -549,9 +554,13 @@ class NylaSchedulerAPIConnector {
549
554
  if (!time_zone) {
550
555
  return { error: componentErrors.invalid_timezone('Please pass "timezone" in data or set "selectedTimezone" in the defaultSchedulerState.') };
551
556
  }
557
+ const addFields = {};
558
+ Object.entries(bookingInfo?.additionalFields || {}).forEach(([key, entry]) => {
559
+ addFields[key] = entry.value;
560
+ });
552
561
  const primaryGuest = data ? data?.primaryParticipant : bookingInfo?.primaryParticipant;
553
562
  const guests = data ? data?.guests || [] : bookingInfo?.guests || [];
554
- const additional_fields = data ? data?.additionalFields : bookingInfo?.additionalFields;
563
+ const additional_fields = data ? data?.additionalFields : addFields;
555
564
  const configIdParam = !this.sessionId && this.configId
556
565
  ? `?configuration_id=${this.configId}`
557
566
  : !this.sessionId && this.slug && this.clientId