@nylas/web-elements 2.5.18 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (745) hide show
  1. package/dist/cdn/input-color-picker/input-color-picker.es.js +3 -3
  2. package/dist/cdn/nylas-scheduler-editor/nylas-scheduler-editor.es.js +129 -114
  3. package/dist/cdn/nylas-scheduling/nylas-scheduling.es.js +2490 -2468
  4. package/dist/cjs/add-circle-icon_2.cjs.entry.js +2 -2
  5. package/dist/cjs/archive-icon.cjs.entry.js +1 -1
  6. package/dist/cjs/arrow-icon.cjs.entry.js +1 -1
  7. package/dist/cjs/bold-icon.cjs.entry.js +1 -1
  8. package/dist/cjs/button-component_2.cjs.entry.js +2 -2
  9. package/dist/cjs/calendar-agenda-fill-icon_39.cjs.entry.js +47 -47
  10. package/dist/cjs/calendar-cancel-icon.cjs.entry.js +1 -1
  11. package/dist/cjs/calendar-check-icon.cjs.entry.js +1 -1
  12. package/dist/cjs/calendar-icon.cjs.entry.js +1 -1
  13. package/dist/cjs/checkbox-component.cjs.entry.js +1 -1
  14. package/dist/cjs/checkbox-group_4.cjs.entry.js +5 -5
  15. package/dist/cjs/checkmark-circle-icon.cjs.entry.js +1 -1
  16. package/dist/cjs/checkmark-icon_14.cjs.entry.js +16 -16
  17. package/dist/cjs/chevron-icon_3.cjs.entry.js +4 -4
  18. package/dist/cjs/clock-icon_2.cjs.entry.js +2 -2
  19. package/dist/cjs/delete-icon.cjs.entry.js +1 -1
  20. package/dist/cjs/document-refresh-icon.cjs.entry.js +1 -1
  21. package/dist/cjs/folder-icon.cjs.entry.js +1 -1
  22. package/dist/cjs/forward-icon.cjs.entry.js +1 -1
  23. package/dist/cjs/globe-icon_3.cjs.entry.js +5 -5
  24. package/dist/cjs/google-logo-icon_6.cjs.entry.js +13 -13
  25. package/dist/cjs/google-meet-icon_5.cjs.entry.js +5 -5
  26. package/dist/cjs/inbox-icon.cjs.entry.js +1 -1
  27. package/dist/cjs/info-icon_2.cjs.entry.js +3 -3
  28. package/dist/cjs/input-component.cjs.entry.js +1 -1
  29. package/dist/cjs/input-dropdown_2.cjs.entry.js +2 -2
  30. package/dist/cjs/input-image-url_2.cjs.entry.js +2 -2
  31. package/dist/cjs/italic-icon.cjs.entry.js +1 -1
  32. package/dist/cjs/multi-select-dropdown.cjs.entry.js +2 -2
  33. package/dist/cjs/nylas-booked-event-card_11.cjs.entry.js +46 -18
  34. package/dist/cjs/nylas-booked-event-card_11.cjs.entry.js.map +1 -1
  35. package/dist/cjs/nylas-form-card.cjs.entry.js +1 -1
  36. package/dist/cjs/nylas-notification_2.cjs.entry.js +2 -2
  37. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js +29 -4
  38. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js.map +1 -1
  39. package/dist/cjs/nylas-scheduler-editor.entry.cjs.js.map +1 -1
  40. package/dist/cjs/nylas-scheduling.cjs.entry.js +1 -1
  41. package/dist/cjs/nylas-scheduling.cjs.entry.js.map +1 -1
  42. package/dist/cjs/nylas-scheduling.entry.cjs.js.map +1 -1
  43. package/dist/cjs/person-icon.cjs.entry.js +1 -1
  44. package/dist/cjs/play-icon.cjs.entry.js +1 -1
  45. package/dist/cjs/plus-icon.cjs.entry.js +1 -1
  46. package/dist/cjs/radio-button-group.cjs.entry.js +1 -1
  47. package/dist/cjs/refresh-icon.cjs.entry.js +1 -1
  48. package/dist/cjs/reply-all-icon.cjs.entry.js +1 -1
  49. package/dist/cjs/reply-icon.cjs.entry.js +1 -1
  50. package/dist/cjs/sent-icon.cjs.entry.js +1 -1
  51. package/dist/cjs/spam-icon.cjs.entry.js +1 -1
  52. package/dist/cjs/star-icon.cjs.entry.js +1 -1
  53. package/dist/cjs/stop-icon.cjs.entry.js +1 -1
  54. package/dist/cjs/textarea-component.cjs.entry.js +1 -1
  55. package/dist/cjs/toggle-switch.cjs.entry.js +1 -1
  56. package/dist/cjs/translate-icon.cjs.entry.js +1 -1
  57. package/dist/cjs/trash-fill-icon.cjs.entry.js +1 -1
  58. package/dist/cjs/underline-icon.cjs.entry.js +1 -1
  59. package/dist/cjs/{version-Xu0ORQw8.js → version-CHszslqN.js} +3 -3
  60. package/dist/cjs/version-CHszslqN.js.map +1 -0
  61. package/dist/collection/common/icons/add-circle.js +1 -1
  62. package/dist/collection/common/icons/archive.js +1 -1
  63. package/dist/collection/common/icons/arrow.js +1 -1
  64. package/dist/collection/common/icons/bold.js +1 -1
  65. package/dist/collection/common/icons/calendar-agenda-fill.js +1 -1
  66. package/dist/collection/common/icons/calendar-agenda.js +1 -1
  67. package/dist/collection/common/icons/calendar-cancel.js +1 -1
  68. package/dist/collection/common/icons/calendar-check.js +1 -1
  69. package/dist/collection/common/icons/calendar-info.js +1 -1
  70. package/dist/collection/common/icons/calendar-patterns.js +1 -1
  71. package/dist/collection/common/icons/calendar.js +1 -1
  72. package/dist/collection/common/icons/checkmark-circle.js +1 -1
  73. package/dist/collection/common/icons/checkmark.js +1 -1
  74. package/dist/collection/common/icons/chevron.js +1 -1
  75. package/dist/collection/common/icons/clock.js +1 -1
  76. package/dist/collection/common/icons/close.js +1 -1
  77. package/dist/collection/common/icons/copy.js +1 -1
  78. package/dist/collection/common/icons/delete.js +1 -1
  79. package/dist/collection/common/icons/document-refresh.js +1 -1
  80. package/dist/collection/common/icons/dragable.js +1 -1
  81. package/dist/collection/common/icons/edit.js +1 -1
  82. package/dist/collection/common/icons/envelope-fill.js +1 -1
  83. package/dist/collection/common/icons/envelope.js +1 -1
  84. package/dist/collection/common/icons/eye.js +1 -1
  85. package/dist/collection/common/icons/feedback-icon.js +1 -1
  86. package/dist/collection/common/icons/flow.js +1 -1
  87. package/dist/collection/common/icons/folder.js +1 -1
  88. package/dist/collection/common/icons/forward.js +1 -1
  89. package/dist/collection/common/icons/globe.js +1 -1
  90. package/dist/collection/common/icons/google-logo.js +1 -1
  91. package/dist/collection/common/icons/google-meet.js +1 -1
  92. package/dist/collection/common/icons/inbox.js +1 -1
  93. package/dist/collection/common/icons/info.js +1 -1
  94. package/dist/collection/common/icons/italic.js +1 -1
  95. package/dist/collection/common/icons/loading.js +1 -1
  96. package/dist/collection/common/icons/location-off.js +1 -1
  97. package/dist/collection/common/icons/location.js +1 -1
  98. package/dist/collection/common/icons/microsof-teams.js +1 -1
  99. package/dist/collection/common/icons/microsoft-logo.js +1 -1
  100. package/dist/collection/common/icons/nylas-logo.js +1 -1
  101. package/dist/collection/common/icons/paintbrush-fill.js +1 -1
  102. package/dist/collection/common/icons/paintbrush.js +1 -1
  103. package/dist/collection/common/icons/people.js +1 -1
  104. package/dist/collection/common/icons/person-clipboard.js +1 -1
  105. package/dist/collection/common/icons/person.js +1 -1
  106. package/dist/collection/common/icons/play.js +1 -1
  107. package/dist/collection/common/icons/plus.js +1 -1
  108. package/dist/collection/common/icons/refresh.js +1 -1
  109. package/dist/collection/common/icons/reply-all.js +1 -1
  110. package/dist/collection/common/icons/reply.js +1 -1
  111. package/dist/collection/common/icons/search.js +1 -1
  112. package/dist/collection/common/icons/sent.js +1 -1
  113. package/dist/collection/common/icons/spam.js +1 -1
  114. package/dist/collection/common/icons/star.js +1 -1
  115. package/dist/collection/common/icons/stop.js +1 -1
  116. package/dist/collection/common/icons/translate.js +1 -1
  117. package/dist/collection/common/icons/trash-fill.js +1 -1
  118. package/dist/collection/common/icons/trash.js +1 -1
  119. package/dist/collection/common/icons/underline.js +1 -1
  120. package/dist/collection/common/icons/warning.js +1 -1
  121. package/dist/collection/common/icons/zoom.js +1 -1
  122. package/dist/collection/common/types.js.map +1 -1
  123. package/dist/collection/components/design-system/button-component/button-component.js +1 -1
  124. package/dist/collection/components/design-system/checkbox-component/checkbox-component.js +1 -1
  125. package/dist/collection/components/design-system/checkbox-group/checkbox-group.js +1 -1
  126. package/dist/collection/components/design-system/input-color-picker/input-color-picker.js +2 -2
  127. package/dist/collection/components/design-system/input-component/input-component.js +1 -1
  128. package/dist/collection/components/design-system/input-dropdown/input-dropdown.js +1 -1
  129. package/dist/collection/components/design-system/input-image-url/input-image-url.js +1 -1
  130. package/dist/collection/components/design-system/multi-select-dropdown/multi-select-dropdown.js +2 -2
  131. package/dist/collection/components/design-system/nylas-date-component/nylas-date-component.js +1 -1
  132. package/dist/collection/components/design-system/radio-button-group/radio-button-group.js +1 -1
  133. package/dist/collection/components/design-system/select-dropdown/select-dropdown.js +2 -2
  134. package/dist/collection/components/design-system/textarea-component/textarea-component.js +1 -1
  135. package/dist/collection/components/design-system/time-period-selector/time-period-selector.js +1 -1
  136. package/dist/collection/components/design-system/toggle-switch/toggle-switch.js +1 -1
  137. package/dist/collection/components/design-system/tooltip-component/toolitp-component.js +2 -2
  138. package/dist/collection/components/scheduler/nylas-booking-form/nylas-booking-form.js +40 -12
  139. package/dist/collection/components/scheduler/nylas-booking-form/nylas-booking-form.js.map +1 -1
  140. package/dist/collection/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.js +1 -1
  141. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js +1 -1
  142. package/dist/collection/components/scheduler/nylas-confirmed-event-card/nylas-confirmed-event-card.js +1 -1
  143. package/dist/collection/components/scheduler/nylas-feedback-form/nylas-feedback-form.js +2 -2
  144. package/dist/collection/components/scheduler/nylas-notification/nylas-notification.js +1 -1
  145. package/dist/collection/components/scheduler/nylas-organizer-confirmation-card/nylas-organizer-confirmation-card.js +2 -2
  146. package/dist/collection/components/scheduler/nylas-scheduling/nylas-scheduling.js +1 -1
  147. package/dist/collection/components/scheduler/nylas-scheduling/nylas-scheduling.js.map +1 -1
  148. package/dist/collection/components/scheduler/nylas-selected-event-card/nylas-selected-event-card.js +2 -2
  149. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js +1 -1
  150. package/dist/collection/components/scheduler-editor/nylas-booking-confirmation-redirect/nylas-booking-confirmation-redirect.js +1 -1
  151. package/dist/collection/components/scheduler-editor/nylas-booking-confirmation-type/nylas-booking-confirmation-type.js +1 -1
  152. package/dist/collection/components/scheduler-editor/nylas-booking-form-config/nylas-booking-form-config.js +2 -2
  153. package/dist/collection/components/scheduler-editor/nylas-cancellation-policy/nylas-cancellation-policy.js +1 -1
  154. package/dist/collection/components/scheduler-editor/nylas-confirmation-email/nylas-confirmation-email.js +2 -2
  155. package/dist/collection/components/scheduler-editor/nylas-connected-calendars/nylas-connected-calendars.js +1 -1
  156. package/dist/collection/components/scheduler-editor/nylas-custom-booking-flow/nylas-custom-booking-flow.js +1 -1
  157. package/dist/collection/components/scheduler-editor/nylas-customize-booking-settings/nylas-customize-booking-settings.js +1 -1
  158. package/dist/collection/components/scheduler-editor/nylas-disable-emails/nylas-disable-emails.js +1 -1
  159. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js +5 -5
  160. package/dist/collection/components/scheduler-editor/nylas-editor-tabs-group/nylas-editor-tabs-group.js +5 -5
  161. package/dist/collection/components/scheduler-editor/nylas-event-capacity/nylas-event-capacity.js +1 -1
  162. package/dist/collection/components/scheduler-editor/nylas-event-description/nylas-event-description.js +1 -1
  163. package/dist/collection/components/scheduler-editor/nylas-event-duration/nylas-event-duration.js +2 -2
  164. package/dist/collection/components/scheduler-editor/nylas-event-info/nylas-event-info.js +1 -1
  165. package/dist/collection/components/scheduler-editor/nylas-event-limits/nylas-event-limits.js +1 -1
  166. package/dist/collection/components/scheduler-editor/nylas-event-location/nylas-event-location.js +1 -1
  167. package/dist/collection/components/scheduler-editor/nylas-event-timeslot/nylas-event-timeslot.js +3 -3
  168. package/dist/collection/components/scheduler-editor/nylas-event-title/nylas-event-title.js +2 -2
  169. package/dist/collection/components/scheduler-editor/nylas-form-card/nylas-form-card.js +1 -1
  170. package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.js +1 -1
  171. package/dist/collection/components/scheduler-editor/nylas-min-booking-notice/nylas-min-booking-notice.js +1 -1
  172. package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.js +1 -1
  173. package/dist/collection/components/scheduler-editor/nylas-notetaker-config/nylas-notetaker-config.js +8 -8
  174. package/dist/collection/components/scheduler-editor/nylas-only-specific-time-availability/nylas-only-specific-time-availability.js +1 -1
  175. package/dist/collection/components/scheduler-editor/nylas-page-name/nylas-page-name.js +1 -1
  176. package/dist/collection/components/scheduler-editor/nylas-page-styling/nylas-page-styling.js +1 -1
  177. package/dist/collection/components/scheduler-editor/nylas-participant-booking-calendars/nylas-participant-booking-calendars.js +1 -1
  178. package/dist/collection/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.js +1 -1
  179. package/dist/collection/components/scheduler-editor/nylas-reminder-emails/nylas-reminder-emails.js +3 -3
  180. package/dist/collection/components/scheduler-editor/nylas-reminder-time/nylas-reminder-time.js +1 -1
  181. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js +3 -3
  182. package/dist/collection/components/scheduler-editor/nylas-specific-time-availability-picker/nylas-specific-time-availability-picker.js +2 -2
  183. package/dist/collection/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.js +3 -3
  184. package/dist/collection/components/scheduler-editor/nylas-timeslot-interval/nylas-timeslot-interval.js +1 -1
  185. package/dist/collection/types/index.js.map +1 -1
  186. package/dist/collection/version.js +1 -1
  187. package/dist/collection/version.js.map +1 -1
  188. package/dist/components/add-circle-icon.js +1 -1
  189. package/dist/components/archive-icon.js +1 -1
  190. package/dist/components/arrow-icon.js +1 -1
  191. package/dist/components/bold-icon.js +1 -1
  192. package/dist/components/button-component.js +1 -1
  193. package/dist/components/calendar-agenda-fill-icon.js +1 -1
  194. package/dist/components/calendar-agenda-icon.js +1 -1
  195. package/dist/components/calendar-cancel-icon.js +1 -1
  196. package/dist/components/calendar-check-icon.js +1 -1
  197. package/dist/components/calendar-icon.js +1 -1
  198. package/dist/components/calendar-info-icon.js +1 -1
  199. package/dist/components/calendar-patterns-icon.js +1 -1
  200. package/dist/components/checkbox-component.js +1 -1
  201. package/dist/components/checkbox-group.js +1 -1
  202. package/dist/components/checkmark-circle-icon.js +1 -1
  203. package/dist/components/checkmark-icon.js +1 -1
  204. package/dist/components/chevron-icon.js +1 -1
  205. package/dist/components/clock-icon.js +1 -1
  206. package/dist/components/close-icon.js +1 -1
  207. package/dist/components/copy-icon.js +1 -1
  208. package/dist/components/delete-icon.js +1 -1
  209. package/dist/components/document-refresh-icon.js +1 -1
  210. package/dist/components/dragable-icon.js +1 -1
  211. package/dist/components/edit-icon.js +1 -1
  212. package/dist/components/envelope-fill-icon.js +1 -1
  213. package/dist/components/envelope-icon.js +1 -1
  214. package/dist/components/eye-icon.js +1 -1
  215. package/dist/components/feedback-icon.js +1 -1
  216. package/dist/components/flow-icon.js +1 -1
  217. package/dist/components/folder-icon.js +1 -1
  218. package/dist/components/forward-icon.js +1 -1
  219. package/dist/components/globe-icon.js +1 -1
  220. package/dist/components/google-logo-icon.js +1 -1
  221. package/dist/components/google-meet-icon.js +1 -1
  222. package/dist/components/inbox-icon.js +1 -1
  223. package/dist/components/info-icon.js +1 -1
  224. package/dist/components/input-color-picker.js +1 -1
  225. package/dist/components/input-component.js +1 -1
  226. package/dist/components/input-dropdown.js +1 -1
  227. package/dist/components/input-image-url.js +1 -1
  228. package/dist/components/italic-icon.js +1 -1
  229. package/dist/components/loading-icon.js +1 -1
  230. package/dist/components/location-icon.js +1 -1
  231. package/dist/components/location-off-icon.js +1 -1
  232. package/dist/components/microsoft-logo-icon.js +1 -1
  233. package/dist/components/microsoft-teams-icon.js +1 -1
  234. package/dist/components/multi-select-dropdown.js +1 -1
  235. package/dist/components/nylas-additional-participants.js +1 -1
  236. package/dist/components/nylas-availability-picker.js +1 -1
  237. package/dist/components/nylas-booked-event-card.js +1 -1
  238. package/dist/components/nylas-booking-calendar-picker.js +1 -1
  239. package/dist/components/nylas-booking-confirmation-redirect.js +1 -1
  240. package/dist/components/nylas-booking-confirmation-type.js +1 -1
  241. package/dist/components/nylas-booking-form-config.js +1 -1
  242. package/dist/components/nylas-booking-form.js +1 -1
  243. package/dist/components/nylas-buffer-time.js +1 -1
  244. package/dist/components/nylas-calendar-picker.js +1 -1
  245. package/dist/components/nylas-cancel-booking-form.js +1 -1
  246. package/dist/components/nylas-cancellation-policy.js +1 -1
  247. package/dist/components/nylas-cancelled-event-card.js +1 -1
  248. package/dist/components/nylas-confirmation-email.js +1 -1
  249. package/dist/components/nylas-confirmed-event-card.js +1 -1
  250. package/dist/components/nylas-connected-calendars.js +1 -1
  251. package/dist/components/nylas-custom-booking-flow.js +1 -1
  252. package/dist/components/nylas-custom-event-slug.js +1 -1
  253. package/dist/components/nylas-customize-booking-settings.js +1 -1
  254. package/dist/components/nylas-date-component.js +1 -1
  255. package/dist/components/nylas-date-picker.js +1 -1
  256. package/dist/components/nylas-disable-emails.js +1 -1
  257. package/dist/components/nylas-editor-tabs-group.js +1 -1
  258. package/dist/components/nylas-editor-tabs.js +1 -1
  259. package/dist/components/nylas-event-calendar.js +1 -1
  260. package/dist/components/nylas-event-capacity.js +1 -1
  261. package/dist/components/nylas-event-description.js +1 -1
  262. package/dist/components/nylas-event-duration.js +1 -1
  263. package/dist/components/nylas-event-info.js +1 -1
  264. package/dist/components/nylas-event-limits.js +1 -1
  265. package/dist/components/nylas-event-location.js +1 -1
  266. package/dist/components/nylas-event-timeslot.js +1 -1
  267. package/dist/components/nylas-event-title.js +1 -1
  268. package/dist/components/nylas-feedback-form.js +1 -1
  269. package/dist/components/nylas-form-card.js +1 -1
  270. package/dist/components/nylas-limit-future-bookings.js +1 -1
  271. package/dist/components/nylas-list-configurations.js +1 -1
  272. package/dist/components/nylas-locale-switch.js +1 -1
  273. package/dist/components/nylas-logo.js +1 -1
  274. package/dist/components/nylas-min-booking-notice.js +1 -1
  275. package/dist/components/nylas-min-cancellation-notice.js +1 -1
  276. package/dist/components/nylas-notetaker-config.js +1 -1
  277. package/dist/components/nylas-notification.js +1 -1
  278. package/dist/components/nylas-only-specific-time-availability.js +1 -1
  279. package/dist/components/nylas-organizer-confirmation-card.js +1 -1
  280. package/dist/components/nylas-page-name.js +1 -1
  281. package/dist/components/nylas-page-styling.js +1 -1
  282. package/dist/components/nylas-participant-booking-calendars.js +1 -1
  283. package/dist/components/nylas-participants-custom-availability.js +1 -1
  284. package/dist/components/nylas-reminder-emails.js +1 -1
  285. package/dist/components/nylas-reminder-time.js +1 -1
  286. package/dist/components/nylas-scheduler-editor.js +128 -103
  287. package/dist/components/nylas-scheduler-editor.js.map +1 -1
  288. package/dist/components/nylas-scheduling-method.js +1 -1
  289. package/dist/components/nylas-scheduling.js +39 -39
  290. package/dist/components/nylas-scheduling.js.map +1 -1
  291. package/dist/components/nylas-select-event-type.js +1 -1
  292. package/dist/components/nylas-selected-event-card.js +1 -1
  293. package/dist/components/nylas-specific-time-availability-picker.js +1 -1
  294. package/dist/components/nylas-time-window-picker.js +1 -1
  295. package/dist/components/nylas-timeslot-interval.js +1 -1
  296. package/dist/components/nylas-timeslot-picker.js +1 -1
  297. package/dist/components/{p-DjJOgfxK.js → p-1jCDFlwx.js} +9 -9
  298. package/dist/components/{p-DjJOgfxK.js.map → p-1jCDFlwx.js.map} +1 -1
  299. package/dist/components/{p-q7g_LEwC.js → p-36H4hxVv.js} +3 -3
  300. package/dist/components/{p-q7g_LEwC.js.map → p-36H4hxVv.js.map} +1 -1
  301. package/dist/components/{p-B2LU95MT.js → p-3FIo8Hrp.js} +3 -3
  302. package/dist/components/{p-B2LU95MT.js.map → p-3FIo8Hrp.js.map} +1 -1
  303. package/dist/components/{p-g9YD1HRv.js → p-4McmpmAg.js} +4 -4
  304. package/dist/components/{p-g9YD1HRv.js.map → p-4McmpmAg.js.map} +1 -1
  305. package/dist/components/{p-BTwTmU9e.js → p-6Seqe489.js} +21 -21
  306. package/dist/components/{p-BTwTmU9e.js.map → p-6Seqe489.js.map} +1 -1
  307. package/dist/components/{p-CL8ugNmu.js → p-8-JIv49C.js} +4 -4
  308. package/dist/components/{p-CL8ugNmu.js.map → p-8-JIv49C.js.map} +1 -1
  309. package/dist/components/{p-C4RTQIyO.js → p-9KfwmETj.js} +3 -3
  310. package/dist/components/{p-C4RTQIyO.js.map → p-9KfwmETj.js.map} +1 -1
  311. package/dist/components/{p-DGDbXfHm.js → p-B3irHRxH.js} +14 -14
  312. package/dist/components/{p-DGDbXfHm.js.map → p-B3irHRxH.js.map} +1 -1
  313. package/dist/components/{p-DZwGCUUK.js → p-B57gyFFu.js} +9 -9
  314. package/dist/components/{p-DZwGCUUK.js.map → p-B57gyFFu.js.map} +1 -1
  315. package/dist/components/{p-RPocf_FZ.js → p-BAi0-0s9.js} +19 -19
  316. package/dist/components/{p-RPocf_FZ.js.map → p-BAi0-0s9.js.map} +1 -1
  317. package/dist/components/{p-DcjGlnBR.js → p-BBWnrSjc.js} +3 -3
  318. package/dist/components/{p-DcjGlnBR.js.map → p-BBWnrSjc.js.map} +1 -1
  319. package/dist/components/{p-DBHtQK2b.js → p-BEvwJe37.js} +3 -3
  320. package/dist/components/{p-DBHtQK2b.js.map → p-BEvwJe37.js.map} +1 -1
  321. package/dist/components/{p-BuJdnN6-.js → p-BG5y4pBL.js} +4 -4
  322. package/dist/components/{p-BuJdnN6-.js.map → p-BG5y4pBL.js.map} +1 -1
  323. package/dist/components/{p-CRIlyxX5.js → p-BGcFPLlm.js} +10 -10
  324. package/dist/components/{p-CRIlyxX5.js.map → p-BGcFPLlm.js.map} +1 -1
  325. package/dist/components/{p-BoUo2hc7.js → p-BJbmwaXD.js} +3 -3
  326. package/dist/components/{p-BoUo2hc7.js.map → p-BJbmwaXD.js.map} +1 -1
  327. package/dist/components/{p-BzLxndYA.js → p-BMLPTwTQ.js} +7 -7
  328. package/dist/components/{p-BzLxndYA.js.map → p-BMLPTwTQ.js.map} +1 -1
  329. package/dist/components/{p-BrOgWk7y.js → p-BMv8LXnI.js} +3 -3
  330. package/dist/components/{p-BrOgWk7y.js.map → p-BMv8LXnI.js.map} +1 -1
  331. package/dist/components/{p-BWbQSVNH.js → p-BOYZzt-4.js} +7 -7
  332. package/dist/components/{p-BWbQSVNH.js.map → p-BOYZzt-4.js.map} +1 -1
  333. package/dist/components/{p-CdPtFwy6.js → p-BQ5o0vvR.js} +5 -5
  334. package/dist/components/{p-CdPtFwy6.js.map → p-BQ5o0vvR.js.map} +1 -1
  335. package/dist/components/{p-DPwhlVlN.js → p-BTqJQKYU.js} +3 -3
  336. package/dist/components/{p-DPwhlVlN.js.map → p-BTqJQKYU.js.map} +1 -1
  337. package/dist/components/{p-DUVwWh7e.js → p-BU16FiC8.js} +13 -13
  338. package/dist/components/{p-DUVwWh7e.js.map → p-BU16FiC8.js.map} +1 -1
  339. package/dist/components/{p-CpGRDWt9.js → p-BVIbhcW2.js} +4 -4
  340. package/dist/components/{p-CpGRDWt9.js.map → p-BVIbhcW2.js.map} +1 -1
  341. package/dist/components/{p-B2cPNmM_.js → p-BVZnq2zV.js} +9 -9
  342. package/dist/components/{p-B2cPNmM_.js.map → p-BVZnq2zV.js.map} +1 -1
  343. package/dist/components/{p-WABPA0YV.js → p-BVq4mTYg.js} +56 -28
  344. package/dist/components/p-BVq4mTYg.js.map +1 -0
  345. package/dist/components/{p-CuaQW941.js → p-BaX-h68d.js} +6 -6
  346. package/dist/components/{p-CuaQW941.js.map → p-BaX-h68d.js.map} +1 -1
  347. package/dist/components/{p-hipsVOV5.js → p-Baw3jP2X.js} +3 -3
  348. package/dist/components/{p-hipsVOV5.js.map → p-Baw3jP2X.js.map} +1 -1
  349. package/dist/components/{p-BnEkgCIs.js → p-Bbt9980R.js} +3 -3
  350. package/dist/components/{p-BnEkgCIs.js.map → p-Bbt9980R.js.map} +1 -1
  351. package/dist/components/{p-BAKh5tMf.js → p-BcHelLHv.js} +3 -3
  352. package/dist/components/{p-BAKh5tMf.js.map → p-BcHelLHv.js.map} +1 -1
  353. package/dist/components/{p-ChXM0wCn.js → p-BgzT-67i.js} +3 -3
  354. package/dist/components/{p-ChXM0wCn.js.map → p-BgzT-67i.js.map} +1 -1
  355. package/dist/components/{p-BqD6DKLT.js → p-BnLt26W8.js} +7 -7
  356. package/dist/components/{p-BqD6DKLT.js.map → p-BnLt26W8.js.map} +1 -1
  357. package/dist/components/{p-xMlGGw2N.js → p-BuYNWtp6.js} +3 -3
  358. package/dist/components/{p-xMlGGw2N.js.map → p-BuYNWtp6.js.map} +1 -1
  359. package/dist/components/{p-CyzGRI94.js → p-BvqNXgYj.js} +3 -3
  360. package/dist/components/{p-CyzGRI94.js.map → p-BvqNXgYj.js.map} +1 -1
  361. package/dist/components/{p-DDd7Mjvz.js → p-ByoRiTiK.js} +7 -7
  362. package/dist/components/{p-DDd7Mjvz.js.map → p-ByoRiTiK.js.map} +1 -1
  363. package/dist/components/{p-Ch_HOS-9.js → p-BzjixeLc.js} +7 -7
  364. package/dist/components/{p-Ch_HOS-9.js.map → p-BzjixeLc.js.map} +1 -1
  365. package/dist/components/{p-DfxhC7Fd.js → p-C1JOYWhj.js} +12 -12
  366. package/dist/components/{p-DfxhC7Fd.js.map → p-C1JOYWhj.js.map} +1 -1
  367. package/dist/components/{p-CzSowwcD.js → p-C2bWg9rc.js} +7 -7
  368. package/dist/components/{p-CzSowwcD.js.map → p-C2bWg9rc.js.map} +1 -1
  369. package/dist/components/{p-C4BZ4XFc.js → p-C35dU4J2.js} +3 -3
  370. package/dist/components/{p-C4BZ4XFc.js.map → p-C35dU4J2.js.map} +1 -1
  371. package/dist/components/{p-CvLWbTI_.js → p-C4QSwxPr.js} +3 -3
  372. package/dist/components/{p-CvLWbTI_.js.map → p-C4QSwxPr.js.map} +1 -1
  373. package/dist/components/{p-DEbbVkgj.js → p-C6ARzQ6M.js} +3 -3
  374. package/dist/components/{p-DEbbVkgj.js.map → p-C6ARzQ6M.js.map} +1 -1
  375. package/dist/components/{p-BYzkNeMW.js → p-CBjtU882.js} +5 -5
  376. package/dist/components/{p-BYzkNeMW.js.map → p-CBjtU882.js.map} +1 -1
  377. package/dist/components/{p-oRjUujH5.js → p-CDME1l9h.js} +8 -8
  378. package/dist/components/{p-oRjUujH5.js.map → p-CDME1l9h.js.map} +1 -1
  379. package/dist/components/{p-Dl0Yur5r.js → p-CGkcVt8h.js} +3 -3
  380. package/dist/components/{p-Dl0Yur5r.js.map → p-CGkcVt8h.js.map} +1 -1
  381. package/dist/components/{p-D0137Jos.js → p-CI1nvbUl.js} +10 -10
  382. package/dist/components/{p-D0137Jos.js.map → p-CI1nvbUl.js.map} +1 -1
  383. package/dist/components/{p-CUe11ohy.js → p-CKiOTF7Z.js} +7 -7
  384. package/dist/components/{p-CUe11ohy.js.map → p-CKiOTF7Z.js.map} +1 -1
  385. package/dist/components/{p-DQNm7dzQ.js → p-CNj6i-JK.js} +3 -3
  386. package/dist/components/{p-DQNm7dzQ.js.map → p-CNj6i-JK.js.map} +1 -1
  387. package/dist/components/{p-fwU4mtR0.js → p-COaWG_Zh.js} +5 -5
  388. package/dist/components/{p-fwU4mtR0.js.map → p-COaWG_Zh.js.map} +1 -1
  389. package/dist/components/{p-D5Swz0J4.js → p-CQvNQk_r.js} +10 -10
  390. package/dist/components/{p-D5Swz0J4.js.map → p-CQvNQk_r.js.map} +1 -1
  391. package/dist/components/{p-BBxu-pwN.js → p-CRWfdwTk.js} +14 -14
  392. package/dist/components/{p-BBxu-pwN.js.map → p-CRWfdwTk.js.map} +1 -1
  393. package/dist/components/{p-CahZPm95.js → p-CWNABkMS.js} +4 -4
  394. package/dist/components/{p-CahZPm95.js.map → p-CWNABkMS.js.map} +1 -1
  395. package/dist/components/p-CWplx7sA.js.map +1 -1
  396. package/dist/components/{p-CyWE9dXK.js → p-C_MBjjfN.js} +3 -3
  397. package/dist/components/{p-CyWE9dXK.js.map → p-C_MBjjfN.js.map} +1 -1
  398. package/dist/components/{p-DxDoo-4C.js → p-C_a8Brku.js} +4 -4
  399. package/dist/components/{p-DxDoo-4C.js.map → p-C_a8Brku.js.map} +1 -1
  400. package/dist/components/{p-D_daFt1t.js → p-CbIFnpIT.js} +10 -10
  401. package/dist/components/{p-D_daFt1t.js.map → p-CbIFnpIT.js.map} +1 -1
  402. package/dist/components/{p-CJvmK-NM.js → p-Cf47JDzZ.js} +3 -3
  403. package/dist/components/{p-CJvmK-NM.js.map → p-Cf47JDzZ.js.map} +1 -1
  404. package/dist/components/{p-CeKOSPvz.js → p-ChvVcov-.js} +8 -8
  405. package/dist/components/{p-CeKOSPvz.js.map → p-ChvVcov-.js.map} +1 -1
  406. package/dist/components/{p-D7z2dNXN.js → p-CixxWdv6.js} +3 -3
  407. package/dist/components/{p-D7z2dNXN.js.map → p-CixxWdv6.js.map} +1 -1
  408. package/dist/components/{p-BF0muZ9G.js → p-CkIBsfNB.js} +3 -3
  409. package/dist/components/{p-BF0muZ9G.js.map → p-CkIBsfNB.js.map} +1 -1
  410. package/dist/components/{p-BGbMXlLy.js → p-CneutSrB.js} +6 -6
  411. package/dist/components/{p-BGbMXlLy.js.map → p-CneutSrB.js.map} +1 -1
  412. package/dist/components/{p-D9mHh12b.js → p-Coy-5_RU.js} +8 -8
  413. package/dist/components/{p-D9mHh12b.js.map → p-Coy-5_RU.js.map} +1 -1
  414. package/dist/components/{p-CDDw-hf8.js → p-Cr0OL9Ww.js} +3 -3
  415. package/dist/components/{p-CDDw-hf8.js.map → p-Cr0OL9Ww.js.map} +1 -1
  416. package/dist/components/{p-CXkCnHr5.js → p-CrAcXVaG.js} +5 -5
  417. package/dist/components/{p-CXkCnHr5.js.map → p-CrAcXVaG.js.map} +1 -1
  418. package/dist/components/{p-BNuHkEZZ.js → p-CsyulOVn.js} +3 -3
  419. package/dist/components/{p-BNuHkEZZ.js.map → p-CsyulOVn.js.map} +1 -1
  420. package/dist/components/{p-DMwaGWVu.js → p-D-DEVTDE.js} +6 -6
  421. package/dist/components/{p-DMwaGWVu.js.map → p-D-DEVTDE.js.map} +1 -1
  422. package/dist/components/{p-BVH0Klhu.js → p-D0NY8UNC.js} +4 -4
  423. package/dist/components/{p-BVH0Klhu.js.map → p-D0NY8UNC.js.map} +1 -1
  424. package/dist/components/{p-BD4aqMeC.js → p-D1XyN1j_.js} +3 -3
  425. package/dist/components/{p-BD4aqMeC.js.map → p-D1XyN1j_.js.map} +1 -1
  426. package/dist/components/{p-D0qMgeBc.js → p-D30JsuKI.js} +6 -6
  427. package/dist/components/{p-D0qMgeBc.js.map → p-D30JsuKI.js.map} +1 -1
  428. package/dist/components/{p-BT5kT23k.js → p-D5y9oXD0.js} +3 -3
  429. package/dist/components/{p-BT5kT23k.js.map → p-D5y9oXD0.js.map} +1 -1
  430. package/dist/components/{p-3FTb1-in.js → p-D9XKQ809.js} +33 -33
  431. package/dist/components/{p-3FTb1-in.js.map → p-D9XKQ809.js.map} +1 -1
  432. package/dist/components/{p-BSfQxQEN.js → p-DA5RYBjv.js} +3 -3
  433. package/dist/components/{p-BSfQxQEN.js.map → p-DA5RYBjv.js.map} +1 -1
  434. package/dist/components/{p-Cyk3GcD_.js → p-DEI76q16.js} +3 -3
  435. package/dist/components/{p-Cyk3GcD_.js.map → p-DEI76q16.js.map} +1 -1
  436. package/dist/components/{p-UTn_XnKO.js → p-DEJGXMSG.js} +8 -8
  437. package/dist/components/{p-UTn_XnKO.js.map → p-DEJGXMSG.js.map} +1 -1
  438. package/dist/components/{p-DcXycU5_.js → p-DEggxpVo.js} +6 -6
  439. package/dist/components/{p-DcXycU5_.js.map → p-DEggxpVo.js.map} +1 -1
  440. package/dist/components/{p-eV80kRKP.js → p-DGEm3ZTt.js} +3 -3
  441. package/dist/components/{p-eV80kRKP.js.map → p-DGEm3ZTt.js.map} +1 -1
  442. package/dist/components/{p-Ce8gcoEa.js → p-DHb99Cgm.js} +3 -3
  443. package/dist/components/{p-Ce8gcoEa.js.map → p-DHb99Cgm.js.map} +1 -1
  444. package/dist/components/{p-CzVZs3uZ.js → p-DK6-bZYK.js} +3 -3
  445. package/dist/components/{p-CzVZs3uZ.js.map → p-DK6-bZYK.js.map} +1 -1
  446. package/dist/components/{p-CT64yPEO.js → p-DP99QPpi.js} +3 -3
  447. package/dist/components/{p-CT64yPEO.js.map → p-DP99QPpi.js.map} +1 -1
  448. package/dist/components/{p-DRXHxMKj.js → p-DTNmzKXY.js} +82 -82
  449. package/dist/components/{p-DRXHxMKj.js.map → p-DTNmzKXY.js.map} +1 -1
  450. package/dist/components/{p-kbilJltW.js → p-DTtKd-E-.js} +3 -3
  451. package/dist/components/{p-kbilJltW.js.map → p-DTtKd-E-.js.map} +1 -1
  452. package/dist/components/{p-Cs_iJUbv.js → p-DVNLlxnG.js} +3 -3
  453. package/dist/components/{p-Cs_iJUbv.js.map → p-DVNLlxnG.js.map} +1 -1
  454. package/dist/components/{p-Bsd63RFi.js → p-DXQVWZkn.js} +3 -3
  455. package/dist/components/{p-Bsd63RFi.js.map → p-DXQVWZkn.js.map} +1 -1
  456. package/dist/components/{p-ao6VxuAL.js → p-DY3hmp0T.js} +3 -3
  457. package/dist/components/{p-ao6VxuAL.js.map → p-DY3hmp0T.js.map} +1 -1
  458. package/dist/components/{p-CFeDwD40.js → p-DZJQ_Wck.js} +3 -3
  459. package/dist/components/{p-CFeDwD40.js.map → p-DZJQ_Wck.js.map} +1 -1
  460. package/dist/components/{p-UNYO4Uen.js → p-DZLca44K.js} +3 -3
  461. package/dist/components/{p-UNYO4Uen.js.map → p-DZLca44K.js.map} +1 -1
  462. package/dist/components/{p-Ci-pKDnr.js → p-DdUGpBp4.js} +6 -6
  463. package/dist/components/{p-Ci-pKDnr.js.map → p-DdUGpBp4.js.map} +1 -1
  464. package/dist/components/{p-O9btdnkK.js → p-DgN2U3G8.js} +15 -15
  465. package/dist/components/{p-O9btdnkK.js.map → p-DgN2U3G8.js.map} +1 -1
  466. package/dist/components/{p-Bvnci8k8.js → p-DhC3_luJ.js} +8 -8
  467. package/dist/components/{p-Bvnci8k8.js.map → p-DhC3_luJ.js.map} +1 -1
  468. package/dist/components/{p-uxA_4Zq1.js → p-Di9JUVGX.js} +9 -9
  469. package/dist/components/{p-uxA_4Zq1.js.map → p-Di9JUVGX.js.map} +1 -1
  470. package/dist/components/{p-BkqJQBCp.js → p-DjZdyHmc.js} +3 -3
  471. package/dist/components/{p-BkqJQBCp.js.map → p-DjZdyHmc.js.map} +1 -1
  472. package/dist/components/{p-CBBEkysd.js → p-DjtrM_3t.js} +3 -3
  473. package/dist/components/{p-CBBEkysd.js.map → p-DjtrM_3t.js.map} +1 -1
  474. package/dist/components/{p-C9Mlv9rC.js → p-DoA5ft2W.js} +3 -3
  475. package/dist/components/{p-C9Mlv9rC.js.map → p-DoA5ft2W.js.map} +1 -1
  476. package/dist/components/{p-Begx19Z9.js → p-DpipCjQf.js} +5 -5
  477. package/dist/components/{p-Begx19Z9.js.map → p-DpipCjQf.js.map} +1 -1
  478. package/dist/components/{p-C7ZpwRD0.js → p-DprQSn90.js} +3 -3
  479. package/dist/components/{p-C7ZpwRD0.js.map → p-DprQSn90.js.map} +1 -1
  480. package/dist/components/{p-d3kelm3z.js → p-DsvNvqOg.js} +3 -3
  481. package/dist/components/{p-d3kelm3z.js.map → p-DsvNvqOg.js.map} +1 -1
  482. package/dist/components/{p-wphqTozF.js → p-DtEl3UXW.js} +6 -6
  483. package/dist/components/{p-wphqTozF.js.map → p-DtEl3UXW.js.map} +1 -1
  484. package/dist/components/{p-BJ5a9k3B.js → p-GiOcqWdY.js} +7 -7
  485. package/dist/components/{p-BJ5a9k3B.js.map → p-GiOcqWdY.js.map} +1 -1
  486. package/dist/components/{p-C7J83Us-.js → p-IJzc7eB1.js} +3 -3
  487. package/dist/components/{p-C7J83Us-.js.map → p-IJzc7eB1.js.map} +1 -1
  488. package/dist/components/{p-jBYg7WMS.js → p-LgZAWXty.js} +3 -3
  489. package/dist/components/{p-jBYg7WMS.js.map → p-LgZAWXty.js.map} +1 -1
  490. package/dist/components/{p-NA5f_7b7.js → p-LopVARiX.js} +5 -5
  491. package/dist/components/{p-NA5f_7b7.js.map → p-LopVARiX.js.map} +1 -1
  492. package/dist/components/{p-D42UGkjM.js → p-UIE8SSzy.js} +3 -3
  493. package/dist/components/{p-D42UGkjM.js.map → p-UIE8SSzy.js.map} +1 -1
  494. package/dist/components/{p-Dj1TLa3T.js → p-VZFbCMYS.js} +3 -3
  495. package/dist/components/{p-Dj1TLa3T.js.map → p-VZFbCMYS.js.map} +1 -1
  496. package/dist/components/{p-BMmtU0fv.js → p-ViLIEy7H.js} +6 -6
  497. package/dist/components/{p-BMmtU0fv.js.map → p-ViLIEy7H.js.map} +1 -1
  498. package/dist/components/{p-qo42Sy8T.js → p-Yo5k5FWd.js} +15 -15
  499. package/dist/components/{p-qo42Sy8T.js.map → p-Yo5k5FWd.js.map} +1 -1
  500. package/dist/components/{p-BGCZ4yg1.js → p-Z5I7z8cD.js} +96 -96
  501. package/dist/components/{p-BGCZ4yg1.js.map → p-Z5I7z8cD.js.map} +1 -1
  502. package/dist/components/{p-nhhVpJed.js → p-cJqQhTj-.js} +10 -10
  503. package/dist/components/{p-nhhVpJed.js.map → p-cJqQhTj-.js.map} +1 -1
  504. package/dist/components/{p-LOCJMijY.js → p-cf3Hv5c6.js} +6 -6
  505. package/dist/components/{p-LOCJMijY.js.map → p-cf3Hv5c6.js.map} +1 -1
  506. package/dist/components/{p-DPPqmJvY.js → p-h9VWezZP.js} +4 -4
  507. package/dist/components/{p-DPPqmJvY.js.map → p-h9VWezZP.js.map} +1 -1
  508. package/dist/components/{p-37a4h3J_.js → p-kIZ75-15.js} +10 -10
  509. package/dist/components/{p-37a4h3J_.js.map → p-kIZ75-15.js.map} +1 -1
  510. package/dist/components/{p-DPL6BIu2.js → p-lDYP9du3.js} +9 -9
  511. package/dist/components/{p-DPL6BIu2.js.map → p-lDYP9du3.js.map} +1 -1
  512. package/dist/components/{p-D4gKLnje.js → p-mIi7Upj2.js} +16 -16
  513. package/dist/components/{p-D4gKLnje.js.map → p-mIi7Upj2.js.map} +1 -1
  514. package/dist/components/{p-CdBb4zI5.js → p-mkkcd81V.js} +17 -17
  515. package/dist/components/{p-CdBb4zI5.js.map → p-mkkcd81V.js.map} +1 -1
  516. package/dist/components/{p-DOryfnIf.js → p-mw0JEKw8.js} +5 -5
  517. package/dist/components/{p-DOryfnIf.js.map → p-mw0JEKw8.js.map} +1 -1
  518. package/dist/components/{p-DS6Ijr4M.js → p-n1qnMrWE.js} +3 -3
  519. package/dist/components/{p-DS6Ijr4M.js.map → p-n1qnMrWE.js.map} +1 -1
  520. package/dist/components/{p-wJgbEd5m.js → p-n4JDuNbH.js} +9 -9
  521. package/dist/components/{p-wJgbEd5m.js.map → p-n4JDuNbH.js.map} +1 -1
  522. package/dist/components/{p-96zW11tR.js → p-r182lPIw.js} +6 -6
  523. package/dist/components/{p-96zW11tR.js.map → p-r182lPIw.js.map} +1 -1
  524. package/dist/components/{p-ByDfkWkX.js → p-xXZAaFtS.js} +3 -3
  525. package/dist/components/{p-ByDfkWkX.js.map → p-xXZAaFtS.js.map} +1 -1
  526. package/dist/components/{p-OhUC7F_g.js → p-zT4P9vUn.js} +3 -3
  527. package/dist/components/{p-OhUC7F_g.js.map → p-zT4P9vUn.js.map} +1 -1
  528. package/dist/components/paintbrush-fill-icon.js +1 -1
  529. package/dist/components/paintbrush-icon.js +1 -1
  530. package/dist/components/people-icon.js +1 -1
  531. package/dist/components/person-clipboard-icon.js +1 -1
  532. package/dist/components/person-icon.js +1 -1
  533. package/dist/components/play-icon.js +1 -1
  534. package/dist/components/plus-icon.js +1 -1
  535. package/dist/components/radio-button-group.js +1 -1
  536. package/dist/components/refresh-icon.js +1 -1
  537. package/dist/components/reply-all-icon.js +1 -1
  538. package/dist/components/reply-icon.js +1 -1
  539. package/dist/components/search-icon.js +1 -1
  540. package/dist/components/select-dropdown.js +1 -1
  541. package/dist/components/sent-icon.js +1 -1
  542. package/dist/components/spam-icon.js +1 -1
  543. package/dist/components/star-icon.js +1 -1
  544. package/dist/components/stop-icon.js +1 -1
  545. package/dist/components/textarea-component.js +1 -1
  546. package/dist/components/time-period-selector.js +1 -1
  547. package/dist/components/toggle-switch.js +1 -1
  548. package/dist/components/tooltip-component.js +1 -1
  549. package/dist/components/translate-icon.js +1 -1
  550. package/dist/components/trash-fill-icon.js +1 -1
  551. package/dist/components/trash-icon.js +1 -1
  552. package/dist/components/underline-icon.js +1 -1
  553. package/dist/components/warning-icon.js +1 -1
  554. package/dist/components/zoom-icon.js +1 -1
  555. package/dist/esm/add-circle-icon_2.entry.js +2 -2
  556. package/dist/esm/archive-icon.entry.js +1 -1
  557. package/dist/esm/arrow-icon.entry.js +1 -1
  558. package/dist/esm/bold-icon.entry.js +1 -1
  559. package/dist/esm/button-component_2.entry.js +2 -2
  560. package/dist/esm/calendar-agenda-fill-icon_39.entry.js +47 -47
  561. package/dist/esm/calendar-cancel-icon.entry.js +1 -1
  562. package/dist/esm/calendar-check-icon.entry.js +1 -1
  563. package/dist/esm/calendar-icon.entry.js +1 -1
  564. package/dist/esm/checkbox-component.entry.js +1 -1
  565. package/dist/esm/checkbox-group_4.entry.js +5 -5
  566. package/dist/esm/checkmark-circle-icon.entry.js +1 -1
  567. package/dist/esm/checkmark-icon_14.entry.js +16 -16
  568. package/dist/esm/chevron-icon_3.entry.js +4 -4
  569. package/dist/esm/clock-icon_2.entry.js +2 -2
  570. package/dist/esm/delete-icon.entry.js +1 -1
  571. package/dist/esm/document-refresh-icon.entry.js +1 -1
  572. package/dist/esm/folder-icon.entry.js +1 -1
  573. package/dist/esm/forward-icon.entry.js +1 -1
  574. package/dist/esm/globe-icon_3.entry.js +5 -5
  575. package/dist/esm/google-logo-icon_6.entry.js +13 -13
  576. package/dist/esm/google-meet-icon_5.entry.js +5 -5
  577. package/dist/esm/inbox-icon.entry.js +1 -1
  578. package/dist/esm/info-icon_2.entry.js +3 -3
  579. package/dist/esm/input-component.entry.js +1 -1
  580. package/dist/esm/input-dropdown_2.entry.js +2 -2
  581. package/dist/esm/input-image-url_2.entry.js +2 -2
  582. package/dist/esm/italic-icon.entry.js +1 -1
  583. package/dist/esm/multi-select-dropdown.entry.js +2 -2
  584. package/dist/esm/nylas-booked-event-card_11.entry.js +47 -19
  585. package/dist/esm/nylas-booked-event-card_11.entry.js.map +1 -1
  586. package/dist/esm/nylas-form-card.entry.js +1 -1
  587. package/dist/esm/nylas-notification_2.entry.js +2 -2
  588. package/dist/esm/nylas-scheduler-editor.entry.js +29 -4
  589. package/dist/esm/nylas-scheduler-editor.entry.js.map +1 -1
  590. package/dist/esm/nylas-scheduling.entry.js +1 -1
  591. package/dist/esm/nylas-scheduling.entry.js.map +1 -1
  592. package/dist/esm/person-icon.entry.js +1 -1
  593. package/dist/esm/play-icon.entry.js +1 -1
  594. package/dist/esm/plus-icon.entry.js +1 -1
  595. package/dist/esm/radio-button-group.entry.js +1 -1
  596. package/dist/esm/refresh-icon.entry.js +1 -1
  597. package/dist/esm/reply-all-icon.entry.js +1 -1
  598. package/dist/esm/reply-icon.entry.js +1 -1
  599. package/dist/esm/sent-icon.entry.js +1 -1
  600. package/dist/esm/spam-icon.entry.js +1 -1
  601. package/dist/esm/star-icon.entry.js +1 -1
  602. package/dist/esm/stop-icon.entry.js +1 -1
  603. package/dist/esm/textarea-component.entry.js +1 -1
  604. package/dist/esm/toggle-switch.entry.js +1 -1
  605. package/dist/esm/translate-icon.entry.js +1 -1
  606. package/dist/esm/trash-fill-icon.entry.js +1 -1
  607. package/dist/esm/underline-icon.entry.js +1 -1
  608. package/dist/esm/{version-iQhY7wWk.js → version-CYTx0-4Z.js} +3 -3
  609. package/dist/esm/version-CYTx0-4Z.js.map +1 -0
  610. package/dist/nylas-web-elements/nylas-scheduler-editor.entry.esm.js.map +1 -1
  611. package/dist/nylas-web-elements/nylas-scheduling.entry.esm.js.map +1 -1
  612. package/dist/nylas-web-elements/nylas-web-elements.esm.js +1 -1
  613. package/dist/nylas-web-elements/{p-219fd6f9.entry.js → p-00183807.entry.js} +2 -2
  614. package/dist/nylas-web-elements/p-080096b9.entry.js +2 -0
  615. package/dist/nylas-web-elements/p-204ef0b9.entry.js +2 -0
  616. package/dist/nylas-web-elements/{p-37c5834c.entry.js → p-20b88057.entry.js} +2 -2
  617. package/dist/nylas-web-elements/{p-87f52db7.entry.js → p-22a55c18.entry.js} +2 -2
  618. package/dist/nylas-web-elements/{p-11f478bd.entry.js → p-38c87a6e.entry.js} +2 -2
  619. package/dist/nylas-web-elements/{p-991b94bd.entry.js → p-3b627f4c.entry.js} +2 -2
  620. package/dist/nylas-web-elements/p-48188b92.entry.js +2 -0
  621. package/dist/nylas-web-elements/p-48188b92.entry.js.map +1 -0
  622. package/dist/nylas-web-elements/{p-932456ba.entry.js → p-4d170fc4.entry.js} +2 -2
  623. package/dist/nylas-web-elements/p-4dac5ab9.entry.js +2 -0
  624. package/dist/nylas-web-elements/{p-7fe0b3bb.entry.js.map → p-4dac5ab9.entry.js.map} +1 -1
  625. package/dist/nylas-web-elements/p-4f601ebb.entry.js +2 -0
  626. package/dist/nylas-web-elements/{p-3d1fd865.entry.js → p-50ffbf25.entry.js} +2 -2
  627. package/dist/nylas-web-elements/{p-81af9950.entry.js → p-54437b43.entry.js} +2 -2
  628. package/dist/nylas-web-elements/{p-f4516330.entry.js → p-55ce6edc.entry.js} +2 -2
  629. package/dist/nylas-web-elements/p-59d181d5.entry.js +2 -0
  630. package/dist/nylas-web-elements/{p-1401a68f.entry.js → p-5d3ae749.entry.js} +3 -3
  631. package/dist/nylas-web-elements/p-5d3ae749.entry.js.map +1 -0
  632. package/dist/nylas-web-elements/p-6e8fdf58.entry.js +2 -0
  633. package/dist/nylas-web-elements/p-722e1419.entry.js +2 -0
  634. package/dist/nylas-web-elements/p-72662447.entry.js +2 -0
  635. package/dist/nylas-web-elements/{p-f45da541.entry.js → p-75647771.entry.js} +2 -2
  636. package/dist/nylas-web-elements/{p-eb5b77ab.entry.js → p-759d71a9.entry.js} +2 -2
  637. package/dist/nylas-web-elements/p-7928b915.entry.js +2 -0
  638. package/dist/nylas-web-elements/{p-0745cbcc.entry.js → p-7a877959.entry.js} +2 -2
  639. package/dist/nylas-web-elements/p-7d28bcb7.entry.js +2 -0
  640. package/dist/nylas-web-elements/{p-af340293.entry.js → p-81eaa606.entry.js} +2 -2
  641. package/dist/nylas-web-elements/p-828469d5.entry.js +2 -0
  642. package/dist/nylas-web-elements/{p-c96b6f73.entry.js → p-829e73ef.entry.js} +2 -2
  643. package/dist/nylas-web-elements/{p-4d04cfe9.entry.js → p-82b39e7c.entry.js} +2 -2
  644. package/dist/nylas-web-elements/p-82b39e7c.entry.js.map +1 -0
  645. package/dist/nylas-web-elements/p-9676f7ac.entry.js +2 -0
  646. package/dist/nylas-web-elements/{p-95c4f538.entry.js → p-9c0129c6.entry.js} +2 -2
  647. package/dist/nylas-web-elements/p-9cbcc79c.entry.js +2 -0
  648. package/dist/nylas-web-elements/{p-iQhY7wWk.js → p-CYTx0-4Z.js} +2 -2
  649. package/dist/nylas-web-elements/p-CYTx0-4Z.js.map +1 -0
  650. package/dist/nylas-web-elements/{p-7930474b.entry.js → p-a03ea995.entry.js} +2 -2
  651. package/dist/nylas-web-elements/{p-84c3921f.entry.js → p-a6c1f77e.entry.js} +2 -2
  652. package/dist/nylas-web-elements/{p-974fce52.entry.js → p-af92dd91.entry.js} +2 -2
  653. package/dist/nylas-web-elements/{p-9dd10333.entry.js → p-b180424a.entry.js} +2 -2
  654. package/dist/nylas-web-elements/{p-1741705d.entry.js → p-bade8744.entry.js} +2 -2
  655. package/dist/nylas-web-elements/{p-fed4cb19.entry.js → p-bd7a8916.entry.js} +2 -2
  656. package/dist/nylas-web-elements/{p-02343d66.entry.js → p-be15cad1.entry.js} +2 -2
  657. package/dist/nylas-web-elements/{p-0c276fdb.entry.js → p-c107eaf2.entry.js} +2 -2
  658. package/dist/nylas-web-elements/{p-7876f3e5.entry.js → p-c273be7d.entry.js} +2 -2
  659. package/dist/nylas-web-elements/{p-a5bb5b9d.entry.js → p-c93b620f.entry.js} +2 -2
  660. package/dist/nylas-web-elements/{p-c0f88f23.entry.js → p-cd97fc2f.entry.js} +2 -2
  661. package/dist/nylas-web-elements/p-dca1f249.entry.js +2 -0
  662. package/dist/nylas-web-elements/{p-2491c840.entry.js → p-e4353ee3.entry.js} +2 -2
  663. package/dist/nylas-web-elements/{p-1618c8ac.entry.js → p-eac0a540.entry.js} +3 -3
  664. package/dist/nylas-web-elements/p-edb44a77.entry.js +2 -0
  665. package/dist/nylas-web-elements/{p-d48d8562.entry.js → p-f4449902.entry.js} +2 -2
  666. package/dist/nylas-web-elements/{p-7b8b7718.entry.js → p-f5ccd7f3.entry.js} +2 -2
  667. package/dist/nylas-web-elements/p-fdf56450.entry.js +2 -0
  668. package/dist/nylas-web-elements/p-ff27e57b.entry.js +2 -0
  669. package/dist/types/common/types.d.ts +2 -0
  670. package/dist/types/components/scheduler/nylas-booking-form/nylas-booking-form.d.ts +4 -0
  671. package/dist/types/components.d.ts +4 -4
  672. package/dist/types/types/index.d.ts +2 -0
  673. package/dist/types/version.d.ts +1 -1
  674. package/package.json +3 -3
  675. package/dist/cjs/version-Xu0ORQw8.js.map +0 -1
  676. package/dist/components/p-WABPA0YV.js.map +0 -1
  677. package/dist/esm/version-iQhY7wWk.js.map +0 -1
  678. package/dist/nylas-web-elements/p-1401a68f.entry.js.map +0 -1
  679. package/dist/nylas-web-elements/p-16db18a3.entry.js +0 -2
  680. package/dist/nylas-web-elements/p-37eedc9d.entry.js +0 -2
  681. package/dist/nylas-web-elements/p-43c3f331.entry.js +0 -2
  682. package/dist/nylas-web-elements/p-4a2bcec0.entry.js +0 -2
  683. package/dist/nylas-web-elements/p-4d04cfe9.entry.js.map +0 -1
  684. package/dist/nylas-web-elements/p-55b2df61.entry.js +0 -2
  685. package/dist/nylas-web-elements/p-68195a72.entry.js +0 -2
  686. package/dist/nylas-web-elements/p-7fe0b3bb.entry.js +0 -2
  687. package/dist/nylas-web-elements/p-88e89256.entry.js +0 -2
  688. package/dist/nylas-web-elements/p-a3baa9bf.entry.js +0 -2
  689. package/dist/nylas-web-elements/p-a94cbeb7.entry.js +0 -2
  690. package/dist/nylas-web-elements/p-bca85255.entry.js +0 -2
  691. package/dist/nylas-web-elements/p-cb33346f.entry.js +0 -2
  692. package/dist/nylas-web-elements/p-cb33346f.entry.js.map +0 -1
  693. package/dist/nylas-web-elements/p-de990849.entry.js +0 -2
  694. package/dist/nylas-web-elements/p-e2dd457a.entry.js +0 -2
  695. package/dist/nylas-web-elements/p-e734cde9.entry.js +0 -2
  696. package/dist/nylas-web-elements/p-ed89219a.entry.js +0 -2
  697. package/dist/nylas-web-elements/p-f0406089.entry.js +0 -2
  698. package/dist/nylas-web-elements/p-f7f2c232.entry.js +0 -2
  699. package/dist/nylas-web-elements/p-iQhY7wWk.js.map +0 -1
  700. /package/dist/nylas-web-elements/{p-219fd6f9.entry.js.map → p-00183807.entry.js.map} +0 -0
  701. /package/dist/nylas-web-elements/{p-68195a72.entry.js.map → p-080096b9.entry.js.map} +0 -0
  702. /package/dist/nylas-web-elements/{p-a3baa9bf.entry.js.map → p-204ef0b9.entry.js.map} +0 -0
  703. /package/dist/nylas-web-elements/{p-37c5834c.entry.js.map → p-20b88057.entry.js.map} +0 -0
  704. /package/dist/nylas-web-elements/{p-87f52db7.entry.js.map → p-22a55c18.entry.js.map} +0 -0
  705. /package/dist/nylas-web-elements/{p-11f478bd.entry.js.map → p-38c87a6e.entry.js.map} +0 -0
  706. /package/dist/nylas-web-elements/{p-991b94bd.entry.js.map → p-3b627f4c.entry.js.map} +0 -0
  707. /package/dist/nylas-web-elements/{p-932456ba.entry.js.map → p-4d170fc4.entry.js.map} +0 -0
  708. /package/dist/nylas-web-elements/{p-f7f2c232.entry.js.map → p-4f601ebb.entry.js.map} +0 -0
  709. /package/dist/nylas-web-elements/{p-3d1fd865.entry.js.map → p-50ffbf25.entry.js.map} +0 -0
  710. /package/dist/nylas-web-elements/{p-81af9950.entry.js.map → p-54437b43.entry.js.map} +0 -0
  711. /package/dist/nylas-web-elements/{p-f4516330.entry.js.map → p-55ce6edc.entry.js.map} +0 -0
  712. /package/dist/nylas-web-elements/{p-55b2df61.entry.js.map → p-59d181d5.entry.js.map} +0 -0
  713. /package/dist/nylas-web-elements/{p-37eedc9d.entry.js.map → p-6e8fdf58.entry.js.map} +0 -0
  714. /package/dist/nylas-web-elements/{p-88e89256.entry.js.map → p-722e1419.entry.js.map} +0 -0
  715. /package/dist/nylas-web-elements/{p-43c3f331.entry.js.map → p-72662447.entry.js.map} +0 -0
  716. /package/dist/nylas-web-elements/{p-f45da541.entry.js.map → p-75647771.entry.js.map} +0 -0
  717. /package/dist/nylas-web-elements/{p-eb5b77ab.entry.js.map → p-759d71a9.entry.js.map} +0 -0
  718. /package/dist/nylas-web-elements/{p-de990849.entry.js.map → p-7928b915.entry.js.map} +0 -0
  719. /package/dist/nylas-web-elements/{p-0745cbcc.entry.js.map → p-7a877959.entry.js.map} +0 -0
  720. /package/dist/nylas-web-elements/{p-16db18a3.entry.js.map → p-7d28bcb7.entry.js.map} +0 -0
  721. /package/dist/nylas-web-elements/{p-af340293.entry.js.map → p-81eaa606.entry.js.map} +0 -0
  722. /package/dist/nylas-web-elements/{p-bca85255.entry.js.map → p-828469d5.entry.js.map} +0 -0
  723. /package/dist/nylas-web-elements/{p-c96b6f73.entry.js.map → p-829e73ef.entry.js.map} +0 -0
  724. /package/dist/nylas-web-elements/{p-e734cde9.entry.js.map → p-9676f7ac.entry.js.map} +0 -0
  725. /package/dist/nylas-web-elements/{p-95c4f538.entry.js.map → p-9c0129c6.entry.js.map} +0 -0
  726. /package/dist/nylas-web-elements/{p-f0406089.entry.js.map → p-9cbcc79c.entry.js.map} +0 -0
  727. /package/dist/nylas-web-elements/{p-7930474b.entry.js.map → p-a03ea995.entry.js.map} +0 -0
  728. /package/dist/nylas-web-elements/{p-84c3921f.entry.js.map → p-a6c1f77e.entry.js.map} +0 -0
  729. /package/dist/nylas-web-elements/{p-974fce52.entry.js.map → p-af92dd91.entry.js.map} +0 -0
  730. /package/dist/nylas-web-elements/{p-9dd10333.entry.js.map → p-b180424a.entry.js.map} +0 -0
  731. /package/dist/nylas-web-elements/{p-1741705d.entry.js.map → p-bade8744.entry.js.map} +0 -0
  732. /package/dist/nylas-web-elements/{p-fed4cb19.entry.js.map → p-bd7a8916.entry.js.map} +0 -0
  733. /package/dist/nylas-web-elements/{p-02343d66.entry.js.map → p-be15cad1.entry.js.map} +0 -0
  734. /package/dist/nylas-web-elements/{p-0c276fdb.entry.js.map → p-c107eaf2.entry.js.map} +0 -0
  735. /package/dist/nylas-web-elements/{p-7876f3e5.entry.js.map → p-c273be7d.entry.js.map} +0 -0
  736. /package/dist/nylas-web-elements/{p-a5bb5b9d.entry.js.map → p-c93b620f.entry.js.map} +0 -0
  737. /package/dist/nylas-web-elements/{p-c0f88f23.entry.js.map → p-cd97fc2f.entry.js.map} +0 -0
  738. /package/dist/nylas-web-elements/{p-4a2bcec0.entry.js.map → p-dca1f249.entry.js.map} +0 -0
  739. /package/dist/nylas-web-elements/{p-2491c840.entry.js.map → p-e4353ee3.entry.js.map} +0 -0
  740. /package/dist/nylas-web-elements/{p-1618c8ac.entry.js.map → p-eac0a540.entry.js.map} +0 -0
  741. /package/dist/nylas-web-elements/{p-ed89219a.entry.js.map → p-edb44a77.entry.js.map} +0 -0
  742. /package/dist/nylas-web-elements/{p-d48d8562.entry.js.map → p-f4449902.entry.js.map} +0 -0
  743. /package/dist/nylas-web-elements/{p-7b8b7718.entry.js.map → p-f5ccd7f3.entry.js.map} +0 -0
  744. /package/dist/nylas-web-elements/{p-a94cbeb7.entry.js.map → p-fdf56450.entry.js.map} +0 -0
  745. /package/dist/nylas-web-elements/{p-e2dd457a.entry.js.map → p-ff27e57b.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"p-wphqTozF.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/design-system/select-dropdown/select-dropdown.scss?tag=select-dropdown&encapsulation=shadow","src/components/design-system/select-dropdown/select-dropdown.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n@use '../../../common/mixins/inputs' as *;\n\n:host {\n display: block;\n position: relative;\n @include default-css-variables;\n width: 100%;\n\n @media #{$mobile} {\n position: unset;\n }\n}\n\nlabel {\n @include input-label;\n flex-direction: column;\n gap: 4px;\n font-family: var(--nylas-font-family);\n font-size: 16px;\n color: var(--nylas-base-800);\n\n p {\n margin: 0;\n }\n\n .error {\n color: var(--nylas-error);\n }\n}\n\n.dropdown {\n display: inline-block;\n width: inherit;\n}\n\n.dropbtn {\n color: var(--nylas-base-800);\n padding: 14px;\n font-size: 16px;\n font-family: var(--nylas-font-family);\n cursor: pointer;\n display: flex;\n justify-content: space-between;\n gap: 0.5rem;\n background: var(--nylas-base-0);\n border: 1px solid var(--nylas-base-300);\n border-radius: var(--nylas-border-radius-2x);\n\n &.error {\n border: 1px solid var(--nylas-error);\n }\n\n &:hover,\n &:active {\n outline: 1px solid var(--nylas-primary);\n }\n\n &:active {\n outline: 2px solid var(--nylas-primary);\n }\n\n &:disabled {\n cursor: not-allowed;\n background: var(--nylas-base-100);\n }\n\n span {\n &.chevron {\n display: flex;\n align-self: center;\n }\n\n &.open {\n transform: rotate(90deg);\n }\n\n &.closed {\n transform: rotate(270deg);\n }\n\n &.selected-option {\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n max-width: 144px;\n font-size: 14px;\n line-height: 20px;\n color: inherit;\n\n @media #{$mobile} {\n max-width: 124px;\n font-size: 16px;\n }\n }\n }\n}\n\n.dropdown-content {\n display: block;\n margin-top: 0.5rem;\n background-color: var(--nylas-base-0);\n width: 100%;\n max-height: 336px;\n overflow: auto;\n z-index: 1;\n border-radius: 4px;\n position: absolute;\n box-shadow: 0px 4px 6px -2px rgba(0, 0, 0, 0.05);\n box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1);\n\n // Firefox scrollbar styling\n scrollbar-width: thin;\n scrollbar-color: var(--nylas-base-300) var(--nylas-base-50);\n\n // Custom scrollbar styling\n &::-webkit-scrollbar {\n width: 8px;\n }\n\n &::-webkit-scrollbar-track {\n background: var(--nylas-base-50);\n border-radius: 4px;\n }\n\n &::-webkit-scrollbar-thumb {\n background: var(--nylas-base-300);\n border-radius: 4px;\n transition: background-color 0.2s ease;\n\n &:hover {\n background: var(--nylas-base-400);\n }\n }\n\n &::-webkit-scrollbar-thumb:active {\n background: var(--nylas-base-500);\n }\n\n @media #{$mobile} {\n right: 0;\n width: 325px;\n max-width: unset;\n }\n}\n\n.search-box {\n border-bottom: 1px solid var(--nylas-base-200);\n padding: 10px;\n position: sticky;\n top: 0;\n background: var(--nylas-base-0);\n\n .icon {\n position: absolute;\n top: 1.25rem;\n left: 1.25rem;\n color: var(--nylas-base-300);\n }\n}\n\n.dropdown-content ul {\n padding: 0;\n list-style-type: none;\n color: var(--nylas-base-900);\n max-height: 336px;\n\n li {\n padding: 16px, 12px, 16px, 12px;\n color: var(--nylas-base-900);\n padding: 12px 16px;\n text-decoration: none;\n display: block;\n font-family: inherit;\n font-size: 14px;\n font-weight: 400;\n line-height: 20px;\n letter-spacing: 0px;\n text-align: left;\n cursor: pointer;\n\n &:hover,\n &:focus {\n background-color: var(--nylas-base-100);\n }\n }\n}\n\n.dropdown-content .selected {\n background-color: #e7e7e7;\n}\n\ninput[type='text'] {\n width: -webkit-fill-available;\n padding: inherit;\n border: 1px solid var(--nylas-base-200);\n border-radius: 4px;\n position: sticky;\n background: no-repeat scroll 7px 7px;\n padding-left: 30px;\n background-size: 16px 16px;\n color: var(--nylas-base-800);\n}\n","import { Component, Element, Event, EventEmitter, h, Listen, Prop, State, Watch } from '@stencil/core';\nimport { DropdownOption, ThemeConfig } from '@nylas/core';\n\n/**\n * The `select-dropdown` component is a dropdown that allows users to select an option from a list of options.\n * This component is used in the scheduling form to input dropdown type inputs.\n * @part sd_dropdown - The dropdown container\n * @part sd_dropdown-button - The dropdown button\n * @part sd_dropdown-button-selected-label - The selected option label\n * @part sd_dropdown-content - The dropdown content\n * @part sd_dropdown_label - The dropdown label\n */\n@Component({\n tag: 'select-dropdown',\n styleUrl: 'select-dropdown.scss',\n shadow: true,\n})\nexport class SelectDropdown {\n @Element() el!: HTMLElement;\n private readonly componentType: string = 'select-dropdown';\n\n private inputRef?: HTMLInputElement;\n\n // Props\n /**\n * The name of the dropdown\n */\n @Prop({ reflect: true }) name!: string;\n /**\n * The options to display in the dropdown\n */\n @Prop() options: DropdownOption[] = [];\n /**\n * The default selected option\n */\n @Prop({ attribute: 'default-selected-option' }) defaultSelectedOption: DropdownOption | null = null;\n /**\n * Should show search input\n */\n @Prop() withSearch: boolean = true;\n\n /**\n * The placeholder for the search input\n */\n @Prop() searchPlaceholder: string = 'Search';\n\n /**\n * The label for the dropdown, skipped if no label is provided\n */\n @Prop() label?: string;\n\n /**\n * If true, the dropdown is required for form submission\n */\n @Prop() required: boolean = false;\n\n /**\n * The property to make the dropdown read-only. If true, the dropdown cannot be edited.\n */\n @Prop() readOnly: boolean = false;\n\n /**\n * Show pluralized label for the selected option. This is s tring that is appended to the selected option label as a suffix.\n */\n @Prop() pluralizedLabel: string = '';\n /**\n * Overrides the select dropdown to be used as a button with dropdownButtonText representing actions & dropdownText name on the dropdown intead of selected value\n */\n @Prop() dropdownButtonText?: string;\n /**\n * Should show chevron on button\n */\n @Prop() withChevron: boolean = true;\n /**\n * Allows to set the empty value of the dropdown\n */\n @Prop() emptyValue: string = 'Select an option'; // Default empty value\n /**\n * The custom error message to display when the value is empty or null and the dropdown is required\n */\n @Prop() errorMessage: string = '';\n /**\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: ThemeConfig;\n\n // States\n /**\n * The selected option\n */\n @State() selectedOption!: DropdownOption | null;\n /**\n * The open state of the dropdown\n */\n @State() isOpen: boolean = false;\n /**\n * The search value for the dropdown\n */\n @State() searchValue: string = '';\n /**\n * The filtered options based on the search value\n */\n @State() filteredOptions: DropdownOption[] = [...this.options];\n /**\n * The aria-activedescendant attribute for the listbox element to indicate the currently active\n * option in the list box to screen readers. The value of aria-activedescendant is the ID of\n * the active option.\n */\n @State() ariaActivedescendant: string = '';\n\n /**\n * The error message to display when the value is empty or null and the dropdown is required\n */\n @State() error: string = '';\n\n // Events\n /**\n * This event is fired when the selected option is changed\n */\n @Event({ bubbles: true, composed: true }) nylasFormDropdownChanged!: EventEmitter<{\n value: DropdownOption['value'];\n name: string;\n error?: string;\n label?: string;\n }>;\n\n /**\n * This event is fired when the default selected option is set, on component load\n */\n @Event({ bubbles: true, composed: true }) nylasFormDropdownDefaultSelected!: EventEmitter<{\n value: DropdownOption['value'];\n name: string;\n error?: string;\n label?: string;\n }>;\n\n @Watch('options')\n optionsChangedHandler(newValue: DropdownOption[], oldValue: DropdownOption[]) {\n if (newValue === oldValue) {\n return;\n }\n this.filteredOptions = newValue;\n }\n\n @Watch('defaultSelectedOption')\n defaultSelectedOptionChangedHandler(newValue: DropdownOption, oldValue: DropdownOption) {\n if (typeof newValue === 'undefined' || newValue?.label === oldValue?.label) {\n return;\n }\n this.selectedOption = newValue;\n this.nylasFormDropdownDefaultSelected.emit({\n value: newValue?.value || '',\n name: this.name,\n error: this.error,\n label: this.label,\n });\n }\n\n @Watch('themeConfig')\n themeConfigChangedHandler(newVal: ThemeConfig, oldVal: ThemeConfig) {\n if (newVal === oldVal) return;\n this.applyThemeConfig(newVal);\n }\n\n applyThemeConfig(themeConfig?: ThemeConfig) {\n if (themeConfig) {\n for (const [key, value] of Object.entries(themeConfig)) {\n this.el.style.setProperty(`${key}`, value);\n }\n }\n }\n\n // Lifecycle methods\n connectedCallback() {\n // Use queueMicrotask to defer theme application until after React has set props.\n // This fixes the timing issue where connectedCallback fires before React sets themeConfig.\n queueMicrotask(() => {\n if (this.themeConfig) {\n this.applyThemeConfig(this.themeConfig);\n this.el.setAttribute('data-themed', '');\n }\n });\n }\n\n componentWillLoad() {\n this.el.setAttribute('component-type', this.componentType);\n this.filteredOptions = this.options;\n // Set the selected option to the first option if no option is selected\n this.selectedOption = this.defaultSelectedOption;\n\n if (!this.selectedOption && this.options.length > 0) {\n this.selectedOption = this.options[0];\n }\n }\n\n componentDidLoad() {\n this.nylasFormDropdownDefaultSelected.emit({\n value: this.selectedOption?.value || '',\n name: this.name,\n error: this.error,\n label: this.label,\n });\n }\n\n // Event listeners\n /**\n * Listen for the bookingFormSubmitted event to validate the input value when the form is submitted.\n */\n @Listen('bookingFormSubmitted', { target: 'document' })\n handleBookingFormSubmitted(event: CustomEvent) {\n this.validate(this.selectedOption?.value || '');\n if (this.error) {\n event.preventDefault();\n }\n }\n\n /**\n * Listen for the formSubmitted event to validate the input value when the form is submitted.\n * @param event\n */\n @Listen('formSubmitted', { target: 'document' })\n handleFormSubmitted(event: CustomEvent) {\n this.validate(this.selectedOption?.value || '');\n if (this.error) {\n event.preventDefault();\n }\n }\n\n // Methods\n validate(value: string) {\n if (this.required && !value) {\n this.error = this.errorMessage || `${this.label} is required.`;\n } else {\n this.error = '';\n }\n }\n toggleDropdown(): void {\n this.isOpen = !this.isOpen;\n }\n\n filterOptions(event: Event): void {\n const value = (event.target as HTMLInputElement).value;\n this.searchValue = value;\n this.filteredOptions = this.options.filter(option => option.label.toLowerCase().includes(value.toLowerCase()));\n }\n\n selectOption(option: DropdownOption): void {\n this.error = '';\n this.selectedOption = option;\n this.toggleDropdown();\n if (option.value !== this.emptyValue) {\n this.nylasFormDropdownChanged.emit({\n value: option.value,\n name: this.name,\n error: this.error,\n label: this.label,\n });\n }\n }\n\n handleSelectButtonKeyDown(event: KeyboardEvent): void {\n switch (event.key) {\n case 'ArrowDown':\n case 'Enter':\n event.preventDefault();\n if (!this.isOpen) {\n this.toggleDropdown();\n }\n this.inputRef?.focus();\n break;\n case 'Escape':\n this.isOpen = false;\n break;\n }\n }\n\n handleListboxKeydown(e) {\n const items = this.filteredOptions; // Assuming this is the array of your current filtered options\n const currentIndex = items.findIndex(item => item.value === this.ariaActivedescendant);\n if (e.key === 'ArrowDown' || (e.key === 'Tab' && !e.shiftKey)) {\n e.preventDefault();\n if (currentIndex === items.length - 1) {\n this.ariaActivedescendant = '';\n this.inputRef?.focus();\n return;\n }\n const nextIndex = currentIndex + 1 < items.length ? currentIndex + 1 : 0;\n this.ariaActivedescendant = items[nextIndex].value;\n this.focusOption(nextIndex);\n } else if (e.key === 'ArrowUp' || (e.key === 'Tab' && e.shiftKey)) {\n e.preventDefault();\n if (currentIndex === 0) {\n this.ariaActivedescendant = '';\n this.inputRef?.focus();\n return;\n }\n const prevIndex = currentIndex - 1 >= 0 ? currentIndex - 1 : items.length - 1;\n this.ariaActivedescendant = items[prevIndex].value;\n this.focusOption(prevIndex);\n } else if (e.key === 'Enter') {\n e.preventDefault();\n if (this.ariaActivedescendant) {\n this.selectOption(items[currentIndex]);\n }\n } else if (e.key === 'Escape') {\n this.isOpen = false;\n }\n }\n\n focusOption(index) {\n const option = this.filteredOptions[index];\n if (!option) return; // Guard clause in case index is out of bounds\n\n const elementId = option.value;\n const element = this.el.shadowRoot?.getElementById(elementId) as HTMLLIElement;\n\n if (element) {\n element.focus(); // Set focus on the element\n element.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\n }\n }\n\n handleComboboxKeyDown(event: KeyboardEvent): void {\n if (event.key === 'ArrowDown' || (event.key == 'Tab' && !event.shiftKey)) {\n event.preventDefault();\n this.ariaActivedescendant = this.filteredOptions[0].value;\n this.focusOption(0);\n } else if (event.key === 'ArrowUp' || (event.key === 'Tab' && event.shiftKey)) {\n event.preventDefault();\n this.ariaActivedescendant = this.filteredOptions[this.filteredOptions.length - 1].value;\n this.focusOption(this.filteredOptions.length - 1);\n } else if (event.key === 'Escape') {\n this.isOpen = false;\n }\n }\n\n generateButtonText(option: DropdownOption | null, dropButtonText?: string): string {\n if (dropButtonText) {\n return dropButtonText;\n }\n return option?.label ? `${this.pluralizedLabel ? this.pluralizedLabel : option?.label}` : this.emptyValue;\n }\n\n // Event listeners\n @Listen('click', { target: 'document', capture: true })\n handleOutsideClick(event: MouseEvent) {\n // Get the path of the event\n const path = event.composedPath();\n\n // Check if the path includes the host element\n const isClickInside = path.includes(this.el);\n\n if (!isClickInside && this.isOpen) {\n this.isOpen = false;\n }\n }\n\n render() {\n const buttonText = this.generateButtonText(this.selectedOption, this.dropdownButtonText);\n return (\n <div class=\"dropdown\" part=\"sd_dropdown\">\n <label part=\"sd_dropdown_label\" class={{ error: !!this.error }}>\n {this.label && (\n <p>\n <span class=\"label\">{this.label}</span>\n {this.required && <span class=\"required\">*</span>}\n </p>\n )}\n <button\n part=\"sd_dropdown-button\"\n class={{ dropbtn: true, open: this.isOpen, error: !!this.error }}\n onClick={() => this.toggleDropdown()}\n disabled={this.readOnly}\n aria-haspopup=\"listbox\"\n title={this.readOnly ? 'read-only field' : buttonText}\n aria-expanded={this.isOpen ? 'true' : 'false'}\n aria-label={this.name}\n onKeyDown={e => this.handleSelectButtonKeyDown(e)}\n >\n <slot name=\"select-icon\" aria-hidden=\"true\"></slot>\n <span class=\"selected-option\" part=\"sd_dropdown-button-selected-label\">\n {buttonText}\n </span>\n {this.withChevron && (\n <span\n class={{\n open: this.isOpen,\n closed: !this.isOpen,\n chevron: true,\n }}\n aria-hidden=\"true\"\n >\n <chevron-icon width=\"16\" height=\"16\" />\n </span>\n )}\n </button>\n {this.error && <span class=\"error help-text\">{this.error}</span>}\n </label>\n\n {this.isOpen ? (\n <div class=\"dropdown-content\" part=\"sd_dropdown-content\">\n {this.withSearch && (\n <div class={{ 'search-box': true, 'open': this.isOpen }}>\n <search-icon width=\"15\" height=\"15\" class={'icon'} />\n <input\n type=\"text\"\n role=\"combobox\"\n placeholder={this.searchPlaceholder}\n value={this.searchValue}\n ref={el => (this.inputRef = el)}\n onInput={event => this.filterOptions(event)}\n onKeyDown={e => this.handleComboboxKeyDown(e)}\n />\n </div>\n )}\n <ul tabindex=\"-1\" role=\"listbox\" aria-label={this.name} aria-activedescendant={this.ariaActivedescendant} onKeyDown={e => this.handleListboxKeydown(e)}>\n {this.filteredOptions.map(option =>\n option.value.toString() ? (\n <li tabindex=\"0\" key={option.value} id={option.value} part={`${this.name}-${option.label}`} onClick={() => this.selectOption(option)} role=\"option\">\n {option.labelHTML ? <div part=\"sd_dropdown-labelhtml\">{option.labelHTML}</div> : option.label}\n </li>\n ) : null,\n )}\n </ul>\n </div>\n ) : null}\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-DtEl3UXW.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/design-system/select-dropdown/select-dropdown.scss?tag=select-dropdown&encapsulation=shadow","src/components/design-system/select-dropdown/select-dropdown.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n@use '../../../common/mixins/inputs' as *;\n\n:host {\n display: block;\n position: relative;\n @include default-css-variables;\n width: 100%;\n\n @media #{$mobile} {\n position: unset;\n }\n}\n\nlabel {\n @include input-label;\n flex-direction: column;\n gap: 4px;\n font-family: var(--nylas-font-family);\n font-size: 16px;\n color: var(--nylas-base-800);\n\n p {\n margin: 0;\n }\n\n .error {\n color: var(--nylas-error);\n }\n}\n\n.dropdown {\n display: inline-block;\n width: inherit;\n}\n\n.dropbtn {\n color: var(--nylas-base-800);\n padding: 14px;\n font-size: 16px;\n font-family: var(--nylas-font-family);\n cursor: pointer;\n display: flex;\n justify-content: space-between;\n gap: 0.5rem;\n background: var(--nylas-base-0);\n border: 1px solid var(--nylas-base-300);\n border-radius: var(--nylas-border-radius-2x);\n\n &.error {\n border: 1px solid var(--nylas-error);\n }\n\n &:hover,\n &:active {\n outline: 1px solid var(--nylas-primary);\n }\n\n &:active {\n outline: 2px solid var(--nylas-primary);\n }\n\n &:disabled {\n cursor: not-allowed;\n background: var(--nylas-base-100);\n }\n\n span {\n &.chevron {\n display: flex;\n align-self: center;\n }\n\n &.open {\n transform: rotate(90deg);\n }\n\n &.closed {\n transform: rotate(270deg);\n }\n\n &.selected-option {\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n max-width: 144px;\n font-size: 14px;\n line-height: 20px;\n color: inherit;\n\n @media #{$mobile} {\n max-width: 124px;\n font-size: 16px;\n }\n }\n }\n}\n\n.dropdown-content {\n display: block;\n margin-top: 0.5rem;\n background-color: var(--nylas-base-0);\n width: 100%;\n max-height: 336px;\n overflow: auto;\n z-index: 1;\n border-radius: 4px;\n position: absolute;\n box-shadow: 0px 4px 6px -2px rgba(0, 0, 0, 0.05);\n box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1);\n\n // Firefox scrollbar styling\n scrollbar-width: thin;\n scrollbar-color: var(--nylas-base-300) var(--nylas-base-50);\n\n // Custom scrollbar styling\n &::-webkit-scrollbar {\n width: 8px;\n }\n\n &::-webkit-scrollbar-track {\n background: var(--nylas-base-50);\n border-radius: 4px;\n }\n\n &::-webkit-scrollbar-thumb {\n background: var(--nylas-base-300);\n border-radius: 4px;\n transition: background-color 0.2s ease;\n\n &:hover {\n background: var(--nylas-base-400);\n }\n }\n\n &::-webkit-scrollbar-thumb:active {\n background: var(--nylas-base-500);\n }\n\n @media #{$mobile} {\n right: 0;\n width: 325px;\n max-width: unset;\n }\n}\n\n.search-box {\n border-bottom: 1px solid var(--nylas-base-200);\n padding: 10px;\n position: sticky;\n top: 0;\n background: var(--nylas-base-0);\n\n .icon {\n position: absolute;\n top: 1.25rem;\n left: 1.25rem;\n color: var(--nylas-base-300);\n }\n}\n\n.dropdown-content ul {\n padding: 0;\n list-style-type: none;\n color: var(--nylas-base-900);\n max-height: 336px;\n\n li {\n padding: 16px, 12px, 16px, 12px;\n color: var(--nylas-base-900);\n padding: 12px 16px;\n text-decoration: none;\n display: block;\n font-family: inherit;\n font-size: 14px;\n font-weight: 400;\n line-height: 20px;\n letter-spacing: 0px;\n text-align: left;\n cursor: pointer;\n\n &:hover,\n &:focus {\n background-color: var(--nylas-base-100);\n }\n }\n}\n\n.dropdown-content .selected {\n background-color: #e7e7e7;\n}\n\ninput[type='text'] {\n width: -webkit-fill-available;\n padding: inherit;\n border: 1px solid var(--nylas-base-200);\n border-radius: 4px;\n position: sticky;\n background: no-repeat scroll 7px 7px;\n padding-left: 30px;\n background-size: 16px 16px;\n color: var(--nylas-base-800);\n}\n","import { Component, Element, Event, EventEmitter, h, Listen, Prop, State, Watch } from '@stencil/core';\nimport { DropdownOption, ThemeConfig } from '@nylas/core';\n\n/**\n * The `select-dropdown` component is a dropdown that allows users to select an option from a list of options.\n * This component is used in the scheduling form to input dropdown type inputs.\n * @part sd_dropdown - The dropdown container\n * @part sd_dropdown-button - The dropdown button\n * @part sd_dropdown-button-selected-label - The selected option label\n * @part sd_dropdown-content - The dropdown content\n * @part sd_dropdown_label - The dropdown label\n */\n@Component({\n tag: 'select-dropdown',\n styleUrl: 'select-dropdown.scss',\n shadow: true,\n})\nexport class SelectDropdown {\n @Element() el!: HTMLElement;\n private readonly componentType: string = 'select-dropdown';\n\n private inputRef?: HTMLInputElement;\n\n // Props\n /**\n * The name of the dropdown\n */\n @Prop({ reflect: true }) name!: string;\n /**\n * The options to display in the dropdown\n */\n @Prop() options: DropdownOption[] = [];\n /**\n * The default selected option\n */\n @Prop({ attribute: 'default-selected-option' }) defaultSelectedOption: DropdownOption | null = null;\n /**\n * Should show search input\n */\n @Prop() withSearch: boolean = true;\n\n /**\n * The placeholder for the search input\n */\n @Prop() searchPlaceholder: string = 'Search';\n\n /**\n * The label for the dropdown, skipped if no label is provided\n */\n @Prop() label?: string;\n\n /**\n * If true, the dropdown is required for form submission\n */\n @Prop() required: boolean = false;\n\n /**\n * The property to make the dropdown read-only. If true, the dropdown cannot be edited.\n */\n @Prop() readOnly: boolean = false;\n\n /**\n * Show pluralized label for the selected option. This is s tring that is appended to the selected option label as a suffix.\n */\n @Prop() pluralizedLabel: string = '';\n /**\n * Overrides the select dropdown to be used as a button with dropdownButtonText representing actions & dropdownText name on the dropdown intead of selected value\n */\n @Prop() dropdownButtonText?: string;\n /**\n * Should show chevron on button\n */\n @Prop() withChevron: boolean = true;\n /**\n * Allows to set the empty value of the dropdown\n */\n @Prop() emptyValue: string = 'Select an option'; // Default empty value\n /**\n * The custom error message to display when the value is empty or null and the dropdown is required\n */\n @Prop() errorMessage: string = '';\n /**\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: ThemeConfig;\n\n // States\n /**\n * The selected option\n */\n @State() selectedOption!: DropdownOption | null;\n /**\n * The open state of the dropdown\n */\n @State() isOpen: boolean = false;\n /**\n * The search value for the dropdown\n */\n @State() searchValue: string = '';\n /**\n * The filtered options based on the search value\n */\n @State() filteredOptions: DropdownOption[] = [...this.options];\n /**\n * The aria-activedescendant attribute for the listbox element to indicate the currently active\n * option in the list box to screen readers. The value of aria-activedescendant is the ID of\n * the active option.\n */\n @State() ariaActivedescendant: string = '';\n\n /**\n * The error message to display when the value is empty or null and the dropdown is required\n */\n @State() error: string = '';\n\n // Events\n /**\n * This event is fired when the selected option is changed\n */\n @Event({ bubbles: true, composed: true }) nylasFormDropdownChanged!: EventEmitter<{\n value: DropdownOption['value'];\n name: string;\n error?: string;\n label?: string;\n }>;\n\n /**\n * This event is fired when the default selected option is set, on component load\n */\n @Event({ bubbles: true, composed: true }) nylasFormDropdownDefaultSelected!: EventEmitter<{\n value: DropdownOption['value'];\n name: string;\n error?: string;\n label?: string;\n }>;\n\n @Watch('options')\n optionsChangedHandler(newValue: DropdownOption[], oldValue: DropdownOption[]) {\n if (newValue === oldValue) {\n return;\n }\n this.filteredOptions = newValue;\n }\n\n @Watch('defaultSelectedOption')\n defaultSelectedOptionChangedHandler(newValue: DropdownOption, oldValue: DropdownOption) {\n if (typeof newValue === 'undefined' || newValue?.label === oldValue?.label) {\n return;\n }\n this.selectedOption = newValue;\n this.nylasFormDropdownDefaultSelected.emit({\n value: newValue?.value || '',\n name: this.name,\n error: this.error,\n label: this.label,\n });\n }\n\n @Watch('themeConfig')\n themeConfigChangedHandler(newVal: ThemeConfig, oldVal: ThemeConfig) {\n if (newVal === oldVal) return;\n this.applyThemeConfig(newVal);\n }\n\n applyThemeConfig(themeConfig?: ThemeConfig) {\n if (themeConfig) {\n for (const [key, value] of Object.entries(themeConfig)) {\n this.el.style.setProperty(`${key}`, value);\n }\n }\n }\n\n // Lifecycle methods\n connectedCallback() {\n // Use queueMicrotask to defer theme application until after React has set props.\n // This fixes the timing issue where connectedCallback fires before React sets themeConfig.\n queueMicrotask(() => {\n if (this.themeConfig) {\n this.applyThemeConfig(this.themeConfig);\n this.el.setAttribute('data-themed', '');\n }\n });\n }\n\n componentWillLoad() {\n this.el.setAttribute('component-type', this.componentType);\n this.filteredOptions = this.options;\n // Set the selected option to the first option if no option is selected\n this.selectedOption = this.defaultSelectedOption;\n\n if (!this.selectedOption && this.options.length > 0) {\n this.selectedOption = this.options[0];\n }\n }\n\n componentDidLoad() {\n this.nylasFormDropdownDefaultSelected.emit({\n value: this.selectedOption?.value || '',\n name: this.name,\n error: this.error,\n label: this.label,\n });\n }\n\n // Event listeners\n /**\n * Listen for the bookingFormSubmitted event to validate the input value when the form is submitted.\n */\n @Listen('bookingFormSubmitted', { target: 'document' })\n handleBookingFormSubmitted(event: CustomEvent) {\n this.validate(this.selectedOption?.value || '');\n if (this.error) {\n event.preventDefault();\n }\n }\n\n /**\n * Listen for the formSubmitted event to validate the input value when the form is submitted.\n * @param event\n */\n @Listen('formSubmitted', { target: 'document' })\n handleFormSubmitted(event: CustomEvent) {\n this.validate(this.selectedOption?.value || '');\n if (this.error) {\n event.preventDefault();\n }\n }\n\n // Methods\n validate(value: string) {\n if (this.required && !value) {\n this.error = this.errorMessage || `${this.label} is required.`;\n } else {\n this.error = '';\n }\n }\n toggleDropdown(): void {\n this.isOpen = !this.isOpen;\n }\n\n filterOptions(event: Event): void {\n const value = (event.target as HTMLInputElement).value;\n this.searchValue = value;\n this.filteredOptions = this.options.filter(option => option.label.toLowerCase().includes(value.toLowerCase()));\n }\n\n selectOption(option: DropdownOption): void {\n this.error = '';\n this.selectedOption = option;\n this.toggleDropdown();\n if (option.value !== this.emptyValue) {\n this.nylasFormDropdownChanged.emit({\n value: option.value,\n name: this.name,\n error: this.error,\n label: this.label,\n });\n }\n }\n\n handleSelectButtonKeyDown(event: KeyboardEvent): void {\n switch (event.key) {\n case 'ArrowDown':\n case 'Enter':\n event.preventDefault();\n if (!this.isOpen) {\n this.toggleDropdown();\n }\n this.inputRef?.focus();\n break;\n case 'Escape':\n this.isOpen = false;\n break;\n }\n }\n\n handleListboxKeydown(e) {\n const items = this.filteredOptions; // Assuming this is the array of your current filtered options\n const currentIndex = items.findIndex(item => item.value === this.ariaActivedescendant);\n if (e.key === 'ArrowDown' || (e.key === 'Tab' && !e.shiftKey)) {\n e.preventDefault();\n if (currentIndex === items.length - 1) {\n this.ariaActivedescendant = '';\n this.inputRef?.focus();\n return;\n }\n const nextIndex = currentIndex + 1 < items.length ? currentIndex + 1 : 0;\n this.ariaActivedescendant = items[nextIndex].value;\n this.focusOption(nextIndex);\n } else if (e.key === 'ArrowUp' || (e.key === 'Tab' && e.shiftKey)) {\n e.preventDefault();\n if (currentIndex === 0) {\n this.ariaActivedescendant = '';\n this.inputRef?.focus();\n return;\n }\n const prevIndex = currentIndex - 1 >= 0 ? currentIndex - 1 : items.length - 1;\n this.ariaActivedescendant = items[prevIndex].value;\n this.focusOption(prevIndex);\n } else if (e.key === 'Enter') {\n e.preventDefault();\n if (this.ariaActivedescendant) {\n this.selectOption(items[currentIndex]);\n }\n } else if (e.key === 'Escape') {\n this.isOpen = false;\n }\n }\n\n focusOption(index) {\n const option = this.filteredOptions[index];\n if (!option) return; // Guard clause in case index is out of bounds\n\n const elementId = option.value;\n const element = this.el.shadowRoot?.getElementById(elementId) as HTMLLIElement;\n\n if (element) {\n element.focus(); // Set focus on the element\n element.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\n }\n }\n\n handleComboboxKeyDown(event: KeyboardEvent): void {\n if (event.key === 'ArrowDown' || (event.key == 'Tab' && !event.shiftKey)) {\n event.preventDefault();\n this.ariaActivedescendant = this.filteredOptions[0].value;\n this.focusOption(0);\n } else if (event.key === 'ArrowUp' || (event.key === 'Tab' && event.shiftKey)) {\n event.preventDefault();\n this.ariaActivedescendant = this.filteredOptions[this.filteredOptions.length - 1].value;\n this.focusOption(this.filteredOptions.length - 1);\n } else if (event.key === 'Escape') {\n this.isOpen = false;\n }\n }\n\n generateButtonText(option: DropdownOption | null, dropButtonText?: string): string {\n if (dropButtonText) {\n return dropButtonText;\n }\n return option?.label ? `${this.pluralizedLabel ? this.pluralizedLabel : option?.label}` : this.emptyValue;\n }\n\n // Event listeners\n @Listen('click', { target: 'document', capture: true })\n handleOutsideClick(event: MouseEvent) {\n // Get the path of the event\n const path = event.composedPath();\n\n // Check if the path includes the host element\n const isClickInside = path.includes(this.el);\n\n if (!isClickInside && this.isOpen) {\n this.isOpen = false;\n }\n }\n\n render() {\n const buttonText = this.generateButtonText(this.selectedOption, this.dropdownButtonText);\n return (\n <div class=\"dropdown\" part=\"sd_dropdown\">\n <label part=\"sd_dropdown_label\" class={{ error: !!this.error }}>\n {this.label && (\n <p>\n <span class=\"label\">{this.label}</span>\n {this.required && <span class=\"required\">*</span>}\n </p>\n )}\n <button\n part=\"sd_dropdown-button\"\n class={{ dropbtn: true, open: this.isOpen, error: !!this.error }}\n onClick={() => this.toggleDropdown()}\n disabled={this.readOnly}\n aria-haspopup=\"listbox\"\n title={this.readOnly ? 'read-only field' : buttonText}\n aria-expanded={this.isOpen ? 'true' : 'false'}\n aria-label={this.name}\n onKeyDown={e => this.handleSelectButtonKeyDown(e)}\n >\n <slot name=\"select-icon\" aria-hidden=\"true\"></slot>\n <span class=\"selected-option\" part=\"sd_dropdown-button-selected-label\">\n {buttonText}\n </span>\n {this.withChevron && (\n <span\n class={{\n open: this.isOpen,\n closed: !this.isOpen,\n chevron: true,\n }}\n aria-hidden=\"true\"\n >\n <chevron-icon width=\"16\" height=\"16\" />\n </span>\n )}\n </button>\n {this.error && <span class=\"error help-text\">{this.error}</span>}\n </label>\n\n {this.isOpen ? (\n <div class=\"dropdown-content\" part=\"sd_dropdown-content\">\n {this.withSearch && (\n <div class={{ 'search-box': true, 'open': this.isOpen }}>\n <search-icon width=\"15\" height=\"15\" class={'icon'} />\n <input\n type=\"text\"\n role=\"combobox\"\n placeholder={this.searchPlaceholder}\n value={this.searchValue}\n ref={el => (this.inputRef = el)}\n onInput={event => this.filterOptions(event)}\n onKeyDown={e => this.handleComboboxKeyDown(e)}\n />\n </div>\n )}\n <ul tabindex=\"-1\" role=\"listbox\" aria-label={this.name} aria-activedescendant={this.ariaActivedescendant} onKeyDown={e => this.handleListboxKeydown(e)}>\n {this.filteredOptions.map(option =>\n option.value.toString() ? (\n <li tabindex=\"0\" key={option.value} id={option.value} part={`${this.name}-${option.label}`} onClick={() => this.selectOption(option)} role=\"option\">\n {option.labelHTML ? <div part=\"sd_dropdown-labelhtml\">{option.labelHTML}</div> : option.label}\n </li>\n ) : null,\n )}\n </ul>\n </div>\n ) : null}\n </div>\n );\n }\n}\n"],"version":3}
