@nylas/web-elements 1.1.0-canary.17 → 1.1.0-canary.18

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 (599) hide show
  1. package/dist/cjs/add-circle-icon.cjs.entry.js +1 -1
  2. package/dist/cjs/add-circle-icon_2.cjs.entry.js +2 -2
  3. package/dist/cjs/archive-icon.cjs.entry.js +1 -1
  4. package/dist/cjs/archive-icon_7.cjs.entry.js +7 -7
  5. package/dist/cjs/arrow-icon.cjs.entry.js +1 -1
  6. package/dist/cjs/bold-icon.cjs.entry.js +1 -1
  7. package/dist/cjs/bold-icon_3.cjs.entry.js +3 -3
  8. package/dist/cjs/button-component.cjs.entry.js +1 -1
  9. package/dist/cjs/calendar-cancel-icon.cjs.entry.js +1 -1
  10. package/dist/cjs/calendar-check-icon.cjs.entry.js +1 -1
  11. package/dist/cjs/calendar-check-icon_2.cjs.entry.js +2 -2
  12. package/dist/cjs/calendar-icon.cjs.entry.js +1 -1
  13. package/dist/cjs/calendar-info-icon.cjs.entry.js +1 -1
  14. package/dist/cjs/calendar-info-icon_28.cjs.entry.js +31 -31
  15. package/dist/cjs/calendar-patterns-icon.cjs.entry.js +1 -1
  16. package/dist/cjs/checkbox-component.cjs.entry.js +1 -1
  17. package/dist/cjs/checkmark-circle-icon.cjs.entry.js +1 -1
  18. package/dist/cjs/chevron-icon.cjs.entry.js +1 -1
  19. package/dist/cjs/chevron-icon_3.cjs.entry.js +5 -5
  20. package/dist/cjs/chevron-icon_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/clock-icon.cjs.entry.js +1 -1
  22. package/dist/cjs/clock-icon_2.cjs.entry.js +2 -2
  23. package/dist/cjs/close-icon.cjs.entry.js +1 -1
  24. package/dist/cjs/document-refresh-icon.cjs.entry.js +1 -1
  25. package/dist/cjs/flow-icon.cjs.entry.js +1 -1
  26. package/dist/cjs/folder-icon.cjs.entry.js +1 -1
  27. package/dist/cjs/forward-icon.cjs.entry.js +1 -1
  28. package/dist/cjs/forward-icon_6.cjs.entry.js +7 -7
  29. package/dist/cjs/globe-icon.cjs.entry.js +1 -1
  30. package/dist/cjs/google-logo-icon.cjs.entry.js +1 -1
  31. package/dist/cjs/google-logo-icon_4.cjs.entry.js +25 -8
  32. package/dist/cjs/google-logo-icon_4.cjs.entry.js.map +1 -1
  33. package/dist/cjs/inbox-icon.cjs.entry.js +1 -1
  34. package/dist/cjs/info-icon.cjs.entry.js +1 -1
  35. package/dist/cjs/info-icon_2.cjs.entry.js +2 -2
  36. package/dist/cjs/input-component.cjs.entry.js +1 -1
  37. package/dist/cjs/input-dropdown.cjs.entry.js +1 -1
  38. package/dist/cjs/input-dropdown_2.cjs.entry.js +2 -2
  39. package/dist/cjs/italic-icon.cjs.entry.js +1 -1
  40. package/dist/cjs/loading-icon.cjs.entry.js +1 -1
  41. package/dist/cjs/location-icon.cjs.entry.js +1 -1
  42. package/dist/cjs/location-off-icon.cjs.entry.js +1 -1
  43. package/dist/cjs/microsoft-logo-icon.cjs.entry.js +1 -1
  44. package/dist/cjs/multi-select-dropdown.cjs.entry.js +2 -2
  45. package/dist/cjs/nylas-additional-participants.cjs.entry.js +2 -2
  46. package/dist/cjs/nylas-availability-picker.cjs.entry.js +1 -1
  47. package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js +11 -11
  48. package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js.map +1 -1
  49. package/dist/cjs/nylas-booking-form.cjs.entry.js +2 -2
  50. package/dist/cjs/nylas-cancel-booking-form.cjs.entry.js +1 -1
  51. package/dist/cjs/nylas-cancellation-policy.cjs.entry.js +1 -1
  52. package/dist/cjs/nylas-cancelled-event-card.cjs.entry.js +1 -1
  53. package/dist/cjs/nylas-composer.cjs.entry.js +1 -1
  54. package/dist/cjs/nylas-custom-booking-flow.cjs.entry.js +1 -1
  55. package/dist/cjs/nylas-customize-booking-settings.cjs.entry.js +1 -1
  56. package/dist/cjs/nylas-date-picker.cjs.entry.js +1 -1
  57. package/dist/cjs/nylas-date-picker.cjs.entry.js.map +1 -1
  58. package/dist/cjs/nylas-editor-tabs.cjs.entry.js +23 -6
  59. package/dist/cjs/nylas-editor-tabs.cjs.entry.js.map +1 -1
  60. package/dist/cjs/nylas-event-description.cjs.entry.js +1 -1
  61. package/dist/cjs/nylas-event-duration.cjs.entry.js +1 -1
  62. package/dist/cjs/nylas-event-info.cjs.entry.js +1 -1
  63. package/dist/cjs/nylas-event-limits.cjs.entry.js +1 -1
  64. package/dist/cjs/nylas-event-location.cjs.entry.js +3 -3
  65. package/dist/cjs/nylas-event-title.cjs.entry.js +2 -2
  66. package/dist/cjs/nylas-form-card.cjs.entry.js +1 -1
  67. package/dist/cjs/nylas-if-state.cjs.entry.js +1 -1
  68. package/dist/cjs/nylas-limit-future-bookings.cjs.entry.js +1 -1
  69. package/dist/cjs/nylas-list-folders.cjs.entry.js +1 -1
  70. package/dist/cjs/nylas-list-threads.cjs.entry.js +1 -1
  71. package/dist/cjs/nylas-locale-switch.cjs.entry.js +3 -3
  72. package/dist/cjs/nylas-login.cjs.entry.js +1 -1
  73. package/dist/cjs/nylas-logo.cjs.entry.js +1 -1
  74. package/dist/cjs/nylas-mailbox-toolbar-button.cjs.entry.js +1 -1
  75. package/dist/cjs/nylas-mailbox.cjs.entry.js +1 -1
  76. package/dist/cjs/nylas-min-booking-notice.cjs.entry.js +1 -1
  77. package/dist/cjs/nylas-min-cancellation-notice.cjs.entry.js +1 -1
  78. package/dist/cjs/nylas-notification.cjs.entry.js +1 -1
  79. package/dist/cjs/nylas-participants-custom-availability.cjs.entry.js +1 -1
  80. package/dist/cjs/nylas-provider.cjs.entry.js +1 -1
  81. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js +1 -1
  82. package/dist/cjs/nylas-selected-event-card.cjs.entry.js +1 -1
  83. package/dist/cjs/nylas-summarize-message-button.cjs.entry.js +2 -2
  84. package/dist/cjs/nylas-threads-refresh.cjs.entry.js +2 -2
  85. package/dist/cjs/nylas-threads-search.cjs.entry.js +1 -1
  86. package/dist/cjs/nylas-time-window-picker.cjs.entry.js +1 -1
  87. package/dist/cjs/nylas-timeslot-interval.cjs.entry.js +2 -2
  88. package/dist/cjs/nylas-view-email.cjs.entry.js +1 -1
  89. package/dist/cjs/nylas-view-thread.cjs.entry.js +1 -1
  90. package/dist/cjs/people-icon.cjs.entry.js +1 -1
  91. package/dist/cjs/person-icon.cjs.entry.js +1 -1
  92. package/dist/cjs/play-icon.cjs.entry.js +1 -1
  93. package/dist/cjs/play-icon_2.cjs.entry.js +2 -2
  94. package/dist/cjs/radio-button-group.cjs.entry.js +1 -1
  95. package/dist/cjs/refresh-icon.cjs.entry.js +1 -1
  96. package/dist/cjs/reply-all-icon.cjs.entry.js +1 -1
  97. package/dist/cjs/reply-icon.cjs.entry.js +1 -1
  98. package/dist/cjs/search-icon.cjs.entry.js +1 -1
  99. package/dist/cjs/select-dropdown.cjs.entry.js +3 -3
  100. package/dist/cjs/select-dropdown.cjs.entry.js.map +1 -1
  101. package/dist/cjs/sent-icon.cjs.entry.js +1 -1
  102. package/dist/cjs/spam-icon.cjs.entry.js +1 -1
  103. package/dist/cjs/star-icon.cjs.entry.js +1 -1
  104. package/dist/cjs/stop-icon.cjs.entry.js +1 -1
  105. package/dist/cjs/textarea-component.cjs.entry.js +1 -1
  106. package/dist/cjs/time-period-selector.cjs.entry.js +1 -1
  107. package/dist/cjs/toggle-switch.cjs.entry.js +1 -1
  108. package/dist/cjs/tooltip-component.cjs.entry.js +1 -1
  109. package/dist/cjs/translate-icon.cjs.entry.js +1 -1
  110. package/dist/cjs/trash-icon.cjs.entry.js +1 -1
  111. package/dist/cjs/underline-icon.cjs.entry.js +1 -1
  112. package/dist/cjs/warning-icon.cjs.entry.js +1 -1
  113. package/dist/collection/common/icons/add-circle.js +1 -1
  114. package/dist/collection/common/icons/archive.js +1 -1
  115. package/dist/collection/common/icons/arrow.js +1 -1
  116. package/dist/collection/common/icons/bold.js +1 -1
  117. package/dist/collection/common/icons/calendar-cancel.js +1 -1
  118. package/dist/collection/common/icons/calendar-check.js +1 -1
  119. package/dist/collection/common/icons/calendar-info.js +1 -1
  120. package/dist/collection/common/icons/calendar-patterns.js +1 -1
  121. package/dist/collection/common/icons/calendar.js +1 -1
  122. package/dist/collection/common/icons/checkmark-circle.js +1 -1
  123. package/dist/collection/common/icons/chevron.js +1 -1
  124. package/dist/collection/common/icons/clock.js +1 -1
  125. package/dist/collection/common/icons/close.js +1 -1
  126. package/dist/collection/common/icons/document-refresh.js +1 -1
  127. package/dist/collection/common/icons/flow.js +1 -1
  128. package/dist/collection/common/icons/folder.js +1 -1
  129. package/dist/collection/common/icons/forward.js +1 -1
  130. package/dist/collection/common/icons/globe.js +1 -1
  131. package/dist/collection/common/icons/google-logo.js +1 -1
  132. package/dist/collection/common/icons/inbox.js +1 -1
  133. package/dist/collection/common/icons/info.js +1 -1
  134. package/dist/collection/common/icons/italic.js +1 -1
  135. package/dist/collection/common/icons/loading.js +1 -1
  136. package/dist/collection/common/icons/location-off.js +1 -1
  137. package/dist/collection/common/icons/location.js +1 -1
  138. package/dist/collection/common/icons/microsoft-logo.js +1 -1
  139. package/dist/collection/common/icons/nylas-logo.js +1 -1
  140. package/dist/collection/common/icons/people.js +1 -1
  141. package/dist/collection/common/icons/person.js +1 -1
  142. package/dist/collection/common/icons/play.js +1 -1
  143. package/dist/collection/common/icons/refresh.js +1 -1
  144. package/dist/collection/common/icons/reply-all.js +1 -1
  145. package/dist/collection/common/icons/reply.js +1 -1
  146. package/dist/collection/common/icons/search.js +1 -1
  147. package/dist/collection/common/icons/sent.js +1 -1
  148. package/dist/collection/common/icons/spam.js +1 -1
  149. package/dist/collection/common/icons/star.js +1 -1
  150. package/dist/collection/common/icons/stop.js +1 -1
  151. package/dist/collection/common/icons/translate.js +1 -1
  152. package/dist/collection/common/icons/trash.js +1 -1
  153. package/dist/collection/common/icons/underline.js +1 -1
  154. package/dist/collection/common/icons/warning.js +1 -1
  155. package/dist/collection/components/design-system/button-component/button-component.js +1 -1
  156. package/dist/collection/components/design-system/checkbox-component/checkbox-component.js +1 -1
  157. package/dist/collection/components/design-system/input-component/input-component.js +1 -1
  158. package/dist/collection/components/design-system/input-dropdown/input-dropdown.js +1 -1
  159. package/dist/collection/components/design-system/multi-select-dropdown/multi-select-dropdown.js +2 -2
  160. package/dist/collection/components/design-system/radio-button-group/radio-button-group.js +1 -1
  161. package/dist/collection/components/design-system/select-dropdown/select-dropdown.js +3 -3
  162. package/dist/collection/components/design-system/select-dropdown/select-dropdown.js.map +1 -1
  163. package/dist/collection/components/design-system/textarea-component/textarea-component.js +1 -1
  164. package/dist/collection/components/design-system/time-period-selector/time-period-selector.js +1 -1
  165. package/dist/collection/components/design-system/toggle-switch/toggle-switch.js +1 -1
  166. package/dist/collection/components/design-system/tooltip-component/toolitp-component.js +1 -1
  167. package/dist/collection/components/mailbox/nylas-composer/nylas-composer.js +1 -1
  168. package/dist/collection/components/mailbox/nylas-list-folders/nylas-list-folders.js +1 -1
  169. package/dist/collection/components/mailbox/nylas-list-threads/nylas-list-threads.js +1 -1
  170. package/dist/collection/components/mailbox/nylas-mailbox/nylas-mailbox.js +1 -1
  171. package/dist/collection/components/mailbox/nylas-mailbox-toolbar-button/nylas-mailbox-toolbar-button.js +1 -1
  172. package/dist/collection/components/mailbox/nylas-summarize-message-button/nylas-summarize-message-button.js +2 -2
  173. package/dist/collection/components/mailbox/nylas-threads-refresh/nylas-threads-refresh.js +2 -2
  174. package/dist/collection/components/mailbox/nylas-threads-search/nylas-threads-search.js +1 -1
  175. package/dist/collection/components/mailbox/nylas-view-email/nylas-view-email.js +1 -1
  176. package/dist/collection/components/mailbox/nylas-view-thread/nylas-view-thread.js +1 -1
  177. package/dist/collection/components/nylas-if-state/nylas-if-state.js +1 -1
  178. package/dist/collection/components/nylas-login/nylas-login.js +1 -1
  179. package/dist/collection/components/nylas-provider/nylas-provider.js +1 -1
  180. package/dist/collection/components/scheduler/nylas-booking-form/nylas-booking-form.js +2 -2
  181. package/dist/collection/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.js +1 -1
  182. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js +1 -1
  183. package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.js +1 -1
  184. package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.js.map +1 -1
  185. package/dist/collection/components/scheduler/nylas-locale-switch/nylas-locale-switch.js +3 -3
  186. package/dist/collection/components/scheduler/nylas-notification/nylas-notification.js +1 -1
  187. package/dist/collection/components/scheduler/nylas-selected-event-card/nylas-selected-event-card.js +1 -1
  188. package/dist/collection/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.js +2 -2
  189. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js +1 -1
  190. package/dist/collection/components/scheduler-editor/nylas-cancellation-policy/nylas-cancellation-policy.js +1 -1
  191. package/dist/collection/components/scheduler-editor/nylas-custom-booking-flow/nylas-custom-booking-flow.js +1 -1
  192. package/dist/collection/components/scheduler-editor/nylas-customize-booking-settings/nylas-customize-booking-settings.js +1 -1
  193. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js +23 -6
  194. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js.map +1 -1
  195. package/dist/collection/components/scheduler-editor/nylas-event-description/nylas-event-description.js +1 -1
  196. package/dist/collection/components/scheduler-editor/nylas-event-duration/nylas-event-duration.js +1 -1
  197. package/dist/collection/components/scheduler-editor/nylas-event-info/nylas-event-info.js +1 -1
  198. package/dist/collection/components/scheduler-editor/nylas-event-limits/nylas-event-limits.js +1 -1
  199. package/dist/collection/components/scheduler-editor/nylas-event-location/nylas-event-location.js +3 -3
  200. package/dist/collection/components/scheduler-editor/nylas-event-title/nylas-event-title.js +2 -2
  201. package/dist/collection/components/scheduler-editor/nylas-form-card/nylas-form-card.js +1 -1
  202. package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.js +1 -1
  203. package/dist/collection/components/scheduler-editor/nylas-min-booking-notice/nylas-min-booking-notice.js +1 -1
  204. package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.js +1 -1
  205. package/dist/collection/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.js +1 -1
  206. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js +1 -1
  207. package/dist/collection/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.js +1 -1
  208. package/dist/collection/components/scheduler-editor/nylas-timeslot-interval/nylas-timeslot-interval.js +2 -2
  209. package/dist/components/add-circle.js +1 -1
  210. package/dist/components/archive.js +1 -1
  211. package/dist/components/arrow.js +1 -1
  212. package/dist/components/bold.js +1 -1
  213. package/dist/components/button-component2.js +1 -1
  214. package/dist/components/calendar-cancel.js +1 -1
  215. package/dist/components/calendar-check.js +1 -1
  216. package/dist/components/calendar-info.js +1 -1
  217. package/dist/components/calendar-patterns.js +1 -1
  218. package/dist/components/calendar.js +1 -1
  219. package/dist/components/checkbox-component2.js +1 -1
  220. package/dist/components/checkmark-circle.js +1 -1
  221. package/dist/components/chevron.js +1 -1
  222. package/dist/components/clock.js +1 -1
  223. package/dist/components/close.js +1 -1
  224. package/dist/components/document-refresh-icon.js +1 -1
  225. package/dist/components/flow.js +1 -1
  226. package/dist/components/folder.js +1 -1
  227. package/dist/components/forward.js +1 -1
  228. package/dist/components/globe.js +1 -1
  229. package/dist/components/google-logo.js +1 -1
  230. package/dist/components/inbox.js +1 -1
  231. package/dist/components/info.js +1 -1
  232. package/dist/components/input-component2.js +1 -1
  233. package/dist/components/input-dropdown2.js +1 -1
  234. package/dist/components/italic.js +1 -1
  235. package/dist/components/loading.js +1 -1
  236. package/dist/components/location-off.js +1 -1
  237. package/dist/components/location.js +1 -1
  238. package/dist/components/microsoft-logo.js +1 -1
  239. package/dist/components/multi-select-dropdown2.js +2 -2
  240. package/dist/components/nylas-additional-participants2.js +2 -2
  241. package/dist/components/nylas-availability-picker2.js +1 -1
  242. package/dist/components/nylas-booking-form2.js +2 -2
  243. package/dist/components/nylas-cancel-booking-form2.js +1 -1
  244. package/dist/components/nylas-cancellation-policy2.js +1 -1
  245. package/dist/components/nylas-cancelled-event-card2.js +1 -1
  246. package/dist/components/nylas-composer2.js +1 -1
  247. package/dist/components/nylas-custom-booking-flow.js +1 -1
  248. package/dist/components/nylas-customize-booking-settings2.js +1 -1
  249. package/dist/components/nylas-date-picker2.js +1 -1
  250. package/dist/components/nylas-date-picker2.js.map +1 -1
  251. package/dist/components/nylas-editor-tabs2.js +23 -6
  252. package/dist/components/nylas-editor-tabs2.js.map +1 -1
  253. package/dist/components/nylas-event-description2.js +1 -1
  254. package/dist/components/nylas-event-duration2.js +1 -1
  255. package/dist/components/nylas-event-info2.js +1 -1
  256. package/dist/components/nylas-event-limits2.js +1 -1
  257. package/dist/components/nylas-event-location2.js +3 -3
  258. package/dist/components/nylas-event-title2.js +2 -2
  259. package/dist/components/nylas-form-card2.js +1 -1
  260. package/dist/components/nylas-if-state.js +1 -1
  261. package/dist/components/nylas-limit-future-bookings2.js +1 -1
  262. package/dist/components/nylas-list-folders.js +1 -1
  263. package/dist/components/nylas-list-threads.js +1 -1
  264. package/dist/components/nylas-locale-switch2.js +3 -3
  265. package/dist/components/nylas-login.js +1 -1
  266. package/dist/components/nylas-logo2.js +1 -1
  267. package/dist/components/nylas-mailbox-toolbar-button.js +1 -1
  268. package/dist/components/nylas-mailbox.js +1 -1
  269. package/dist/components/nylas-min-booking-notice2.js +1 -1
  270. package/dist/components/nylas-min-cancellation-notice2.js +1 -1
  271. package/dist/components/nylas-notification2.js +1 -1
  272. package/dist/components/nylas-participants-custom-availability2.js +1 -1
  273. package/dist/components/nylas-provider.js +1 -1
  274. package/dist/components/nylas-scheduler-editor.js +1 -1
  275. package/dist/components/nylas-selected-event-card2.js +1 -1
  276. package/dist/components/nylas-summarize-message-button2.js +2 -2
  277. package/dist/components/nylas-threads-refresh.js +2 -2
  278. package/dist/components/nylas-threads-search.js +1 -1
  279. package/dist/components/nylas-time-window-picker2.js +1 -1
  280. package/dist/components/nylas-timeslot-interval2.js +2 -2
  281. package/dist/components/nylas-view-email2.js +1 -1
  282. package/dist/components/nylas-view-thread.js +1 -1
  283. package/dist/components/people.js +1 -1
  284. package/dist/components/person.js +1 -1
  285. package/dist/components/play.js +1 -1
  286. package/dist/components/radio-button-group2.js +1 -1
  287. package/dist/components/refresh.js +1 -1
  288. package/dist/components/reply-all.js +1 -1
  289. package/dist/components/reply.js +1 -1
  290. package/dist/components/search.js +1 -1
  291. package/dist/components/select-dropdown2.js +3 -3
  292. package/dist/components/select-dropdown2.js.map +1 -1
  293. package/dist/components/sent.js +1 -1
  294. package/dist/components/spam.js +1 -1
  295. package/dist/components/star.js +1 -1
  296. package/dist/components/stop.js +1 -1
  297. package/dist/components/textarea-component.js +1 -1
  298. package/dist/components/time-period-selector2.js +1 -1
  299. package/dist/components/toggle-switch2.js +1 -1
  300. package/dist/components/toolitp-component.js +1 -1
  301. package/dist/components/translate.js +1 -1
  302. package/dist/components/trash.js +1 -1
  303. package/dist/components/underline.js +1 -1
  304. package/dist/components/warning.js +1 -1
  305. package/dist/esm/add-circle-icon.entry.js +1 -1
  306. package/dist/esm/add-circle-icon_2.entry.js +2 -2
  307. package/dist/esm/archive-icon.entry.js +1 -1
  308. package/dist/esm/archive-icon_7.entry.js +7 -7
  309. package/dist/esm/arrow-icon.entry.js +1 -1
  310. package/dist/esm/bold-icon.entry.js +1 -1
  311. package/dist/esm/bold-icon_3.entry.js +3 -3
  312. package/dist/esm/button-component.entry.js +1 -1
  313. package/dist/esm/calendar-cancel-icon.entry.js +1 -1
  314. package/dist/esm/calendar-check-icon.entry.js +1 -1
  315. package/dist/esm/calendar-check-icon_2.entry.js +2 -2
  316. package/dist/esm/calendar-icon.entry.js +1 -1
  317. package/dist/esm/calendar-info-icon.entry.js +1 -1
  318. package/dist/esm/calendar-info-icon_28.entry.js +31 -31
  319. package/dist/esm/calendar-patterns-icon.entry.js +1 -1
  320. package/dist/esm/checkbox-component.entry.js +1 -1
  321. package/dist/esm/checkmark-circle-icon.entry.js +1 -1
  322. package/dist/esm/chevron-icon.entry.js +1 -1
  323. package/dist/esm/chevron-icon_3.entry.js +5 -5
  324. package/dist/esm/chevron-icon_3.entry.js.map +1 -1
  325. package/dist/esm/clock-icon.entry.js +1 -1
  326. package/dist/esm/clock-icon_2.entry.js +2 -2
  327. package/dist/esm/close-icon.entry.js +1 -1
  328. package/dist/esm/document-refresh-icon.entry.js +1 -1
  329. package/dist/esm/flow-icon.entry.js +1 -1
  330. package/dist/esm/folder-icon.entry.js +1 -1
  331. package/dist/esm/forward-icon.entry.js +1 -1
  332. package/dist/esm/forward-icon_6.entry.js +7 -7
  333. package/dist/esm/globe-icon.entry.js +1 -1
  334. package/dist/esm/google-logo-icon.entry.js +1 -1
  335. package/dist/esm/google-logo-icon_4.entry.js +25 -8
  336. package/dist/esm/google-logo-icon_4.entry.js.map +1 -1
  337. package/dist/esm/inbox-icon.entry.js +1 -1
  338. package/dist/esm/info-icon.entry.js +1 -1
  339. package/dist/esm/info-icon_2.entry.js +2 -2
  340. package/dist/esm/input-component.entry.js +1 -1
  341. package/dist/esm/input-dropdown.entry.js +1 -1
  342. package/dist/esm/input-dropdown_2.entry.js +2 -2
  343. package/dist/esm/italic-icon.entry.js +1 -1
  344. package/dist/esm/loading-icon.entry.js +1 -1
  345. package/dist/esm/location-icon.entry.js +1 -1
  346. package/dist/esm/location-off-icon.entry.js +1 -1
  347. package/dist/esm/microsoft-logo-icon.entry.js +1 -1
  348. package/dist/esm/multi-select-dropdown.entry.js +2 -2
  349. package/dist/esm/nylas-additional-participants.entry.js +2 -2
  350. package/dist/esm/nylas-availability-picker.entry.js +1 -1
  351. package/dist/esm/nylas-booked-event-card_10.entry.js +11 -11
  352. package/dist/esm/nylas-booked-event-card_10.entry.js.map +1 -1
  353. package/dist/esm/nylas-booking-form.entry.js +2 -2
  354. package/dist/esm/nylas-cancel-booking-form.entry.js +1 -1
  355. package/dist/esm/nylas-cancellation-policy.entry.js +1 -1
  356. package/dist/esm/nylas-cancelled-event-card.entry.js +1 -1
  357. package/dist/esm/nylas-composer.entry.js +1 -1
  358. package/dist/esm/nylas-custom-booking-flow.entry.js +1 -1
  359. package/dist/esm/nylas-customize-booking-settings.entry.js +1 -1
  360. package/dist/esm/nylas-date-picker.entry.js +1 -1
  361. package/dist/esm/nylas-date-picker.entry.js.map +1 -1
  362. package/dist/esm/nylas-editor-tabs.entry.js +23 -6
  363. package/dist/esm/nylas-editor-tabs.entry.js.map +1 -1
  364. package/dist/esm/nylas-event-description.entry.js +1 -1
  365. package/dist/esm/nylas-event-duration.entry.js +1 -1
  366. package/dist/esm/nylas-event-info.entry.js +1 -1
  367. package/dist/esm/nylas-event-limits.entry.js +1 -1
  368. package/dist/esm/nylas-event-location.entry.js +3 -3
  369. package/dist/esm/nylas-event-title.entry.js +2 -2
  370. package/dist/esm/nylas-form-card.entry.js +1 -1
  371. package/dist/esm/nylas-if-state.entry.js +1 -1
  372. package/dist/esm/nylas-limit-future-bookings.entry.js +1 -1
  373. package/dist/esm/nylas-list-folders.entry.js +1 -1
  374. package/dist/esm/nylas-list-threads.entry.js +1 -1
  375. package/dist/esm/nylas-locale-switch.entry.js +3 -3
  376. package/dist/esm/nylas-login.entry.js +1 -1
  377. package/dist/esm/nylas-logo.entry.js +1 -1
  378. package/dist/esm/nylas-mailbox-toolbar-button.entry.js +1 -1
  379. package/dist/esm/nylas-mailbox.entry.js +1 -1
  380. package/dist/esm/nylas-min-booking-notice.entry.js +1 -1
  381. package/dist/esm/nylas-min-cancellation-notice.entry.js +1 -1
  382. package/dist/esm/nylas-notification.entry.js +1 -1
  383. package/dist/esm/nylas-participants-custom-availability.entry.js +1 -1
  384. package/dist/esm/nylas-provider.entry.js +1 -1
  385. package/dist/esm/nylas-scheduler-editor.entry.js +1 -1
  386. package/dist/esm/nylas-selected-event-card.entry.js +1 -1
  387. package/dist/esm/nylas-summarize-message-button.entry.js +2 -2
  388. package/dist/esm/nylas-threads-refresh.entry.js +2 -2
  389. package/dist/esm/nylas-threads-search.entry.js +1 -1
  390. package/dist/esm/nylas-time-window-picker.entry.js +1 -1
  391. package/dist/esm/nylas-timeslot-interval.entry.js +2 -2
  392. package/dist/esm/nylas-view-email.entry.js +1 -1
  393. package/dist/esm/nylas-view-thread.entry.js +1 -1
  394. package/dist/esm/people-icon.entry.js +1 -1
  395. package/dist/esm/person-icon.entry.js +1 -1
  396. package/dist/esm/play-icon.entry.js +1 -1
  397. package/dist/esm/play-icon_2.entry.js +2 -2
  398. package/dist/esm/radio-button-group.entry.js +1 -1
  399. package/dist/esm/refresh-icon.entry.js +1 -1
  400. package/dist/esm/reply-all-icon.entry.js +1 -1
  401. package/dist/esm/reply-icon.entry.js +1 -1
  402. package/dist/esm/search-icon.entry.js +1 -1
  403. package/dist/esm/select-dropdown.entry.js +3 -3
  404. package/dist/esm/select-dropdown.entry.js.map +1 -1
  405. package/dist/esm/sent-icon.entry.js +1 -1
  406. package/dist/esm/spam-icon.entry.js +1 -1
  407. package/dist/esm/star-icon.entry.js +1 -1
  408. package/dist/esm/stop-icon.entry.js +1 -1
  409. package/dist/esm/textarea-component.entry.js +1 -1
  410. package/dist/esm/time-period-selector.entry.js +1 -1
  411. package/dist/esm/toggle-switch.entry.js +1 -1
  412. package/dist/esm/tooltip-component.entry.js +1 -1
  413. package/dist/esm/translate-icon.entry.js +1 -1
  414. package/dist/esm/trash-icon.entry.js +1 -1
  415. package/dist/esm/underline-icon.entry.js +1 -1
  416. package/dist/esm/warning-icon.entry.js +1 -1
  417. package/dist/nylas-web-elements/add-circle-icon.entry.js +1 -1
  418. package/dist/nylas-web-elements/archive-icon.entry.js +1 -1
  419. package/dist/nylas-web-elements/arrow-icon.entry.js +1 -1
  420. package/dist/nylas-web-elements/bold-icon.entry.js +1 -1
  421. package/dist/nylas-web-elements/button-component.entry.js +1 -1
  422. package/dist/nylas-web-elements/calendar-cancel-icon.entry.js +1 -1
  423. package/dist/nylas-web-elements/calendar-check-icon.entry.js +1 -1
  424. package/dist/nylas-web-elements/calendar-icon.entry.js +1 -1
  425. package/dist/nylas-web-elements/calendar-info-icon.entry.js +1 -1
  426. package/dist/nylas-web-elements/calendar-patterns-icon.entry.js +1 -1
  427. package/dist/nylas-web-elements/checkbox-component.entry.js +1 -1
  428. package/dist/nylas-web-elements/checkmark-circle-icon.entry.js +1 -1
  429. package/dist/nylas-web-elements/chevron-icon.entry.js +1 -1
  430. package/dist/nylas-web-elements/clock-icon.entry.js +1 -1
  431. package/dist/nylas-web-elements/close-icon.entry.js +1 -1
  432. package/dist/nylas-web-elements/document-refresh-icon.entry.js +1 -1
  433. package/dist/nylas-web-elements/flow-icon.entry.js +1 -1
  434. package/dist/nylas-web-elements/folder-icon.entry.js +1 -1
  435. package/dist/nylas-web-elements/forward-icon.entry.js +1 -1
  436. package/dist/nylas-web-elements/globe-icon.entry.js +1 -1
  437. package/dist/nylas-web-elements/google-logo-icon.entry.js +1 -1
  438. package/dist/nylas-web-elements/inbox-icon.entry.js +1 -1
  439. package/dist/nylas-web-elements/info-icon.entry.js +1 -1
  440. package/dist/nylas-web-elements/input-component.entry.js +1 -1
  441. package/dist/nylas-web-elements/input-dropdown.entry.js +1 -1
  442. package/dist/nylas-web-elements/italic-icon.entry.js +1 -1
  443. package/dist/nylas-web-elements/loading-icon.entry.js +1 -1
  444. package/dist/nylas-web-elements/location-icon.entry.js +1 -1
  445. package/dist/nylas-web-elements/location-off-icon.entry.js +1 -1
  446. package/dist/nylas-web-elements/microsoft-logo-icon.entry.js +1 -1
  447. package/dist/nylas-web-elements/multi-select-dropdown.entry.js +2 -2
  448. package/dist/nylas-web-elements/nylas-additional-participants.entry.js +2 -2
  449. package/dist/nylas-web-elements/nylas-availability-picker.entry.js +1 -1
  450. package/dist/nylas-web-elements/nylas-booking-form.entry.js +2 -2
  451. package/dist/nylas-web-elements/nylas-cancel-booking-form.entry.js +1 -1
  452. package/dist/nylas-web-elements/nylas-cancellation-policy.entry.js +1 -1
  453. package/dist/nylas-web-elements/nylas-cancelled-event-card.entry.js +1 -1
  454. package/dist/nylas-web-elements/nylas-composer.entry.js +1 -1
  455. package/dist/nylas-web-elements/nylas-custom-booking-flow.entry.js +1 -1
  456. package/dist/nylas-web-elements/nylas-customize-booking-settings.entry.js +1 -1
  457. package/dist/nylas-web-elements/nylas-date-picker.entry.js +1 -1
  458. package/dist/nylas-web-elements/nylas-date-picker.entry.js.map +1 -1
  459. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js +23 -6
  460. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js.map +1 -1
  461. package/dist/nylas-web-elements/nylas-event-description.entry.js +1 -1
  462. package/dist/nylas-web-elements/nylas-event-duration.entry.js +1 -1
  463. package/dist/nylas-web-elements/nylas-event-info.entry.js +1 -1
  464. package/dist/nylas-web-elements/nylas-event-limits.entry.js +1 -1
  465. package/dist/nylas-web-elements/nylas-event-location.entry.js +3 -3
  466. package/dist/nylas-web-elements/nylas-event-title.entry.js +2 -2
  467. package/dist/nylas-web-elements/nylas-form-card.entry.js +1 -1
  468. package/dist/nylas-web-elements/nylas-if-state.entry.js +1 -1
  469. package/dist/nylas-web-elements/nylas-limit-future-bookings.entry.js +1 -1
  470. package/dist/nylas-web-elements/nylas-list-folders.entry.js +1 -1
  471. package/dist/nylas-web-elements/nylas-list-threads.entry.js +1 -1
  472. package/dist/nylas-web-elements/nylas-locale-switch.entry.js +3 -3
  473. package/dist/nylas-web-elements/nylas-login.entry.js +1 -1
  474. package/dist/nylas-web-elements/nylas-logo.entry.js +1 -1
  475. package/dist/nylas-web-elements/nylas-mailbox-toolbar-button.entry.js +1 -1
  476. package/dist/nylas-web-elements/nylas-mailbox.entry.js +1 -1
  477. package/dist/nylas-web-elements/nylas-min-booking-notice.entry.js +1 -1
  478. package/dist/nylas-web-elements/nylas-min-cancellation-notice.entry.js +1 -1
  479. package/dist/nylas-web-elements/nylas-notification.entry.js +1 -1
  480. package/dist/nylas-web-elements/nylas-participants-custom-availability.entry.js +1 -1
  481. package/dist/nylas-web-elements/nylas-provider.entry.js +1 -1
  482. package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js +1 -1
  483. package/dist/nylas-web-elements/nylas-selected-event-card.entry.js +1 -1
  484. package/dist/nylas-web-elements/nylas-summarize-message-button.entry.js +2 -2
  485. package/dist/nylas-web-elements/nylas-threads-refresh.entry.js +2 -2
  486. package/dist/nylas-web-elements/nylas-threads-search.entry.js +1 -1
  487. package/dist/nylas-web-elements/nylas-time-window-picker.entry.js +1 -1
  488. package/dist/nylas-web-elements/nylas-timeslot-interval.entry.js +2 -2
  489. package/dist/nylas-web-elements/nylas-view-email.entry.js +1 -1
  490. package/dist/nylas-web-elements/nylas-view-thread.entry.js +1 -1
  491. package/dist/nylas-web-elements/{p-5fd52ecd.entry.js → p-061d0ae2.entry.js} +2 -2
  492. package/dist/nylas-web-elements/p-08d75d35.entry.js +2 -0
  493. package/dist/nylas-web-elements/p-0d98c728.entry.js +2 -0
  494. package/dist/nylas-web-elements/p-0d98c728.entry.js.map +1 -0
  495. package/dist/nylas-web-elements/{p-8eddadb3.entry.js → p-12b83ea9.entry.js} +2 -2
  496. package/dist/nylas-web-elements/{p-d9a145a5.entry.js → p-16a3bfb2.entry.js} +2 -2
  497. package/dist/nylas-web-elements/{p-dcb497d4.entry.js → p-246983ed.entry.js} +2 -2
  498. package/dist/nylas-web-elements/{p-b443f769.entry.js → p-25c97a60.entry.js} +2 -2
  499. package/dist/nylas-web-elements/{p-cc67e6a8.entry.js → p-28512ab6.entry.js} +2 -2
  500. package/dist/nylas-web-elements/{p-fbfa3a7d.entry.js → p-2f148064.entry.js} +2 -2
  501. package/dist/nylas-web-elements/{p-4e48846a.entry.js → p-3175cae0.entry.js} +2 -2
  502. package/dist/nylas-web-elements/{p-a7640232.entry.js → p-34f0d1fe.entry.js} +2 -2
  503. package/dist/nylas-web-elements/{p-62cf46ee.entry.js → p-37f41a90.entry.js} +2 -2
  504. package/dist/nylas-web-elements/{p-2f656fb3.entry.js → p-39160c0d.entry.js} +2 -2
  505. package/dist/nylas-web-elements/{p-13eb1a05.entry.js → p-3f435fab.entry.js} +2 -2
  506. package/dist/nylas-web-elements/{p-ad93d3bd.entry.js → p-5231fc13.entry.js} +3 -3
  507. package/dist/nylas-web-elements/{p-1569f74f.entry.js → p-5c3c1888.entry.js} +2 -2
  508. package/dist/nylas-web-elements/{p-43bfaa93.entry.js → p-60b03f86.entry.js} +2 -2
  509. package/dist/nylas-web-elements/{p-a804616a.entry.js → p-65097f45.entry.js} +2 -2
  510. package/dist/nylas-web-elements/{p-012cb022.entry.js → p-6ce66add.entry.js} +2 -2
  511. package/dist/nylas-web-elements/{p-e9c1e983.entry.js → p-6ef1024f.entry.js} +2 -2
  512. package/dist/nylas-web-elements/p-7a95bc3f.entry.js +2 -0
  513. package/dist/nylas-web-elements/{p-b3d46e08.entry.js → p-7ce048c0.entry.js} +2 -2
  514. package/dist/nylas-web-elements/{p-30144ca0.entry.js → p-8e63b66c.entry.js} +2 -2
  515. package/dist/nylas-web-elements/{p-e9f7d494.entry.js → p-958746a1.entry.js} +2 -2
  516. package/dist/nylas-web-elements/{p-336631dd.entry.js → p-a800e7af.entry.js} +2 -2
  517. package/dist/nylas-web-elements/{p-df2b34ee.entry.js → p-a85408e0.entry.js} +2 -2
  518. package/dist/nylas-web-elements/{p-c1df61d0.entry.js → p-aeb1c91c.entry.js} +2 -2
  519. package/dist/nylas-web-elements/{p-23c143f6.entry.js → p-b0c8021f.entry.js} +2 -2
  520. package/dist/nylas-web-elements/{p-a118f20c.entry.js → p-b2aca6c4.entry.js} +2 -2
  521. package/dist/nylas-web-elements/{p-017f2538.entry.js → p-b334d63b.entry.js} +2 -2
  522. package/dist/nylas-web-elements/p-b4d09fcf.entry.js +2 -0
  523. package/dist/nylas-web-elements/p-b4d09fcf.entry.js.map +1 -0
  524. package/dist/nylas-web-elements/{p-8c1a5e57.entry.js → p-b9559f06.entry.js} +2 -2
  525. package/dist/nylas-web-elements/{p-8c1a5e57.entry.js.map → p-b9559f06.entry.js.map} +1 -1
  526. package/dist/nylas-web-elements/{p-d1d984c5.entry.js → p-c1ff6499.entry.js} +2 -2
  527. package/dist/nylas-web-elements/{p-672f1951.entry.js → p-cb03e4d4.entry.js} +2 -2
  528. package/dist/nylas-web-elements/p-de7b0878.entry.js +2 -0
  529. package/dist/nylas-web-elements/{p-f1e9ed6b.entry.js → p-e8cde784.entry.js} +2 -2
  530. package/dist/nylas-web-elements/p-f2d1b1a6.entry.js +2 -0
  531. package/dist/nylas-web-elements/{p-a5dbdc8e.entry.js.map → p-f2d1b1a6.entry.js.map} +1 -1
  532. package/dist/nylas-web-elements/{p-2743621d.entry.js → p-f6fafe86.entry.js} +2 -2
  533. package/dist/nylas-web-elements/{p-fd8e29e6.entry.js → p-f8653b9b.entry.js} +2 -2
  534. package/dist/nylas-web-elements/people-icon.entry.js +1 -1
  535. package/dist/nylas-web-elements/person-icon.entry.js +1 -1
  536. package/dist/nylas-web-elements/play-icon.entry.js +1 -1
  537. package/dist/nylas-web-elements/radio-button-group.entry.js +1 -1
  538. package/dist/nylas-web-elements/refresh-icon.entry.js +1 -1
  539. package/dist/nylas-web-elements/reply-all-icon.entry.js +1 -1
  540. package/dist/nylas-web-elements/reply-icon.entry.js +1 -1
  541. package/dist/nylas-web-elements/search-icon.entry.js +1 -1
  542. package/dist/nylas-web-elements/select-dropdown.entry.js +3 -3
  543. package/dist/nylas-web-elements/select-dropdown.entry.js.map +1 -1
  544. package/dist/nylas-web-elements/sent-icon.entry.js +1 -1
  545. package/dist/nylas-web-elements/spam-icon.entry.js +1 -1
  546. package/dist/nylas-web-elements/star-icon.entry.js +1 -1
  547. package/dist/nylas-web-elements/stop-icon.entry.js +1 -1
  548. package/dist/nylas-web-elements/textarea-component.entry.js +1 -1
  549. package/dist/nylas-web-elements/time-period-selector.entry.js +1 -1
  550. package/dist/nylas-web-elements/toggle-switch.entry.js +1 -1
  551. package/dist/nylas-web-elements/tooltip-component.entry.js +1 -1
  552. package/dist/nylas-web-elements/translate-icon.entry.js +1 -1
  553. package/dist/nylas-web-elements/trash-icon.entry.js +1 -1
  554. package/dist/nylas-web-elements/underline-icon.entry.js +1 -1
  555. package/dist/nylas-web-elements/warning-icon.entry.js +1 -1
  556. package/package.json +1 -1
  557. package/dist/nylas-web-elements/p-086746ee.entry.js +0 -2
  558. package/dist/nylas-web-elements/p-0919bbbe.entry.js +0 -2
  559. package/dist/nylas-web-elements/p-84c53084.entry.js +0 -2
  560. package/dist/nylas-web-elements/p-938d4ec9.entry.js +0 -2
  561. package/dist/nylas-web-elements/p-938d4ec9.entry.js.map +0 -1
  562. package/dist/nylas-web-elements/p-a5dbdc8e.entry.js +0 -2
  563. package/dist/nylas-web-elements/p-f8e0164c.entry.js +0 -2
  564. package/dist/nylas-web-elements/p-f8e0164c.entry.js.map +0 -1
  565. /package/dist/nylas-web-elements/{p-5fd52ecd.entry.js.map → p-061d0ae2.entry.js.map} +0 -0
  566. /package/dist/nylas-web-elements/{p-0919bbbe.entry.js.map → p-08d75d35.entry.js.map} +0 -0
  567. /package/dist/nylas-web-elements/{p-8eddadb3.entry.js.map → p-12b83ea9.entry.js.map} +0 -0
  568. /package/dist/nylas-web-elements/{p-d9a145a5.entry.js.map → p-16a3bfb2.entry.js.map} +0 -0
  569. /package/dist/nylas-web-elements/{p-dcb497d4.entry.js.map → p-246983ed.entry.js.map} +0 -0
  570. /package/dist/nylas-web-elements/{p-b443f769.entry.js.map → p-25c97a60.entry.js.map} +0 -0
  571. /package/dist/nylas-web-elements/{p-cc67e6a8.entry.js.map → p-28512ab6.entry.js.map} +0 -0
  572. /package/dist/nylas-web-elements/{p-fbfa3a7d.entry.js.map → p-2f148064.entry.js.map} +0 -0
  573. /package/dist/nylas-web-elements/{p-4e48846a.entry.js.map → p-3175cae0.entry.js.map} +0 -0
  574. /package/dist/nylas-web-elements/{p-a7640232.entry.js.map → p-34f0d1fe.entry.js.map} +0 -0
  575. /package/dist/nylas-web-elements/{p-62cf46ee.entry.js.map → p-37f41a90.entry.js.map} +0 -0
  576. /package/dist/nylas-web-elements/{p-2f656fb3.entry.js.map → p-39160c0d.entry.js.map} +0 -0
  577. /package/dist/nylas-web-elements/{p-13eb1a05.entry.js.map → p-3f435fab.entry.js.map} +0 -0
  578. /package/dist/nylas-web-elements/{p-ad93d3bd.entry.js.map → p-5231fc13.entry.js.map} +0 -0
  579. /package/dist/nylas-web-elements/{p-1569f74f.entry.js.map → p-5c3c1888.entry.js.map} +0 -0
  580. /package/dist/nylas-web-elements/{p-43bfaa93.entry.js.map → p-60b03f86.entry.js.map} +0 -0
  581. /package/dist/nylas-web-elements/{p-a804616a.entry.js.map → p-65097f45.entry.js.map} +0 -0
  582. /package/dist/nylas-web-elements/{p-012cb022.entry.js.map → p-6ce66add.entry.js.map} +0 -0
  583. /package/dist/nylas-web-elements/{p-e9c1e983.entry.js.map → p-6ef1024f.entry.js.map} +0 -0
  584. /package/dist/nylas-web-elements/{p-84c53084.entry.js.map → p-7a95bc3f.entry.js.map} +0 -0
  585. /package/dist/nylas-web-elements/{p-b3d46e08.entry.js.map → p-7ce048c0.entry.js.map} +0 -0
  586. /package/dist/nylas-web-elements/{p-30144ca0.entry.js.map → p-8e63b66c.entry.js.map} +0 -0
  587. /package/dist/nylas-web-elements/{p-e9f7d494.entry.js.map → p-958746a1.entry.js.map} +0 -0
  588. /package/dist/nylas-web-elements/{p-336631dd.entry.js.map → p-a800e7af.entry.js.map} +0 -0
  589. /package/dist/nylas-web-elements/{p-df2b34ee.entry.js.map → p-a85408e0.entry.js.map} +0 -0
  590. /package/dist/nylas-web-elements/{p-c1df61d0.entry.js.map → p-aeb1c91c.entry.js.map} +0 -0
  591. /package/dist/nylas-web-elements/{p-23c143f6.entry.js.map → p-b0c8021f.entry.js.map} +0 -0
  592. /package/dist/nylas-web-elements/{p-a118f20c.entry.js.map → p-b2aca6c4.entry.js.map} +0 -0
  593. /package/dist/nylas-web-elements/{p-017f2538.entry.js.map → p-b334d63b.entry.js.map} +0 -0
  594. /package/dist/nylas-web-elements/{p-d1d984c5.entry.js.map → p-c1ff6499.entry.js.map} +0 -0
  595. /package/dist/nylas-web-elements/{p-672f1951.entry.js.map → p-cb03e4d4.entry.js.map} +0 -0
  596. /package/dist/nylas-web-elements/{p-086746ee.entry.js.map → p-de7b0878.entry.js.map} +0 -0
  597. /package/dist/nylas-web-elements/{p-f1e9ed6b.entry.js.map → p-e8cde784.entry.js.map} +0 -0
  598. /package/dist/nylas-web-elements/{p-2743621d.entry.js.map → p-f6fafe86.entry.js.map} +0 -0
  599. /package/dist/nylas-web-elements/{p-fd8e29e6.entry.js.map → p-f8653b9b.entry.js.map} +0 -0