@@ -2,11 +2,11 @@ import { p as proxyCustomElement, H, e as createEvent, h, i as Host } from './p-
2
2
  import { $ as normalizeSupportedLanguageCode, a0 as detectBrowserLanguageCode, L as LANGUAGE_CODE, a as debug, Z as getTimezoneOffset, T as TIMEZONE_MAP, I as LANGUAGE_MAP } from './p-CMNiSC4o.js';
3
3
  import { R as RegisterComponent } from './p-CUlV7ZGv.js';
4
4
  import { i as instance } from './p-BjxQTsOy.js';
5
- import { d as defineCustomElement$5 } from './p-ao6VxuAL.js';
6
- import { d as defineCustomElement$4 } from './p-DS6Ijr4M.js';
7
- import { d as defineCustomElement$3 } from './p-DBHtQK2b.js';
8
- import { d as defineCustomElement$2 } from './p-wphqTozF.js';
9
- import { d as defineCustomElement$1 } from './p-Dj1TLa3T.js';
5
+ import { d as defineCustomElement$5 } from './p-DY3hmp0T.js';
6
+ import { d as defineCustomElement$4 } from './p-n1qnMrWE.js';
7
+ import { d as defineCustomElement$3 } from './p-BEvwJe37.js';
8
+ import { d as defineCustomElement$2 } from './p-DtEl3UXW.js';
9
+ import { d as defineCustomElement$1 } from './p-VZFbCMYS.js';
10
10
 
11
11
  const nylasLocaleSwitchCss = ":host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-50:#ffeae8;--nylas-error-100:#ffc5bf;--nylas-error-200:#fecaca;--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-color-blue-100:#e0e6f9;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif;--nylas-color-black:#000000;--nylas-color-grey-900:#2c2c2c;--nylas-color-grey-800:#4b4b4b;--nylas-color-grey-700:#6e6e6e;--nylas-color-grey-600:#8e8e8e;--nylas-color-grey-500:#b3b3b3;--nylas-color-grey-400:#cacaca;--nylas-color-grey-300:#e1e1e1;--nylas-color-grey-200:#eaeaea;--nylas-color-grey-100:#f5f5f5;--nylas-color-grey-50:#fbfcfe;--nylas-color-white:#ffffff;--nylas-color-red-900:#992222;--nylas-color-red-700:#cc4841;--nylas-color-red-500:#ff786a;--nylas-color-red-300:#ffa79e;--nylas-color-red-100:#ffc5bf;--nylas-color-red-50:#ffeae8;--nylas-color-blue-900:#213571;--nylas-color-blue-700:#314fa9;--nylas-color-blue-500:#4169e1;--nylas-color-blue-300:#bdccf9;--nylas-color-blue-100:#e0e6f9;--nylas-color-blue-50:#f6f8fd;--nylas-color-yellow-900:#7c6506;--nylas-color-yellow-700:#c29f09;--nylas-color-yellow-500:#f7c90b;--nylas-color-yellow-300:#f9de70;--nylas-color-yellow-100:#fceba9;--nylas-color-yellow-50:#fdf4ce;--nylas-color-green-900:#0e6b60;--nylas-color-green-700:#16a392;--nylas-color-green-500:#17c3b2;--nylas-color-green-300:#74dbd1;--nylas-color-green-100:#a2e7e0;--nylas-color-green-50:#d1f3f0;--nylas-color-purple-900:#643554;--nylas-color-purple-700:#954f7d;--nylas-color-purple-500:#c769a7;--nylas-color-purple-300:#dda5ca;--nylas-color-purple-100:#e0bdd6;--nylas-color-purple-50:#e9dde5;--nylas-color-sky-900:#20698f;--nylas-color-sky-700:#2b8fc2;--nylas-color-sky-500:#6dceff;--nylas-color-sky-300:#8fdaff;--nylas-color-sky-100:#b8e7ff;--nylas-color-sky-50:#d9f2ff}.nylas-locale-switch{display:flex;flex-direction:row;justify-content:space-between;align-items:center;border-left:none;border-right:none;color:var(--nylas-base-50);font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s ease-in-out;font-family:inherit}@media screen and (max-width: 768px){.nylas-locale-switch{font-size:16px}}.select-wrapper{display:flex;align-items:center;gap:0.5rem}select{border:none;background:transparent;cursor:pointer;outline:none;background-color:transparent;margin:0 0 1px;padding:4px;vertical-align:middle}select#timezone{width:140px}select#language{width:80px}span.timezone-label{display:flex;width:-webkit-fill-available;justify-content:space-between}select-dropdown{width:auto}select-dropdown::part(sd_dropdown-button){border:none;padding:10px}select-dropdown::part(sd_dropdown-content){max-width:306px}@media screen and (max-width: 768px){select-dropdown::part(sd_dropdown-button-selected-label){max-width:80px}select-dropdown::part(sd_dropdown-content){width:100%;max-width:none}}";