@@ -126,7 +126,24 @@ const NylasEditorTabs = proxyCustomElement(class NylasEditorTabs extends HTMLEle
126
126
  this.hasUnsavedChanges = false;
127
127
  const formState = this.updateFormState();
128
128
  const { title, description, duration, availability, calendarIds, bookingCalendar, location, bookingType, buffer, availableDaysInFuture, minCancellationNotice, minBookingNotice, cancellationPolicy, timeslotInterval, additionalGuestsHidden, hideCancellationOptions, hideReschedulingOptions, participants, participantOpenHours, } = formState;
129
+ const organizer = this.selectedConfiguration?.participants?.find(p => p.is_organizer);
129
130
  const durationMinutes = duration ? parseInt(duration) : 30;
131
+ const participantsList = participants && participants?.length > 0
132
+ ? participants
133
+ : [
134
+ {
135
+ name: organizer?.name ?? this.currentUser?.name ?? organizer?.email ?? this.currentUser?.email ?? '',
136
+ email: organizer?.email ?? this.currentUser?.email ?? '',
137
+ is_organizer: true,
138
+ availability: {
139
+ calendar_ids: calendarIds?.length ? calendarIds : ['primary'],
140
+ open_hours: [],
141
+ },
142
+ booking: {
143
+ calendar_id: bookingCalendar && bookingCalendar !== '' ? bookingCalendar : 'primary',
144
+ },
145
+ },
146
+ ];
130
147
  const configObject = {
131
148
  ...(this.selectedConfiguration?.id && { id: this.selectedConfiguration.id }),
132
149
  version: this.selectedConfiguration?.version ?? '1.0.0',
@@ -142,7 +159,7 @@ const NylasEditorTabs = proxyCustomElement(class NylasEditorTabs extends HTMLEle
142
159
  },
143
160
  },
144
161
  participants: [
145
- ...(participants?.map(p => {
162
+ ...participantsList?.map(p => {
146
163
  if (p.is_organizer) {
147
164
  return {
148
165
  name: p.name ?? p.email,
@@ -164,7 +181,7 @@ const NylasEditorTabs = proxyCustomElement(class NylasEditorTabs extends HTMLEle
164
181
  open_hours: participantOpenHours?.[p.email] ?? p.availability?.open_hours ?? [],
165
182
  },
166
183
  };
167
- }) ?? []),
184
+ }),
168
185
  ],
169
186
  event_booking: {
170
187
  title: title?.toString() ?? '',
@@ -344,22 +361,22 @@ const NylasEditorTabs = proxyCustomElement(class NylasEditorTabs extends HTMLEle
344
361
  render() {
345
362
  debug('[nylas-editor-tabs]', 'render', this.formState);
346
363
  const showParticipantsTab = localStorage.getItem('nylas') === 'Nylas Developer';
347
- return (h(Host, { key: 'ccfd780da5c6ce1688f60384796bbaa98fe6094d' }, h("form", { key: '2e5d1c16a5373a5b623869925a7cab71f52f98ce', onSubmit: this.formSubmissionHandler, class: "scheduler-editor", ref: el => (this.formRef = el), noValidate: true }, this.mode === 'app' ? (h("div", { class: "form-contents" }, h("div", { class: "tabs" }, h("button", { class: { tab: true, active: this.activeTab == 'eventInfo' }, onClick: e => this.setActiveTab(e, 'eventInfo') }, h("calendar-info-icon", { width: "16", height: "16" }), "Event Info"), h("button", { class: { tab: true, active: this.activeTab == 'availability' }, onClick: e => this.setActiveTab(e, 'availability') }, h("calendar-patterns-icon", { width: "16", height: "16" }), "Availability"), h("button", { class: { tab: true, active: this.activeTab == 'bookingOptions' }, onClick: e => this.setActiveTab(e, 'bookingOptions') }, h("flow-icon", { width: "16", height: "16" }), "Booking Options"), showParticipantsTab && (h("button", { class: { tab: true, active: this.activeTab == 'participants' }, onClick: e => this.setActiveTab(e, 'participants') }, h("people-icon", { width: "16", height: "16" }), "Participants"))), h("div", { class: "tab-content" }, h(TabContents, { formState: this.formState, activeTab: this.activeTab, calendars: this.calendars, id: this.selectedConfiguration?.id ?? 'new' })))) : (h("slot", null)), h("div", { key: 'f11d2767c5fc65ad7a72f346e9b3940b8151d7a3', class: "footer" }, h("div", { key: '858c5dac4d006f28b05347be3feba2d6dd336b15', class: "preview" }, this.schedulerPreviewLink !== '' && this.action === 'edit' && (h("button-component", { type: "button", disabled: this.isLoading, clickHandler: event => {
364
+ return (h(Host, { key: '13aad28cba8de3b30e60d7a26849d30ef2578bb5' }, h("form", { key: '31e835f74ca7728d597148a18c840e0791c34c89', onSubmit: this.formSubmissionHandler, class: "scheduler-editor", ref: el => (this.formRef = el), noValidate: true }, this.mode === 'app' ? (h("div", { class: "form-contents" }, h("div", { class: "tabs" }, h("button", { class: { tab: true, active: this.activeTab == 'eventInfo' }, onClick: e => this.setActiveTab(e, 'eventInfo') }, h("calendar-info-icon", { width: "16", height: "16" }), "Event Info"), h("button", { class: { tab: true, active: this.activeTab == 'availability' }, onClick: e => this.setActiveTab(e, 'availability') }, h("calendar-patterns-icon", { width: "16", height: "16" }), "Availability"), h("button", { class: { tab: true, active: this.activeTab == 'bookingOptions' }, onClick: e => this.setActiveTab(e, 'bookingOptions') }, h("flow-icon", { width: "16", height: "16" }), "Booking Options"), showParticipantsTab && (h("button", { class: { tab: true, active: this.activeTab == 'participants' }, onClick: e => this.setActiveTab(e, 'participants') }, h("people-icon", { width: "16", height: "16" }), "Participants"))), h("div", { class: "tab-content" }, h(TabContents, { formState: this.formState, activeTab: this.activeTab, calendars: this.calendars, id: this.selectedConfiguration?.id ?? 'new' })))) : (h("slot", null)), h("div", { key: 'e83274ed2d92f179c90564a21f80ba869d1033a2', class: "footer" }, h("div", { key: 'c661b7a0c024f7b8f1c916b55bc5784a10ee9958', class: "preview" }, this.schedulerPreviewLink !== '' && this.action === 'edit' && (h("button-component", { type: "button", disabled: this.isLoading, clickHandler: event => {
348
365
  event.preventDefault();
349
366
  const previewEvent = this.previewButtonClicked.emit(this.host);
350
367
  if (!previewEvent.defaultPrevented) {
351
368
  window.open(parsePreviewLink(this.schedulerPreviewLink, this.selectedConfiguration), '_blank');
352
369
  }
353
- }, variant: 'basic' }, "Preview"))), h("div", { key: 'c5225165887e64b467570a3f90222479fb259494', class: "buttons" }, h("p", { key: '50b2861f9c99e3dc91e58f77097fa753ba02cd1b', class: {
370
+ }, variant: 'basic' }, "Preview"))), h("div", { key: '78cb89dbbb6e124aaddf9b486834e81ab10ea70a', class: "buttons" }, h("p", { key: 'e07f651a081607471d067aa05a3858446725a6db', class: {
354
371
  'unsaved-changes': this.hasUnsavedChanges && !this.changesSaved,
355
372
  'saved-changes': this.changesSaved,
356
373
  'error': this.error !== '',
357
374
  'error-full-width': this.error !== '' && this.action === 'create',
358
- } }, this.error !== '' ? this.error : '', this.error == '' && this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : this.error == '' && this.changesSaved ? 'Changes saved!' : ''), h("button-component", { key: '9934c2cf6faf7e74b135add1728e3524bc29e13f', type: "button", disabled: this.isLoading, clickHandler: event => {
375
+ } }, this.error !== '' ? this.error : '', this.error == '' && this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : this.error == '' && this.changesSaved ? 'Changes saved!' : ''), h("button-component", { key: '66500ec7f10c2a5ecb6d98647766e2f31f030fe4', type: "button", disabled: this.isLoading, clickHandler: event => {
359
376
  event.preventDefault();
360
377
  this.cancelButtonClick.emit();
361
378
  this.error = '';
362
- }, variant: 'basic' }, "Cancel"), h("button-component", { key: '872f1a24204c38948d484b2bf99aa72d78ba7a37', type: "submit", disabled: this.isLoading }, this.isLoading ? (h("span", null, "Saving", h("loading-icon", null), ' ')) : this.action == 'create' ? ('Create') : ('Save changes')))))));
379
+ }, variant: 'basic' }, "Cancel"), h("button-component", { key: 'a816e4c9d7d1f53e09edf635f06c9a177bdcb15a', type: "submit", disabled: this.isLoading }, this.isLoading ? (h("span", null, "Saving", h("loading-icon", null), ' ')) : this.action == 'create' ? ('Create') : ('Save changes')))))));
363
380
  }
364
381
  get host() { return this; }
365
382
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"nylas-editor-tabs2.js","mappings":"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","names":[],"sources":["src/components/scheduler-editor/nylas-editor-tabs/tab-contents.tsx","src/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.scss?tag=nylas-editor-tabs&encapsulation=scoped","src/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.tsx"],"sourcesContent":["import { h } from '@stencil/core';\n\nexport type TabContentsProps = {\n id: string;\n formState: any;\n activeTab: string;\n calendars?: any[];\n};\n\nexport default function TabContents({ id, formState, activeTab, calendars }: TabContentsProps) {\n switch (activeTab) {\n case 'eventInfo':\n const eventTitle = formState.title;\n const eventDescription = formState.description;\n const eventDuration = parseInt(formState.duration);\n const location = formState.location;\n\n return (\n <div key={id}>\n <nylas-event-info>\n <div slot=\"inputs\">\n <nylas-event-title name=\"title\" eventTitle={eventTitle} exportparts=\"net, net__title, net__dropdown-content\" />\n <nylas-event-duration\n name=\"duration\"\n eventDurationMinutes={eventDuration}\n exportparts=\"ned, ned__dropdown, ned__dropdown-button, ned__dropdown-content, ned__input_dropdown, ned__input_dropdown-input, ned__input_dropdown-content\"\n />\n <nylas-event-location name=\"location\" eventLocation={location} exportparts=\"nel, nel__location, nel__dropdown, nel__dropdown-button, nel__dropdown-content\" />\n <nylas-event-description name=\"description\" eventDescription={eventDescription} exportparts=\"nedesc, nedesc__textarea\" />\n </div>\n </nylas-event-info>\n </div>\n );\n case 'availability':\n const openHours = formState.availability.openHours;\n const timezone = formState.availability.timezone ? formState.availability.timezone : Intl.DateTimeFormat().resolvedOptions().timeZone;\n const organizer = formState.participants?.find(p => p.is_organizer);\n const organizerEmail = organizer?.email ?? 'primary';\n const selectedCalendars = formState.calendarIds.length > 0 ? formState.calendarIds : [organizerEmail];\n const bookingCalendar = formState.bookingCalendar == 'primary' ? organizerEmail : formState.bookingCalendar;\n return (\n <div key={id}>\n <nylas-booking-calendar-picker\n name=\"booking-calendar\"\n calendars={calendars ?? []}\n defaultBookingCalendar={bookingCalendar}\n exportparts={'nbcp, nbcp__header, nbcp__input-label, nbcp__dropdown, nbcp__dropdown-button, nbcp__dropdown-content'}\n />\n <nylas-calendar-picker\n name=\"calendars\"\n calendars={calendars ?? []}\n defaultSelectedCalendars={selectedCalendars}\n exportparts={'ncp ncp__header, ncp__dropdown, ncp__dropdown-button, ncp__dropdown-content'}\n />\n <nylas-availability-picker\n name=\"availability\"\n openHours={openHours}\n defaultTimezone={timezone}\n exportparts={\n 'nap__header, nap__select-timezone, nap__select-timezone-button, nap__select-timezone-dropdown-content, nap__availability, nap__day, nap__time-ranges, nap__time-range, nap__add-time-range, nap__time-picker-container, nap__time-picker-input, nap__time-picker-times'\n }\n />\n </div>\n );\n case 'bookingOptions':\n return (\n <div key={id}>\n <nylas-buffer-time\n name=\"buffer-time\"\n buffer={formState.buffer}\n exportparts={\n 'nbt, nbt__header, nbt__body, nbt__dropdown-before, nbt__dropdown-button-before, nbt__dropdown-content-before, nbt__dropdown-after, nbt__dropdown-button-after, nbt__dropdown-content-after, nbt__preview'\n }\n />\n {/* <nylas-custom-booking-flow\n name=\"booking-type\"\n bookingType={formState.bookingType}\n exportparts={'ncbf, ncbf__header, ncbf__dropdown, ncbf__dropdown-button, ncbf__dropdown-content'}\n /> */}\n <nylas-event-limits>\n <div slot=\"inputs\">\n <nylas-min-booking-notice\n name=\"min-booking-notice\"\n minBookingNotice={formState.minBookingNotice}\n exportparts=\"nmbn, nmbn__number-dropdown, nmbn__number-dropdown-button, nmbn__number-dropdown-content, nmbn__period-dropdown, nmbn__period-dropdown-button, nmbn__period-dropdown-content\"\n />\n <nylas-limit-future-bookings\n name=\"limit-future-bookings\"\n availableDaysInFuture={formState.availableDaysInFuture}\n exportparts=\"nlfb, nlfb__number-dropdown, nlfb__number-dropdown-button, nlfb__number-dropdown-content, nlfb__period-dropdown, nlfb__period-dropdown-button, nlfb__period-dropdown-content\"\n />\n <nylas-min-cancellation-notice\n name=\"min-cancellation-notice\"\n minCancellationNotice={formState.minCancellationNotice}\n exportparts=\"nmcn, nmcn__number-dropdown, nmcn__number-dropdown-button, nmcn__number-dropdown-content, nmcn__period-dropdown, nmcn__period-dropdown-button, nmcn__period-dropdown-content\"\n />\n <nylas-cancellation-policy name=\"cancellation-policy\" cancellationPolicy={formState.cancellationPolicy} exportparts=\"ncpolicy, ncpolicy__textarea\" />\n </div>\n </nylas-event-limits>\n <nylas-timeslot-interval\n name=\"timeslot-interval\"\n eventDurationMinutes={parseInt(formState.duration)}\n exportparts=\"nti, nti__header, nti__input-label, nti__dropdown, nti__dropdown-button, nti__dropdown-content\"\n />\n <nylas-customize-booking-settings\n name=\"customize-booking-settings\"\n exportparts=\"ncbs, ncbs__header, ncbs__settings, ncbs__settings-div, ncbs__additional_guests, ncbs__cancellation_options, ncbs__rescheduling_options\"\n />\n </div>\n );\n case 'participants':\n return (\n <div key={id}>\n <nylas-additional-participants\n name=\"participants\"\n eventParticipants={formState.participants}\n exportparts=\"nap__title, nap__subtitle, nap__content, nap__input_group, nap__input_wrapper, nap__input, nap__remove-participant\"\n />\n <nylas-participants-custom-availability\n name=\"participant-custom-availability\"\n participants={formState.participants}\n exportparts=\"npca, npca__header, npca__content, npca__participant-container, npca__participant-title, npca__participant-toggle--container, npca__toggle-label, npca__toggle-input, npca__toggle-slider\"\n />\n </div>\n );\n }\n}\n","@import '../../../common/styles/variables.scss';\n@import '../../../common/mixins/buttons.scss';\n\n:host {\n display: block;\n @include default-css-variables;\n}\n\n.scheduler-editor {\n display: flex;\n flex-direction: column;\n .form-contents {\n height: 554px;\n display: grid;\n grid-template-columns: minmax(224px, 25%) 1fr;\n @media #{$mobile} {\n display: table-column-group;\n height: auto;\n }\n .tabs {\n display: flex;\n flex-direction: column;\n border-right: 1px solid var(--nylas-base-200);\n background-color: var(--nylas-base-25);\n .tab {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.5rem 1rem;\n color: var(--nylas-base-900);\n background: var(--nylas-base-0);\n border: none;\n height: 56px;\n font-family: var(--nylas-font-family);\n font-size: 16px;\n font-weight: 500;\n line-height: 24px;\n cursor: pointer;\n &:not(:first-of-type) {\n margin-top: 0.25rem;\n }\n &.active {\n font-weight: 600;\n background: var(--nylas-base-0);\n color: var(--nylas-primary);\n border-left: 4px solid var(--nylas-primary);\n box-shadow: 0px 1px 2px 0px #0000000f;\n box-shadow: 0px 1px 3px 0px #0000001a;\n }\n }\n }\n .tab-content {\n max-width: 692px;\n overflow-y: auto;\n nylas-event-info,\n nylas-event-limits {\n width: inherit;\n div[slot='inputs'] {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n }\n }\n }\n }\n}\n\n.footer {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 1rem;\n min-height: 80px;\n padding: 0 1rem;\n border-top: 1px solid var(--nylas-base-200);\n @media #{$mobile} {\n flex-direction: column;\n height: auto;\n }\n .preview {\n @media #{$mobile} {\n margin-top: 1rem;\n width: 100%;\n }\n }\n .buttons {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n justify-self: flex-end;\n gap: 1rem;\n @media #{$mobile} {\n flex-direction: column-reverse;\n width: 100%;\n }\n p {\n max-width: 524px;\n &.unsaved-changes {\n color: var(--nylas-base-600);\n }\n &.saved-changes {\n color: var(--nylas-success);\n }\n &.error {\n color: var(--nylas-error);\n }\n &.error-full-width {\n max-width: 660px;\n }\n }\n\n button-component {\n @media #{$mobile} {\n width: 100%;\n }\n }\n button {\n @include primary-button;\n width: 148px;\n span {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug, mergeDeep, parsePreviewLink } from '@/utils/utils';\nimport { BookingType, Calendar, Configuration, OpenHours, Participant } from '@nylas/core';\nimport { Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport TabContents from './tab-contents';\nimport { User } from '@/common/nylas-api-request';\nimport { DEFAULT_OPEN_HOURS } from '@/common/constants';\nimport { DataResponseReturnType } from '@/common/types';\n\ntype SchedulerEventDetail = {\n config: Partial<Configuration>;\n action: 'create' | 'edit';\n resetLoadingState?: (e: CustomEvent) => void;\n setError?: (error: Error) => void;\n};\n\n/**\n * The `nylas-editor-tabs` component is a UI component that displays the editor tabs for the scheduler editor.\n * @part nap__title - [nylas-additional-participants] The title of the component.\n * @part nap__subtitle - [nylas-additional-participants] The subtitle of the component.\n * @part nap__content - [nylas-additional-participants] The content of the component.\n * @part nap__input - [nylas-additional-participants] The input of the component.\n * @part nap__remove-participant - [nylas-additional-participants] The remove participant button of the component.\n * @part nap__add-participant - [nylas-additional-participants] The add participant button of the component.\n * @part nap__header - [nylas-availability-picker] The header of the availability picker\n * @part nap__select-timezone - [nylas-availability-picker] The timezone selection container\n * @part nap__select-timezone-button -[nylas-availability-picker] The timezone selection button\n * @part nap__select-timezone-dropdown-content -[nylas-availability-picker] The timezone selection dropdown content\n * @part nap__availability - [nylas-availability-picker] The availability container\n * @part nap__day - [nylas-availability-picker] The day container\n * @part nap__time-ranges - [nylas-availability-picker] The time ranges container\n * @part nap__time-range - [nylas-availability-picker] The time range container\n * @part nap__add-time-range - [nylas-availability-picker] The add time range button\n * @part nap__time-picker-container -[nylas-availability-picker] The time picker container\n * @part nap__time-picker-input - [nylas-availability-picker] The time picker input\n * @part nap__time-picker-times - [nylas-availability-picker] The time picker times\n * @part nbcp - [nylas-booking-calendar-picker] The booking calendar picker container\n * @part nbcp__header - [nylas-booking-calendar-picker] The header of the booking calendar picker\n * @part nbcp__input-label - [nylas-booking-calendar-picker] The input label of the booking calendar picker\n * @part nbcp__dropdown - [nylas-booking-calendar-picker] The dropdown container\n * @part nbcp__dropdown-button - [nylas-booking-calendar-picker] The dropdown button\n * @part nbcp__dropdown-content - [nylas-booking-calendar-picker] The dropdown content\n * @part nbt - [nylas-buffer-time] The buffer time container\n * @part nbt__header - [nylas-buffer-time] The header of the buffer time\n * @part nbt__body - [nylas-buffer-time] The body of the buffer time\n * @part nbt__dropdown-before - [nylas-buffer-time] The before buffer dropdown container\n * @part nbt__dropdown-button-before - [nylas-buffer-time] The before buffer dropdown button\n * @part nbt__dropdown-content-before - [nylas-buffer-time] The before buffer dropdown content\n * @part nbt__dropdown-after - [nylas-buffer-time] The after buffer dropdown container\n * @part nbt__dropdown-button-after - [nylas-buffer-time] The after buffer dropdown button\n * @part nbt__dropdown-content-after - [nylas-buffer-time] The after buffer dropdown content\n * @part nbt__preview - [nylas-buffer-time] The buffer time preview\n * @part ncp - [nylas-calendar-picker] The calendar picker container\n * @part ncp__header - [nylas-calendar-picker] The header of the calendar picker\n * @part ncp__dropdown - [nylas-calendar-picker] The dropdown container\n * @part ncp__dropdown-button - [nylas-calendar-picker] The dropdown button\n * @part ncp__dropdown-content - [nylas-calendar-picker] The dropdown content\n * @part ncbf - [nylas-custom-booking-flow] The custom booking flow container\n * @part ncbf__header - [nylas-custom-booking-flow] The header of the custom booking flow\n * @part ncbf__dropdown - [nylas-custom-booking-flow] The dropdown container\n * @part ncbf__dropdown-button - [nylas-custom-booking-flow] The dropdown button\n * @part ncbf__dropdown-content - [nylas-custom-booking-flow] The dropdown content\n * @part nedesc - [nylas-event-description] The event description container\n * @part nedesc__textarea - [nylas-event-description] The event description textarea\n * @part ned - [nylas-event-duration] The event duration container\n * @part ned__dropdown - [nylas-event-duration] The dropdown container for the duration increment\n * @part ned__dropdown-button - [nylas-event-duration] The dropdown button for the duration increment\n * @part ned__dropdown-content - [nylas-event-duration] The dropdown content for the duration increment\n * @part ned__input_dropdown - [nylas-event-duration] The input dropdown container for the duration minutes\n * @part ned__input_dropdown-input - [nylas-event-duration] The input for the duration minutes\n * @part ned__input_dropdown-content - [nylas-event-duration] The dropdown content for the input duration minutes\n * @part net - [nylas-event-title] The event title container\n * @part net__title - [nylas-event-title] The event title input\n * @part net__dropdown-content - [nylas-event-title] The token options container\n * @part nlfb - [nylas-limit-future-bookings] The limit future bookings container\n * @part nlfb__number-dropdown - [nylas-limit-future-bookings] The number dropdown container\n * @part nlfb__number-dropdown-button - [nylas-limit-future-bookings] The number dropdown button\n * @part nlfb__number-dropdown-content - [nylas-limit-future-bookings] The number dropdown content\n * @part nlfb__period-dropdown - [nylas-limit-future-bookings] The period dropdown container\n * @part nlfb__period-dropdown-button - [nylas-limit-future-bookings] The period dropdown button\n * @part nlfb__period-dropdown-content - [nylas-limit-future-bookings] The period dropdown content\n * @part nel - [nylas-event-location] The event location container\n * @part nel__location - [nylas-event-location] The event location input\n * @part nel__dropdown - [nylas-event-location] The dropdown container\n * @part nel__dropdown-button - [nylas-event-location] The dropdown button\n * @part nel__dropdown-content - [nylas-event-location] The dropdown content\n * @part nmbn - [nylas-min-booking-notice] The minimum booking notice container\n * @part nmbn__number-dropdown - [nylas-min-booking-notice] The number dropdown container\n * @part nmbn__number-dropdown-button - [nylas-min-booking-notice] The number dropdown button\n * @part nmbn__number-dropdown-content -[nylas-min-booking-notice] The number dropdown content\n * @part nmbn__period-dropdown - [nylas-min-booking-notice] The period dropdown container\n * @part nmbn__period-dropdown-button - [nylas-min-booking-notice] The period dropdown button\n * @part nmbn__period-dropdown-content - [nylas-min-booking-notice] The period dropdown content\n * @part nmcn - [nylas-min-cancellation-notice] The minimum cancellation notice container\n * @part nmcn__number-dropdown - [nylas-min-cancellation-notice] The number dropdown container\n * @part nmcn__number-dropdown-button - [nylas-min-cancellation-notice] The number dropdown button\n * @part nmcn__number-dropdown-content - [nylas-min-cancellation-notice] The number dropdown content\n * @part nmcn__period-dropdown - [nylas-min-cancellation-notice] The period dropdown container\n * @part nmcn__period-dropdown-button - [nylas-min-cancellation-notice] The period dropdown button\n * @part nmcn__period-dropdown-content - [nylas-min-cancellation-notice] The period dropdown content\n * @part ncpolicy - [nylas-cancellation-policy] The cancellation policy container\n * @part ncpolicy__textarea - [nylas-cancellation-policy] The cancellation policy textarea\n * @part nti - [nylas-timeslot-interval] The timeslot interval container\n * @part nti__header - [nylas-timeslot-interval] The header of the timeslot interval picker\n * @part nti__input-label - [nylas-timeslot-interval] The input label of the timeslot interval picker\n * @part nti__dropdown - [nylas-timeslot-interval] The dropdown container\n * @part nti__dropdown-button - [nylas-timeslot-interval] The dropdown button\n * @part nti__dropdown-content - [nylas-timeslot-interval] The dropdown content\n * @part npca - [nylas-participants-custom-availability] The participants custom availability container\n * @part npca__header - [nylas-participants-custom-availability] The header of the participants custom availability\n * @part npca__content - [nylas-participants-custom-availability] The content of the participants custom availability\n * @part npca__participant-container - [nylas-participants-custom-availability] The participant container\n * @part npca__participant-title - [nylas-participants-custom-availability] The participant title\n * @part npca__participant-toggle--container - [nylas-participants-custom-availability] The participant toggle container\n * @part npca__toggle-label - [nylas-participants-custom-availability] The toggle label\n * @part npca__toggle-input - [nylas-participants-custom-availability] The toggle input\n * @part npca__toggle-slider - [nylas-participants-custom-availability] The toggle slider\n * @part ncbs - [nylas-customize-booking-settings] The booking calendar picker container\n * @part ncbs__header - [nylas-customize-booking-settings] The header of the booking calendar picker\n * @part ncbs__settings - [nylas-customize-booking-settings] The settings container\n * @part ncbs__settings-div - [nylas-customize-booking-settings] The div inside the settings container that contains the checkbox and tooltip for each setting\n * @part ncbs__additional_guests - [nylas-customize-booking-settings] The additional guests setting\n * @part ncbs__cancellation_options - [nylas-customize-booking-settings] The cancellation options setting\n * @part ncbs__rescheduling_options - [nylas-customize-booking-settings] The rescheduling options setting\n */\n@Component({\n tag: 'nylas-editor-tabs',\n styleUrl: 'nylas-editor-tabs.scss',\n scoped: true,\n})\nexport class NylasEditorTabs {\n /**\n * The form reference to access the form data.\n */\n private formRef!: HTMLFormElement;\n /**\n * The host element.\n */\n @Element() host!: HTMLNylasEditorTabsElement;\n /**\n * The list of calendars to use in the editor when configuring availability.\n */\n @Prop() calendars?: Calendar[];\n /**\n * The selected configuration to use in the editor when editing an existing configuration or creating a new one.\n */\n @Prop() selectedConfiguration?: Configuration;\n\n /**\n * The current logged in user.\n */\n @Prop() currentUser?: User;\n /**\n * The scheduler preview link to use when the user clicks on the preview button.\n * You can use a placeholder `{config.id}` to replace the configuration id anywhere in the link.\n */\n @Prop({ attribute: 'scheduler-preview-link' }) schedulerPreviewLink: string = '';\n /**\n * The mode of the editor.\n * - `app`: The editor is used as a standalone app.\n * - `composable`: The editor is used as a composable component.\n */\n @Prop() mode?: 'app' | 'composable' = 'app';\n /**\n * The action to perform in the editor.\n * - `create`: Create a new configuration.\n * - `edit`: Edit an existing configuration.\n */\n @State() action: 'create' | 'edit' = 'create';\n /**\n * The active tab in the editor.\n */\n @State() activeTab: string = 'eventInfo';\n /**\n * The loading state of the editor.\n */\n @State() isLoading: boolean = false;\n /**\n * The unsaved changes state of the editor.\n */\n @State() hasUnsavedChanges: boolean = false;\n /**\n * The changes saved state of the editor.\n */\n @State() changesSaved: boolean = false;\n /**\n * The form state of the editor.\n */\n @State() formState: Partial<{\n title: string;\n description: string;\n duration: string;\n availability?: {\n timezone: string;\n openHours?: OpenHours[];\n };\n calendarIds: string[];\n participants?: Participant[];\n participantOpenHours?: { [key: string]: OpenHours[] };\n bookingCalendar?: string;\n location?: string;\n bookingType?: string;\n buffer?: { before: number; after: number };\n cancellationPolicy?: string;\n availableDaysInFuture?: number;\n minCancellationNotice?: number;\n minBookingNotice?: number;\n timeslotInterval?: {\n interval: number;\n roundTo?: number;\n };\n additionalGuestsHidden?: boolean;\n hideCancellationOptions?: boolean;\n hideReschedulingOptions?: boolean;\n }> = {};\n /**\n * The error state of the editor.\n */\n @State() error?: string = '';\n /**\n * Event emitted when the configuration is changed. This fires for both create and edit actions.\n */\n @Event() schedulerConfigChanged!: EventEmitter<SchedulerEventDetail>;\n /**\n * Event emitted when the user clicks the cancel button.\n */\n @Event() cancelButtonClick!: EventEmitter<void>;\n /**\n * Event emitted on form submission.\n */\n @Event() formSubmitted!: EventEmitter<void>;\n /**\n * Event emitted when the user clicks the preview button.\n */\n @Event() previewButtonClicked!: EventEmitter<HTMLNylasEditorTabsElement>;\n\n @Watch('selectedConfiguration')\n configChangedHandler(newConfig: Configuration) {\n debug('[nylas-editor-tabs]', 'configChangedHandler', newConfig, this.selectedConfiguration);\n this.formState = {\n ...this.getFormStateFromConfig(newConfig),\n };\n\n if (newConfig.id) {\n this.action = 'edit';\n } else {\n this.action = 'create';\n }\n }\n\n connectedCallback() {\n debug('[nylas-editor-tabs]', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('[nylas-editor-tabs]', 'componentWillLoad');\n this.formState = this.getFormStateFromConfig(this.selectedConfiguration);\n }\n\n componentDidLoad() {\n debug('[nylas-editor-tabs]', 'componentDidLoad');\n }\n\n disconnectedCallback() {\n debug('[nylas-editor-tabs]', 'disconnectedCallback');\n }\n\n @Listen('valueChanged')\n handleValueChanged(event: CustomEvent) {\n debug('[nylas-editor-tabs]', 'handleValueChanged', event);\n const { name, value } = event.detail;\n this.setFormState(value, name);\n this.formState = { ...this.formState };\n this.hasUnsavedChanges = true;\n this.error = '';\n }\n\n getFormStateFromConfig(config?: Configuration) {\n const organizerParticipant = config?.participants?.find(p => p.is_organizer);\n return {\n title: config?.event_booking?.title ?? '',\n description: config?.event_booking?.description ?? '',\n duration: config?.availability?.duration_minutes?.toString() ?? '30',\n availability: {\n timezone: config?.event_booking?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n openHours: config?.availability?.availability_rules?.default_open_hours ?? DEFAULT_OPEN_HOURS,\n },\n calendarIds: organizerParticipant?.availability?.calendar_ids ?? [],\n participants: config?.participants ?? [],\n bookingCalendar: organizerParticipant?.booking?.calendar_id ?? organizerParticipant?.email ?? '',\n location: config?.event_booking?.location ?? '',\n bookingType: config?.event_booking?.booking_type ?? 'booking',\n buffer: config?.availability?.availability_rules?.buffer ?? { before: 0, after: 0 },\n cancellationPolicy: config?.scheduler?.cancellation_policy ?? '',\n availableDaysInFuture: config?.scheduler?.available_days_in_future ?? 30,\n minCancellationNotice: config?.scheduler?.min_cancellation_notice ?? 0,\n minBookingNotice: config?.scheduler?.min_booking_notice ?? 60,\n timeslotInterval: {\n interval: config?.availability?.interval_minutes ?? config?.availability?.duration_minutes ?? 10,\n roundTo: config?.availability?.round_to,\n },\n additionalGuestsHidden: config?.scheduler?.hide_additional_guests ?? false,\n hideCancellationOptions: config?.scheduler?.hide_cancellation_options ?? false,\n hideReschedulingOptions: config?.scheduler?.hide_rescheduling_options ?? false,\n };\n }\n\n setFormState(value, key) {\n switch (key) {\n case 'title':\n this.formState.title = value.toString();\n break;\n case 'description':\n this.formState.description = value.toString();\n break;\n case 'duration':\n this.formState.duration = value.toString();\n break;\n case 'availability':\n this.formState.availability = JSON.parse(value.toString());\n break;\n case 'participants':\n this.formState.participants = JSON.parse(value.toString());\n break;\n case 'calendars':\n this.formState.calendarIds = value.toString().split(',');\n break;\n case 'booking-calendar':\n this.formState.bookingCalendar = value.toString();\n break;\n case 'location':\n this.formState.location = value.toString();\n break;\n case 'booking-type':\n this.formState.bookingType = value.toString();\n break;\n case 'buffer-time':\n this.formState.buffer = JSON.parse(value.toString());\n break;\n case 'limit-future-bookings':\n this.formState.availableDaysInFuture = parseInt(value.toString());\n break;\n case 'min-cancellation-notice':\n this.formState.minCancellationNotice = parseInt(value.toString());\n break;\n case 'min-booking-notice':\n this.formState.minBookingNotice = parseInt(value.toString());\n break;\n case 'cancellation-policy':\n this.formState.cancellationPolicy = value.toString();\n break;\n case 'timeslot-interval':\n this.formState.timeslotInterval = JSON.parse(value.toString());\n break;\n case 'customize-booking-settings':\n const settings = JSON.parse(value.toString());\n this.formState.additionalGuestsHidden = settings.additionalGuestsHidden;\n this.formState.hideCancellationOptions = settings.hideCancellationOptions;\n this.formState.hideReschedulingOptions = settings.hideReschedulingOptions;\n break;\n case 'participant-custom-availability':\n const participantOpenHours = JSON.parse(value.toString());\n this.formState.participantOpenHours = participantOpenHours;\n break;\n }\n }\n\n updateFormState() {\n const formData = new FormData(this.formRef);\n formData.forEach((value, key) => {\n this.setFormState(value, key);\n });\n\n this.formState = { ...this.formState };\n return this.formState;\n }\n\n setActiveTab(e: Event, tabName: string) {\n e.preventDefault();\n this.updateFormState();\n this.activeTab = tabName;\n }\n\n setError = (error: Error) => {\n this.error = error.message;\n };\n\n formSubmissionHandler = async (event: Event) => {\n event.preventDefault();\n this.formSubmitted.emit();\n const valid = this.formRef.checkValidity();\n if (!valid) {\n return;\n }\n this.isLoading = true;\n this.hasUnsavedChanges = false;\n const formState = this.updateFormState();\n const {\n title,\n description,\n duration,\n availability,\n calendarIds,\n bookingCalendar,\n location,\n bookingType,\n buffer,\n availableDaysInFuture,\n minCancellationNotice,\n minBookingNotice,\n cancellationPolicy,\n timeslotInterval,\n additionalGuestsHidden,\n hideCancellationOptions,\n hideReschedulingOptions,\n participants,\n participantOpenHours,\n } = formState;\n const durationMinutes = duration ? parseInt(duration) : 30;\n const configObject: Partial<Configuration> = {\n ...(this.selectedConfiguration?.id && { id: this.selectedConfiguration.id }),\n version: this.selectedConfiguration?.version ?? '1.0.0',\n availability: {\n duration_minutes: durationMinutes,\n interval_minutes: timeslotInterval?.interval ?? durationMinutes,\n round_to: timeslotInterval?.roundTo,\n availability_rules: {\n availability_method: this.selectedConfiguration?.availability?.availability_rules?.availability_method ?? 'collective',\n buffer: buffer || { before: 0, after: 0 },\n default_open_hours: availability?.openHours ?? this.selectedConfiguration?.availability?.availability_rules?.default_open_hours ?? DEFAULT_OPEN_HOURS,\n round_robin_group_id: this.selectedConfiguration?.availability?.availability_rules?.round_robin_group_id ?? '',\n },\n },\n participants: [\n ...(participants?.map(p => {\n if (p.is_organizer) {\n return {\n name: p.name ?? p.email,\n email: p.email,\n is_organizer: true,\n availability: {\n calendar_ids: calendarIds?.length ? calendarIds : ['primary'],\n open_hours: participantOpenHours?.[p.email] ?? p.availability?.open_hours ?? [],\n },\n booking: {\n calendar_id: bookingCalendar && bookingCalendar !== '' ? bookingCalendar : 'primary',\n },\n };\n }\n return {\n ...p,\n availability: {\n calendar_ids: p.availability?.calendar_ids ?? ['primary'],\n open_hours: participantOpenHours?.[p.email] ?? p.availability?.open_hours ?? [],\n },\n };\n }) ?? []),\n ],\n event_booking: {\n title: title?.toString() ?? '',\n description: description?.toString() ?? '',\n location: location?.toString() ?? '',\n booking_type: (bookingType?.toString() as BookingType) ?? 'booking',\n timezone: availability?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n },\n scheduler: {\n cancellation_policy: cancellationPolicy ?? '',\n available_days_in_future: availableDaysInFuture ?? 30,\n min_cancellation_notice: minCancellationNotice ?? 0,\n min_booking_notice: minBookingNotice ?? 60,\n hide_additional_guests: additionalGuestsHidden ?? false,\n hide_cancellation_options: hideCancellationOptions ?? false,\n hide_rescheduling_options: hideReschedulingOptions ?? false,\n },\n };\n\n const configObjectWithDeveloperSettings = mergeDeep(configObject, this.selectedConfiguration);\n\n const finalConfig = this.action === 'create' ? configObjectWithDeveloperSettings : configObject;\n\n const resetLoadingState = (_e: CustomEvent) => {\n this.isLoading = false;\n this.changesSaved = true;\n setTimeout(() => {\n this.changesSaved = false;\n }, 5000);\n };\n this.schedulerConfigChanged.emit({ config: finalConfig, resetLoadingState, setError: this.setError, action: this.action });\n };\n\n @RegisterComponent<NylasEditorTabs, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-editor-tabs',\n stateToProps: new Map([\n ['schedulerConfig.calendars', 'calendars'],\n ['schedulerConfig.selectedConfiguration', 'selectedConfiguration'],\n ['schedulerConfig.currentUser', 'currentUser'],\n ]),\n eventToProps: {\n schedulerConfigChanged: async (event: CustomEvent<SchedulerEventDetail>, nylasSchedulerConfigConnector: NylasSchedulerConfigConnector) => {\n const { resetLoadingState, setError, action, config } = event.detail;\n const checkForErrors = (response: DataResponseReturnType) => {\n const [data, error] = response;\n if (!data && error && setError) {\n setError(error as Error);\n }\n if (resetLoadingState) {\n resetLoadingState(event);\n }\n };\n\n // If we have an ID, we are updating an existing configuration\n if (action === 'edit') {\n const response = await nylasSchedulerConfigConnector.schedulerConfig.updateConfiguration(config);\n checkForErrors(response);\n } else {\n const response = await nylasSchedulerConfigConnector.schedulerConfig.createConfiguration(config);\n checkForErrors(response);\n }\n },\n cancelButtonClick: async (_, nylasSchedulerConfigConnector) => {\n nylasSchedulerConfigConnector.schedulerConfigStore.state.action = null;\n },\n previewButtonClicked: async (_, nylasSchedulerConfigConnector) => {\n debug('[nylas-editor-tabs]', 'previewButtonClicked', nylasSchedulerConfigConnector);\n },\n formSubmitted: async (_, nylasSchedulerConfigConnector) => {\n debug('[nylas-editor-tabs]', 'formSubmitted', nylasSchedulerConfigConnector);\n },\n },\n localPropsToProp: new Map([['schedulerPreviewLink', 'schedulerPreviewLink']]),\n fireRegisterEvent: true,\n })\n render() {\n debug('[nylas-editor-tabs]', 'render', this.formState);\n // TODO: Remove this check when the feature is ready to be released\n const showParticipantsTab = localStorage.getItem('nylas') === 'Nylas Developer';\n return (\n <Host>\n <form onSubmit={this.formSubmissionHandler} class=\"scheduler-editor\" ref={el => (this.formRef = el as HTMLFormElement)} noValidate>\n {this.mode === 'app' ? (\n <div class=\"form-contents\">\n <div class=\"tabs\">\n <button class={{ tab: true, active: this.activeTab == 'eventInfo' }} onClick={e => this.setActiveTab(e, 'eventInfo')}>\n <calendar-info-icon width=\"16\" height=\"16\" />\n Event Info\n </button>\n <button class={{ tab: true, active: this.activeTab == 'availability' }} onClick={e => this.setActiveTab(e, 'availability')}>\n <calendar-patterns-icon width=\"16\" height=\"16\" />\n Availability\n </button>\n <button class={{ tab: true, active: this.activeTab == 'bookingOptions' }} onClick={e => this.setActiveTab(e, 'bookingOptions')}>\n <flow-icon width=\"16\" height=\"16\" />\n Booking Options\n </button>\n {showParticipantsTab && (\n <button class={{ tab: true, active: this.activeTab == 'participants' }} onClick={e => this.setActiveTab(e, 'participants')}>\n <people-icon width=\"16\" height=\"16\" />\n Participants\n </button>\n )}\n </div>\n <div class=\"tab-content\">\n <TabContents formState={this.formState} activeTab={this.activeTab} calendars={this.calendars} id={this.selectedConfiguration?.id ?? 'new'} />\n </div>\n </div>\n ) : (\n <slot></slot>\n )}\n\n <div class=\"footer\">\n <div class=\"preview\">\n {this.schedulerPreviewLink !== '' && this.action === 'edit' && (\n <button-component\n type=\"button\"\n disabled={this.isLoading}\n clickHandler={event => {\n event.preventDefault();\n const previewEvent = this.previewButtonClicked.emit(this.host);\n if (!previewEvent.defaultPrevented) {\n window.open(parsePreviewLink(this.schedulerPreviewLink, this.selectedConfiguration), '_blank');\n }\n }}\n variant={'basic'}\n >\n Preview\n </button-component>\n )}\n </div>\n <div class=\"buttons\">\n <p\n class={{\n 'unsaved-changes': this.hasUnsavedChanges && !this.changesSaved,\n 'saved-changes': this.changesSaved,\n 'error': this.error !== '',\n 'error-full-width': this.error !== '' && this.action === 'create',\n }}\n >\n {this.error !== '' ? this.error : ''}\n {this.error == '' && this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : this.error == '' && this.changesSaved ? 'Changes saved!' : ''}\n </p>\n <button-component\n type=\"button\"\n disabled={this.isLoading}\n clickHandler={event => {\n event.preventDefault();\n this.cancelButtonClick.emit();\n this.error = '';\n }}\n variant={'basic'}\n >\n Cancel\n </button-component>\n <button-component type=\"submit\" disabled={this.isLoading}>\n {this.isLoading ? (\n <span>\n Saving\n <loading-icon />{' '}\n </span>\n ) : this.action == 'create' ? (\n 'Create'\n ) : (\n 'Save changes'\n )}\n </button-component>\n </div>\n </div>\n </form>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nylas-editor-tabs2.js","mappings":"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","names":[],"sources":["src/components/scheduler-editor/nylas-editor-tabs/tab-contents.tsx","src/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.scss?tag=nylas-editor-tabs&encapsulation=scoped","src/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.tsx"],"sourcesContent":["import { h } from '@stencil/core';\n\nexport type TabContentsProps = {\n id: string;\n formState: any;\n activeTab: string;\n calendars?: any[];\n};\n\nexport default function TabContents({ id, formState, activeTab, calendars }: TabContentsProps) {\n switch (activeTab) {\n case 'eventInfo':\n const eventTitle = formState.title;\n const eventDescription = formState.description;\n const eventDuration = parseInt(formState.duration);\n const location = formState.location;\n\n return (\n <div key={id}>\n <nylas-event-info>\n <div slot=\"inputs\">\n <nylas-event-title name=\"title\" eventTitle={eventTitle} exportparts=\"net, net__title, net__dropdown-content\" />\n <nylas-event-duration\n name=\"duration\"\n eventDurationMinutes={eventDuration}\n exportparts=\"ned, ned__dropdown, ned__dropdown-button, ned__dropdown-content, ned__input_dropdown, ned__input_dropdown-input, ned__input_dropdown-content\"\n />\n <nylas-event-location name=\"location\" eventLocation={location} exportparts=\"nel, nel__location, nel__dropdown, nel__dropdown-button, nel__dropdown-content\" />\n <nylas-event-description name=\"description\" eventDescription={eventDescription} exportparts=\"nedesc, nedesc__textarea\" />\n </div>\n </nylas-event-info>\n </div>\n );\n case 'availability':\n const openHours = formState.availability.openHours;\n const timezone = formState.availability.timezone ? formState.availability.timezone : Intl.DateTimeFormat().resolvedOptions().timeZone;\n const organizer = formState.participants?.find(p => p.is_organizer);\n const organizerEmail = organizer?.email ?? 'primary';\n const selectedCalendars = formState.calendarIds.length > 0 ? formState.calendarIds : [organizerEmail];\n const bookingCalendar = formState.bookingCalendar == 'primary' ? organizerEmail : formState.bookingCalendar;\n return (\n <div key={id}>\n <nylas-booking-calendar-picker\n name=\"booking-calendar\"\n calendars={calendars ?? []}\n defaultBookingCalendar={bookingCalendar}\n exportparts={'nbcp, nbcp__header, nbcp__input-label, nbcp__dropdown, nbcp__dropdown-button, nbcp__dropdown-content'}\n />\n <nylas-calendar-picker\n name=\"calendars\"\n calendars={calendars ?? []}\n defaultSelectedCalendars={selectedCalendars}\n exportparts={'ncp ncp__header, ncp__dropdown, ncp__dropdown-button, ncp__dropdown-content'}\n />\n <nylas-availability-picker\n name=\"availability\"\n openHours={openHours}\n defaultTimezone={timezone}\n exportparts={\n 'nap__header, nap__select-timezone, nap__select-timezone-button, nap__select-timezone-dropdown-content, nap__availability, nap__day, nap__time-ranges, nap__time-range, nap__add-time-range, nap__time-picker-container, nap__time-picker-input, nap__time-picker-times'\n }\n />\n </div>\n );\n case 'bookingOptions':\n return (\n <div key={id}>\n <nylas-buffer-time\n name=\"buffer-time\"\n buffer={formState.buffer}\n exportparts={\n 'nbt, nbt__header, nbt__body, nbt__dropdown-before, nbt__dropdown-button-before, nbt__dropdown-content-before, nbt__dropdown-after, nbt__dropdown-button-after, nbt__dropdown-content-after, nbt__preview'\n }\n />\n {/* <nylas-custom-booking-flow\n name=\"booking-type\"\n bookingType={formState.bookingType}\n exportparts={'ncbf, ncbf__header, ncbf__dropdown, ncbf__dropdown-button, ncbf__dropdown-content'}\n /> */}\n <nylas-event-limits>\n <div slot=\"inputs\">\n <nylas-min-booking-notice\n name=\"min-booking-notice\"\n minBookingNotice={formState.minBookingNotice}\n exportparts=\"nmbn, nmbn__number-dropdown, nmbn__number-dropdown-button, nmbn__number-dropdown-content, nmbn__period-dropdown, nmbn__period-dropdown-button, nmbn__period-dropdown-content\"\n />\n <nylas-limit-future-bookings\n name=\"limit-future-bookings\"\n availableDaysInFuture={formState.availableDaysInFuture}\n exportparts=\"nlfb, nlfb__number-dropdown, nlfb__number-dropdown-button, nlfb__number-dropdown-content, nlfb__period-dropdown, nlfb__period-dropdown-button, nlfb__period-dropdown-content\"\n />\n <nylas-min-cancellation-notice\n name=\"min-cancellation-notice\"\n minCancellationNotice={formState.minCancellationNotice}\n exportparts=\"nmcn, nmcn__number-dropdown, nmcn__number-dropdown-button, nmcn__number-dropdown-content, nmcn__period-dropdown, nmcn__period-dropdown-button, nmcn__period-dropdown-content\"\n />\n <nylas-cancellation-policy name=\"cancellation-policy\" cancellationPolicy={formState.cancellationPolicy} exportparts=\"ncpolicy, ncpolicy__textarea\" />\n </div>\n </nylas-event-limits>\n <nylas-timeslot-interval\n name=\"timeslot-interval\"\n eventDurationMinutes={parseInt(formState.duration)}\n exportparts=\"nti, nti__header, nti__input-label, nti__dropdown, nti__dropdown-button, nti__dropdown-content\"\n />\n <nylas-customize-booking-settings\n name=\"customize-booking-settings\"\n exportparts=\"ncbs, ncbs__header, ncbs__settings, ncbs__settings-div, ncbs__additional_guests, ncbs__cancellation_options, ncbs__rescheduling_options\"\n />\n </div>\n );\n case 'participants':\n return (\n <div key={id}>\n <nylas-additional-participants\n name=\"participants\"\n eventParticipants={formState.participants}\n exportparts=\"nap__title, nap__subtitle, nap__content, nap__input_group, nap__input_wrapper, nap__input, nap__remove-participant\"\n />\n <nylas-participants-custom-availability\n name=\"participant-custom-availability\"\n participants={formState.participants}\n exportparts=\"npca, npca__header, npca__content, npca__participant-container, npca__participant-title, npca__participant-toggle--container, npca__toggle-label, npca__toggle-input, npca__toggle-slider\"\n />\n </div>\n );\n }\n}\n","@import '../../../common/styles/variables.scss';\n@import '../../../common/mixins/buttons.scss';\n\n:host {\n display: block;\n @include default-css-variables;\n}\n\n.scheduler-editor {\n display: flex;\n flex-direction: column;\n .form-contents {\n height: 554px;\n display: grid;\n grid-template-columns: minmax(224px, 25%) 1fr;\n @media #{$mobile} {\n display: table-column-group;\n height: auto;\n }\n .tabs {\n display: flex;\n flex-direction: column;\n border-right: 1px solid var(--nylas-base-200);\n background-color: var(--nylas-base-25);\n .tab {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.5rem 1rem;\n color: var(--nylas-base-900);\n background: var(--nylas-base-0);\n border: none;\n height: 56px;\n font-family: var(--nylas-font-family);\n font-size: 16px;\n font-weight: 500;\n line-height: 24px;\n cursor: pointer;\n &:not(:first-of-type) {\n margin-top: 0.25rem;\n }\n &.active {\n font-weight: 600;\n background: var(--nylas-base-0);\n color: var(--nylas-primary);\n border-left: 4px solid var(--nylas-primary);\n box-shadow: 0px 1px 2px 0px #0000000f;\n box-shadow: 0px 1px 3px 0px #0000001a;\n }\n }\n }\n .tab-content {\n max-width: 692px;\n overflow-y: auto;\n nylas-event-info,\n nylas-event-limits {\n width: inherit;\n div[slot='inputs'] {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n }\n }\n }\n }\n}\n\n.footer {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 1rem;\n min-height: 80px;\n padding: 0 1rem;\n border-top: 1px solid var(--nylas-base-200);\n @media #{$mobile} {\n flex-direction: column;\n height: auto;\n }\n .preview {\n @media #{$mobile} {\n margin-top: 1rem;\n width: 100%;\n }\n }\n .buttons {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n justify-self: flex-end;\n gap: 1rem;\n @media #{$mobile} {\n flex-direction: column-reverse;\n width: 100%;\n }\n p {\n max-width: 524px;\n &.unsaved-changes {\n color: var(--nylas-base-600);\n }\n &.saved-changes {\n color: var(--nylas-success);\n }\n &.error {\n color: var(--nylas-error);\n }\n &.error-full-width {\n max-width: 660px;\n }\n }\n\n button-component {\n @media #{$mobile} {\n width: 100%;\n }\n }\n button {\n @include primary-button;\n width: 148px;\n span {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug, mergeDeep, parsePreviewLink } from '@/utils/utils';\nimport { BookingType, Calendar, Configuration, OpenHours, Participant } from '@nylas/core';\nimport { Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport TabContents from './tab-contents';\nimport { User } from '@/common/nylas-api-request';\nimport { DEFAULT_OPEN_HOURS } from '@/common/constants';\nimport { DataResponseReturnType } from '@/common/types';\n\ntype SchedulerEventDetail = {\n config: Partial<Configuration>;\n action: 'create' | 'edit';\n resetLoadingState?: (e: CustomEvent) => void;\n setError?: (error: Error) => void;\n};\n\n/**\n * The `nylas-editor-tabs` component is a UI component that displays the editor tabs for the scheduler editor.\n * @part nap__title - [nylas-additional-participants] The title of the component.\n * @part nap__subtitle - [nylas-additional-participants] The subtitle of the component.\n * @part nap__content - [nylas-additional-participants] The content of the component.\n * @part nap__input - [nylas-additional-participants] The input of the component.\n * @part nap__remove-participant - [nylas-additional-participants] The remove participant button of the component.\n * @part nap__add-participant - [nylas-additional-participants] The add participant button of the component.\n * @part nap__header - [nylas-availability-picker] The header of the availability picker\n * @part nap__select-timezone - [nylas-availability-picker] The timezone selection container\n * @part nap__select-timezone-button -[nylas-availability-picker] The timezone selection button\n * @part nap__select-timezone-dropdown-content -[nylas-availability-picker] The timezone selection dropdown content\n * @part nap__availability - [nylas-availability-picker] The availability container\n * @part nap__day - [nylas-availability-picker] The day container\n * @part nap__time-ranges - [nylas-availability-picker] The time ranges container\n * @part nap__time-range - [nylas-availability-picker] The time range container\n * @part nap__add-time-range - [nylas-availability-picker] The add time range button\n * @part nap__time-picker-container -[nylas-availability-picker] The time picker container\n * @part nap__time-picker-input - [nylas-availability-picker] The time picker input\n * @part nap__time-picker-times - [nylas-availability-picker] The time picker times\n * @part nbcp - [nylas-booking-calendar-picker] The booking calendar picker container\n * @part nbcp__header - [nylas-booking-calendar-picker] The header of the booking calendar picker\n * @part nbcp__input-label - [nylas-booking-calendar-picker] The input label of the booking calendar picker\n * @part nbcp__dropdown - [nylas-booking-calendar-picker] The dropdown container\n * @part nbcp__dropdown-button - [nylas-booking-calendar-picker] The dropdown button\n * @part nbcp__dropdown-content - [nylas-booking-calendar-picker] The dropdown content\n * @part nbt - [nylas-buffer-time] The buffer time container\n * @part nbt__header - [nylas-buffer-time] The header of the buffer time\n * @part nbt__body - [nylas-buffer-time] The body of the buffer time\n * @part nbt__dropdown-before - [nylas-buffer-time] The before buffer dropdown container\n * @part nbt__dropdown-button-before - [nylas-buffer-time] The before buffer dropdown button\n * @part nbt__dropdown-content-before - [nylas-buffer-time] The before buffer dropdown content\n * @part nbt__dropdown-after - [nylas-buffer-time] The after buffer dropdown container\n * @part nbt__dropdown-button-after - [nylas-buffer-time] The after buffer dropdown button\n * @part nbt__dropdown-content-after - [nylas-buffer-time] The after buffer dropdown content\n * @part nbt__preview - [nylas-buffer-time] The buffer time preview\n * @part ncp - [nylas-calendar-picker] The calendar picker container\n * @part ncp__header - [nylas-calendar-picker] The header of the calendar picker\n * @part ncp__dropdown - [nylas-calendar-picker] The dropdown container\n * @part ncp__dropdown-button - [nylas-calendar-picker] The dropdown button\n * @part ncp__dropdown-content - [nylas-calendar-picker] The dropdown content\n * @part ncbf - [nylas-custom-booking-flow] The custom booking flow container\n * @part ncbf__header - [nylas-custom-booking-flow] The header of the custom booking flow\n * @part ncbf__dropdown - [nylas-custom-booking-flow] The dropdown container\n * @part ncbf__dropdown-button - [nylas-custom-booking-flow] The dropdown button\n * @part ncbf__dropdown-content - [nylas-custom-booking-flow] The dropdown content\n * @part nedesc - [nylas-event-description] The event description container\n * @part nedesc__textarea - [nylas-event-description] The event description textarea\n * @part ned - [nylas-event-duration] The event duration container\n * @part ned__dropdown - [nylas-event-duration] The dropdown container for the duration increment\n * @part ned__dropdown-button - [nylas-event-duration] The dropdown button for the duration increment\n * @part ned__dropdown-content - [nylas-event-duration] The dropdown content for the duration increment\n * @part ned__input_dropdown - [nylas-event-duration] The input dropdown container for the duration minutes\n * @part ned__input_dropdown-input - [nylas-event-duration] The input for the duration minutes\n * @part ned__input_dropdown-content - [nylas-event-duration] The dropdown content for the input duration minutes\n * @part net - [nylas-event-title] The event title container\n * @part net__title - [nylas-event-title] The event title input\n * @part net__dropdown-content - [nylas-event-title] The token options container\n * @part nlfb - [nylas-limit-future-bookings] The limit future bookings container\n * @part nlfb__number-dropdown - [nylas-limit-future-bookings] The number dropdown container\n * @part nlfb__number-dropdown-button - [nylas-limit-future-bookings] The number dropdown button\n * @part nlfb__number-dropdown-content - [nylas-limit-future-bookings] The number dropdown content\n * @part nlfb__period-dropdown - [nylas-limit-future-bookings] The period dropdown container\n * @part nlfb__period-dropdown-button - [nylas-limit-future-bookings] The period dropdown button\n * @part nlfb__period-dropdown-content - [nylas-limit-future-bookings] The period dropdown content\n * @part nel - [nylas-event-location] The event location container\n * @part nel__location - [nylas-event-location] The event location input\n * @part nel__dropdown - [nylas-event-location] The dropdown container\n * @part nel__dropdown-button - [nylas-event-location] The dropdown button\n * @part nel__dropdown-content - [nylas-event-location] The dropdown content\n * @part nmbn - [nylas-min-booking-notice] The minimum booking notice container\n * @part nmbn__number-dropdown - [nylas-min-booking-notice] The number dropdown container\n * @part nmbn__number-dropdown-button - [nylas-min-booking-notice] The number dropdown button\n * @part nmbn__number-dropdown-content -[nylas-min-booking-notice] The number dropdown content\n * @part nmbn__period-dropdown - [nylas-min-booking-notice] The period dropdown container\n * @part nmbn__period-dropdown-button - [nylas-min-booking-notice] The period dropdown button\n * @part nmbn__period-dropdown-content - [nylas-min-booking-notice] The period dropdown content\n * @part nmcn - [nylas-min-cancellation-notice] The minimum cancellation notice container\n * @part nmcn__number-dropdown - [nylas-min-cancellation-notice] The number dropdown container\n * @part nmcn__number-dropdown-button - [nylas-min-cancellation-notice] The number dropdown button\n * @part nmcn__number-dropdown-content - [nylas-min-cancellation-notice] The number dropdown content\n * @part nmcn__period-dropdown - [nylas-min-cancellation-notice] The period dropdown container\n * @part nmcn__period-dropdown-button - [nylas-min-cancellation-notice] The period dropdown button\n * @part nmcn__period-dropdown-content - [nylas-min-cancellation-notice] The period dropdown content\n * @part ncpolicy - [nylas-cancellation-policy] The cancellation policy container\n * @part ncpolicy__textarea - [nylas-cancellation-policy] The cancellation policy textarea\n * @part nti - [nylas-timeslot-interval] The timeslot interval container\n * @part nti__header - [nylas-timeslot-interval] The header of the timeslot interval picker\n * @part nti__input-label - [nylas-timeslot-interval] The input label of the timeslot interval picker\n * @part nti__dropdown - [nylas-timeslot-interval] The dropdown container\n * @part nti__dropdown-button - [nylas-timeslot-interval] The dropdown button\n * @part nti__dropdown-content - [nylas-timeslot-interval] The dropdown content\n * @part npca - [nylas-participants-custom-availability] The participants custom availability container\n * @part npca__header - [nylas-participants-custom-availability] The header of the participants custom availability\n * @part npca__content - [nylas-participants-custom-availability] The content of the participants custom availability\n * @part npca__participant-container - [nylas-participants-custom-availability] The participant container\n * @part npca__participant-title - [nylas-participants-custom-availability] The participant title\n * @part npca__participant-toggle--container - [nylas-participants-custom-availability] The participant toggle container\n * @part npca__toggle-label - [nylas-participants-custom-availability] The toggle label\n * @part npca__toggle-input - [nylas-participants-custom-availability] The toggle input\n * @part npca__toggle-slider - [nylas-participants-custom-availability] The toggle slider\n * @part ncbs - [nylas-customize-booking-settings] The booking calendar picker container\n * @part ncbs__header - [nylas-customize-booking-settings] The header of the booking calendar picker\n * @part ncbs__settings - [nylas-customize-booking-settings] The settings container\n * @part ncbs__settings-div - [nylas-customize-booking-settings] The div inside the settings container that contains the checkbox and tooltip for each setting\n * @part ncbs__additional_guests - [nylas-customize-booking-settings] The additional guests setting\n * @part ncbs__cancellation_options - [nylas-customize-booking-settings] The cancellation options setting\n * @part ncbs__rescheduling_options - [nylas-customize-booking-settings] The rescheduling options setting\n */\n@Component({\n tag: 'nylas-editor-tabs',\n styleUrl: 'nylas-editor-tabs.scss',\n scoped: true,\n})\nexport class NylasEditorTabs {\n /**\n * The form reference to access the form data.\n */\n private formRef!: HTMLFormElement;\n /**\n * The host element.\n */\n @Element() host!: HTMLNylasEditorTabsElement;\n /**\n * The list of calendars to use in the editor when configuring availability.\n */\n @Prop() calendars?: Calendar[];\n /**\n * The selected configuration to use in the editor when editing an existing configuration or creating a new one.\n */\n @Prop() selectedConfiguration?: Configuration;\n\n /**\n * The current logged in user.\n */\n @Prop() currentUser?: User;\n /**\n * The scheduler preview link to use when the user clicks on the preview button.\n * You can use a placeholder `{config.id}` to replace the configuration id anywhere in the link.\n */\n @Prop({ attribute: 'scheduler-preview-link' }) schedulerPreviewLink: string = '';\n /**\n * The mode of the editor.\n * - `app`: The editor is used as a standalone app.\n * - `composable`: The editor is used as a composable component.\n */\n @Prop() mode?: 'app' | 'composable' = 'app';\n /**\n * The action to perform in the editor.\n * - `create`: Create a new configuration.\n * - `edit`: Edit an existing configuration.\n */\n @State() action: 'create' | 'edit' = 'create';\n /**\n * The active tab in the editor.\n */\n @State() activeTab: string = 'eventInfo';\n /**\n * The loading state of the editor.\n */\n @State() isLoading: boolean = false;\n /**\n * The unsaved changes state of the editor.\n */\n @State() hasUnsavedChanges: boolean = false;\n /**\n * The changes saved state of the editor.\n */\n @State() changesSaved: boolean = false;\n /**\n * The form state of the editor.\n */\n @State() formState: Partial<{\n title: string;\n description: string;\n duration: string;\n availability?: {\n timezone: string;\n openHours?: OpenHours[];\n };\n calendarIds: string[];\n participants?: Participant[];\n participantOpenHours?: { [key: string]: OpenHours[] };\n bookingCalendar?: string;\n location?: string;\n bookingType?: string;\n buffer?: { before: number; after: number };\n cancellationPolicy?: string;\n availableDaysInFuture?: number;\n minCancellationNotice?: number;\n minBookingNotice?: number;\n timeslotInterval?: {\n interval: number;\n roundTo?: number;\n };\n additionalGuestsHidden?: boolean;\n hideCancellationOptions?: boolean;\n hideReschedulingOptions?: boolean;\n }> = {};\n /**\n * The error state of the editor.\n */\n @State() error?: string = '';\n /**\n * Event emitted when the configuration is changed. This fires for both create and edit actions.\n */\n @Event() schedulerConfigChanged!: EventEmitter<SchedulerEventDetail>;\n /**\n * Event emitted when the user clicks the cancel button.\n */\n @Event() cancelButtonClick!: EventEmitter<void>;\n /**\n * Event emitted on form submission.\n */\n @Event() formSubmitted!: EventEmitter<void>;\n /**\n * Event emitted when the user clicks the preview button.\n */\n @Event() previewButtonClicked!: EventEmitter<HTMLNylasEditorTabsElement>;\n\n @Watch('selectedConfiguration')\n configChangedHandler(newConfig: Configuration) {\n debug('[nylas-editor-tabs]', 'configChangedHandler', newConfig, this.selectedConfiguration);\n this.formState = {\n ...this.getFormStateFromConfig(newConfig),\n };\n\n if (newConfig.id) {\n this.action = 'edit';\n } else {\n this.action = 'create';\n }\n }\n\n connectedCallback() {\n debug('[nylas-editor-tabs]', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('[nylas-editor-tabs]', 'componentWillLoad');\n this.formState = this.getFormStateFromConfig(this.selectedConfiguration);\n }\n\n componentDidLoad() {\n debug('[nylas-editor-tabs]', 'componentDidLoad');\n }\n\n disconnectedCallback() {\n debug('[nylas-editor-tabs]', 'disconnectedCallback');\n }\n\n @Listen('valueChanged')\n handleValueChanged(event: CustomEvent) {\n debug('[nylas-editor-tabs]', 'handleValueChanged', event);\n const { name, value } = event.detail;\n this.setFormState(value, name);\n this.formState = { ...this.formState };\n this.hasUnsavedChanges = true;\n this.error = '';\n }\n\n getFormStateFromConfig(config?: Configuration) {\n const organizerParticipant = config?.participants?.find(p => p.is_organizer);\n return {\n title: config?.event_booking?.title ?? '',\n description: config?.event_booking?.description ?? '',\n duration: config?.availability?.duration_minutes?.toString() ?? '30',\n availability: {\n timezone: config?.event_booking?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n openHours: config?.availability?.availability_rules?.default_open_hours ?? DEFAULT_OPEN_HOURS,\n },\n calendarIds: organizerParticipant?.availability?.calendar_ids ?? [],\n participants: config?.participants ?? [],\n bookingCalendar: organizerParticipant?.booking?.calendar_id ?? organizerParticipant?.email ?? '',\n location: config?.event_booking?.location ?? '',\n bookingType: config?.event_booking?.booking_type ?? 'booking',\n buffer: config?.availability?.availability_rules?.buffer ?? { before: 0, after: 0 },\n cancellationPolicy: config?.scheduler?.cancellation_policy ?? '',\n availableDaysInFuture: config?.scheduler?.available_days_in_future ?? 30,\n minCancellationNotice: config?.scheduler?.min_cancellation_notice ?? 0,\n minBookingNotice: config?.scheduler?.min_booking_notice ?? 60,\n timeslotInterval: {\n interval: config?.availability?.interval_minutes ?? config?.availability?.duration_minutes ?? 10,\n roundTo: config?.availability?.round_to,\n },\n additionalGuestsHidden: config?.scheduler?.hide_additional_guests ?? false,\n hideCancellationOptions: config?.scheduler?.hide_cancellation_options ?? false,\n hideReschedulingOptions: config?.scheduler?.hide_rescheduling_options ?? false,\n };\n }\n\n setFormState(value, key) {\n switch (key) {\n case 'title':\n this.formState.title = value.toString();\n break;\n case 'description':\n this.formState.description = value.toString();\n break;\n case 'duration':\n this.formState.duration = value.toString();\n break;\n case 'availability':\n this.formState.availability = JSON.parse(value.toString());\n break;\n case 'participants':\n this.formState.participants = JSON.parse(value.toString());\n break;\n case 'calendars':\n this.formState.calendarIds = value.toString().split(',');\n break;\n case 'booking-calendar':\n this.formState.bookingCalendar = value.toString();\n break;\n case 'location':\n this.formState.location = value.toString();\n break;\n case 'booking-type':\n this.formState.bookingType = value.toString();\n break;\n case 'buffer-time':\n this.formState.buffer = JSON.parse(value.toString());\n break;\n case 'limit-future-bookings':\n this.formState.availableDaysInFuture = parseInt(value.toString());\n break;\n case 'min-cancellation-notice':\n this.formState.minCancellationNotice = parseInt(value.toString());\n break;\n case 'min-booking-notice':\n this.formState.minBookingNotice = parseInt(value.toString());\n break;\n case 'cancellation-policy':\n this.formState.cancellationPolicy = value.toString();\n break;\n case 'timeslot-interval':\n this.formState.timeslotInterval = JSON.parse(value.toString());\n break;\n case 'customize-booking-settings':\n const settings = JSON.parse(value.toString());\n this.formState.additionalGuestsHidden = settings.additionalGuestsHidden;\n this.formState.hideCancellationOptions = settings.hideCancellationOptions;\n this.formState.hideReschedulingOptions = settings.hideReschedulingOptions;\n break;\n case 'participant-custom-availability':\n const participantOpenHours = JSON.parse(value.toString());\n this.formState.participantOpenHours = participantOpenHours;\n break;\n }\n }\n\n updateFormState() {\n const formData = new FormData(this.formRef);\n formData.forEach((value, key) => {\n this.setFormState(value, key);\n });\n\n this.formState = { ...this.formState };\n return this.formState;\n }\n\n setActiveTab(e: Event, tabName: string) {\n e.preventDefault();\n this.updateFormState();\n this.activeTab = tabName;\n }\n\n setError = (error: Error) => {\n this.error = error.message;\n };\n\n formSubmissionHandler = async (event: Event) => {\n event.preventDefault();\n this.formSubmitted.emit();\n const valid = this.formRef.checkValidity();\n if (!valid) {\n return;\n }\n this.isLoading = true;\n this.hasUnsavedChanges = false;\n const formState = this.updateFormState();\n const {\n title,\n description,\n duration,\n availability,\n calendarIds,\n bookingCalendar,\n location,\n bookingType,\n buffer,\n availableDaysInFuture,\n minCancellationNotice,\n minBookingNotice,\n cancellationPolicy,\n timeslotInterval,\n additionalGuestsHidden,\n hideCancellationOptions,\n hideReschedulingOptions,\n participants,\n participantOpenHours,\n } = formState;\n const organizer = this.selectedConfiguration?.participants?.find(p => p.is_organizer);\n const durationMinutes = duration ? parseInt(duration) : 30;\n\n const participantsList =\n participants && participants?.length > 0\n ? participants\n : [\n {\n name: organizer?.name ?? this.currentUser?.name ?? organizer?.email ?? this.currentUser?.email ?? '',\n email: organizer?.email ?? this.currentUser?.email ?? '',\n is_organizer: true,\n availability: {\n calendar_ids: calendarIds?.length ? calendarIds : ['primary'],\n open_hours: [],\n },\n booking: {\n calendar_id: bookingCalendar && bookingCalendar !== '' ? bookingCalendar : 'primary',\n },\n },\n ];\n const configObject: Partial<Configuration> = {\n ...(this.selectedConfiguration?.id && { id: this.selectedConfiguration.id }),\n version: this.selectedConfiguration?.version ?? '1.0.0',\n availability: {\n duration_minutes: durationMinutes,\n interval_minutes: timeslotInterval?.interval ?? durationMinutes,\n round_to: timeslotInterval?.roundTo,\n availability_rules: {\n availability_method: this.selectedConfiguration?.availability?.availability_rules?.availability_method ?? 'collective',\n buffer: buffer || { before: 0, after: 0 },\n default_open_hours: availability?.openHours ?? this.selectedConfiguration?.availability?.availability_rules?.default_open_hours ?? DEFAULT_OPEN_HOURS,\n round_robin_group_id: this.selectedConfiguration?.availability?.availability_rules?.round_robin_group_id ?? '',\n },\n },\n participants: [\n ...participantsList?.map(p => {\n if (p.is_organizer) {\n return {\n name: p.name ?? p.email,\n email: p.email,\n is_organizer: true,\n availability: {\n calendar_ids: calendarIds?.length ? calendarIds : ['primary'],\n open_hours: participantOpenHours?.[p.email] ?? p.availability?.open_hours ?? [],\n },\n booking: {\n calendar_id: bookingCalendar && bookingCalendar !== '' ? bookingCalendar : 'primary',\n },\n };\n }\n return {\n ...p,\n availability: {\n calendar_ids: p.availability?.calendar_ids ?? ['primary'],\n open_hours: participantOpenHours?.[p.email] ?? p.availability?.open_hours ?? [],\n },\n };\n }),\n ],\n event_booking: {\n title: title?.toString() ?? '',\n description: description?.toString() ?? '',\n location: location?.toString() ?? '',\n booking_type: (bookingType?.toString() as BookingType) ?? 'booking',\n timezone: availability?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n },\n scheduler: {\n cancellation_policy: cancellationPolicy ?? '',\n available_days_in_future: availableDaysInFuture ?? 30,\n min_cancellation_notice: minCancellationNotice ?? 0,\n min_booking_notice: minBookingNotice ?? 60,\n hide_additional_guests: additionalGuestsHidden ?? false,\n hide_cancellation_options: hideCancellationOptions ?? false,\n hide_rescheduling_options: hideReschedulingOptions ?? false,\n },\n };\n\n const configObjectWithDeveloperSettings = mergeDeep(configObject, this.selectedConfiguration);\n\n const finalConfig = this.action === 'create' ? configObjectWithDeveloperSettings : configObject;\n\n const resetLoadingState = (_e: CustomEvent) => {\n this.isLoading = false;\n this.changesSaved = true;\n setTimeout(() => {\n this.changesSaved = false;\n }, 5000);\n };\n this.schedulerConfigChanged.emit({ config: finalConfig, resetLoadingState, setError: this.setError, action: this.action });\n };\n\n @RegisterComponent<NylasEditorTabs, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-editor-tabs',\n stateToProps: new Map([\n ['schedulerConfig.calendars', 'calendars'],\n ['schedulerConfig.selectedConfiguration', 'selectedConfiguration'],\n ['schedulerConfig.currentUser', 'currentUser'],\n ]),\n eventToProps: {\n schedulerConfigChanged: async (event: CustomEvent<SchedulerEventDetail>, nylasSchedulerConfigConnector: NylasSchedulerConfigConnector) => {\n const { resetLoadingState, setError, action, config } = event.detail;\n const checkForErrors = (response: DataResponseReturnType) => {\n const [data, error] = response;\n if (!data && error && setError) {\n setError(error as Error);\n }\n if (resetLoadingState) {\n resetLoadingState(event);\n }\n };\n\n // If we have an ID, we are updating an existing configuration\n if (action === 'edit') {\n const response = await nylasSchedulerConfigConnector.schedulerConfig.updateConfiguration(config);\n checkForErrors(response);\n } else {\n const response = await nylasSchedulerConfigConnector.schedulerConfig.createConfiguration(config);\n checkForErrors(response);\n }\n },\n cancelButtonClick: async (_, nylasSchedulerConfigConnector) => {\n nylasSchedulerConfigConnector.schedulerConfigStore.state.action = null;\n },\n previewButtonClicked: async (_, nylasSchedulerConfigConnector) => {\n debug('[nylas-editor-tabs]', 'previewButtonClicked', nylasSchedulerConfigConnector);\n },\n formSubmitted: async (_, nylasSchedulerConfigConnector) => {\n debug('[nylas-editor-tabs]', 'formSubmitted', nylasSchedulerConfigConnector);\n },\n },\n localPropsToProp: new Map([['schedulerPreviewLink', 'schedulerPreviewLink']]),\n fireRegisterEvent: true,\n })\n render() {\n debug('[nylas-editor-tabs]', 'render', this.formState);\n // TODO: Remove this check when the feature is ready to be released\n const showParticipantsTab = localStorage.getItem('nylas') === 'Nylas Developer';\n return (\n <Host>\n <form onSubmit={this.formSubmissionHandler} class=\"scheduler-editor\" ref={el => (this.formRef = el as HTMLFormElement)} noValidate>\n {this.mode === 'app' ? (\n <div class=\"form-contents\">\n <div class=\"tabs\">\n <button class={{ tab: true, active: this.activeTab == 'eventInfo' }} onClick={e => this.setActiveTab(e, 'eventInfo')}>\n <calendar-info-icon width=\"16\" height=\"16\" />\n Event Info\n </button>\n <button class={{ tab: true, active: this.activeTab == 'availability' }} onClick={e => this.setActiveTab(e, 'availability')}>\n <calendar-patterns-icon width=\"16\" height=\"16\" />\n Availability\n </button>\n <button class={{ tab: true, active: this.activeTab == 'bookingOptions' }} onClick={e => this.setActiveTab(e, 'bookingOptions')}>\n <flow-icon width=\"16\" height=\"16\" />\n Booking Options\n </button>\n {showParticipantsTab && (\n <button class={{ tab: true, active: this.activeTab == 'participants' }} onClick={e => this.setActiveTab(e, 'participants')}>\n <people-icon width=\"16\" height=\"16\" />\n Participants\n </button>\n )}\n </div>\n <div class=\"tab-content\">\n <TabContents formState={this.formState} activeTab={this.activeTab} calendars={this.calendars} id={this.selectedConfiguration?.id ?? 'new'} />\n </div>\n </div>\n ) : (\n <slot></slot>\n )}\n\n <div class=\"footer\">\n <div class=\"preview\">\n {this.schedulerPreviewLink !== '' && this.action === 'edit' && (\n <button-component\n type=\"button\"\n disabled={this.isLoading}\n clickHandler={event => {\n event.preventDefault();\n const previewEvent = this.previewButtonClicked.emit(this.host);\n if (!previewEvent.defaultPrevented) {\n window.open(parsePreviewLink(this.schedulerPreviewLink, this.selectedConfiguration), '_blank');\n }\n }}\n variant={'basic'}\n >\n Preview\n </button-component>\n )}\n </div>\n <div class=\"buttons\">\n <p\n class={{\n 'unsaved-changes': this.hasUnsavedChanges && !this.changesSaved,\n 'saved-changes': this.changesSaved,\n 'error': this.error !== '',\n 'error-full-width': this.error !== '' && this.action === 'create',\n }}\n >\n {this.error !== '' ? this.error : ''}\n {this.error == '' && this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : this.error == '' && this.changesSaved ? 'Changes saved!' : ''}\n </p>\n <button-component\n type=\"button\"\n disabled={this.isLoading}\n clickHandler={event => {\n event.preventDefault();\n this.cancelButtonClick.emit();\n this.error = '';\n }}\n variant={'basic'}\n >\n Cancel\n </button-component>\n <button-component type=\"submit\" disabled={this.isLoading}>\n {this.isLoading ? (\n <span>\n Saving\n <loading-icon />{' '}\n </span>\n ) : this.action == 'create' ? (\n 'Create'\n ) : (\n 'Save changes'\n )}\n </button-component>\n </div>\n </div>\n </form>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -63,7 +63,7 @@ const NylasEventDescription = proxyCustomElement(class NylasEventDescription ext
63
63
  this.valueChanged.emit({ value: value, name: this.name });
64
64
  }
65
65
  render() {
66
- return (h(Host, { key: 'ba8fe981702f13ac0b8132bc13fc6fea56500a62' }, h("div", { key: '41ab7f418a4878f7e9322564f77fe1008f048090', class: "nylas-event-description", part: "nedesc" }, h("label", { key: '8dd6e3fc10d8a360606b53eef4b7c596df082167', htmlFor: "description" }, "Event description", h("span", { key: '1533f26a880a136a76ad6bacb33b9cbf3895b35e', class: "label-icon" }, h("tooltip-component", { key: 'f378fa630e3a8c80a5423c5086ff8ed3d0baa50b' }, h("info-icon", { key: 'e343fc186b270f6c7eb9c38bf1ea04dbb7de7d6e', slot: "tooltip-icon" }), h("span", { key: 'fb397590af111cac95805c50b96e22ebf3a3836e', slot: "tooltip-content" }, "Provide any additional details for your event.")))), h("textarea", { key: '650ab0c3162ad8fda2d3b0dfa9870bdc1aa700e6', id: "description", part: "nedesc__textarea", name: "description", value: this.description, maxlength: "8192", onInput: e => this.handleChange(e) }))));
66
+ return (h(Host, { key: 'ac483c56982373fb625c6d1af54eed749ce820e2' }, h("div", { key: '3924853ea2c94d72bf2a04a319bee5fc61eb7642', class: "nylas-event-description", part: "nedesc" }, h("label", { key: 'e8f9990a4f0766de9691080ef02b823c4cd6beb4', htmlFor: "description" }, "Event description", h("span", { key: 'dc7fa731cc60ed6e59032cdb35d0b410de300750', class: "label-icon" }, h("tooltip-component", { key: '1c0b1a5a547227bf7d4f499cc7c319349ec26e2d' }, h("info-icon", { key: 'e74034f5a5d8ab86c0d497b15c9cb8016d22f38e', slot: "tooltip-icon" }), h("span", { key: 'c5efa1fc3adc9290e39d40f1f7998e0c6bdd3bf4', slot: "tooltip-content" }, "Provide any additional details for your event.")))), h("textarea", { key: '45d8cc241ab90a24ec437499234b02cc401fa720', id: "description", part: "nedesc__textarea", name: "description", value: this.description, maxlength: "8192", onInput: e => this.handleChange(e) }))));
67
67
  }
68
68
  static get formAssociated() { return true; }
69
69
  get host() { return this; }
@@ -123,7 +123,7 @@ const NylasEventDuration = proxyCustomElement(class NylasEventDuration extends H
123
123
  { value: 1, label: 'minute' },
124
124
  { value: 60, label: 'hour' },
125
125
  ];
126
- return (h(Host, { key: '69f81ffd2ca891c9c4681ac03e28091c52db815d' }, h("div", { key: '0f2f55279a060023ee3d0996e255075821c0eaf8', class: "nylas-event-duration", part: "ned" }, h("label", { key: '034772be3a25547f190ea70575e07f356aec1268', htmlFor: "duration" }, "Event duration", h("span", { key: 'b3bbb769c229d9de4da23b330c6801093ec70ffe', class: "required" }, "*"), h("span", { key: 'f62a2f5e762073f5dea8be87948fc75cc398c2cf', class: "label-icon" }, h("tooltip-component", { key: '73fa017a9c54ee8b38c5d9ebecffeb247bb94e1a' }, h("info-icon", { key: '662f790d63babba084ffb7b3d2c1d6ad57872444', slot: "tooltip-icon" }), h("span", { key: '71e2c2816bde5eef547f8004858c10809a3d9fc8', slot: "tooltip-content" }, "Set the duration of your event.")))), h("div", { key: '491c79e0a0ff84aa3421c084bbe0370fe3fae874', class: "nylas-event-duration__wrapper" }, h("input-dropdown", { key: 'de21d1aa7aa5dffd80c73bd27860b4a8949e54d6', name: 'event-duration', options: this.durationMinutesOptions, inputValue: this.duration.toString(), exportparts: "id_dropdown: ned__input_dropdown, id_dropdown-input: ned__input_dropdown-input, id_dropdown-content: ned__input_dropdown-content", defaultInputOption: this.durationMinutesOptions.find(i => i.value == this.duration) ?? durationOptions[0] }), h("select-dropdown", { key: '8ecfa42bb8d7065750b80a523e051aede990237e', name: 'event-duration', options: durationOptions, pluralizedLabel: this.duration > 1 ? 's' : '', exportparts: "sd_dropdown: ned__dropdown, sd_dropdown-button: ned__dropdown-button, sd_dropdown-content: ned__dropdown-content", defaultSelectedOption: durationOptions.find(i => i.value == this.durationIncrement) ?? durationOptions[0], withSearch: false })))));
126
+ return (h(Host, { key: 'c8ab90c7a45ce6a5379552af0a9059b9d829e82c' }, h("div", { key: 'd957e610bd31a55430235b0ca903905c8bf3706b', class: "nylas-event-duration", part: "ned" }, h("label", { key: '39324d77ad9da4bc0c1f36d15c28384f423c1976', htmlFor: "duration" }, "Event duration", h("span", { key: '8f222a8a5d03899ff06790133434028dd1a62cd4', class: "required" }, "*"), h("span", { key: '6b83c675faa33db229ded711eac8c1f565bc9a61', class: "label-icon" }, h("tooltip-component", { key: '01b7ba340e2883e5a22d4559f67feda4bc745109' }, h("info-icon", { key: 'acbfa3dcbc994dec0e502ea9ded00612bf24b315', slot: "tooltip-icon" }), h("span", { key: 'e691c2a8ce4953e448cb6850ab2648645ae688c0', slot: "tooltip-content" }, "Set the duration of your event.")))), h("div", { key: '294766a022ba73042705050bc2fbc294cd1433b4', class: "nylas-event-duration__wrapper" }, h("input-dropdown", { key: '9a61a9527ae4c9991dc1f1596fbed85a5dd57966', name: 'event-duration', options: this.durationMinutesOptions, inputValue: this.duration.toString(), exportparts: "id_dropdown: ned__input_dropdown, id_dropdown-input: ned__input_dropdown-input, id_dropdown-content: ned__input_dropdown-content", defaultInputOption: this.durationMinutesOptions.find(i => i.value == this.duration) ?? durationOptions[0] }), h("select-dropdown", { key: 'edcda0700a80961b9a8b9f325288d70a1aa4e6f0', name: 'event-duration', options: durationOptions, pluralizedLabel: this.duration > 1 ? 's' : '', exportparts: "sd_dropdown: ned__dropdown, sd_dropdown-button: ned__dropdown-button, sd_dropdown-content: ned__dropdown-content", defaultSelectedOption: durationOptions.find(i => i.value == this.durationIncrement) ?? durationOptions[0], withSearch: false })))));
127
127
  }
128
128
  static get formAssociated() { return true; }
129
129
  get host() { return this; }
@@ -40,7 +40,7 @@ const NylasEventInfo = proxyCustomElement(class NylasEventInfo extends HTMLEleme
40
40
  debug('nylas-event-info', 'disconnectedCallback');
41
41
  }
42
42
  render() {
43
- return (h(Host, { key: '311ce4cda7377b94f12a98ff6a3318697762f6f0' }, h("nylas-form-card", { key: '99e5490667e83818242ae24863e5cdd94b39b0fa' }, h("h1", { key: 'f8c0f0cc5c330fac2b2f17e46be32ea4f3cc0b4b', slot: "header-title", class: "nylas-event-info__title" }, "Event information"), h("h3", { key: '637d443ca5851d7038acf20425c7fc969543951d', slot: "header-subtitle", class: "nylas-event-info__subtitle" }, "Enter all event information."), h("div", { key: 'aa0c51b31eeda0ba4b2c0090ed8367d139ea447b', slot: "content", class: "nylas-event-info__content" }, h("slot", { key: '95cf051184160aa802d89fc395bf914df09412e9', name: "inputs" })))));
43
+ return (h(Host, { key: 'adf72357920be8fadb32c683735719e5dbf76883' }, h("nylas-form-card", { key: '33823a1bbd57716f9b056f5addba8a5fb316ac93' }, h("h1", { key: 'eb14a7f95322992e24dad4e9ff612ffcb7c7634a', slot: "header-title", class: "nylas-event-info__title" }, "Event information"), h("h3", { key: '366d9ed654b03ea7bfe9d902240fcd4ad3c2b177', slot: "header-subtitle", class: "nylas-event-info__subtitle" }, "Enter all event information."), h("div", { key: 'a6abc2c53dbce1d8d0ad444033d1361171bc5720', slot: "content", class: "nylas-event-info__content" }, h("slot", { key: 'c814d4c24582dc76ee96f8e87c9b610a06205273', name: "inputs" })))));
44
44
  }
45
45
  static get formAssociated() { return true; }
46
46
  get el() { return this; }
@@ -40,7 +40,7 @@ const NylasEventLimits = proxyCustomElement(class NylasEventLimits extends HTMLE
40
40
  debug('nylas-event-limits', 'disconnectedCallback');
41
41
  }
42
42
  render() {
43
- return (h(Host, { key: '6bfa0e29afa1529eb445b68339a658e4d7c8a6be' }, h("nylas-form-card", { key: 'eda419f6f0f7bb8dfd2ebdb0a13c0a8c650190eb' }, h("h1", { key: 'ea2c9af0d66665f25dcbb9c4c152bf159ceb4169', slot: "header-title", class: "nylas-event-limits__title" }, "Set event limits"), h("h3", { key: 'b600fd0b690bab256fde199b373913d9009be9bf', slot: "header-subtitle", class: "nylas-event-limits__subtitle" }, "Customize event limits for the event."), h("div", { key: '72b24085107528833d406802b206eed3719bb358', slot: "content", class: "nylas-event-limits__content" }, h("slot", { key: '74a09fd8044065a2f52ef5abaeef0ba80f38f17b', name: "inputs" })))));
43
+ return (h(Host, { key: '4afbe82f9887a84579e5a16fa628a8785927e19f' }, h("nylas-form-card", { key: 'b092de56ed7f3902ed5de970963697e19f47b5ea' }, h("h1", { key: 'c1a940f48d1e8daeaa719cfcefc7b5948960ea5c', slot: "header-title", class: "nylas-event-limits__title" }, "Set event limits"), h("h3", { key: '68c6426b83df6c15a85f6bae5bc0fd47aa17e8b4', slot: "header-subtitle", class: "nylas-event-limits__subtitle" }, "Customize event limits for the event."), h("div", { key: 'e70ed6be6d75a69b9405c38c0ab68accbc799670', slot: "content", class: "nylas-event-limits__content" }, h("slot", { key: '7220956029fa2ae7f8ab7f05342ab2ee8d15c15f', name: "inputs" })))));
44
44
  }
45
45
  static get formAssociated() { return true; }
46
46
  get el() { return this; }
@@ -96,10 +96,10 @@ const NylasEventLocation = proxyCustomElement(class NylasEventLocation extends H
96
96
  { value: 'custom', label: 'Custom location' },
97
97
  ];
98
98
  const icons = {
99
- none: h("location-off-icon", { key: 'f9a254f862acd3c1b8a24b7efe0069f232bd9f51' }),
100
- custom: h("location-icon", { key: '641cfced66068f659d7d6db3b88a11314d9cacf6' }),
99
+ none: h("location-off-icon", { key: 'b83e4c1ee5292f3261fca8489ec10a6ded3378dc' }),
100
+ custom: h("location-icon", { key: '6ba8c483b7e242b0accf8a55ccb11efc8b4e19a5' }),
101
101
  };
102
- return (h(Host, { key: '9e86c85ff957ac4d8192350e61bc66dfb7d8f764' }, h("div", { key: 'a51752993c346200236187f906caa0629be50e88', class: "nylas-event-location", part: "nel" }, h("label", { key: '53cb18b0acd1a46b4be9a49f88a2786e7832d761', htmlFor: "location" }, "Location type", h("span", { key: '2b2debd710387758562de5833b5160f1d3a18481', class: "label-icon" }, h("tooltip-component", { key: '237da0e3bbfae495fd865d99e8f1e1ef68ae027e' }, h("info-icon", { key: '5f23b94c2bbe0f3ddd3870aeb69cee2f75b0bd28', slot: "tooltip-icon" }), h("span", { key: 'b1ed166875a24ce4bcfbc808c26d0042b74f73f3', slot: "tooltip-content" }, "Choose how you\u2019ll meet with the participants at the scheduled time. Pick from available conferencing options or add a custom location.")))), h("div", { key: '316411158feced50b61ce97014ffa0ba7c4400e8', class: "location-input" }, h("select-dropdown", { key: 'cc6bdbca81e738f43dfb37b7dc66f06ac338dc40', withSearch: false, name: "location", options: locationOptions, defaultSelectedOption: locationOptions.find(i => i.value == this.selectedLocationOption), exportparts: "sd_dropdown: nel__dropdown, sd_dropdown-button: nel__dropdown-button, sd_dropdown-content: nel__dropdown-content" }, h("span", { key: 'faacafdffda95071ee9304ac0e4c0125dc31c123', slot: "select-icon" }, icons[this.selectedLocationOption])), this.selectedLocationOption === 'custom' && (h("input", { type: "text", part: "nel__location", id: "location", name: "location", maxlength: "1024", value: this.location, onInput: e => this.handleChange(e) }))))));
102
+ return (h(Host, { key: 'f65e817196207fa0397fb599bc89a8cb72b7e8e1' }, h("div", { key: '7410dde44d2b93d0aa655feb0c9dede3b14f3f1e', class: "nylas-event-location", part: "nel" }, h("label", { key: '4d158faf262e76e325e1dc35792bc36800a3df6f', htmlFor: "location" }, "Location type", h("span", { key: '28b4287f14b80b9a1db726470bf27dd017b3ba37', class: "label-icon" }, h("tooltip-component", { key: '65a2db2bdf57377beb1b5b4801a89f5a74320205' }, h("info-icon", { key: '350b0f6f2c7f442cc4fb3fdee838c600d271d667', slot: "tooltip-icon" }), h("span", { key: '31027673d5cd518b6cbc847c0010f482b0540de6', slot: "tooltip-content" }, "Choose how you\u2019ll meet with the participants at the scheduled time. Pick from available conferencing options or add a custom location.")))), h("div", { key: 'a902e62a97f181dcb6b0e0e4daea1ec4c817fe58', class: "location-input" }, h("select-dropdown", { key: '5f271d86549b8fa286b630f169e191d4c1d73e3d', withSearch: false, name: "location", options: locationOptions, defaultSelectedOption: locationOptions.find(i => i.value == this.selectedLocationOption), exportparts: "sd_dropdown: nel__dropdown, sd_dropdown-button: nel__dropdown-button, sd_dropdown-content: nel__dropdown-content" }, h("span", { key: 'cdc3f3fcdf971ffe3495f085b39cac2a1e77df11', slot: "select-icon" }, icons[this.selectedLocationOption])), this.selectedLocationOption === 'custom' && (h("input", { type: "text", part: "nel__location", id: "location", name: "location", maxlength: "1024", value: this.location, onInput: e => this.handleChange(e) }))))));
103
103
  }
104
104
  static get formAssociated() { return true; }
105
105
  get host() { return this; }
@@ -314,10 +314,10 @@ const NylasEventTitle = proxyCustomElement(class NylasEventTitle extends HTMLEle
314
314
  return (h("div", { class: "token-label" }, h("span", { class: "token" }, token.token), h("span", { class: "description" }, token.description)));
315
315
  }
316
316
  render() {
317
- return (h(Host, { key: '8e8de66d58ca4428f35effa133fc8c0b3e3c804f' }, h("div", { key: '411cf6eb2553063facf74bc0fcf46cbced1b2eb8', class: "nylas-event-title", part: "net" }, h("label", { key: '47c8a32d54022a41182ba71aa665f05275e0926b', htmlFor: "title" }, "Event title", h("span", { key: '664268aa456eeae43411ef0c59c3391dfebac185', class: "required" }, "*"), h("span", { key: 'c4db00b1f2f428c30344dbe098fabba19e15cf76', class: "label-icon" }, h("tooltip-component", { key: '9884d36d7237310d454cb2cce36ea7a7391a58e5' }, h("info-icon", { key: '6a2c57dc06b77fb2c8faaa21af08558f7cfcf98c', slot: "tooltip-icon" }), h("span", { key: '185fee4da67795d4cbad48ce905c573e42749b95', slot: "tooltip-content" }, "Enter a title for your event.")))), h("div", { key: '80db52b66751ec73660465a2185d2e5c1304903d', class: {
317
+ return (h(Host, { key: 'ec414f2f4c738230078bed7b7c5477ba5fdbcb70' }, h("div", { key: '17f665e5f307c1b6510891e76daa765449958c3e', class: "nylas-event-title", part: "net" }, h("label", { key: 'e4beac83e857bab219ec4276238f7953645c4711', htmlFor: "title" }, "Event title", h("span", { key: '3033d6ef407f2a3df94dc1f80be2f5e3c378abd0', class: "required" }, "*"), h("span", { key: '29dba11e88726329513ef15078eba34f103914de', class: "label-icon" }, h("tooltip-component", { key: '29a373fc979f15eb3527b9e5a446bd7518ee4562' }, h("info-icon", { key: '12f9a0190185b96a2090cdb0ca7a43f6342cc016', slot: "tooltip-icon" }), h("span", { key: 'dd6e505591f9cded5bc70a812e448b44f1faa4e1', slot: "tooltip-content" }, "Enter a title for your event.")))), h("div", { key: '87807255004e909850b93d600b636d2d2e1d8ed1', class: {
318
318
  title: true,
319
319
  error: this.validationError !== '',
320
- }, part: "net__title", ref: el => (this.titleRef = el), contentEditable: "true", onInput: e => this.handleChange(e), onKeyDown: event => this.handleInputKeyDown(event) }), this.showTokens && this.filteredTokens?.length > 0 && (h("div", { class: "token-options", part: "net__dropdown-content" }, h("ul", { tabindex: "-1", role: "listbox", "aria-label": this.name, "aria-activedescendant": this.ariaActivedescendant }, this.filteredTokens.map(option => (h("li", { tabindex: "0", key: option.label, id: option.label, class: { active: this.ariaActivedescendant === option.label }, onClick: e => this.selectOption(e, option), role: "option" }, this.getLabelHTML(option.labelHTML))))))), h("span", { key: '35d1099854f33517e668691f98a3bf296a8280d4', class: "help-text" }, "Create a dynamic templated event title by typing $. Learn more"), this.validationError != '' && h("span", { class: "error-message" }, this.validationError))));
320
+ }, part: "net__title", ref: el => (this.titleRef = el), contentEditable: "true", onInput: e => this.handleChange(e), onKeyDown: event => this.handleInputKeyDown(event) }), this.showTokens && this.filteredTokens?.length > 0 && (h("div", { class: "token-options", part: "net__dropdown-content" }, h("ul", { tabindex: "-1", role: "listbox", "aria-label": this.name, "aria-activedescendant": this.ariaActivedescendant }, this.filteredTokens.map(option => (h("li", { tabindex: "0", key: option.label, id: option.label, class: { active: this.ariaActivedescendant === option.label }, onClick: e => this.selectOption(e, option), role: "option" }, this.getLabelHTML(option.labelHTML))))))), h("span", { key: '3ba87900ffbc4b69c5f9fac01a8f9f577dd034c5', class: "help-text" }, "Create a dynamic templated event title by typing $. Learn more"), this.validationError != '' && h("span", { class: "error-message" }, this.validationError))));
321
321
  }
322
322
  static get formAssociated() { return true; }
323
323
  get host() { return this; }
@@ -40,7 +40,7 @@ const NylasFormCard = proxyCustomElement(class NylasFormCard extends HTMLElement
40
40
  checkForMissingSlots(slots, this.host);
41
41
  }
42
42
  render() {
43
- return (h(Host, { key: '452748a2f5bbe760d62bc430c206e76e1d662cdc' }, h("div", { key: '5960063b44a6c0d70f85f2a4ca151b3f9cf12b21', class: "nylas-form-card" }, h("div", { key: '40a34de1891b375ee143ef27d71ab18a6ac8e1ae', class: "nylas-form-card__header" }, h("slot", { key: 'ad166ef70620dd2c9f29943220534920d643a615', name: "header-title" }), h("slot", { key: '567c259cb3d5db843bd4eea56d134060f0730e2b', name: "header-subtitle" })), h("div", { key: '092edbf7aec788c1b1feaa1328e56896c8bb25f9', class: "nylas-form-card__content" }, h("slot", { key: '598dc69a824032ae31ab03259bf61e38ef52b661', name: "content" })))));
43
+ return (h(Host, { key: 'b239c071fddb29c99417cd9df00e4e8a10cfc68d' }, h("div", { key: '03cea2cbfa42eaa9fa93a7b95507c182d9fb468e', class: "nylas-form-card" }, h("div", { key: '8c62d6d8b725d25aa139635d865d95d00f904c75', class: "nylas-form-card__header" }, h("slot", { key: '614613c87e4c5cf2eb54bea118a9179e8f684535', name: "header-title" }), h("slot", { key: '9cc70a1325e1e69c69a3313581bf14b2c638a421', name: "header-subtitle" })), h("div", { key: '8d557b743c717caae7d331b0084dcde441b64a80', class: "nylas-form-card__content" }, h("slot", { key: 'e35718fdfd24a984a39ca67e8356991d8b7000f2', name: "content" })))));
44
44
  }
45
45
  static get formAssociated() { return true; }
46
46
  get host() { return this; }
@@ -103,7 +103,7 @@ const NylasIfState$1 = proxyCustomElement(class NylasIfState extends HTMLElement
103
103
  }
104
104
  }
105
105
  render() {
106
- return (h(Host, { key: 'a54c576c586d31c138132ac5486c628bbcdf97df' }, h("div", { key: 'e5376f5282b5eeb4dd6b3a8a38ea2a3187c8da64', class: this.classes }, this.show && h("slot", null))));
106
+ return (h(Host, { key: '14c61cd55ec800a480889a16ea2f913b0e19f27f' }, h("div", { key: '4f97263914ce0afbd5f4f629f7ca8d2df8ad87c4', class: this.classes }, this.show && h("slot", null))));
107
107
  }
108
108
  static get watchers() { return {
109
109
  "getStore": ["onGetStoreChange"]
@@ -105,7 +105,7 @@ const NylasLimitFutureBookings = proxyCustomElement(class NylasLimitFutureBookin
105
105
  this.selectedPeriod = period;
106
106
  }
107
107
  render() {
108
- return (h(Host, { key: 'e1e24151575c5c687d51fdf177840aa7c05424d9' }, h("div", { key: 'ceb19c13b5ad7e132260de266b1883b3f8d53f3d', class: "nylas-limit-future-bookings", part: "nlfb" }, h("label", { key: '44c296c74b9a9cd7152d2c704d4dc6ef82cc39c7' }, "Limit future bookings", h("span", { key: '11e7622613f38d12ef4f1c564b0ca311ab679cb3', class: "label-icon" }, h("tooltip-component", { key: 'd9ab1be2efb6616a937d112017be0e2c8e965ab3' }, h("info-icon", { key: '9f207ec82aa2a122ebfd0ba047f650751c49e470', slot: "tooltip-icon" }), h("span", { key: '1d91cfa505846f5f9da0457b785d8c645044be55', slot: "tooltip-content" }, "Set a limit on how far in the future bookings can be made.")))), h("time-period-selector", { key: 'cc11ea1514b99b8b4ef1721a15d56fbda1c1693b', id: "limit-future-bookings", timePeriods: ['day', 'week', 'month'], exportparts: "tps__number-dropdown: nlfb__number-dropdown, tps__number-dropdown-button: nlfb__number-dropdown-button, tps__number-dropdown-content: nlfb__number-dropdown-content, tps__period-dropdown: nlfb__period-dropdown, tps__period-dropdown-button: nlfb__period-dropdown-button, tps__period-dropdown-content: nlfb__period-dropdown-content", defaultSelectedNumber: this.selectedNumber, defaultSelectedPeriod: this.selectedPeriod }))));
108
+ return (h(Host, { key: '9efaf822025f476c80f4c5124f226e45ef9047f9' }, h("div", { key: 'acb0ed9bb24d9e789c01127b2343194d47c37c5f', class: "nylas-limit-future-bookings", part: "nlfb" }, h("label", { key: 'b4bbe14a0870451be5c7754dbbd3adb029b1d24c' }, "Limit future bookings", h("span", { key: 'e1e671d334ec20347852549c4b4d63fa626a2186', class: "label-icon" }, h("tooltip-component", { key: '378c5a41fe7920cebd1f9de4ea16873e951584cf' }, h("info-icon", { key: 'dee6d8d027c746b19b4de42a7e57754a6dcf0a34', slot: "tooltip-icon" }), h("span", { key: 'f128781fb212013489d7db03e7b5fb1a02681b5a', slot: "tooltip-content" }, "Set a limit on how far in the future bookings can be made.")))), h("time-period-selector", { key: 'fb00fd64c7dec2beb976132a397bb067e72c0cc3', id: "limit-future-bookings", timePeriods: ['day', 'week', 'month'], exportparts: "tps__number-dropdown: nlfb__number-dropdown, tps__number-dropdown-button: nlfb__number-dropdown-button, tps__number-dropdown-content: nlfb__number-dropdown-content, tps__period-dropdown: nlfb__period-dropdown, tps__period-dropdown-button: nlfb__period-dropdown-button, tps__period-dropdown-content: nlfb__period-dropdown-content", defaultSelectedNumber: this.selectedNumber, defaultSelectedPeriod: this.selectedPeriod }))));
109
109
  }
110
110
  static get formAssociated() { return true; }
111
111
  get host() { return this; }
@@ -83,7 +83,7 @@ const NylasListFolders$1 = proxyCustomElement(class NylasListFolders extends HTM
83
83
  }
84
84
  }
85
85
  render() {
86
- return (h(Host, { key: 'e90f5f811be2c0a00228edfee0b1fd31e1a428f7' }, h("div", { key: 'ef0f2e871c60c23905f56be5cd65c33bd9484e51', class: "folders" }, this.defaultFolders?.map(folder => (h("sp-button", { onClick: () => this.folderSelectedHandler(folder), class: {
86
+ return (h(Host, { key: 'f7658523537781559e3fa8dcef8930beb8ae786f' }, h("div", { key: 'e08916ae6b756aded1ab5efa01f3e897ee3d97e3', class: "folders" }, this.defaultFolders?.map(folder => (h("sp-button", { onClick: () => this.folderSelectedHandler(folder), class: {
87
87
  folder: true,
88
88
  selected: formatFolderName(folder.name ?? 'inbox').toLowerCase() === this.selectedFolder?.toLowerCase(),
89
89
  } }, h("div", { slot: "icon", class: "icon" }, this.getFolderIcon(folder)), this.formatFolderName(folder))))), this.otherFolders && (h(Fragment, null, h("hr", null), h("div", { class: "folders" }, this.otherFolders?.map(folder => (h("sp-button", { onClick: () => this.folderSelectedHandler(folder), class: {
@@ -50,7 +50,7 @@ const NylasListThreads$1 = proxyCustomElement(class NylasListThreads extends HTM
50
50
  debug(`[nylas-list-threads] Component did load`, { isAuthenticated: this.isAuthenticated });
51
51
  }
52
52
  render() {
53
- return (h(Host, { key: 'f7b5d28a1a147ce235b3d850e23d1fc9aa565711' }, h("div", { key: 'ac9e58127a7862bedac849e0f45d0c7f92210315', class: 'list-thread', part: "list-thread" }, this.state === 'loading' && new Array(10).fill(0).map((_, i) => h("div", { class: "thread loading", style: { animationDelay: `${i * 20}ms` } })), this.state === 'ready' &&
53
+ return (h(Host, { key: '12a8ceca4ed6b48b6b2a792543e36c682c0ec6ec' }, h("div", { key: '351f7efcff7c52cba0b8074a8c67562cf083baa8', class: 'list-thread', part: "list-thread" }, this.state === 'loading' && new Array(10).fill(0).map((_, i) => h("div", { class: "thread loading", style: { animationDelay: `${i * 20}ms` } })), this.state === 'ready' &&
54
54
  this.threads.map(thread => (h("button", { key: thread?.id, class: {
55
55
  'thread': true,
56
56
  'unread': thread?.unread === true,
@@ -76,13 +76,13 @@ const NylasLocaleSwitch = proxyCustomElement(class NylasLocaleSwitch extends HTM
76
76
  label: LANGUAGE_MAP[key],
77
77
  value: key,
78
78
  }));
79
- return (h(Host, { key: 'b568b75977c586e88d88d69ce6a4b7651fd6123b' }, h("div", { key: '95b12f2d96e46b31ed606c85c4fe3151861d188c', class: "nylas-locale-switch" }, h("div", { key: 'd44690dae20a0068ffe55ab87024c8e283acaa6c', class: {
79
+ return (h(Host, { key: '2d50a22ae8502ec3c6062da3cbbeb0bb6f0fcb8b' }, h("div", { key: '8725370edb7b3fb70264586c8d6bf4cc7c8f6220', class: "nylas-locale-switch" }, h("div", { key: 'da5375359f87b3f1fc5c3ec9f094c76886a1a401', class: {
80
80
  'select-wrapper': true,
81
81
  'timezone': true,
82
- } }, h("select-dropdown", { key: '09b895b074f36381567d439869b68d8e10869b2a', name: "timezone", options: timezoneOptions, defaultSelectedOption: timezoneOptions.find(op => op.value == this.selectedTimezone) }, h("span", { key: '72a40810ca3d7a59b0e8d76be62c63f70c1cf183', slot: "select-icon" }, h("globe-icon", { key: '01dedea1be14b299cf447085b5778663015b2e2d', width: "20", height: "20" })))), h("div", { key: '2b4078132bc366f7784648cce51fe0ee33467d06', class: {
82
+ } }, h("select-dropdown", { key: '3633e969f27a301b59ad64afb9f63a0bf19afcc6', name: "timezone", options: timezoneOptions, defaultSelectedOption: timezoneOptions.find(op => op.value == this.selectedTimezone) }, h("span", { key: '97db913cf64de05eb986fdea378a17948ead2527', slot: "select-icon" }, h("globe-icon", { key: 'ee73e4c113c23614a7084cb1f19e2d6149fd3185', width: "20", height: "20" })))), h("div", { key: '04245f7d6c51994197ff107f064632d5c8050e65', class: {
83
83
  'select-wrapper': true,
84
84
  'language': true,
85
- } }, h("select-dropdown", { key: 'eb73c3eb853aba5c0acde42bf49dd09c19f1d43b', name: "language", options: languageOptions, defaultSelectedOption: languageOptions.find(lang => lang.value == this.selectedLanguage) }, h("span", { key: 'b2b1b5e1d8d2b85e67615c6f63a69ac955e3fc16', slot: "select-icon" }, h("translate-icon", { key: '161bb7dad0a08d8362c5c3cdd85238d732e5888c', width: "20", height: "20" })))))));
85
+ } }, h("select-dropdown", { key: '55ed837e54b69f9db0548c9c4e4c6e5211ef577a', name: "language", options: languageOptions, defaultSelectedOption: languageOptions.find(lang => lang.value == this.selectedLanguage) }, h("span", { key: '43b4d67e865a27842998a796f8d12e0d9b5171eb', slot: "select-icon" }, h("translate-icon", { key: 'c393677712c3528f162bc5700368deb4dd6a197c', width: "20", height: "20" })))))));
86
86
  }
87
87
  static get style() { return nylasLocaleSwitchCss; }
88
88
  }, [1, "nylas-locale-switch", {
@@ -76,7 +76,7 @@ const NylasLogin$1 = proxyCustomElement(class NylasLogin extends HTMLElement {
76
76
  }
77
77
  render() {
78
78
  const splitProviders = this.providers?.split(',') || [];
79
- return (h(Host, { key: 'd177bbbc08a869a96d94c09de2c9f7c40ed479e5' }, this.loginMethod === 'redirect' && (h("div", { class: "redirect-container" }, !this.isAuthenticated && (h("sp-button", { part: "button", onClick: this._handleLoginRedirect }, this.buttonText)))), this.loginMethod === 'emebded' && (h("main", { class: "login-container" }, h("section", { class: "login-box" }, h("header", null, h("img", { src: this.logoUrl, alt: `${this.companyName} logo`, width: '100%', style: {
79
+ return (h(Host, { key: '00ff0a2496564f9e340f778b5310ca3d0359e726' }, this.loginMethod === 'redirect' && (h("div", { class: "redirect-container" }, !this.isAuthenticated && (h("sp-button", { part: "button", onClick: this._handleLoginRedirect }, this.buttonText)))), this.loginMethod === 'emebded' && (h("main", { class: "login-container" }, h("section", { class: "login-box" }, h("header", null, h("img", { src: this.logoUrl, alt: `${this.companyName} logo`, width: '100%', style: {
80
80
  minWidth: this.logoWidth,
81
81
  } }), h("h1", null, "Welcome")), h("p", null, "Log in to your account to continue to ", this.companyName), h("div", { class: "login-methods" }, splitProviders.includes('google') && (h("button", { class: "login-google", onClick: this._onGoogleButtonClick }, h("svg", { xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", role: "img", width: "18", height: "18", preserveAspectRatio: "xMidYMid meet", viewBox: "0 0 256 262" }, h("path", { fill: "#4285F4", d: "M255.6 131.6c0-8.2-.8-16.2-2.2-23.9H130v45.3h70.3c-3 16.1-12.4 29.7-26.3 38.9v32.4h42.6c25-23 39.4-56.7 39.4-97.7z" }), h("path", { fill: "#34A853", d: "M130 262c35.3 0 64.9-11.7 86.5-31.7l-42.6-32.4c-11.7 7.9-26.7 12.6-43.9 12.6-33.7 0-62.3-22.7-72.5-53.4H14.5v33.3A130.3 130.3 0 00130 262z" }), h("path", { fill: "#FBBC05", d: "M57.5 158.1a72.7 72.7 0 010-54.2V70.6H14.5a130.4 130.4 0 000 120.8l43-33.3z" }), h("path", { fill: "#EA4335", d: "M130 51.6c19 0 36 6.5 49.4 19.2l37-36C195 13.1 165.2 0 130 0A130.3 130.3 0 0014.5 70.6l43 33.3c10.2-30.7 38.8-53.3 72.5-53.3z" })), "Continue with Google")), splitProviders.includes('microsoft') && (h("button", { class: "login-microsoft", onClick: this._onMicrosoftButtonClick }, h("svg", { xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", role: "img", width: "18", height: "18", preserveAspectRatio: "xMidYMid meet", viewBox: "0 0 448 512" }, h("path", { fill: "#F3F3F3", d: "M0 32v192h192V32H0zm256 0v192h192V32H256zm192 256v192h-192V288h192zM0 224v192h192V224H0z" })), "Continue with Microsoft"))), h("form", { class: "login-form", method: "POST", onSubmit: this._onFormSubmit }, h("label", { htmlFor: "email" }, "Email"), h("input", { type: "email", id: "email", name: "email", required: true, value: this.email }), h("button", { type: "submit" }, "Next")))))));
82
82
  }