12
12
 
@@ -206,6 +206,6 @@ function defineCustomElement() {
206
206
  }
207
207
 
208
208
  export { NylasLocaleSwitch as N, defineCustomElement as d };
209
- //# sourceMappingURL=p-BJ5a9k3B.js.map
209
+ //# sourceMappingURL=p-GiOcqWdY.js.map
210
210
 
211
- //# sourceMappingURL=p-BJ5a9k3B.js.map
211
+ //# sourceMappingURL=p-GiOcqWdY.js.map
@@ -1 +1 @@
1
- {"file":"p-BJ5a9k3B.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","i18next"],"sources":["src/components/scheduler/nylas-locale-switch/nylas-locale-switch.scss?tag=nylas-locale-switch&encapsulation=shadow","src/components/scheduler/nylas-locale-switch/nylas-locale-switch.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n\n:host {\n display: block;\n @include default-css-variables;\n}\n\n.nylas-locale-switch {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n border-left: none;\n border-right: none;\n color: var(--nylas-base-50);\n font-size: 14px;\n font-weight: 600;\n cursor: pointer;\n transition: all 0.2s ease-in-out;\n font-family: inherit;\n\n @media #{$mobile} {\n font-size: 16px;\n }\n}\n\n.select-wrapper {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\nselect {\n border: none;\n background: transparent;\n cursor: pointer;\n outline: none;\n background-color: transparent;\n margin: 0 0 1px;\n padding: 4px;\n vertical-align: middle;\n\n &#timezone {\n width: 140px;\n }\n\n &#language {\n width: 80px;\n }\n}\n\nspan.timezone-label {\n display: flex;\n width: -webkit-fill-available;\n justify-content: space-between;\n}\n\nselect-dropdown {\n width: auto;\n}\n\nselect-dropdown::part(sd_dropdown-button) {\n border: none;\n padding: 10px;\n}\n\nselect-dropdown::part(sd_dropdown-content) {\n max-width: 306px;\n}\n\n@media #{$mobile} {\n select-dropdown::part(sd_dropdown-button-selected-label) {\n max-width: 80px; // To make sure the selected label doesn't overflow on mobile\n }\n\n select-dropdown::part(sd_dropdown-content) {\n width: 100%;\n max-width: none;\n }\n}","import { Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { LANGUAGE_CODE, LANGUAGE_MAP, TIMEZONE_MAP } from '@/common/constants';\nimport { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConnector } from '../../../components';\nimport type { NylasSchedulerBookingData } from '@/common/types';\nimport { NylasScheduling } from '../nylas-scheduling/nylas-scheduling';\nimport { debug, detectBrowserLanguageCode, getTimezoneOffset, normalizeSupportedLanguageCode } from '@/utils/utils';\nimport { ThemeConfig } from '@nylas/core';\nimport i18next from '@/utils/i18n';\n/**\n * The `nylas-locale-switch` component is a UI component that allows users to select a timezone and language.\n * @part nls - The locale switch container\n * @part nls__timezone - The timezone select container\n * @part nls__timezone-dropdown - The timezone dropdown\n * @part nls__timezone-drop-button - The timezone dropdown button\n * @part nls__timezone-drop-button-selected-label - The timezone dropdown button selected label\n * @part nls__timezone-drop-content - The timezone dropdown content\n * @part nls__timezone-drop-label - The timezone dropdown label\n * @part nls__language - The language select container\n * @part nls__language-dropdown - The language dropdown\n * @part nls__language-drop-button - The language dropdown button\n * @part nls__language-drop-content - The language dropdown content\n * @part nls__language-drop-label - The language dropdown label\n *\n */\n@Component({\n tag: 'nylas-locale-switch',\n styleUrl: 'nylas-locale-switch.scss',\n shadow: true,\n})\nexport class NylasLocaleSwitch {\n private timezoneRef?: HTMLSelectDropdownElement;\n private languageRef?: HTMLSelectDropdownElement;\n /**\n * The host element.\n * Used to manage the host element of the provider.\n */\n @Element() private host!: HTMLNylasLocaleSwitchElement;\n /**\n * @standalone\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: any;\n /**\n * @standalone\n * The booking info.\n */\n @Prop() readonly bookingInfo?: NylasSchedulerBookingData;\n\n /**\n * The selected timezone.\n */\n @Prop({ mutable: true }) selectedTimezone: string = this.bookingInfo?.timezone || Intl.DateTimeFormat().resolvedOptions().timeZone;\n\n /**\n * The selected language.\n */\n @Prop({ mutable: true }) selectedLanguage: string = normalizeSupportedLanguageCode(this.bookingInfo?.language) || detectBrowserLanguageCode() || LANGUAGE_CODE.en;\n\n @State() searchPlaceholder: string = i18next.t('search');\n\n /**\n * This event is fired when the timezone is changed.\n */\n @Event() timezoneChanged!: EventEmitter<string>;\n\n /**\n * This event is fired when the language is changed.\n */\n @Event() languageChanged!: EventEmitter<string>;\n\n @Watch('themeConfig')\n themeConfigChanged(newThemeConfig: ThemeConfig) {\n this.applyThemeConfig(newThemeConfig);\n }\n\n @Watch('bookingInfo')\n bookingInfoChangedHandler(newValue: NylasSchedulerBookingData | undefined) {\n if (newValue && newValue?.timezone) {\n this.changeTimezone(newValue.timezone);\n }\n if (newValue && newValue?.language) {\n this.changeLanguage(newValue.language);\n }\n }\n\n connectedCallback() {\n // Use queueMicrotask to defer theme application until after React has set props.\n // This fixes the timing issue where connectedCallback fires before React sets themeConfig.\n queueMicrotask(() => {\n if (this.themeConfig) {\n this.applyThemeConfig(this.themeConfig);\n this.host.setAttribute('data-themed', '');\n }\n });\n }\n\n disconnectedCallback() {}\n\n componentWillLoad() {}\n\n componentDidLoad() {\n debug(`[nylas-locale-switch] Component did load`);\n if (this.bookingInfo && this.bookingInfo?.timezone) {\n this.changeTimezone(this.bookingInfo.timezone);\n }\n if (this.bookingInfo && this.bookingInfo?.language) {\n this.changeLanguage(this.bookingInfo.language);\n }\n }\n\n applyThemeConfig(themeConfig?: ThemeConfig) {\n if (themeConfig) {\n for (const [key, value] of Object.entries(themeConfig)) {\n this.host.style.setProperty(`${key}`, value);\n this.timezoneRef?.style.setProperty(`${key}`, value);\n this.languageRef?.style.setProperty(`${key}`, value);\n }\n }\n }\n\n /**\n * Change the timezone.\n * @param timezone The timezone to select.\n */\n private changeTimezone(timezone: string) {\n this.selectedTimezone = timezone;\n this.timezoneChanged.emit(timezone);\n }\n\n /**\n * Change the language.\n * @param language The language to select.\n */\n private changeLanguage(language: string) {\n const selectedLanguage = normalizeSupportedLanguageCode(language) || LANGUAGE_CODE.en;\n this.selectedLanguage = selectedLanguage;\n i18next.changeLanguage(selectedLanguage);\n this.searchPlaceholder = i18next.t('search');\n this.languageChanged.emit(selectedLanguage);\n }\n\n @Listen('nylasFormDropdownChanged')\n nylasFormDropdownChangedHandler(\n event: CustomEvent<{\n value: string;\n name: string;\n }>,\n ) {\n const { name, value } = event.detail;\n if (name === 'timezone') {\n this.changeTimezone(value);\n } else if (name === 'language') {\n this.changeLanguage(value);\n }\n }\n\n getTimezoneLabelHTML(timezone: string) {\n const offset = getTimezoneOffset(timezone);\n return (\n <span\n class=\"timezone-label\"\n style={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n width: '-webkit-fill-available',\n }}\n >\n {TIMEZONE_MAP[timezone]}{' '}\n <span\n class=\"timezone-offset\"\n style={{\n fontSize: '14px',\n fontWeight: '400',\n color: 'var(--nylas-base-500)',\n }}\n >\n {offset}\n </span>\n </span>\n );\n }\n\n @RegisterComponent<NylasLocaleSwitch, NylasSchedulerConnector, Exclude<NylasScheduling['stores'], undefined>>({\n name: 'nylas-locale-switch',\n stateToProps: new Map([\n ['scheduler.selectedLanguage', 'selectedLanguage'],\n ['scheduler.selectedTimezone', 'selectedTimezone'],\n ['scheduler.bookingInfo', 'bookingInfo'],\n ['scheduler.themeConfig', 'themeConfig'],\n ]),\n eventToProps: {\n timezoneChanged: async (event: CustomEvent<string>, nylasSchedulerConnector: NylasSchedulerConnector) => {\n debug('nylas-locale-switch', 'timezoneChanged', event.detail);\n nylasSchedulerConnector.scheduler.selectTimezone(event.detail);\n },\n languageChanged: async (event: CustomEvent<string>, nylasSchedulerConnector: NylasSchedulerConnector) => {\n debug('nylas-locale-switch', 'languageChanged', event.detail);\n nylasSchedulerConnector.scheduler.selectLanguage(event.detail);\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n const timezoneOptions = Object.keys(TIMEZONE_MAP).map(key => ({\n labelHTML: this.getTimezoneLabelHTML(key),\n label: TIMEZONE_MAP[key],\n value: key,\n }));\n const languageOptions = Object.keys(LANGUAGE_MAP).map(key => ({\n label: LANGUAGE_MAP[key],\n value: key,\n }));\n\n return (\n <Host>\n <div class=\"nylas-locale-switch\" part=\"nls\">\n <div\n class={{\n 'select-wrapper': true,\n 'timezone': true,\n }}\n part=\"nls__timezone\"\n >\n <select-dropdown\n name=\"timezone\"\n searchPlaceholder={this.searchPlaceholder}\n options={timezoneOptions}\n ref={el => (this.timezoneRef = el)}\n defaultSelectedOption={timezoneOptions.find(op => op.value == this.selectedTimezone)}\n exportparts=\"sd_dropdown: nls__timezone-dropdown, sd_dropdown-button: nls__timezone-drop-button, sd_dropdown-button-selected-label: nls__timezone-drop-button-selected-label, sd_dropdown-content: nls__timezone-drop-content, sd_dropdown_label: nls__timezone-drop-label\"\n >\n <span slot=\"select-icon\">\n <globe-icon width=\"20\" height=\"20\" />\n </span>\n </select-dropdown>\n </div>\n <div\n class={{\n 'select-wrapper': true,\n 'language': true,\n }}\n part=\"nls__language\"\n >\n <select-dropdown\n name=\"language\"\n searchPlaceholder={this.searchPlaceholder}\n options={languageOptions}\n ref={el => (this.languageRef = el)}\n defaultSelectedOption={languageOptions.find(lang => lang.value == this.selectedLanguage)}\n exportparts=\"sd_dropdown: nls__language-dropdown, sd_dropdown-button: nls__language-drop-button, sd_dropdown-content: nls__language-drop-content, sd_dropdown_label: nls__language-drop-label\"\n >\n <span slot=\"select-icon\">\n <translate-icon width=\"20\" height=\"20\" />\n </span>\n </select-dropdown>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-GiOcqWdY.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","i18next"],"sources":["src/components/scheduler/nylas-locale-switch/nylas-locale-switch.scss?tag=nylas-locale-switch&encapsulation=shadow","src/components/scheduler/nylas-locale-switch/nylas-locale-switch.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n\n:host {\n display: block;\n @include default-css-variables;\n}\n\n.nylas-locale-switch {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n border-left: none;\n border-right: none;\n color: var(--nylas-base-50);\n font-size: 14px;\n font-weight: 600;\n cursor: pointer;\n transition: all 0.2s ease-in-out;\n font-family: inherit;\n\n @media #{$mobile} {\n font-size: 16px;\n }\n}\n\n.select-wrapper {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\nselect {\n border: none;\n background: transparent;\n cursor: pointer;\n outline: none;\n background-color: transparent;\n margin: 0 0 1px;\n padding: 4px;\n vertical-align: middle;\n\n &#timezone {\n width: 140px;\n }\n\n &#language {\n width: 80px;\n }\n}\n\nspan.timezone-label {\n display: flex;\n width: -webkit-fill-available;\n justify-content: space-between;\n}\n\nselect-dropdown {\n width: auto;\n}\n\nselect-dropdown::part(sd_dropdown-button) {\n border: none;\n padding: 10px;\n}\n\nselect-dropdown::part(sd_dropdown-content) {\n max-width: 306px;\n}\n\n@media #{$mobile} {\n select-dropdown::part(sd_dropdown-button-selected-label) {\n max-width: 80px; // To make sure the selected label doesn't overflow on mobile\n }\n\n select-dropdown::part(sd_dropdown-content) {\n width: 100%;\n max-width: none;\n }\n}","import { Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { LANGUAGE_CODE, LANGUAGE_MAP, TIMEZONE_MAP } from '@/common/constants';\nimport { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConnector } from '../../../components';\nimport type { NylasSchedulerBookingData } from '@/common/types';\nimport { NylasScheduling } from '../nylas-scheduling/nylas-scheduling';\nimport { debug, detectBrowserLanguageCode, getTimezoneOffset, normalizeSupportedLanguageCode } from '@/utils/utils';\nimport { ThemeConfig } from '@nylas/core';\nimport i18next from '@/utils/i18n';\n/**\n * The `nylas-locale-switch` component is a UI component that allows users to select a timezone and language.\n * @part nls - The locale switch container\n * @part nls__timezone - The timezone select container\n * @part nls__timezone-dropdown - The timezone dropdown\n * @part nls__timezone-drop-button - The timezone dropdown button\n * @part nls__timezone-drop-button-selected-label - The timezone dropdown button selected label\n * @part nls__timezone-drop-content - The timezone dropdown content\n * @part nls__timezone-drop-label - The timezone dropdown label\n * @part nls__language - The language select container\n * @part nls__language-dropdown - The language dropdown\n * @part nls__language-drop-button - The language dropdown button\n * @part nls__language-drop-content - The language dropdown content\n * @part nls__language-drop-label - The language dropdown label\n *\n */\n@Component({\n tag: 'nylas-locale-switch',\n styleUrl: 'nylas-locale-switch.scss',\n shadow: true,\n})\nexport class NylasLocaleSwitch {\n private timezoneRef?: HTMLSelectDropdownElement;\n private languageRef?: HTMLSelectDropdownElement;\n /**\n * The host element.\n * Used to manage the host element of the provider.\n */\n @Element() private host!: HTMLNylasLocaleSwitchElement;\n /**\n * @standalone\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: any;\n /**\n * @standalone\n * The booking info.\n */\n @Prop() readonly bookingInfo?: NylasSchedulerBookingData;\n\n /**\n * The selected timezone.\n */\n @Prop({ mutable: true }) selectedTimezone: string = this.bookingInfo?.timezone || Intl.DateTimeFormat().resolvedOptions().timeZone;\n\n /**\n * The selected language.\n */\n @Prop({ mutable: true }) selectedLanguage: string = normalizeSupportedLanguageCode(this.bookingInfo?.language) || detectBrowserLanguageCode() || LANGUAGE_CODE.en;\n\n @State() searchPlaceholder: string = i18next.t('search');\n\n /**\n * This event is fired when the timezone is changed.\n */\n @Event() timezoneChanged!: EventEmitter<string>;\n\n /**\n * This event is fired when the language is changed.\n */\n @Event() languageChanged!: EventEmitter<string>;\n\n @Watch('themeConfig')\n themeConfigChanged(newThemeConfig: ThemeConfig) {\n this.applyThemeConfig(newThemeConfig);\n }\n\n @Watch('bookingInfo')\n bookingInfoChangedHandler(newValue: NylasSchedulerBookingData | undefined) {\n if (newValue && newValue?.timezone) {\n this.changeTimezone(newValue.timezone);\n }\n if (newValue && newValue?.language) {\n this.changeLanguage(newValue.language);\n }\n }\n\n connectedCallback() {\n // Use queueMicrotask to defer theme application until after React has set props.\n // This fixes the timing issue where connectedCallback fires before React sets themeConfig.\n queueMicrotask(() => {\n if (this.themeConfig) {\n this.applyThemeConfig(this.themeConfig);\n this.host.setAttribute('data-themed', '');\n }\n });\n }\n\n disconnectedCallback() {}\n\n componentWillLoad() {}\n\n componentDidLoad() {\n debug(`[nylas-locale-switch] Component did load`);\n if (this.bookingInfo && this.bookingInfo?.timezone) {\n this.changeTimezone(this.bookingInfo.timezone);\n }\n if (this.bookingInfo && this.bookingInfo?.language) {\n this.changeLanguage(this.bookingInfo.language);\n }\n }\n\n applyThemeConfig(themeConfig?: ThemeConfig) {\n if (themeConfig) {\n for (const [key, value] of Object.entries(themeConfig)) {\n this.host.style.setProperty(`${key}`, value);\n this.timezoneRef?.style.setProperty(`${key}`, value);\n this.languageRef?.style.setProperty(`${key}`, value);\n }\n }\n }\n\n /**\n * Change the timezone.\n * @param timezone The timezone to select.\n */\n private changeTimezone(timezone: string) {\n this.selectedTimezone = timezone;\n this.timezoneChanged.emit(timezone);\n }\n\n /**\n * Change the language.\n * @param language The language to select.\n */\n private changeLanguage(language: string) {\n const selectedLanguage = normalizeSupportedLanguageCode(language) || LANGUAGE_CODE.en;\n this.selectedLanguage = selectedLanguage;\n i18next.changeLanguage(selectedLanguage);\n this.searchPlaceholder = i18next.t('search');\n this.languageChanged.emit(selectedLanguage);\n }\n\n @Listen('nylasFormDropdownChanged')\n nylasFormDropdownChangedHandler(\n event: CustomEvent<{\n value: string;\n name: string;\n }>,\n ) {\n const { name, value } = event.detail;\n if (name === 'timezone') {\n this.changeTimezone(value);\n } else if (name === 'language') {\n this.changeLanguage(value);\n }\n }\n\n getTimezoneLabelHTML(timezone: string) {\n const offset = getTimezoneOffset(timezone);\n return (\n <span\n class=\"timezone-label\"\n style={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n width: '-webkit-fill-available',\n }}\n >\n {TIMEZONE_MAP[timezone]}{' '}\n <span\n class=\"timezone-offset\"\n style={{\n fontSize: '14px',\n fontWeight: '400',\n color: 'var(--nylas-base-500)',\n }}\n >\n {offset}\n </span>\n </span>\n );\n }\n\n @RegisterComponent<NylasLocaleSwitch, NylasSchedulerConnector, Exclude<NylasScheduling['stores'], undefined>>({\n name: 'nylas-locale-switch',\n stateToProps: new Map([\n ['scheduler.selectedLanguage', 'selectedLanguage'],\n ['scheduler.selectedTimezone', 'selectedTimezone'],\n ['scheduler.bookingInfo', 'bookingInfo'],\n ['scheduler.themeConfig', 'themeConfig'],\n ]),\n eventToProps: {\n timezoneChanged: async (event: CustomEvent<string>, nylasSchedulerConnector: NylasSchedulerConnector) => {\n debug('nylas-locale-switch', 'timezoneChanged', event.detail);\n nylasSchedulerConnector.scheduler.selectTimezone(event.detail);\n },\n languageChanged: async (event: CustomEvent<string>, nylasSchedulerConnector: NylasSchedulerConnector) => {\n debug('nylas-locale-switch', 'languageChanged', event.detail);\n nylasSchedulerConnector.scheduler.selectLanguage(event.detail);\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n const timezoneOptions = Object.keys(TIMEZONE_MAP).map(key => ({\n labelHTML: this.getTimezoneLabelHTML(key),\n label: TIMEZONE_MAP[key],\n value: key,\n }));\n const languageOptions = Object.keys(LANGUAGE_MAP).map(key => ({\n label: LANGUAGE_MAP[key],\n value: key,\n }));\n\n return (\n <Host>\n <div class=\"nylas-locale-switch\" part=\"nls\">\n <div\n class={{\n 'select-wrapper': true,\n 'timezone': true,\n }}\n part=\"nls__timezone\"\n >\n <select-dropdown\n name=\"timezone\"\n searchPlaceholder={this.searchPlaceholder}\n options={timezoneOptions}\n ref={el => (this.timezoneRef = el)}\n defaultSelectedOption={timezoneOptions.find(op => op.value == this.selectedTimezone)}\n exportparts=\"sd_dropdown: nls__timezone-dropdown, sd_dropdown-button: nls__timezone-drop-button, sd_dropdown-button-selected-label: nls__timezone-drop-button-selected-label, sd_dropdown-content: nls__timezone-drop-content, sd_dropdown_label: nls__timezone-drop-label\"\n >\n <span slot=\"select-icon\">\n <globe-icon width=\"20\" height=\"20\" />\n </span>\n </select-dropdown>\n </div>\n <div\n class={{\n 'select-wrapper': true,\n 'language': true,\n }}\n part=\"nls__language\"\n >\n <select-dropdown\n name=\"language\"\n searchPlaceholder={this.searchPlaceholder}\n options={languageOptions}\n ref={el => (this.languageRef = el)}\n defaultSelectedOption={languageOptions.find(lang => lang.value == this.selectedLanguage)}\n exportparts=\"sd_dropdown: nls__language-dropdown, sd_dropdown-button: nls__language-drop-button, sd_dropdown-content: nls__language-drop-content, sd_dropdown_label: nls__language-drop-label\"\n >\n <span slot=\"select-icon\">\n <translate-icon width=\"20\" height=\"20\" />\n </span>\n </select-dropdown>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -10,7 +10,7 @@ const EnvelopeFillIcon = proxyCustomElement(class EnvelopeFillIcon extends H {
10
10
  this.height = '13';
11
11
  }
12
12
  render() {
13
- return (h("svg", { key: 'fd792902458afd00bafc457d1a499236e4e59743', width: "16", height: "13", viewBox: "0 0 16 13", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '92c31d3de77b96282252139da757acfde00ff2f6', d: "M16.0001 3.373V10.5C16.0001 11.8807 14.8808 13 13.5001 13H2.50008C1.11937 13 0 11.8807 0 10.5V3.373L7.74657 7.93097C7.90304 8.02301 8.09711 8.02301 8.25359 7.93097L16.0001 3.373ZM13.5001 0C14.7871 0 15.847 0.972604 15.9849 2.22293L8.00008 6.91991L0.0152595 2.22293C0.153116 0.972604 1.21302 0 2.50008 0H13.5001Z", fill: "currentColor" })));
13
+ return (h("svg", { key: '9b0b2a495daf006c5d719fb6536f1edc866533d3', width: "16", height: "13", viewBox: "0 0 16 13", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '9650f7183bc78370a0156f2a36bc2632292ecd62', d: "M16.0001 3.373V10.5C16.0001 11.8807 14.8808 13 13.5001 13H2.50008C1.11937 13 0 11.8807 0 10.5V3.373L7.74657 7.93097C7.90304 8.02301 8.09711 8.02301 8.25359 7.93097L16.0001 3.373ZM13.5001 0C14.7871 0 15.847 0.972604 15.9849 2.22293L8.00008 6.91991L0.0152595 2.22293C0.153116 0.972604 1.21302 0 2.50008 0H13.5001Z", fill: "currentColor" })));
14
14
  }
15
15
  static get style() { return iconCss; }
16
16
  }, [258, "envelope-fill-icon", {
@@ -32,6 +32,6 @@ function defineCustomElement() {
32
32
  }
33
33
 
34
34
  export { EnvelopeFillIcon as E, defineCustomElement as d };
35
- //# sourceMappingURL=p-C7J83Us-.js.map
35
+ //# sourceMappingURL=p-IJzc7eB1.js.map
36
36
 
37
- //# sourceMappingURL=p-C7J83Us-.js.map
37
+ //# sourceMappingURL=p-IJzc7eB1.js.map
@@ -1 +1 @@
1
- {"file":"p-C7J83Us-.js","mappings":";;AAAA,MAAM,OAAO,GAAG,wCAAwC;;MCO3C,gBAAgB,GAAAA,kBAAA,CAAA,MAAA,gBAAA,SAAAC,CAAA,CAAA;AAL7B,IAAA,WAAA,GAAA;;;AAMU,QAAA,IAAK,CAAA,KAAA,GAAW,IAAI;AACpB,QAAA,IAAM,CAAA,MAAA,GAAW,IAAI;AAY9B;IAVC,MAAM,GAAA;QACJ,QACE,4DAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B,EAAA,EAC5F,CACE,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAC,EAAC,yTAAyT,EAC3T,IAAI,EAAC,cAAc,EAAA,CACnB,CACE;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/common/icons/icon.css?tag=envelope-fill-icon&encapsulation=scoped","src/common/icons/envelope-fill.tsx"],"sourcesContent":[":host {\n display: flex;\n}\n","import { Component, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'envelope-fill-icon',\n styleUrl: 'icon.css',\n scoped: true,\n})\nexport class EnvelopeFillIcon {\n @Prop() width: string = '16';\n @Prop() height: string = '13';\n\n render() {\n return (\n <svg width=\"16\" height=\"13\" viewBox=\"0 0 16 13\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M16.0001 3.373V10.5C16.0001 11.8807 14.8808 13 13.5001 13H2.50008C1.11937 13 0 11.8807 0 10.5V3.373L7.74657 7.93097C7.90304 8.02301 8.09711 8.02301 8.25359 7.93097L16.0001 3.373ZM13.5001 0C14.7871 0 15.847 0.972604 15.9849 2.22293L8.00008 6.91991L0.0152595 2.22293C0.153116 0.972604 1.21302 0 2.50008 0H13.5001Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-IJzc7eB1.js","mappings":";;AAAA,MAAM,OAAO,GAAG,wCAAwC;;MCO3C,gBAAgB,GAAAA,kBAAA,CAAA,MAAA,gBAAA,SAAAC,CAAA,CAAA;AAL7B,IAAA,WAAA,GAAA;;;AAMU,QAAA,IAAK,CAAA,KAAA,GAAW,IAAI;AACpB,QAAA,IAAM,CAAA,MAAA,GAAW,IAAI;AAY9B;IAVC,MAAM,GAAA;QACJ,QACE,4DAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B,EAAA,EAC5F,CACE,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAC,EAAC,yTAAyT,EAC3T,IAAI,EAAC,cAAc,EAAA,CACnB,CACE;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/common/icons/icon.css?tag=envelope-fill-icon&encapsulation=scoped","src/common/icons/envelope-fill.tsx"],"sourcesContent":[":host {\n display: flex;\n}\n","import { Component, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'envelope-fill-icon',\n styleUrl: 'icon.css',\n scoped: true,\n})\nexport class EnvelopeFillIcon {\n @Prop() width: string = '16';\n @Prop() height: string = '13';\n\n render() {\n return (\n <svg width=\"16\" height=\"13\" viewBox=\"0 0 16 13\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M16.0001 3.373V10.5C16.0001 11.8807 14.8808 13 13.5001 13H2.50008C1.11937 13 0 11.8807 0 10.5V3.373L7.74657 7.93097C7.90304 8.02301 8.09711 8.02301 8.25359 7.93097L16.0001 3.373ZM13.5001 0C14.7871 0 15.847 0.972604 15.9849 2.22293L8.00008 6.91991L0.0152595 2.22293C0.153116 0.972604 1.21302 0 2.50008 0H13.5001Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n }\n}\n"],"version":3}
@@ -10,7 +10,7 @@ const PlusIcon = proxyCustomElement(class PlusIcon extends H {
10
10
  this.height = '20';
11
11
  }
12
12
  render() {
13
- return (h("svg", { key: 'b89435991d8184ed72e245fa502b36574c0cf346', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'faaea3f84fc7bc34e2023c5a9f6f80f1a6108a74', 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" })));
13
+ return (h("svg", { key: '9539b76cf86e402a6b12f0154e0bb935b24e76d0', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '1967751225baef68b9869ae1e77ce1908257a3bc', 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
14
  }
15
15
  static get style() { return iconCss; }
16
16
  }, [258, "plus-icon", {
@@ -32,6 +32,6 @@ function defineCustomElement() {
32
32
  }
33
33
 
34
34
  export { PlusIcon as P, defineCustomElement as d };
35
- //# sourceMappingURL=p-jBYg7WMS.js.map
35
+ //# sourceMappingURL=p-LgZAWXty.js.map
36
36
 
37
- //# sourceMappingURL=p-jBYg7WMS.js.map
37
+ //# sourceMappingURL=p-LgZAWXty.js.map
@@ -1 +1 @@
1
- {"file":"p-jBYg7WMS.js","mappings":";;AAAA,MAAM,OAAO,GAAG,+BAA+B;;MCOlC,QAAQ,GAAAA,kBAAA,CAAA,MAAA,QAAA,SAAAC,CAAA,CAAA;AALrB,IAAA,WAAA,GAAA;;;AAMU,QAAA,IAAK,CAAA,KAAA,GAAW,IAAI;AACpB,QAAA,IAAM,CAAA,MAAA,GAAW,IAAI;AAY9B;IAVC,MAAM,GAAA;QACJ,QACE,4DAAK,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B,EAAA,EACzF,CACE,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAC,EAAC,+RAA+R,EACjS,IAAI,EAAC,cAAc,EAAA,CACnB,CACE;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/common/icons/icon.css?tag=plus-icon&encapsulation=scoped","src/common/icons/plus.tsx"],"sourcesContent":[":host {\n display: flex;\n}\n","import { Component, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'plus-icon',\n styleUrl: 'icon.css',\n scoped: true,\n})\nexport class PlusIcon {\n @Prop() width: string = '20';\n @Prop() height: string = '20';\n\n render() {\n return (\n <svg width={this.width} height={this.height} fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n 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\"\n fill=\"currentColor\"\n />\n </svg>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-LgZAWXty.js","mappings":";;AAAA,MAAM,OAAO,GAAG,+BAA+B;;MCOlC,QAAQ,GAAAA,kBAAA,CAAA,MAAA,QAAA,SAAAC,CAAA,CAAA;AALrB,IAAA,WAAA,GAAA;;;AAMU,QAAA,IAAK,CAAA,KAAA,GAAW,IAAI;AACpB,QAAA,IAAM,CAAA,MAAA,GAAW,IAAI;AAY9B;IAVC,MAAM,GAAA;QACJ,QACE,4DAAK,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B,EAAA,EACzF,CACE,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAC,EAAC,+RAA+R,EACjS,IAAI,EAAC,cAAc,EAAA,CACnB,CACE;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/common/icons/icon.css?tag=plus-icon&encapsulation=scoped","src/common/icons/plus.tsx"],"sourcesContent":[":host {\n display: flex;\n}\n","import { Component, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'plus-icon',\n styleUrl: 'icon.css',\n scoped: true,\n})\nexport class PlusIcon {\n @Prop() width: string = '20';\n @Prop() height: string = '20';\n\n render() {\n return (\n <svg width={this.width} height={this.height} fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n 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\"\n fill=\"currentColor\"\n />\n </svg>\n );\n }\n}\n"],"version":3}
@@ -2,9 +2,9 @@ import { p as proxyCustomElement, H, e as createEvent, h, i as Host } from './p-
2
2
  import { R as RegisterComponent } from './p-CUlV7ZGv.js';
3
3
  import { a as debug, O as CONFIGURATION_EVENT_TYPE } from './p-CMNiSC4o.js';
4
4
  import { i as instance } from './p-BjxQTsOy.js';
5
- import { d as defineCustomElement$3 } from './p-BVH0Klhu.js';
6
- import { d as defineCustomElement$2 } from './p-ao6VxuAL.js';
7
- import { d as defineCustomElement$1 } from './p-C7ZpwRD0.js';
5
+ import { d as defineCustomElement$3 } from './p-D0NY8UNC.js';
6
+ import { d as defineCustomElement$2 } from './p-DY3hmp0T.js';
7
+ import { d as defineCustomElement$1 } from './p-DprQSn90.js';
8
8
 
9
9
  const nylasSelectEventTypeCss = ":host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-50:#ffeae8;--nylas-error-100:#ffc5bf;--nylas-error-200:#fecaca;--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-color-blue-100:#e0e6f9;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif;--nylas-color-black:#000000;--nylas-color-grey-900:#2c2c2c;--nylas-color-grey-800:#4b4b4b;--nylas-color-grey-700:#6e6e6e;--nylas-color-grey-600:#8e8e8e;--nylas-color-grey-500:#b3b3b3;--nylas-color-grey-400:#cacaca;--nylas-color-grey-300:#e1e1e1;--nylas-color-grey-200:#eaeaea;--nylas-color-grey-100:#f5f5f5;--nylas-color-grey-50:#fbfcfe;--nylas-color-white:#ffffff;--nylas-color-red-900:#992222;--nylas-color-red-700:#cc4841;--nylas-color-red-500:#ff786a;--nylas-color-red-300:#ffa79e;--nylas-color-red-100:#ffc5bf;--nylas-color-red-50:#ffeae8;--nylas-color-blue-900:#213571;--nylas-color-blue-700:#314fa9;--nylas-color-blue-500:#4169e1;--nylas-color-blue-300:#bdccf9;--nylas-color-blue-100:#e0e6f9;--nylas-color-blue-50:#f6f8fd;--nylas-color-yellow-900:#7c6506;--nylas-color-yellow-700:#c29f09;--nylas-color-yellow-500:#f7c90b;--nylas-color-yellow-300:#f9de70;--nylas-color-yellow-100:#fceba9;--nylas-color-yellow-50:#fdf4ce;--nylas-color-green-900:#0e6b60;--nylas-color-green-700:#16a392;--nylas-color-green-500:#17c3b2;--nylas-color-green-300:#74dbd1;--nylas-color-green-100:#a2e7e0;--nylas-color-green-50:#d1f3f0;--nylas-color-purple-900:#643554;--nylas-color-purple-700:#954f7d;--nylas-color-purple-500:#c769a7;--nylas-color-purple-300:#dda5ca;--nylas-color-purple-100:#e0bdd6;--nylas-color-purple-50:#e9dde5;--nylas-color-sky-900:#20698f;--nylas-color-sky-700:#2b8fc2;--nylas-color-sky-500:#6dceff;--nylas-color-sky-300:#8fdaff;--nylas-color-sky-100:#b8e7ff;--nylas-color-sky-50:#d9f2ff;width:inherit}.nylas-select-event-type{height:inherit;overflow-y:auto}.nylas-select-event-type div.header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--nylas-base-200)}.nylas-select-event-type div.header h2{font-size:18px;padding:0 24px;line-height:24px;margin:0;font-weight:600;color:var(--nylas-base-800)}.nylas-select-event-type div.header button-component button{background:transparent;border:none;cursor:pointer}.nylas-select-event-type div.header button-component button:hover,.nylas-select-event-type div.header button-component button:active{color:var(--nylas-primary);background-color:transparent}.nylas-select-event-type div.header button-component button:disabled{cursor:not-allowed}.nylas-select-event-type div.content{padding:40px}.nylas-select-event-type div.content h3{margin:0 0 32px 0;font-size:18px;line-height:24px;font-weight:600}.nylas-select-event-type div.content div.event-type{display:flex;flex-direction:column;gap:8px}.nylas-select-event-type div.content div.event-type div.event-type-option{padding:16px;border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-3x);width:inherit;cursor:pointer;display:flex;flex-direction:column;gap:8px}.nylas-select-event-type div.content div.event-type div.event-type-option h4{margin:0;font-size:16px;line-height:24px;font-weight:600;color:var(--nylas-base-900)}.nylas-select-event-type div.content div.event-type div.event-type-option p{margin:0;font-size:14px;line-height:21px;font-weight:400;color:var(--nylas-base-800)}";
10
10
 
@@ -211,6 +211,6 @@ function defineCustomElement() {
211
211
  }
212
212
 
213
213
  export { NylasSelectEventType as N, defineCustomElement as d };
214
- //# sourceMappingURL=p-NA5f_7b7.js.map
214
+ //# sourceMappingURL=p-LopVARiX.js.map
215
215
 
216
- //# sourceMappingURL=p-NA5f_7b7.js.map
216
+ //# sourceMappingURL=p-LopVARiX.js.map
@@ -1 +1 @@
1
- {"file":"p-NA5f_7b7.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","i18next"],"sources":["src/components/scheduler-editor/nylas-select-event-type/nylas-select-event-type.scss?tag=nylas-select-event-type&encapsulation=shadow","src/components/scheduler-editor/nylas-select-event-type/nylas-select-event-type.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n@use '../../../common/mixins/buttons' as *;\n\n:host {\n display: block;\n @include default-css-variables;\n width: inherit;\n}\n\n.nylas-select-event-type {\n height: inherit;\n overflow-y: auto;\n\n div.header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n border-bottom: 1px solid var(--nylas-base-200);\n\n h2 {\n font-size: 18px;\n padding: 0 24px;\n line-height: 24px;\n margin: 0;\n font-weight: 600;\n color: var(--nylas-base-800);\n }\n\n button-component {\n button {\n @include invisible-button;\n }\n }\n }\n\n div.content {\n padding: 40px;\n\n h3 {\n margin: 0 0 32px 0;\n font-size: 18px;\n line-height: 24px;\n font-weight: 600;\n }\n\n div.event-type {\n display: flex;\n flex-direction: column;\n gap: 8px;\n\n div.event-type-option {\n padding: 16px;\n border: 1px solid var(--nylas-base-200);\n border-radius: var(--nylas-border-radius-3x);\n width: inherit;\n cursor: pointer;\n display: flex;\n flex-direction: column;\n gap: 8px;\n\n h4 {\n margin: 0;\n font-size: 16px;\n line-height: 24px;\n font-weight: 600;\n color: var(--nylas-base-900);\n }\n\n p {\n margin: 0;\n font-size: 14px;\n line-height: 21px;\n font-weight: 400;\n color: var(--nylas-base-800);\n }\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { Component, Element, Event, EventEmitter, Host, Prop, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport i18next from '@/utils/i18n';\nimport { CONFIGURATION_EVENT_TYPE, LANGUAGE_CODE } from '@/common/constants';\nimport { AdditionalParticipant, EnableEventTypes, ThemeConfig } from '@nylas/core';\n\n/**\n * The `nylas-select-event-type` component is a UI component that allows users to select the event type for the scheduler configuration.\n */\n@Component({\n tag: 'nylas-select-event-type',\n styleUrl: 'nylas-select-event-type.scss',\n shadow: true,\n})\nexport class NylasSelectEventType {\n @Element() host!: HTMLNylasSelectEventTypeElement;\n\n /**\n * @standalone\n * The participant options passed in the additionalParticipants prop\n * from the nylas-scheduler-editor component.\n */\n @Prop() participantOptions?: AdditionalParticipant[];\n\n /**\n * @standalone\n * The name of the component\n */\n @Prop() name: string = 'select-event-type';\n\n /**\n * The selected language.\n */\n @Prop() selectedLanguage?: LANGUAGE_CODE;\n\n /**\n * The enable event types.\n */\n @Prop() enableEventTypes?: EnableEventTypes = {\n one_on_one: true,\n collective: true,\n max_fairness: true,\n max_availability: true,\n group: true,\n };\n /**\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: ThemeConfig;\n\n /**\n * This event is fired when the return to all scheduling pages button is clicked.\n */\n @Event() returnToAllSchedulingPagesEvent!: EventEmitter<void>;\n\n /**\n * This event is fired when the event type is selected.\n */\n @Event() createEventTypeSelected!: EventEmitter<{ eventType: CONFIGURATION_EVENT_TYPE }>;\n\n // Lifecycle methods\n connectedCallback() {\n debug('nylas-select-event-type', 'connectedCallback');\n // Use queueMicrotask to defer theme application until after React has set props.\n // This fixes the timing issue where connectedCallback fires before React sets themeConfig.\n queueMicrotask(() => {\n if (this.themeConfig) {\n this.applyThemeConfig(this.themeConfig);\n this.host.setAttribute('data-themed', '');\n }\n });\n }\n\n disconnectedCallback() {\n debug('nylas-select-event-type', 'disconnectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-select-event-type', '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-select-event-type', 'componentDidLoad');\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-select-event-type', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @Watch('selectedLanguage')\n selectedLanguageChangedHandler(newVal: LANGUAGE_CODE, oldVal: LANGUAGE_CODE) {\n if (newVal === oldVal) return;\n i18next.changeLanguage(newVal);\n }\n\n @Watch('themeConfig')\n themeConfigChangedHandler(newVal: ThemeConfig, oldVal: ThemeConfig) {\n if (newVal === oldVal) return;\n this.applyThemeConfig(newVal);\n }\n\n applyThemeConfig(themeConfig?: ThemeConfig) {\n if (themeConfig) {\n for (const [key, value] of Object.entries(themeConfig)) {\n this.host.style.setProperty(`${key}`, value);\n }\n }\n }\n\n @RegisterComponent<NylasSelectEventType, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-select-event-type',\n stateToProps: new Map([\n ['schedulerConfig.selectedLanguage', 'selectedLanguage'],\n ['schedulerConfig.additionalParticipants', 'participantOptions'],\n ['schedulerConfig.enableEventTypes', 'enableEventTypes'],\n ['schedulerConfig.themeConfig', 'themeConfig'],\n ]),\n eventToProps: {\n returnToAllSchedulingPagesEvent: async (_event: CustomEvent<void>, connector: NylasSchedulerConfigConnector) => {\n connector.schedulerConfigStore.state.action = null;\n connector.schedulerConfigStore.set('selectedEventType', undefined);\n },\n createEventTypeSelected: async (event: CustomEvent<{ eventType: CONFIGURATION_EVENT_TYPE }>, connector: NylasSchedulerConfigConnector) => {\n const { eventType } = event.detail;\n connector.schedulerConfigStore.state.action = 'create';\n connector.schedulerConfigStore.state.selectedEventType = eventType;\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n interface EventTypeOption {\n label: string;\n value: CONFIGURATION_EVENT_TYPE;\n description: string;\n }\n\n const eventTypeKey = {\n 'one-on-one': 'one_on_one',\n 'collective': 'collective',\n 'max-fairness': 'max_fairness',\n 'max-availability': 'max_availability',\n 'group': 'group',\n };\n\n const allEventTypes: EventTypeOption[] = [\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.oneOnOne.label'),\n value: CONFIGURATION_EVENT_TYPE.one_on_one,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.oneOnOne.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.collective.label'),\n value: CONFIGURATION_EVENT_TYPE.collective,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.collective.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.maxFairness.label'),\n value: CONFIGURATION_EVENT_TYPE.max_fairness,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.maxFairness.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.maxAvailability.label'),\n value: CONFIGURATION_EVENT_TYPE.max_availability,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.maxAvailability.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.group.label'),\n value: CONFIGURATION_EVENT_TYPE.group,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.group.desc'),\n },\n ];\n const conditionalEventTypes = [CONFIGURATION_EVENT_TYPE.collective, CONFIGURATION_EVENT_TYPE.max_availability, CONFIGURATION_EVENT_TYPE.max_fairness];\n const hasAdditionalParticipants =\n this.participantOptions &&\n this.participantOptions?.length > 0 &&\n !!this.participantOptions[0].email &&\n !!this.participantOptions[0].name &&\n !!this.participantOptions[0].calendars &&\n this.participantOptions[0].calendars.length > 0;\n\n const eventTypes = this.enableEventTypes\n ? allEventTypes.filter(eventType => {\n const key = eventType.value;\n const keyType = eventTypeKey[key];\n debug('key', key, this.enableEventTypes ? this.enableEventTypes[keyType] : 'no enableEventTypes');\n if (conditionalEventTypes.includes(key) && !hasAdditionalParticipants) {\n return false;\n }\n return this.enableEventTypes && this.enableEventTypes[keyType];\n })\n : allEventTypes;\n return (\n <Host>\n <div class=\"nylas-select-event-type\" part=\"nset\">\n <div class=\"header\" part=\"nset__header\">\n <h2>{i18next.t('nylasSelectEventType.createEventHeaderTitle')}</h2>\n <button-component\n variant=\"invisible\"\n part=\"nset__header__back-button\"\n onClick={_event => {\n this.returnToAllSchedulingPagesEvent.emit();\n }}\n >\n <chevron-icon width=\"16\" height=\"16\" />\n <span>{i18next.t('nylasSelectEventType.returnToAllSchedulingPages')}</span>\n </button-component>\n </div>\n <div class=\"content\" part=\"nset__content\">\n <h3>{i18next.t('nylasSelectEventType.eventTypeHeaderTitle')}</h3>\n <div class=\"event-type\" part=\"nset__content__event-type\">\n {eventTypes.length === 0 && <p>{i18next.t('nylasSelectEventType.noEventTypesEnabled')}</p>}\n {eventTypes.map(eventType => (\n <div\n class=\"event-type-option\"\n onClick={_event => {\n this.createEventTypeSelected.emit({ eventType: eventType.value });\n }}\n part={`nset__content__event-type-option-${eventType.value}`}\n >\n <h4>{eventType.label}</h4>\n <p>{eventType.description}</p>\n </div>\n ))}\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-LopVARiX.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","i18next"],"sources":["src/components/scheduler-editor/nylas-select-event-type/nylas-select-event-type.scss?tag=nylas-select-event-type&encapsulation=shadow","src/components/scheduler-editor/nylas-select-event-type/nylas-select-event-type.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n@use '../../../common/mixins/buttons' as *;\n\n:host {\n display: block;\n @include default-css-variables;\n width: inherit;\n}\n\n.nylas-select-event-type {\n height: inherit;\n overflow-y: auto;\n\n div.header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n border-bottom: 1px solid var(--nylas-base-200);\n\n h2 {\n font-size: 18px;\n padding: 0 24px;\n line-height: 24px;\n margin: 0;\n font-weight: 600;\n color: var(--nylas-base-800);\n }\n\n button-component {\n button {\n @include invisible-button;\n }\n }\n }\n\n div.content {\n padding: 40px;\n\n h3 {\n margin: 0 0 32px 0;\n font-size: 18px;\n line-height: 24px;\n font-weight: 600;\n }\n\n div.event-type {\n display: flex;\n flex-direction: column;\n gap: 8px;\n\n div.event-type-option {\n padding: 16px;\n border: 1px solid var(--nylas-base-200);\n border-radius: var(--nylas-border-radius-3x);\n width: inherit;\n cursor: pointer;\n display: flex;\n flex-direction: column;\n gap: 8px;\n\n h4 {\n margin: 0;\n font-size: 16px;\n line-height: 24px;\n font-weight: 600;\n color: var(--nylas-base-900);\n }\n\n p {\n margin: 0;\n font-size: 14px;\n line-height: 21px;\n font-weight: 400;\n color: var(--nylas-base-800);\n }\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { Component, Element, Event, EventEmitter, Host, Prop, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport i18next from '@/utils/i18n';\nimport { CONFIGURATION_EVENT_TYPE, LANGUAGE_CODE } from '@/common/constants';\nimport { AdditionalParticipant, EnableEventTypes, ThemeConfig } from '@nylas/core';\n\n/**\n * The `nylas-select-event-type` component is a UI component that allows users to select the event type for the scheduler configuration.\n */\n@Component({\n tag: 'nylas-select-event-type',\n styleUrl: 'nylas-select-event-type.scss',\n shadow: true,\n})\nexport class NylasSelectEventType {\n @Element() host!: HTMLNylasSelectEventTypeElement;\n\n /**\n * @standalone\n * The participant options passed in the additionalParticipants prop\n * from the nylas-scheduler-editor component.\n */\n @Prop() participantOptions?: AdditionalParticipant[];\n\n /**\n * @standalone\n * The name of the component\n */\n @Prop() name: string = 'select-event-type';\n\n /**\n * The selected language.\n */\n @Prop() selectedLanguage?: LANGUAGE_CODE;\n\n /**\n * The enable event types.\n */\n @Prop() enableEventTypes?: EnableEventTypes = {\n one_on_one: true,\n collective: true,\n max_fairness: true,\n max_availability: true,\n group: true,\n };\n /**\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: ThemeConfig;\n\n /**\n * This event is fired when the return to all scheduling pages button is clicked.\n */\n @Event() returnToAllSchedulingPagesEvent!: EventEmitter<void>;\n\n /**\n * This event is fired when the event type is selected.\n */\n @Event() createEventTypeSelected!: EventEmitter<{ eventType: CONFIGURATION_EVENT_TYPE }>;\n\n // Lifecycle methods\n connectedCallback() {\n debug('nylas-select-event-type', 'connectedCallback');\n // Use queueMicrotask to defer theme application until after React has set props.\n // This fixes the timing issue where connectedCallback fires before React sets themeConfig.\n queueMicrotask(() => {\n if (this.themeConfig) {\n this.applyThemeConfig(this.themeConfig);\n this.host.setAttribute('data-themed', '');\n }\n });\n }\n\n disconnectedCallback() {\n debug('nylas-select-event-type', 'disconnectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-select-event-type', '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-select-event-type', 'componentDidLoad');\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-select-event-type', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @Watch('selectedLanguage')\n selectedLanguageChangedHandler(newVal: LANGUAGE_CODE, oldVal: LANGUAGE_CODE) {\n if (newVal === oldVal) return;\n i18next.changeLanguage(newVal);\n }\n\n @Watch('themeConfig')\n themeConfigChangedHandler(newVal: ThemeConfig, oldVal: ThemeConfig) {\n if (newVal === oldVal) return;\n this.applyThemeConfig(newVal);\n }\n\n applyThemeConfig(themeConfig?: ThemeConfig) {\n if (themeConfig) {\n for (const [key, value] of Object.entries(themeConfig)) {\n this.host.style.setProperty(`${key}`, value);\n }\n }\n }\n\n @RegisterComponent<NylasSelectEventType, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-select-event-type',\n stateToProps: new Map([\n ['schedulerConfig.selectedLanguage', 'selectedLanguage'],\n ['schedulerConfig.additionalParticipants', 'participantOptions'],\n ['schedulerConfig.enableEventTypes', 'enableEventTypes'],\n ['schedulerConfig.themeConfig', 'themeConfig'],\n ]),\n eventToProps: {\n returnToAllSchedulingPagesEvent: async (_event: CustomEvent<void>, connector: NylasSchedulerConfigConnector) => {\n connector.schedulerConfigStore.state.action = null;\n connector.schedulerConfigStore.set('selectedEventType', undefined);\n },\n createEventTypeSelected: async (event: CustomEvent<{ eventType: CONFIGURATION_EVENT_TYPE }>, connector: NylasSchedulerConfigConnector) => {\n const { eventType } = event.detail;\n connector.schedulerConfigStore.state.action = 'create';\n connector.schedulerConfigStore.state.selectedEventType = eventType;\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n interface EventTypeOption {\n label: string;\n value: CONFIGURATION_EVENT_TYPE;\n description: string;\n }\n\n const eventTypeKey = {\n 'one-on-one': 'one_on_one',\n 'collective': 'collective',\n 'max-fairness': 'max_fairness',\n 'max-availability': 'max_availability',\n 'group': 'group',\n };\n\n const allEventTypes: EventTypeOption[] = [\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.oneOnOne.label'),\n value: CONFIGURATION_EVENT_TYPE.one_on_one,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.oneOnOne.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.collective.label'),\n value: CONFIGURATION_EVENT_TYPE.collective,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.collective.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.maxFairness.label'),\n value: CONFIGURATION_EVENT_TYPE.max_fairness,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.maxFairness.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.maxAvailability.label'),\n value: CONFIGURATION_EVENT_TYPE.max_availability,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.maxAvailability.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.group.label'),\n value: CONFIGURATION_EVENT_TYPE.group,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.group.desc'),\n },\n ];\n const conditionalEventTypes = [CONFIGURATION_EVENT_TYPE.collective, CONFIGURATION_EVENT_TYPE.max_availability, CONFIGURATION_EVENT_TYPE.max_fairness];\n const hasAdditionalParticipants =\n this.participantOptions &&\n this.participantOptions?.length > 0 &&\n !!this.participantOptions[0].email &&\n !!this.participantOptions[0].name &&\n !!this.participantOptions[0].calendars &&\n this.participantOptions[0].calendars.length > 0;\n\n const eventTypes = this.enableEventTypes\n ? allEventTypes.filter(eventType => {\n const key = eventType.value;\n const keyType = eventTypeKey[key];\n debug('key', key, this.enableEventTypes ? this.enableEventTypes[keyType] : 'no enableEventTypes');\n if (conditionalEventTypes.includes(key) && !hasAdditionalParticipants) {\n return false;\n }\n return this.enableEventTypes && this.enableEventTypes[keyType];\n })\n : allEventTypes;\n return (\n <Host>\n <div class=\"nylas-select-event-type\" part=\"nset\">\n <div class=\"header\" part=\"nset__header\">\n <h2>{i18next.t('nylasSelectEventType.createEventHeaderTitle')}</h2>\n <button-component\n variant=\"invisible\"\n part=\"nset__header__back-button\"\n onClick={_event => {\n this.returnToAllSchedulingPagesEvent.emit();\n }}\n >\n <chevron-icon width=\"16\" height=\"16\" />\n <span>{i18next.t('nylasSelectEventType.returnToAllSchedulingPages')}</span>\n </button-component>\n </div>\n <div class=\"content\" part=\"nset__content\">\n <h3>{i18next.t('nylasSelectEventType.eventTypeHeaderTitle')}</h3>\n <div class=\"event-type\" part=\"nset__content__event-type\">\n {eventTypes.length === 0 && <p>{i18next.t('nylasSelectEventType.noEventTypesEnabled')}</p>}\n {eventTypes.map(eventType => (\n <div\n class=\"event-type-option\"\n onClick={_event => {\n this.createEventTypeSelected.emit({ eventType: eventType.value });\n }}\n part={`nset__content__event-type-option-${eventType.value}`}\n >\n <h4>{eventType.label}</h4>\n <p>{eventType.description}</p>\n </div>\n ))}\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -141,7 +141,7 @@ const InputComponent = proxyCustomElement(class InputComponent extends H {
141
141
  }
142
142
  }
143
143
  render() {
144
- return (h("label", { key: 'c6206c7365c42dc60b3deb055cee48eede6a677f', part: this.error ? 'ic__label ic__label--error' : 'ic__label', class: { error: !!this.error } }, this.label && (h("p", { key: '205f0b659bc9aa025f6d4fe482ee6ef701d7dc7e' }, h("span", { key: 'f227b5f6e331d273e4cd45121ea8b9e3b70938cf', class: "label" }, this.label), this.required && h("span", { key: '6909ea1480b25cce55402b565d018335e35ae3ed', class: "required" }, "*"))), h("div", { key: '0d0934358c0d3f50c202c0bc29ce1c1a6ebdbd57', part: "ic__input_wrapper", class: "input_wrapper" }, h("input", { key: '5bf3ef3639f44cf3ef42e827f528bd28ea31b499', type: this.type, name: this.name, part: this.error ? 'ic__input ic__input--error' : 'ic__input', title: this.readOnly ? 'read-only field' : undefined, readOnly: this.readOnly, autoFocus: this.autoFocus, value: this.value, maxLength: this.maxLength, max: this.type === 'number' ? this.maxValue : undefined, min: this.type === 'number' ? this.minValue : undefined, placeholder: this.placeholder, class: { error: !!this.error }, onInput: e => this.handleInput(e), onFocus: () => this.handleFocus(), onBlur: () => this.handleBlur() }), h("slot", { key: '669eb0595d3423db56087f7160c529a59ff6e81e', name: "additional-input" })), this.error && (h("span", { key: '16cd11aa774b3248dcb2b3279abe713ce6625ddd', class: "error help-text", part: "ic__error_message" }, this.error))));
144
+ return (h("label", { key: 'cc04f166a27d6211f29f265a1f62076be7b869aa', part: this.error ? 'ic__label ic__label--error' : 'ic__label', class: { error: !!this.error } }, this.label && (h("p", { key: '42a568c705d9bf8f12641006007a0717fbcd059a' }, h("span", { key: '61d65f6830ae7a17eb4fe3a950ddea19280818ac', class: "label" }, this.label), this.required && h("span", { key: '597d87b82703ffd9b31ebb7b42d871712265ed05', class: "required" }, "*"))), h("div", { key: '7bf70f095e7f21289d1600567e41a27c3749b635', part: "ic__input_wrapper", class: "input_wrapper" }, h("input", { key: '5b8e64723cac474f9cc3db57e4b74534ca2bcb3d', type: this.type, name: this.name, part: this.error ? 'ic__input ic__input--error' : 'ic__input', title: this.readOnly ? 'read-only field' : undefined, readOnly: this.readOnly, autoFocus: this.autoFocus, value: this.value, maxLength: this.maxLength, max: this.type === 'number' ? this.maxValue : undefined, min: this.type === 'number' ? this.minValue : undefined, placeholder: this.placeholder, class: { error: !!this.error }, onInput: e => this.handleInput(e), onFocus: () => this.handleFocus(), onBlur: () => this.handleBlur() }), h("slot", { key: '87bbc34c49a1a9a6a456b1bb9475181a319c5a50', name: "additional-input" })), this.error && (h("span", { key: '526ff2c41b85e378b578170c0f26518cfb72e3b5', class: "error help-text", part: "ic__error_message" }, this.error))));
145
145
  }
146
146
  get el() { return this; }
147
147
  static get watchers() { return {
@@ -186,6 +186,6 @@ function defineCustomElement() {
186
186
  }
187
187
 
188
188
  export { InputComponent as I, defineCustomElement as d };
189
- //# sourceMappingURL=p-D42UGkjM.js.map
189
+ //# sourceMappingURL=p-UIE8SSzy.js.map
190
190
 
191
- //# sourceMappingURL=p-D42UGkjM.js.map
191
+ //# sourceMappingURL=p-UIE8SSzy.js.map
@@ -1 +1 @@
1
- {"file":"p-D42UGkjM.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/design-system/input-component/input-component.scss?tag=input-component&encapsulation=shadow","src/components/design-system/input-component/input-component.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n@use '../../../common/mixins/inputs' as *;\n\n:host {\n display: block;\n height: auto;\n @include default-css-variables;\n width: 100%;\n}\n\nlabel {\n @include input-label;\n flex-direction: column;\n gap: 4px;\n font-family: var(--nylas-font-family);\n font-size: 16px;\n color: var(--nylas-base-800);\n\n p {\n margin: 0;\n }\n\n .error {\n color: var(--nylas-error);\n }\n}\n\n.input_wrapper {\n display: flex;\n align-items: center;\n gap: 1rem;\n}\n\ninput[type='text'],\ninput[type='number'],\ninput[type='email'],\ninput[type='phone_number'] {\n @include textfield;\n width: -moz-available;\n width: -webkit-fill-available;\n}\n\ninput:read-only {\n background-color: var(--nylas-base-100);\n cursor: not-allowed;\n}","import { Component, h, Prop, State, Event, EventEmitter, Listen, Watch, Element } from '@stencil/core';\nimport { sanitize } from '@/utils/utils';\nimport { ThemeConfig } from '@nylas/core';\n\nconst DefaultPattern = {\n email: /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,\n phone_number: /^\\+?\\d{1,15}$/,\n};\n\nconst DefaultPlaceholder = {\n email: 'name@example.com',\n phone_number: '1234567890',\n};\n\n/**\n * The `input-component` component is a UI component that allows users to input text, email, or phone number values.\n * This component is used in the scheduling form to input text, email and phone number type inputs.\n */\n\n@Component({\n tag: 'input-component',\n styleUrl: 'input-component.scss',\n shadow: true,\n})\nexport class InputComponent {\n /**\n * The host element\n */\n @Element() el!: HTMLElement;\n /**\n * The name of the input. This is used to identify the input when submitting a form.\n */\n @Prop() name: string = 'input';\n /**\n * The default value of the input. This is the value that is displayed when the input is rendered.\n */\n @Prop() defaultValue?: string;\n /**\n * The label of the input. This is displayed above the input.\n */\n @Prop() label: string = '';\n /**\n * The type of the input. This is used to determine the input's behavior.\n * Supported types are 'text', 'email', and 'phone_number'.\n */\n @Prop() type: 'text' | 'email' | 'phone_number' | 'number' = 'text';\n /**\n * The placeholder of the input. This is displayed when the input is empty.\n */\n @Prop() placeholder: string = DefaultPlaceholder[this.type];\n /**\n * Whether the input is required. If true, the input must have a value when submitting a form.\n * Default is false. If the input is required and the value is empty, an error message is displayed.\n */\n @Prop() required: boolean = false;\n /**\n * Whether the input is read-only. If true, the input cannot be edited.\n * Default is false.\n */\n @Prop() readOnly: boolean = false;\n /**\n * Whether the input should be focused when rendered.\n * Default is false. If true, the input is focused when rendered.\n * Use this to set the focus on the first input in a form.\n */\n @Prop() autoFocus: boolean = false;\n /**\n * The pattern to validate the input value. If the value does not match the pattern, an error message is displayed.\n * Default is null. If the pattern is not set, the pattern is determined by the input type for 'email' and 'phone_number'.\n */\n @Prop() pattern?: RegExp;\n /**\n * The maximum length of the input value. If the value is longer than the maximum length, an error message is displayed.\n * Default is 255.\n */\n @Prop() maxLength: number = 255;\n /**\n * The error message to display when the value does not match the pattern.\n * Default is 'Invalid <field> format.' where <field> is the input label.\n */\n @Prop() patternError: string = '';\n\n /**\n * This error message is displayed when the input value is empty and the input is required.\n */\n @Prop() requiredError: string = '';\n @Prop() maxValue?: number; // Optional max value for 'number'\n @Prop() minValue?: number; // Optional min value for 'number'\n\n /**\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: ThemeConfig;\n\n /**\n * The input value state.\n */\n @State() value!: string;\n /**\n * The error message state.\n */\n @State() error: string = '';\n\n /**\n * This event is fired when the input value is changed.\n * The scheduling form listens for this event to validate the input value and submit the form.\n * If using outside of the scheduling form, listen for this event to validate the input value\n * and handle the input value change.\n */\n @Event() nylasFormInputChanged!: EventEmitter<{\n value: string;\n name: string;\n label: string;\n type: string;\n error: string;\n }>;\n\n @Event() nylasFormInputFocused!: EventEmitter<{\n value: string;\n name: string;\n }>;\n\n @Event() nylasFormInputBlurred!: EventEmitter<{\n value: string;\n name: string;\n }>;\n\n // Lifecycle methods\n @Watch('defaultValue')\n handleDefaultValueChange(newValue: string) {\n this.value = sanitize(newValue);\n if (this.value) {\n this.validatePattern(this.value);\n }\n }\n\n @Watch('themeConfig')\n themeConfigChangedHandler(newVal: ThemeConfig, oldVal: ThemeConfig) {\n if (newVal === oldVal) return;\n this.applyThemeConfig(newVal);\n }\n\n applyThemeConfig(themeConfig?: ThemeConfig) {\n if (themeConfig) {\n for (const [key, value] of Object.entries(themeConfig)) {\n this.el.style.setProperty(`${key}`, value);\n }\n }\n }\n\n connectedCallback() {\n // Use queueMicrotask to defer theme application until after React has set props.\n // This fixes the timing issue where connectedCallback fires before React sets themeConfig.\n queueMicrotask(() => {\n if (this.themeConfig) {\n this.applyThemeConfig(this.themeConfig);\n this.el.setAttribute('data-themed', '');\n }\n });\n }\n\n componentWillLoad() {\n // Theme already applied in connectedCallback\n }\n\n componentDidLoad() {\n this.value = sanitize(this.defaultValue || '');\n if (this.type !== 'text' && !this.pattern) {\n this.pattern = DefaultPattern[this.type];\n }\n\n if (this.value) {\n this.validatePattern(this.value);\n }\n }\n\n // Event listeners\n /**\n * Listen for the bookingFormSubmitted event to validate the input value when the form is submitted.\n */\n @Listen('bookingFormSubmitted', { target: 'document' })\n handleBookingFormSubmitted(event: CustomEvent) {\n this.validatePattern(this.value);\n if (this.error) {\n event.preventDefault();\n }\n }\n\n @Listen('formSubmitted', { target: 'document' })\n async handleFormSubmitted(event: CustomEvent) {\n if (this.el?.getAttribute('data-page-styling')) {\n this.validatePattern(this.value);\n if (this.error) {\n event.preventDefault();\n }\n }\n }\n\n // Methods\n handleInput(e: Event) {\n this.error = '';\n const inputValue = (e.target as HTMLInputElement).value;\n\n // For 'number', ensure the value is valid\n if (this.type === 'number') {\n const numericValue = parseFloat(inputValue);\n if ((this.maxValue !== undefined && numericValue > this.maxValue) || (this.minValue !== undefined && numericValue < this.minValue)) {\n if (this.minValue === undefined) {\n this.error = `Value must be less than ${this.maxValue}`;\n } else if (this.maxValue === undefined) {\n this.error = `Value must be greater than ${this.minValue}`;\n } else {\n this.error = `Value must be between ${this.minValue} and ${this.maxValue}`;\n }\n } else if (isNaN(numericValue)) {\n this.error = this.patternError || 'Invalid format.';\n }\n }\n\n this.value = sanitize(inputValue);\n this.nylasFormInputChanged.emit({\n value: this.value,\n name: this.name,\n label: this.label,\n error: this.error,\n type: this.type,\n });\n }\n\n handleBlur() {\n this.nylasFormInputBlurred.emit({\n value: this.value,\n name: this.name,\n });\n }\n\n handleFocus() {\n this.nylasFormInputFocused.emit({\n value: this.value,\n name: this.name,\n });\n }\n\n validatePattern(value: string) {\n // Reset error\n this.error = '';\n\n if (this.required && !value) {\n this.error = this.requiredError || 'This field is required.';\n return;\n }\n\n if (this.type === 'number' && value) {\n const numericValue = parseFloat(value);\n if ((this.maxValue !== undefined && numericValue > this.maxValue) || (this.minValue !== undefined && numericValue < this.minValue)) {\n this.error = `Value must be between ${this.minValue} and ${this.maxValue}`;\n return;\n }\n }\n\n if (this.pattern && value && !this.pattern.test(value)) {\n this.error = this.patternError || 'Invalid format.';\n }\n }\n\n render() {\n return (\n <label part={this.error ? 'ic__label ic__label--error' : 'ic__label'} class={{ error: !!this.error }}>\n {this.label && (\n <p>\n <span class=\"label\">{this.label}</span>\n {this.required && <span class=\"required\">*</span>}\n </p>\n )}\n <div part=\"ic__input_wrapper\" class=\"input_wrapper\">\n <input\n type={this.type}\n name={this.name}\n part={this.error ? 'ic__input ic__input--error' : 'ic__input'}\n title={this.readOnly ? 'read-only field' : undefined}\n readOnly={this.readOnly}\n autoFocus={this.autoFocus}\n value={this.value}\n maxLength={this.maxLength}\n max={this.type === 'number' ? this.maxValue : undefined}\n min={this.type === 'number' ? this.minValue : undefined}\n placeholder={this.placeholder}\n class={{ error: !!this.error }}\n onInput={e => this.handleInput(e)}\n onFocus={() => this.handleFocus()}\n onBlur={() => this.handleBlur()}\n />\n <slot name=\"additional-input\"></slot>\n </div>\n {this.error && (\n <span class=\"error help-text\" part=\"ic__error_message\">\n {this.error}\n </span>\n )}\n </label>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-UIE8SSzy.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/design-system/input-component/input-component.scss?tag=input-component&encapsulation=shadow","src/components/design-system/input-component/input-component.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n@use '../../../common/mixins/inputs' as *;\n\n:host {\n display: block;\n height: auto;\n @include default-css-variables;\n width: 100%;\n}\n\nlabel {\n @include input-label;\n flex-direction: column;\n gap: 4px;\n font-family: var(--nylas-font-family);\n font-size: 16px;\n color: var(--nylas-base-800);\n\n p {\n margin: 0;\n }\n\n .error {\n color: var(--nylas-error);\n }\n}\n\n.input_wrapper {\n display: flex;\n align-items: center;\n gap: 1rem;\n}\n\ninput[type='text'],\ninput[type='number'],\ninput[type='email'],\ninput[type='phone_number'] {\n @include textfield;\n width: -moz-available;\n width: -webkit-fill-available;\n}\n\ninput:read-only {\n background-color: var(--nylas-base-100);\n cursor: not-allowed;\n}","import { Component, h, Prop, State, Event, EventEmitter, Listen, Watch, Element } from '@stencil/core';\nimport { sanitize } from '@/utils/utils';\nimport { ThemeConfig } from '@nylas/core';\n\nconst DefaultPattern = {\n email: /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,\n phone_number: /^\\+?\\d{1,15}$/,\n};\n\nconst DefaultPlaceholder = {\n email: 'name@example.com',\n phone_number: '1234567890',\n};\n\n/**\n * The `input-component` component is a UI component that allows users to input text, email, or phone number values.\n * This component is used in the scheduling form to input text, email and phone number type inputs.\n */\n\n@Component({\n tag: 'input-component',\n styleUrl: 'input-component.scss',\n shadow: true,\n})\nexport class InputComponent {\n /**\n * The host element\n */\n @Element() el!: HTMLElement;\n /**\n * The name of the input. This is used to identify the input when submitting a form.\n */\n @Prop() name: string = 'input';\n /**\n * The default value of the input. This is the value that is displayed when the input is rendered.\n */\n @Prop() defaultValue?: string;\n /**\n * The label of the input. This is displayed above the input.\n */\n @Prop() label: string = '';\n /**\n * The type of the input. This is used to determine the input's behavior.\n * Supported types are 'text', 'email', and 'phone_number'.\n */\n @Prop() type: 'text' | 'email' | 'phone_number' | 'number' = 'text';\n /**\n * The placeholder of the input. This is displayed when the input is empty.\n */\n @Prop() placeholder: string = DefaultPlaceholder[this.type];\n /**\n * Whether the input is required. If true, the input must have a value when submitting a form.\n * Default is false. If the input is required and the value is empty, an error message is displayed.\n */\n @Prop() required: boolean = false;\n /**\n * Whether the input is read-only. If true, the input cannot be edited.\n * Default is false.\n */\n @Prop() readOnly: boolean = false;\n /**\n * Whether the input should be focused when rendered.\n * Default is false. If true, the input is focused when rendered.\n * Use this to set the focus on the first input in a form.\n */\n @Prop() autoFocus: boolean = false;\n /**\n * The pattern to validate the input value. If the value does not match the pattern, an error message is displayed.\n * Default is null. If the pattern is not set, the pattern is determined by the input type for 'email' and 'phone_number'.\n */\n @Prop() pattern?: RegExp;\n /**\n * The maximum length of the input value. If the value is longer than the maximum length, an error message is displayed.\n * Default is 255.\n */\n @Prop() maxLength: number = 255;\n /**\n * The error message to display when the value does not match the pattern.\n * Default is 'Invalid <field> format.' where <field> is the input label.\n */\n @Prop() patternError: string = '';\n\n /**\n * This error message is displayed when the input value is empty and the input is required.\n */\n @Prop() requiredError: string = '';\n @Prop() maxValue?: number; // Optional max value for 'number'\n @Prop() minValue?: number; // Optional min value for 'number'\n\n /**\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: ThemeConfig;\n\n /**\n * The input value state.\n */\n @State() value!: string;\n /**\n * The error message state.\n */\n @State() error: string = '';\n\n /**\n * This event is fired when the input value is changed.\n * The scheduling form listens for this event to validate the input value and submit the form.\n * If using outside of the scheduling form, listen for this event to validate the input value\n * and handle the input value change.\n */\n @Event() nylasFormInputChanged!: EventEmitter<{\n value: string;\n name: string;\n label: string;\n type: string;\n error: string;\n }>;\n\n @Event() nylasFormInputFocused!: EventEmitter<{\n value: string;\n name: string;\n }>;\n\n @Event() nylasFormInputBlurred!: EventEmitter<{\n value: string;\n name: string;\n }>;\n\n // Lifecycle methods\n @Watch('defaultValue')\n handleDefaultValueChange(newValue: string) {\n this.value = sanitize(newValue);\n if (this.value) {\n this.validatePattern(this.value);\n }\n }\n\n @Watch('themeConfig')\n themeConfigChangedHandler(newVal: ThemeConfig, oldVal: ThemeConfig) {\n if (newVal === oldVal) return;\n this.applyThemeConfig(newVal);\n }\n\n applyThemeConfig(themeConfig?: ThemeConfig) {\n if (themeConfig) {\n for (const [key, value] of Object.entries(themeConfig)) {\n this.el.style.setProperty(`${key}`, value);\n }\n }\n }\n\n connectedCallback() {\n // Use queueMicrotask to defer theme application until after React has set props.\n // This fixes the timing issue where connectedCallback fires before React sets themeConfig.\n queueMicrotask(() => {\n if (this.themeConfig) {\n this.applyThemeConfig(this.themeConfig);\n this.el.setAttribute('data-themed', '');\n }\n });\n }\n\n componentWillLoad() {\n // Theme already applied in connectedCallback\n }\n\n componentDidLoad() {\n this.value = sanitize(this.defaultValue || '');\n if (this.type !== 'text' && !this.pattern) {\n this.pattern = DefaultPattern[this.type];\n }\n\n if (this.value) {\n this.validatePattern(this.value);\n }\n }\n\n // Event listeners\n /**\n * Listen for the bookingFormSubmitted event to validate the input value when the form is submitted.\n */\n @Listen('bookingFormSubmitted', { target: 'document' })\n handleBookingFormSubmitted(event: CustomEvent) {\n this.validatePattern(this.value);\n if (this.error) {\n event.preventDefault();\n }\n }\n\n @Listen('formSubmitted', { target: 'document' })\n async handleFormSubmitted(event: CustomEvent) {\n if (this.el?.getAttribute('data-page-styling')) {\n this.validatePattern(this.value);\n if (this.error) {\n event.preventDefault();\n }\n }\n }\n\n // Methods\n handleInput(e: Event) {\n this.error = '';\n const inputValue = (e.target as HTMLInputElement).value;\n\n // For 'number', ensure the value is valid\n if (this.type === 'number') {\n const numericValue = parseFloat(inputValue);\n if ((this.maxValue !== undefined && numericValue > this.maxValue) || (this.minValue !== undefined && numericValue < this.minValue)) {\n if (this.minValue === undefined) {\n this.error = `Value must be less than ${this.maxValue}`;\n } else if (this.maxValue === undefined) {\n this.error = `Value must be greater than ${this.minValue}`;\n } else {\n this.error = `Value must be between ${this.minValue} and ${this.maxValue}`;\n }\n } else if (isNaN(numericValue)) {\n this.error = this.patternError || 'Invalid format.';\n }\n }\n\n this.value = sanitize(inputValue);\n this.nylasFormInputChanged.emit({\n value: this.value,\n name: this.name,\n label: this.label,\n error: this.error,\n type: this.type,\n });\n }\n\n handleBlur() {\n this.nylasFormInputBlurred.emit({\n value: this.value,\n name: this.name,\n });\n }\n\n handleFocus() {\n this.nylasFormInputFocused.emit({\n value: this.value,\n name: this.name,\n });\n }\n\n validatePattern(value: string) {\n // Reset error\n this.error = '';\n\n if (this.required && !value) {\n this.error = this.requiredError || 'This field is required.';\n return;\n }\n\n if (this.type === 'number' && value) {\n const numericValue = parseFloat(value);\n if ((this.maxValue !== undefined && numericValue > this.maxValue) || (this.minValue !== undefined && numericValue < this.minValue)) {\n this.error = `Value must be between ${this.minValue} and ${this.maxValue}`;\n return;\n }\n }\n\n if (this.pattern && value && !this.pattern.test(value)) {\n this.error = this.patternError || 'Invalid format.';\n }\n }\n\n render() {\n return (\n <label part={this.error ? 'ic__label ic__label--error' : 'ic__label'} class={{ error: !!this.error }}>\n {this.label && (\n <p>\n <span class=\"label\">{this.label}</span>\n {this.required && <span class=\"required\">*</span>}\n </p>\n )}\n <div part=\"ic__input_wrapper\" class=\"input_wrapper\">\n <input\n type={this.type}\n name={this.name}\n part={this.error ? 'ic__input ic__input--error' : 'ic__input'}\n title={this.readOnly ? 'read-only field' : undefined}\n readOnly={this.readOnly}\n autoFocus={this.autoFocus}\n value={this.value}\n maxLength={this.maxLength}\n max={this.type === 'number' ? this.maxValue : undefined}\n min={this.type === 'number' ? this.minValue : undefined}\n placeholder={this.placeholder}\n class={{ error: !!this.error }}\n onInput={e => this.handleInput(e)}\n onFocus={() => this.handleFocus()}\n onBlur={() => this.handleBlur()}\n />\n <slot name=\"additional-input\"></slot>\n </div>\n {this.error && (\n <span class=\"error help-text\" part=\"ic__error_message\">\n {this.error}\n </span>\n )}\n </label>\n );\n }\n}\n"],"version":3}
@@ -10,7 +10,7 @@ const GlobeIcon = proxyCustomElement(class GlobeIcon extends H {
10
10
  this.height = '16';
11
11
  }
12
12
  render() {
13
- return (h("svg", { key: '74493583733ace45bd742a25b5abb45fc044f16e', xmlns: "http://www.w3.org/2000/svg", width: this.width, height: this.height, viewBox: "0 0 20 20", fill: "none" }, h("path", { key: 'ff9d8edefddf3d57440420d305d1ced70ab8c7b5', fill: "currentColor", d: "M14.1663 4.02867C14.4267 4.12081 14.563 4.40654 14.4709 4.66685C14.3501 5.00788 14.2182 5.4771 14.1178 5.86047C14.6877 5.77587 15.2665 5.65653 15.8867 5.51288C16.1557 5.45058 16.4243 5.61815 16.4866 5.88717C16.5489 6.15619 16.3814 6.42479 16.1123 6.4871C15.339 6.66621 14.6101 6.81289 13.8717 6.90283C13.7759 7.35654 13.7014 7.77084 13.6451 8.15021C14.1202 8.04599 14.5738 8.00553 14.9996 8.02075L14.9996 8C14.9996 7.72386 15.2235 7.5 15.4996 7.5C15.7758 7.5 15.9996 7.72386 15.9996 8C15.9996 8.05657 15.9991 8.11281 15.9979 8.16871C17.1392 8.47838 17.9781 9.23987 18.3435 10.2263C18.9579 11.8853 18.1287 13.8787 15.7027 14.9569C15.4504 15.069 15.1549 14.9554 15.0427 14.7031C14.9306 14.4507 15.0442 14.1552 15.2966 14.0431C17.3705 13.1213 17.7913 11.6147 17.4057 10.5737C17.1874 9.984 16.6776 9.44916 15.9129 9.18633C15.6829 10.7237 15.021 11.9466 14.229 12.7925C14.3126 12.9656 14.3958 13.1436 14.4641 13.3151C14.5662 13.5717 14.441 13.8625 14.1844 13.9646C13.9278 14.0667 13.637 13.9415 13.5349 13.6849C13.5066 13.6137 13.4777 13.5463 13.448 13.4802C13.028 13.7794 12.5905 13.9869 12.1705 14.0835C11.5942 14.2161 10.963 14.1517 10.534 13.6942C9.88917 13.0053 9.84361 11.8611 10.2855 10.8412C10.6652 9.96479 11.4186 9.11781 12.5848 8.54034C12.6387 8.07338 12.7199 7.55894 12.8332 6.98891C12.3926 7.00755 11.9403 7.00326 11.4659 6.97127C11.1904 6.95269 10.9821 6.71428 11.0007 6.43876C11.0192 6.16325 11.2577 5.95496 11.5332 5.97353C12.0633 6.00928 12.5641 6.00772 13.0566 5.97553C13.1605 5.55444 13.3512 4.8331 13.5282 4.33317C13.6203 4.07286 13.906 3.93653 14.1663 4.02867ZM12.501 9.74109C11.8436 10.1821 11.427 10.7219 11.2031 11.2387C10.8542 12.0439 10.9881 12.716 11.2638 13.0105C11.2637 13.0104 11.2639 13.0106 11.2638 13.0105C11.3573 13.11 11.5624 13.1973 11.9463 13.109C12.2578 13.0373 12.6311 12.8571 13.0121 12.5576C12.8658 12.22 12.7272 11.8324 12.6313 11.353C12.5405 10.8996 12.4899 10.3743 12.501 9.74109ZM13.7808 11.7797C14.316 11.0956 14.759 10.1665 14.9271 9.01632C14.539 9.00681 14.1111 9.05601 13.6457 9.17854C13.605 9.19274 13.5647 9.20726 13.525 9.22209C13.4663 10.0545 13.5146 10.671 13.6118 11.1568C13.6578 11.3868 13.7156 11.5913 13.7808 11.7797ZM6.92028 5.2159C5.77942 4.88398 4.78409 5.00841 4.07616 5.21575C3.72264 5.3193 3.439 5.44393 3.24121 5.5443C3.14215 5.59457 3.0641 5.63901 3.00903 5.67212C2.98147 5.68868 2.95962 5.70244 2.9437 5.71271L2.92429 5.72542L2.91797 5.72966L2.91566 5.73123L2.91393 5.73241C2.91384 5.73249 2.91436 5.73325 2.94925 5.78397C3.23698 6.20225 3.1703 6.10548 2.91393 5.73241C2.68634 5.88881 2.62863 6.20009 2.78502 6.42767C2.94134 6.65514 3.25207 6.71313 3.47963 6.55703L3.4788 6.5576L3.48576 6.55305C3.49318 6.54826 3.50608 6.5401 3.52423 6.52919C3.56057 6.50735 3.6177 6.47463 3.69373 6.43605C3.84612 6.35872 4.07228 6.2589 4.35724 6.17544C4.92619 6.0088 5.72242 5.90898 6.64043 6.17595C7.35305 6.38517 7.66747 6.76919 7.82692 7.16112C7.98173 7.54163 8.0026 7.95751 8.00531 8.33243C7.46199 8.18407 6.79336 8.03682 6.08385 8.00744C5.04808 7.96456 3.8874 8.17096 2.87738 9.01102C1.98877 9.75011 1.78345 10.8818 2.07014 11.853C2.35713 12.8252 3.14925 13.692 4.31803 13.9348C5.22351 14.123 6.18016 13.8639 6.9599 13.5212C7.3403 13.354 7.69572 13.1594 8.0057 12.9665V13.5C8.0057 13.7761 8.22956 14 8.5057 14C8.78184 14 9.0057 13.7754 9.0057 13.4993L9.0057 8.44586C9.0058 8.05404 9.00595 7.40554 8.7532 6.78428C8.48142 6.11625 7.93342 5.51313 6.92136 5.21622L6.92028 5.2159ZM6.04249 9.00659C6.76366 9.03645 7.44769 9.209 8.0057 9.37205V11.757C7.65814 12.0182 7.13927 12.35 6.55757 12.6057C5.85264 12.9155 5.12729 13.0816 4.52148 12.9557C3.75127 12.7957 3.22322 12.2271 3.02922 11.5699C2.83491 10.9116 2.98777 10.2199 3.51683 9.77985C4.27958 9.14545 5.16917 8.97043 6.04249 9.00659Z" })));
13
+ return (h("svg", { key: 'c7769bd706315d322af1f9b38df45e4916f56344', xmlns: "http://www.w3.org/2000/svg", width: this.width, height: this.height, viewBox: "0 0 20 20", fill: "none" }, h("path", { key: 'eb23c1a9498522fa025fb79489dc14f07215b7a9', fill: "currentColor", d: "M14.1663 4.02867C14.4267 4.12081 14.563 4.40654 14.4709 4.66685C14.3501 5.00788 14.2182 5.4771 14.1178 5.86047C14.6877 5.77587 15.2665 5.65653 15.8867 5.51288C16.1557 5.45058 16.4243 5.61815 16.4866 5.88717C16.5489 6.15619 16.3814 6.42479 16.1123 6.4871C15.339 6.66621 14.6101 6.81289 13.8717 6.90283C13.7759 7.35654 13.7014 7.77084 13.6451 8.15021C14.1202 8.04599 14.5738 8.00553 14.9996 8.02075L14.9996 8C14.9996 7.72386 15.2235 7.5 15.4996 7.5C15.7758 7.5 15.9996 7.72386 15.9996 8C15.9996 8.05657 15.9991 8.11281 15.9979 8.16871C17.1392 8.47838 17.9781 9.23987 18.3435 10.2263C18.9579 11.8853 18.1287 13.8787 15.7027 14.9569C15.4504 15.069 15.1549 14.9554 15.0427 14.7031C14.9306 14.4507 15.0442 14.1552 15.2966 14.0431C17.3705 13.1213 17.7913 11.6147 17.4057 10.5737C17.1874 9.984 16.6776 9.44916 15.9129 9.18633C15.6829 10.7237 15.021 11.9466 14.229 12.7925C14.3126 12.9656 14.3958 13.1436 14.4641 13.3151C14.5662 13.5717 14.441 13.8625 14.1844 13.9646C13.9278 14.0667 13.637 13.9415 13.5349 13.6849C13.5066 13.6137 13.4777 13.5463 13.448 13.4802C13.028 13.7794 12.5905 13.9869 12.1705 14.0835C11.5942 14.2161 10.963 14.1517 10.534 13.6942C9.88917 13.0053 9.84361 11.8611 10.2855 10.8412C10.6652 9.96479 11.4186 9.11781 12.5848 8.54034C12.6387 8.07338 12.7199 7.55894 12.8332 6.98891C12.3926 7.00755 11.9403 7.00326 11.4659 6.97127C11.1904 6.95269 10.9821 6.71428 11.0007 6.43876C11.0192 6.16325 11.2577 5.95496 11.5332 5.97353C12.0633 6.00928 12.5641 6.00772 13.0566 5.97553C13.1605 5.55444 13.3512 4.8331 13.5282 4.33317C13.6203 4.07286 13.906 3.93653 14.1663 4.02867ZM12.501 9.74109C11.8436 10.1821 11.427 10.7219 11.2031 11.2387C10.8542 12.0439 10.9881 12.716 11.2638 13.0105C11.2637 13.0104 11.2639 13.0106 11.2638 13.0105C11.3573 13.11 11.5624 13.1973 11.9463 13.109C12.2578 13.0373 12.6311 12.8571 13.0121 12.5576C12.8658 12.22 12.7272 11.8324 12.6313 11.353C12.5405 10.8996 12.4899 10.3743 12.501 9.74109ZM13.7808 11.7797C14.316 11.0956 14.759 10.1665 14.9271 9.01632C14.539 9.00681 14.1111 9.05601 13.6457 9.17854C13.605 9.19274 13.5647 9.20726 13.525 9.22209C13.4663 10.0545 13.5146 10.671 13.6118 11.1568C13.6578 11.3868 13.7156 11.5913 13.7808 11.7797ZM6.92028 5.2159C5.77942 4.88398 4.78409 5.00841 4.07616 5.21575C3.72264 5.3193 3.439 5.44393 3.24121 5.5443C3.14215 5.59457 3.0641 5.63901 3.00903 5.67212C2.98147 5.68868 2.95962 5.70244 2.9437 5.71271L2.92429 5.72542L2.91797 5.72966L2.91566 5.73123L2.91393 5.73241C2.91384 5.73249 2.91436 5.73325 2.94925 5.78397C3.23698 6.20225 3.1703 6.10548 2.91393 5.73241C2.68634 5.88881 2.62863 6.20009 2.78502 6.42767C2.94134 6.65514 3.25207 6.71313 3.47963 6.55703L3.4788 6.5576L3.48576 6.55305C3.49318 6.54826 3.50608 6.5401 3.52423 6.52919C3.56057 6.50735 3.6177 6.47463 3.69373 6.43605C3.84612 6.35872 4.07228 6.2589 4.35724 6.17544C4.92619 6.0088 5.72242 5.90898 6.64043 6.17595C7.35305 6.38517 7.66747 6.76919 7.82692 7.16112C7.98173 7.54163 8.0026 7.95751 8.00531 8.33243C7.46199 8.18407 6.79336 8.03682 6.08385 8.00744C5.04808 7.96456 3.8874 8.17096 2.87738 9.01102C1.98877 9.75011 1.78345 10.8818 2.07014 11.853C2.35713 12.8252 3.14925 13.692 4.31803 13.9348C5.22351 14.123 6.18016 13.8639 6.9599 13.5212C7.3403 13.354 7.69572 13.1594 8.0057 12.9665V13.5C8.0057 13.7761 8.22956 14 8.5057 14C8.78184 14 9.0057 13.7754 9.0057 13.4993L9.0057 8.44586C9.0058 8.05404 9.00595 7.40554 8.7532 6.78428C8.48142 6.11625 7.93342 5.51313 6.92136 5.21622L6.92028 5.2159ZM6.04249 9.00659C6.76366 9.03645 7.44769 9.209 8.0057 9.37205V11.757C7.65814 12.0182 7.13927 12.35 6.55757 12.6057C5.85264 12.9155 5.12729 13.0816 4.52148 12.9557C3.75127 12.7957 3.22322 12.2271 3.02922 11.5699C2.83491 10.9116 2.98777 10.2199 3.51683 9.77985C4.27958 9.14545 5.16917 8.97043 6.04249 9.00659Z" })));
14
14
  }
15
15
  static get style() { return iconCss; }
16
16
  }, [258, "translate-icon", {
@@ -32,6 +32,6 @@ function defineCustomElement() {
32
32
  }
33
33
 
34
34
  export { GlobeIcon as G, defineCustomElement as d };
35
- //# sourceMappingURL=p-Dj1TLa3T.js.map
35
+ //# sourceMappingURL=p-VZFbCMYS.js.map
36
36
 
37
- //# sourceMappingURL=p-Dj1TLa3T.js.map
37
+ //# sourceMappingURL=p-VZFbCMYS.js.map