@nylas/web-elements 1.1.0-canary.7 → 1.1.0-canary.9

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 (473) hide show
  1. package/dist/cjs/{add-circle-icon_22.cjs.entry.js → add-circle-icon_21.cjs.entry.js} +55 -165
  2. package/dist/cjs/add-circle-icon_21.cjs.entry.js.map +1 -0
  3. package/dist/cjs/forward-icon_6.cjs.entry.js +2 -2
  4. package/dist/cjs/google-logo-icon_4.cjs.entry.js +24 -16
  5. package/dist/cjs/google-logo-icon_4.cjs.entry.js.map +1 -1
  6. package/dist/cjs/index.cjs.js +2 -2
  7. package/dist/cjs/{index.es-b12b7df1.js → index.es-cc2d145f.js} +3 -3
  8. package/dist/cjs/index.es-cc2d145f.js.map +1 -0
  9. package/dist/cjs/{index.es-0a0f2d87.js → index.es-ec84e726.js} +3 -3
  10. package/dist/cjs/index.es-ec84e726.js.map +1 -0
  11. package/dist/cjs/loader.cjs.js +1 -1
  12. package/dist/cjs/{mailbox-store-14531fd4.js → mailbox-store-5ea7604e.js} +3 -3
  13. package/dist/cjs/{mailbox-store-05fa3bec.js.map → mailbox-store-5ea7604e.js.map} +1 -1
  14. package/dist/cjs/{mailbox-store-05fa3bec.js → mailbox-store-a02df2a7.js} +3 -3
  15. package/dist/cjs/{mailbox-store-14531fd4.js.map → mailbox-store-a02df2a7.js.map} +1 -1
  16. package/dist/cjs/multi-select-dropdown.cjs.entry.js +1 -1
  17. package/dist/cjs/nylas-additional-participants.cjs.entry.js +2 -2
  18. package/dist/cjs/{nylas-api-request-abdb8dd8.js → nylas-api-request-05f1e068.js} +2 -2
  19. package/dist/cjs/{nylas-api-request-abdb8dd8.js.map → nylas-api-request-05f1e068.js.map} +1 -1
  20. package/dist/cjs/{nylas-api-request-27c25287.js → nylas-api-request-de316f1a.js} +2 -2
  21. package/dist/cjs/{nylas-api-request-27c25287.js.map → nylas-api-request-de316f1a.js.map} +1 -1
  22. package/dist/cjs/nylas-availability-picker.cjs.entry.js +4 -3
  23. package/dist/cjs/nylas-availability-picker.cjs.entry.js.map +1 -1
  24. package/dist/cjs/nylas-booked-event-card.cjs.entry.js +21 -5
  25. package/dist/cjs/nylas-booked-event-card.cjs.entry.js.map +1 -1
  26. package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js +54 -9
  27. package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js.map +1 -1
  28. package/dist/cjs/nylas-booking-calendar-picker.cjs.entry.js +2 -2
  29. package/dist/cjs/nylas-booking-form.cjs.entry.js +2 -2
  30. package/dist/cjs/nylas-buffer-time.cjs.entry.js +4 -4
  31. package/dist/cjs/nylas-buffer-time.cjs.entry.js.map +1 -1
  32. package/dist/cjs/nylas-calendar-picker.cjs.entry.js +2 -2
  33. package/dist/cjs/nylas-cancel-booking-form.cjs.entry.js +2 -2
  34. package/dist/cjs/nylas-cancelled-event-card.cjs.entry.js +22 -5
  35. package/dist/cjs/nylas-cancelled-event-card.cjs.entry.js.map +1 -1
  36. package/dist/cjs/nylas-composer.cjs.entry.js +1 -1
  37. package/dist/cjs/nylas-custom-booking-flow.cjs.entry.js +2 -2
  38. package/dist/cjs/nylas-date-picker.cjs.entry.js +15 -3
  39. package/dist/cjs/nylas-date-picker.cjs.entry.js.map +1 -1
  40. package/dist/cjs/nylas-editor-tabs.cjs.entry.js +18 -12
  41. package/dist/cjs/nylas-editor-tabs.cjs.entry.js.map +1 -1
  42. package/dist/cjs/nylas-event-description.cjs.entry.js +2 -2
  43. package/dist/cjs/nylas-event-duration.cjs.entry.js +2 -2
  44. package/dist/cjs/nylas-event-info.cjs.entry.js +3 -3
  45. package/dist/cjs/nylas-event-info.cjs.entry.js.map +1 -1
  46. package/dist/cjs/nylas-event-limits.cjs.entry.js +3 -3
  47. package/dist/cjs/nylas-event-limits.cjs.entry.js.map +1 -1
  48. package/dist/cjs/nylas-event-title.cjs.entry.js +22 -11
  49. package/dist/cjs/nylas-event-title.cjs.entry.js.map +1 -1
  50. package/dist/cjs/nylas-form-card.cjs.entry.js +2 -2
  51. package/dist/cjs/nylas-if-state.cjs.entry.js +2 -2
  52. package/dist/cjs/nylas-limit-future-bookings.cjs.entry.js +3 -3
  53. package/dist/cjs/nylas-limit-future-bookings.cjs.entry.js.map +1 -1
  54. package/dist/cjs/nylas-list-configurations.cjs.entry.js +8 -6
  55. package/dist/cjs/nylas-list-configurations.cjs.entry.js.map +1 -1
  56. package/dist/cjs/nylas-list-folders.cjs.entry.js +2 -2
  57. package/dist/cjs/nylas-list-threads.cjs.entry.js +2 -2
  58. package/dist/cjs/nylas-locale-switch.cjs.entry.js +2 -2
  59. package/dist/cjs/nylas-location-component.cjs.entry.js +3 -3
  60. package/dist/cjs/nylas-location-component.cjs.entry.js.map +1 -1
  61. package/dist/cjs/nylas-login.cjs.entry.js +2 -2
  62. package/dist/cjs/nylas-mailbox-pagination.cjs.entry.js +2 -2
  63. package/dist/cjs/nylas-mailbox-toolbar-button.cjs.entry.js +2 -2
  64. package/dist/cjs/nylas-mailbox.cjs.entry.js +3 -3
  65. package/dist/cjs/nylas-min-cancellation-notice.cjs.entry.js +3 -3
  66. package/dist/cjs/nylas-min-cancellation-notice.cjs.entry.js.map +1 -1
  67. package/dist/cjs/nylas-notification.cjs.entry.js +1 -1
  68. package/dist/cjs/nylas-provider.cjs.entry.js +5 -5
  69. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js +8 -14
  70. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js.map +1 -1
  71. package/dist/cjs/nylas-scheduling.cjs.entry.js +35 -12
  72. package/dist/cjs/nylas-scheduling.cjs.entry.js.map +1 -1
  73. package/dist/cjs/nylas-selected-event-card.cjs.entry.js +2 -2
  74. package/dist/cjs/nylas-summarize-message-button.cjs.entry.js +2 -2
  75. package/dist/cjs/nylas-threads-refresh.cjs.entry.js +2 -2
  76. package/dist/cjs/nylas-threads-search.cjs.entry.js +2 -2
  77. package/dist/cjs/nylas-time-window-picker.cjs.entry.js +1 -1
  78. package/dist/cjs/nylas-timeslot-picker.cjs.entry.js +2 -2
  79. package/dist/cjs/nylas-view-email.cjs.entry.js +1 -1
  80. package/dist/cjs/nylas-view-thread.cjs.entry.js +2 -2
  81. package/dist/cjs/nylas-web-elements.cjs.js +1 -1
  82. package/dist/cjs/{register-component-09ebdf31.js → register-component-2c3ad1d1.js} +2 -2
  83. package/dist/cjs/{register-component-09ebdf31.js.map → register-component-2c3ad1d1.js.map} +1 -1
  84. package/dist/cjs/{register-component-c8b6e907.js → register-component-4f8ae42c.js} +2 -2
  85. package/dist/cjs/{register-component-c8b6e907.js.map → register-component-4f8ae42c.js.map} +1 -1
  86. package/dist/cjs/{scheduler-config-store-37690bf0.js → scheduler-config-store-918c20d5.js} +3 -4
  87. package/dist/cjs/scheduler-config-store-918c20d5.js.map +1 -0
  88. package/dist/cjs/{scheduler-config-store-529c8d7e.js → scheduler-config-store-a5b7c08b.js} +3 -4
  89. package/dist/cjs/scheduler-config-store-a5b7c08b.js.map +1 -0
  90. package/dist/cjs/{scheduler-store-67dc1986.js → scheduler-store-33e204ef.js} +39 -7
  91. package/dist/cjs/scheduler-store-33e204ef.js.map +1 -0
  92. package/dist/cjs/{scheduler-store-0081970d.js → scheduler-store-df23f511.js} +39 -7
  93. package/dist/cjs/scheduler-store-df23f511.js.map +1 -0
  94. package/dist/cjs/time-period-selector.cjs.entry.js +1 -1
  95. package/dist/cjs/{utils-2c7f0895.js → utils-85bd0909.js} +109 -2
  96. package/dist/cjs/utils-85bd0909.js.map +1 -0
  97. package/dist/cjs/{utils-20663d54.js → utils-e6d76818.js} +109 -2
  98. package/dist/cjs/utils-e6d76818.js.map +1 -0
  99. package/dist/collection/common/types.js.map +1 -1
  100. package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.css +2 -1
  101. package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.js +56 -3
  102. package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.js.map +1 -1
  103. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js +75 -6
  104. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js.map +1 -1
  105. package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.js +37 -3
  106. package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.js.map +1 -1
  107. package/dist/collection/components/scheduler/nylas-scheduler/nylas-scheduling.js +41 -12
  108. package/dist/collection/components/scheduler/nylas-scheduler/nylas-scheduling.js.map +1 -1
  109. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js +2 -1
  110. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js.map +1 -1
  111. package/dist/collection/components/scheduler-editor/nylas-buffer-time/nylas-buffer-time.css +23 -3
  112. package/dist/collection/components/scheduler-editor/nylas-buffer-time/nylas-buffer-time.js +1 -1
  113. package/dist/collection/components/scheduler-editor/nylas-buffer-time/nylas-buffer-time.js.map +1 -1
  114. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.css +7 -0
  115. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js +39 -14
  116. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js.map +1 -1
  117. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js +1 -1
  118. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js.map +1 -1
  119. package/dist/collection/components/scheduler-editor/nylas-event-info/nylas-event-info.js +1 -1
  120. package/dist/collection/components/scheduler-editor/nylas-event-info/nylas-event-info.js.map +1 -1
  121. package/dist/collection/components/scheduler-editor/nylas-event-limits/nylas-event-limits.js +1 -1
  122. package/dist/collection/components/scheduler-editor/nylas-event-limits/nylas-event-limits.js.map +1 -1
  123. package/dist/collection/components/scheduler-editor/nylas-event-title/nylas-event-title.js +21 -10
  124. package/dist/collection/components/scheduler-editor/nylas-event-title/nylas-event-title.js.map +1 -1
  125. package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.css +7 -1
  126. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.css +20 -2
  127. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.js +5 -3
  128. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.js.map +1 -1
  129. package/dist/collection/components/scheduler-editor/nylas-location-component/nylas-location-component.css +5 -0
  130. package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.css +7 -1
  131. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.css +20 -0
  132. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js +6 -13
  133. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js.map +1 -1
  134. package/dist/collection/connector/shared/api/scheduler-config.js +0 -1
  135. package/dist/collection/connector/shared/api/scheduler-config.js.map +1 -1
  136. package/dist/collection/connector/shared/api/scheduler.js +37 -5
  137. package/dist/collection/connector/shared/api/scheduler.js.map +1 -1
  138. package/dist/collection/stores/scheduler-config-store.js +2 -3
  139. package/dist/collection/stores/scheduler-config-store.js.map +1 -1
  140. package/dist/collection/stores/scheduler-store.js.map +1 -1
  141. package/dist/collection/utils/utils.js +104 -1
  142. package/dist/collection/utils/utils.js.map +1 -1
  143. package/dist/components/index.es.js +2 -2
  144. package/dist/components/index.es.js.map +1 -1
  145. package/dist/components/nylas-availability-picker2.js +2 -1
  146. package/dist/components/nylas-availability-picker2.js.map +1 -1
  147. package/dist/components/nylas-booked-event-card2.js +22 -5
  148. package/dist/components/nylas-booked-event-card2.js.map +1 -1
  149. package/dist/components/nylas-buffer-time2.js +2 -2
  150. package/dist/components/nylas-buffer-time2.js.map +1 -1
  151. package/dist/components/nylas-cancelled-event-card2.js +23 -4
  152. package/dist/components/nylas-cancelled-event-card2.js.map +1 -1
  153. package/dist/components/nylas-custom-booking-flow.js +170 -1
  154. package/dist/components/nylas-custom-booking-flow.js.map +1 -1
  155. package/dist/components/nylas-date-picker2.js +17 -3
  156. package/dist/components/nylas-date-picker2.js.map +1 -1
  157. package/dist/components/nylas-editor-tabs2.js +52 -51
  158. package/dist/components/nylas-editor-tabs2.js.map +1 -1
  159. package/dist/components/nylas-event-info2.js +1 -1
  160. package/dist/components/nylas-event-info2.js.map +1 -1
  161. package/dist/components/nylas-event-limits2.js +1 -1
  162. package/dist/components/nylas-event-limits2.js.map +1 -1
  163. package/dist/components/nylas-event-title2.js +21 -10
  164. package/dist/components/nylas-event-title2.js.map +1 -1
  165. package/dist/components/nylas-limit-future-bookings2.js +1 -1
  166. package/dist/components/nylas-limit-future-bookings2.js.map +1 -1
  167. package/dist/components/nylas-list-configurations2.js +7 -5
  168. package/dist/components/nylas-list-configurations2.js.map +1 -1
  169. package/dist/components/nylas-list-folders.js +1 -1
  170. package/dist/components/nylas-list-threads.js +1 -1
  171. package/dist/components/nylas-location-component2.js +1 -1
  172. package/dist/components/nylas-location-component2.js.map +1 -1
  173. package/dist/components/nylas-min-cancellation-notice2.js +1 -1
  174. package/dist/components/nylas-min-cancellation-notice2.js.map +1 -1
  175. package/dist/components/nylas-scheduler-editor.js +46 -59
  176. package/dist/components/nylas-scheduler-editor.js.map +1 -1
  177. package/dist/components/nylas-scheduling.js +34 -11
  178. package/dist/components/nylas-scheduling.js.map +1 -1
  179. package/dist/components/nylas-summarize-message-button2.js +1 -1
  180. package/dist/components/nylas-timeslot-picker2.js +1 -1
  181. package/dist/components/nylas-view-email2.js +1 -1
  182. package/dist/components/nylas-view-thread.js +1 -1
  183. package/dist/components/scheduler-config-store.js +2 -3
  184. package/dist/components/scheduler-config-store.js.map +1 -1
  185. package/dist/components/scheduler-store.js +37 -5
  186. package/dist/components/scheduler-store.js.map +1 -1
  187. package/dist/components/utils.js +105 -2
  188. package/dist/components/utils.js.map +1 -1
  189. package/dist/esm/{add-circle-icon_22.entry.js → add-circle-icon_21.entry.js} +56 -165
  190. package/dist/esm/add-circle-icon_21.entry.js.map +1 -0
  191. package/dist/esm/forward-icon_6.entry.js +2 -2
  192. package/dist/esm/google-logo-icon_4.entry.js +24 -16
  193. package/dist/esm/google-logo-icon_4.entry.js.map +1 -1
  194. package/dist/esm/{index.es-f57e612a.js → index.es-be19d2df.js} +3 -3
  195. package/dist/esm/index.es-be19d2df.js.map +1 -0
  196. package/dist/esm/{index.es-2842f8c8.js → index.es-eb477d56.js} +3 -3
  197. package/dist/esm/index.es-eb477d56.js.map +1 -0
  198. package/dist/esm/index.js +2 -2
  199. package/dist/esm/loader.js +1 -1
  200. package/dist/esm/{mailbox-store-47fc8a1a.js → mailbox-store-76540d24.js} +3 -3
  201. package/dist/{nylas-web-elements/mailbox-store-d48269de.js.map → esm/mailbox-store-76540d24.js.map} +1 -1
  202. package/dist/{nylas-web-elements/mailbox-store-d48269de.js → esm/mailbox-store-9f819402.js} +3 -3
  203. package/dist/esm/{mailbox-store-47fc8a1a.js.map → mailbox-store-9f819402.js.map} +1 -1
  204. package/dist/esm/multi-select-dropdown.entry.js +1 -1
  205. package/dist/esm/nylas-additional-participants.entry.js +2 -2
  206. package/dist/esm/{nylas-api-request-8932547a.js → nylas-api-request-59738f8c.js} +2 -2
  207. package/dist/esm/{nylas-api-request-8932547a.js.map → nylas-api-request-59738f8c.js.map} +1 -1
  208. package/dist/{nylas-web-elements/nylas-api-request-b085294d.js → esm/nylas-api-request-ff2869d7.js} +2 -2
  209. package/dist/esm/{nylas-api-request-b085294d.js.map → nylas-api-request-ff2869d7.js.map} +1 -1
  210. package/dist/esm/nylas-availability-picker.entry.js +4 -3
  211. package/dist/esm/nylas-availability-picker.entry.js.map +1 -1
  212. package/dist/esm/nylas-booked-event-card.entry.js +21 -5
  213. package/dist/esm/nylas-booked-event-card.entry.js.map +1 -1
  214. package/dist/esm/nylas-booked-event-card_10.entry.js +54 -9
  215. package/dist/esm/nylas-booked-event-card_10.entry.js.map +1 -1
  216. package/dist/esm/nylas-booking-calendar-picker.entry.js +2 -2
  217. package/dist/esm/nylas-booking-form.entry.js +2 -2
  218. package/dist/esm/nylas-buffer-time.entry.js +4 -4
  219. package/dist/esm/nylas-buffer-time.entry.js.map +1 -1
  220. package/dist/esm/nylas-calendar-picker.entry.js +2 -2
  221. package/dist/esm/nylas-cancel-booking-form.entry.js +2 -2
  222. package/dist/esm/nylas-cancelled-event-card.entry.js +22 -5
  223. package/dist/esm/nylas-cancelled-event-card.entry.js.map +1 -1
  224. package/dist/esm/nylas-composer.entry.js +1 -1
  225. package/dist/esm/nylas-custom-booking-flow.entry.js +2 -2
  226. package/dist/esm/nylas-date-picker.entry.js +15 -3
  227. package/dist/esm/nylas-date-picker.entry.js.map +1 -1
  228. package/dist/esm/nylas-editor-tabs.entry.js +18 -12
  229. package/dist/esm/nylas-editor-tabs.entry.js.map +1 -1
  230. package/dist/esm/nylas-event-description.entry.js +2 -2
  231. package/dist/esm/nylas-event-duration.entry.js +2 -2
  232. package/dist/esm/nylas-event-info.entry.js +3 -3
  233. package/dist/esm/nylas-event-info.entry.js.map +1 -1
  234. package/dist/esm/nylas-event-limits.entry.js +3 -3
  235. package/dist/esm/nylas-event-limits.entry.js.map +1 -1
  236. package/dist/esm/nylas-event-title.entry.js +22 -11
  237. package/dist/esm/nylas-event-title.entry.js.map +1 -1
  238. package/dist/esm/nylas-form-card.entry.js +2 -2
  239. package/dist/esm/nylas-if-state.entry.js +2 -2
  240. package/dist/esm/nylas-limit-future-bookings.entry.js +3 -3
  241. package/dist/esm/nylas-limit-future-bookings.entry.js.map +1 -1
  242. package/dist/esm/nylas-list-configurations.entry.js +8 -6
  243. package/dist/esm/nylas-list-configurations.entry.js.map +1 -1
  244. package/dist/esm/nylas-list-folders.entry.js +2 -2
  245. package/dist/esm/nylas-list-threads.entry.js +2 -2
  246. package/dist/esm/nylas-locale-switch.entry.js +2 -2
  247. package/dist/esm/nylas-location-component.entry.js +3 -3
  248. package/dist/esm/nylas-location-component.entry.js.map +1 -1
  249. package/dist/esm/nylas-login.entry.js +2 -2
  250. package/dist/esm/nylas-mailbox-pagination.entry.js +2 -2
  251. package/dist/esm/nylas-mailbox-toolbar-button.entry.js +2 -2
  252. package/dist/esm/nylas-mailbox.entry.js +3 -3
  253. package/dist/esm/nylas-min-cancellation-notice.entry.js +3 -3
  254. package/dist/esm/nylas-min-cancellation-notice.entry.js.map +1 -1
  255. package/dist/esm/nylas-notification.entry.js +1 -1
  256. package/dist/esm/nylas-provider.entry.js +5 -5
  257. package/dist/esm/nylas-scheduler-editor.entry.js +8 -14
  258. package/dist/esm/nylas-scheduler-editor.entry.js.map +1 -1
  259. package/dist/esm/nylas-scheduling.entry.js +35 -12
  260. package/dist/esm/nylas-scheduling.entry.js.map +1 -1
  261. package/dist/esm/nylas-selected-event-card.entry.js +2 -2
  262. package/dist/esm/nylas-summarize-message-button.entry.js +2 -2
  263. package/dist/esm/nylas-threads-refresh.entry.js +2 -2
  264. package/dist/esm/nylas-threads-search.entry.js +2 -2
  265. package/dist/esm/nylas-time-window-picker.entry.js +1 -1
  266. package/dist/esm/nylas-timeslot-picker.entry.js +2 -2
  267. package/dist/esm/nylas-view-email.entry.js +1 -1
  268. package/dist/esm/nylas-view-thread.entry.js +2 -2
  269. package/dist/esm/nylas-web-elements.js +1 -1
  270. package/dist/{nylas-web-elements/register-component-e5afe237.js → esm/register-component-0462b27d.js} +2 -2
  271. package/dist/esm/{register-component-cf5c8420.js.map → register-component-0462b27d.js.map} +1 -1
  272. package/dist/esm/{register-component-cf5c8420.js → register-component-83e24412.js} +2 -2
  273. package/dist/esm/{register-component-e5afe237.js.map → register-component-83e24412.js.map} +1 -1
  274. package/dist/{nylas-web-elements/scheduler-config-store-8f2e658e.js → esm/scheduler-config-store-8ccc8dc7.js} +3 -4
  275. package/dist/esm/scheduler-config-store-8ccc8dc7.js.map +1 -0
  276. package/dist/esm/{scheduler-config-store-07d98279.js → scheduler-config-store-ec3b6190.js} +3 -4
  277. package/dist/esm/scheduler-config-store-ec3b6190.js.map +1 -0
  278. package/dist/esm/{scheduler-store-a175fc3e.js → scheduler-store-8ca9003d.js} +39 -7
  279. package/dist/esm/scheduler-store-8ca9003d.js.map +1 -0
  280. package/dist/esm/{scheduler-store-66c2168c.js → scheduler-store-e314bbe6.js} +39 -7
  281. package/dist/esm/scheduler-store-e314bbe6.js.map +1 -0
  282. package/dist/esm/time-period-selector.entry.js +1 -1
  283. package/dist/esm/{utils-73d8a928.js → utils-157014b4.js} +106 -3
  284. package/dist/esm/utils-157014b4.js.map +1 -0
  285. package/dist/esm/{utils-d6204242.js → utils-e6b73120.js} +106 -3
  286. package/dist/esm/utils-e6b73120.js.map +1 -0
  287. package/dist/nylas-web-elements/{index.es-2842f8c8.js → index.es-eb477d56.js} +3 -3
  288. package/dist/nylas-web-elements/index.es-eb477d56.js.map +1 -0
  289. package/dist/nylas-web-elements/index.esm.js +2 -2
  290. package/dist/{esm/mailbox-store-d48269de.js → nylas-web-elements/mailbox-store-9f819402.js} +3 -3
  291. package/dist/{esm/mailbox-store-d48269de.js.map → nylas-web-elements/mailbox-store-9f819402.js.map} +1 -1
  292. package/dist/nylas-web-elements/multi-select-dropdown.entry.js +1 -1
  293. package/dist/nylas-web-elements/nylas-additional-participants.entry.js +2 -2
  294. package/dist/{esm/nylas-api-request-b085294d.js → nylas-web-elements/nylas-api-request-ff2869d7.js} +2 -2
  295. package/dist/nylas-web-elements/{nylas-api-request-b085294d.js.map → nylas-api-request-ff2869d7.js.map} +1 -1
  296. package/dist/nylas-web-elements/nylas-availability-picker.entry.js +4 -3
  297. package/dist/nylas-web-elements/nylas-availability-picker.entry.js.map +1 -1
  298. package/dist/nylas-web-elements/nylas-booked-event-card.entry.js +21 -5
  299. package/dist/nylas-web-elements/nylas-booked-event-card.entry.js.map +1 -1
  300. package/dist/nylas-web-elements/nylas-booking-calendar-picker.entry.js +2 -2
  301. package/dist/nylas-web-elements/nylas-booking-form.entry.js +2 -2
  302. package/dist/nylas-web-elements/nylas-buffer-time.entry.js +4 -4
  303. package/dist/nylas-web-elements/nylas-buffer-time.entry.js.map +1 -1
  304. package/dist/nylas-web-elements/nylas-calendar-picker.entry.js +2 -2
  305. package/dist/nylas-web-elements/nylas-cancel-booking-form.entry.js +2 -2
  306. package/dist/nylas-web-elements/nylas-cancelled-event-card.entry.js +22 -5
  307. package/dist/nylas-web-elements/nylas-cancelled-event-card.entry.js.map +1 -1
  308. package/dist/nylas-web-elements/nylas-composer.entry.js +1 -1
  309. package/dist/nylas-web-elements/nylas-custom-booking-flow.entry.js +2 -2
  310. package/dist/nylas-web-elements/nylas-date-picker.entry.js +15 -3
  311. package/dist/nylas-web-elements/nylas-date-picker.entry.js.map +1 -1
  312. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js +18 -12
  313. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js.map +1 -1
  314. package/dist/nylas-web-elements/nylas-event-description.entry.js +2 -2
  315. package/dist/nylas-web-elements/nylas-event-duration.entry.js +2 -2
  316. package/dist/nylas-web-elements/nylas-event-info.entry.js +3 -3
  317. package/dist/nylas-web-elements/nylas-event-info.entry.js.map +1 -1
  318. package/dist/nylas-web-elements/nylas-event-limits.entry.js +3 -3
  319. package/dist/nylas-web-elements/nylas-event-limits.entry.js.map +1 -1
  320. package/dist/nylas-web-elements/nylas-event-title.entry.js +22 -11
  321. package/dist/nylas-web-elements/nylas-event-title.entry.js.map +1 -1
  322. package/dist/nylas-web-elements/nylas-form-card.entry.js +2 -2
  323. package/dist/nylas-web-elements/nylas-if-state.entry.js +2 -2
  324. package/dist/nylas-web-elements/nylas-limit-future-bookings.entry.js +3 -3
  325. package/dist/nylas-web-elements/nylas-limit-future-bookings.entry.js.map +1 -1
  326. package/dist/nylas-web-elements/nylas-list-configurations.entry.js +8 -6
  327. package/dist/nylas-web-elements/nylas-list-configurations.entry.js.map +1 -1
  328. package/dist/nylas-web-elements/nylas-list-folders.entry.js +2 -2
  329. package/dist/nylas-web-elements/nylas-list-threads.entry.js +2 -2
  330. package/dist/nylas-web-elements/nylas-locale-switch.entry.js +2 -2
  331. package/dist/nylas-web-elements/nylas-location-component.entry.js +3 -3
  332. package/dist/nylas-web-elements/nylas-location-component.entry.js.map +1 -1
  333. package/dist/nylas-web-elements/nylas-login.entry.js +2 -2
  334. package/dist/nylas-web-elements/nylas-mailbox-pagination.entry.js +2 -2
  335. package/dist/nylas-web-elements/nylas-mailbox-toolbar-button.entry.js +2 -2
  336. package/dist/nylas-web-elements/nylas-mailbox.entry.js +3 -3
  337. package/dist/nylas-web-elements/nylas-min-cancellation-notice.entry.js +3 -3
  338. package/dist/nylas-web-elements/nylas-min-cancellation-notice.entry.js.map +1 -1
  339. package/dist/nylas-web-elements/nylas-notification.entry.js +1 -1
  340. package/dist/nylas-web-elements/nylas-provider.entry.js +5 -5
  341. package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js +8 -14
  342. package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js.map +1 -1
  343. package/dist/nylas-web-elements/nylas-scheduling.entry.js +35 -12
  344. package/dist/nylas-web-elements/nylas-scheduling.entry.js.map +1 -1
  345. package/dist/nylas-web-elements/nylas-selected-event-card.entry.js +2 -2
  346. package/dist/nylas-web-elements/nylas-summarize-message-button.entry.js +2 -2
  347. package/dist/nylas-web-elements/nylas-threads-refresh.entry.js +2 -2
  348. package/dist/nylas-web-elements/nylas-threads-search.entry.js +2 -2
  349. package/dist/nylas-web-elements/nylas-time-window-picker.entry.js +1 -1
  350. package/dist/nylas-web-elements/nylas-timeslot-picker.entry.js +2 -2
  351. package/dist/nylas-web-elements/nylas-view-email.entry.js +1 -1
  352. package/dist/nylas-web-elements/nylas-view-thread.entry.js +2 -2
  353. package/dist/nylas-web-elements/nylas-web-elements.esm.js +1 -1
  354. package/dist/nylas-web-elements/{p-41dc0d93.js → p-01e86103.js} +2 -2
  355. package/dist/nylas-web-elements/p-01e86103.js.map +1 -0
  356. package/dist/nylas-web-elements/{p-ad64c2b8.entry.js → p-0d1caebd.entry.js} +2 -2
  357. package/dist/nylas-web-elements/{p-a628eaeb.js → p-0dabcb4d.js} +2 -2
  358. package/dist/nylas-web-elements/{p-42791515.entry.js → p-2b63efd8.entry.js} +2 -2
  359. package/dist/nylas-web-elements/p-30f17ef2.entry.js +2 -0
  360. package/dist/nylas-web-elements/p-30f17ef2.entry.js.map +1 -0
  361. package/dist/nylas-web-elements/{p-f154a362.entry.js → p-38675cc5.entry.js} +2 -2
  362. package/dist/nylas-web-elements/p-39aa2263.js +2 -0
  363. package/dist/nylas-web-elements/p-39aa2263.js.map +1 -0
  364. package/dist/nylas-web-elements/{p-cc674b3b.entry.js → p-44a0f658.entry.js} +3 -3
  365. package/dist/nylas-web-elements/{p-cc674b3b.entry.js.map → p-44a0f658.entry.js.map} +1 -1
  366. package/dist/nylas-web-elements/{p-75a8d077.entry.js → p-47fa06de.entry.js} +2 -2
  367. package/dist/nylas-web-elements/{p-df6d54c7.entry.js → p-48b205a2.entry.js} +2 -2
  368. package/dist/nylas-web-elements/{p-6110351b.entry.js → p-551871cb.entry.js} +2 -2
  369. package/dist/nylas-web-elements/{p-bbf9aff2.entry.js → p-61b25ea6.entry.js} +2 -2
  370. package/dist/nylas-web-elements/p-74492776.entry.js +2 -0
  371. package/dist/nylas-web-elements/p-74492776.entry.js.map +1 -0
  372. package/dist/nylas-web-elements/{p-1d25ca06.entry.js → p-75bc6ef8.entry.js} +2 -2
  373. package/dist/nylas-web-elements/p-76461af6.entry.js +2 -0
  374. package/dist/nylas-web-elements/p-76461af6.entry.js.map +1 -0
  375. package/dist/nylas-web-elements/{p-7c55dfa0.entry.js → p-78e7f732.entry.js} +2 -2
  376. package/dist/nylas-web-elements/{p-eaa9151b.js → p-8b53becf.js} +2 -2
  377. package/dist/nylas-web-elements/{p-e22aa0b0.js → p-8f88a748.js} +2 -2
  378. package/dist/nylas-web-elements/p-8ffc644d.entry.js +2 -0
  379. package/dist/nylas-web-elements/p-8ffc644d.entry.js.map +1 -0
  380. package/dist/nylas-web-elements/{p-665ef10b.entry.js → p-933c6d32.entry.js} +4 -4
  381. package/dist/nylas-web-elements/p-933c6d32.entry.js.map +1 -0
  382. package/dist/nylas-web-elements/{p-e03b2592.entry.js → p-a002b4cf.entry.js} +2 -2
  383. package/dist/nylas-web-elements/p-ab09a78d.js +2 -0
  384. package/dist/nylas-web-elements/p-ab09a78d.js.map +1 -0
  385. package/dist/nylas-web-elements/p-b1b3eb52.entry.js +2 -0
  386. package/dist/nylas-web-elements/p-b1b3eb52.entry.js.map +1 -0
  387. package/dist/nylas-web-elements/{p-f1f8f745.entry.js → p-b302fbb1.entry.js} +2 -2
  388. package/dist/nylas-web-elements/{p-80d6175c.entry.js → p-b77c316c.entry.js} +2 -2
  389. package/dist/nylas-web-elements/{p-33b940fb.entry.js → p-d3065401.entry.js} +2 -2
  390. package/dist/nylas-web-elements/{p-343b8684.entry.js → p-da732fb1.entry.js} +2 -2
  391. package/dist/nylas-web-elements/p-ee91a2a0.js +2 -0
  392. package/dist/nylas-web-elements/p-ee91a2a0.js.map +1 -0
  393. package/dist/{esm/register-component-e5afe237.js → nylas-web-elements/register-component-0462b27d.js} +2 -2
  394. package/dist/nylas-web-elements/{register-component-e5afe237.js.map → register-component-0462b27d.js.map} +1 -1
  395. package/dist/{esm/scheduler-config-store-8f2e658e.js → nylas-web-elements/scheduler-config-store-8ccc8dc7.js} +3 -4
  396. package/dist/nylas-web-elements/scheduler-config-store-8ccc8dc7.js.map +1 -0
  397. package/dist/nylas-web-elements/{scheduler-store-66c2168c.js → scheduler-store-e314bbe6.js} +39 -7
  398. package/dist/nylas-web-elements/scheduler-store-e314bbe6.js.map +1 -0
  399. package/dist/nylas-web-elements/time-period-selector.entry.js +1 -1
  400. package/dist/nylas-web-elements/{utils-73d8a928.js → utils-157014b4.js} +106 -3
  401. package/dist/nylas-web-elements/utils-157014b4.js.map +1 -0
  402. package/dist/types/common/types.d.ts +10 -0
  403. package/dist/types/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.d.ts +8 -1
  404. package/dist/types/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.d.ts +8 -2
  405. package/dist/types/components/scheduler/nylas-date-picker/nylas-date-picker.d.ts +3 -0
  406. package/dist/types/components/scheduler/nylas-scheduler/nylas-scheduling.d.ts +2 -0
  407. package/dist/types/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.d.ts +1 -1
  408. package/dist/types/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.d.ts +2 -1
  409. package/dist/types/components/scheduler-editor/nylas-event-title/nylas-event-title.d.ts +1 -0
  410. package/dist/types/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.d.ts +1 -2
  411. package/dist/types/components.d.ts +87 -16
  412. package/dist/types/connector/shared/api/scheduler.d.ts +4 -1
  413. package/dist/types/stores/scheduler-config-store.d.ts +0 -1
  414. package/dist/types/stores/scheduler-store.d.ts +11 -0
  415. package/dist/types/utils/utils.d.ts +5 -0
  416. package/package.json +3 -3
  417. package/dist/cjs/add-circle-icon_22.cjs.entry.js.map +0 -1
  418. package/dist/cjs/index.es-0a0f2d87.js.map +0 -1
  419. package/dist/cjs/index.es-b12b7df1.js.map +0 -1
  420. package/dist/cjs/scheduler-config-store-37690bf0.js.map +0 -1
  421. package/dist/cjs/scheduler-config-store-529c8d7e.js.map +0 -1
  422. package/dist/cjs/scheduler-store-0081970d.js.map +0 -1
  423. package/dist/cjs/scheduler-store-67dc1986.js.map +0 -1
  424. package/dist/cjs/utils-20663d54.js.map +0 -1
  425. package/dist/cjs/utils-2c7f0895.js.map +0 -1
  426. package/dist/components/nylas-custom-booking-flow2.js +0 -174
  427. package/dist/components/nylas-custom-booking-flow2.js.map +0 -1
  428. package/dist/esm/add-circle-icon_22.entry.js.map +0 -1
  429. package/dist/esm/index.es-2842f8c8.js.map +0 -1
  430. package/dist/esm/index.es-f57e612a.js.map +0 -1
  431. package/dist/esm/scheduler-config-store-07d98279.js.map +0 -1
  432. package/dist/esm/scheduler-config-store-8f2e658e.js.map +0 -1
  433. package/dist/esm/scheduler-store-66c2168c.js.map +0 -1
  434. package/dist/esm/scheduler-store-a175fc3e.js.map +0 -1
  435. package/dist/esm/utils-73d8a928.js.map +0 -1
  436. package/dist/esm/utils-d6204242.js.map +0 -1
  437. package/dist/nylas-web-elements/index.es-2842f8c8.js.map +0 -1
  438. package/dist/nylas-web-elements/p-1a91cce5.entry.js +0 -2
  439. package/dist/nylas-web-elements/p-1a91cce5.entry.js.map +0 -1
  440. package/dist/nylas-web-elements/p-22e5436c.js +0 -2
  441. package/dist/nylas-web-elements/p-22e5436c.js.map +0 -1
  442. package/dist/nylas-web-elements/p-2b636359.entry.js +0 -2
  443. package/dist/nylas-web-elements/p-2b636359.entry.js.map +0 -1
  444. package/dist/nylas-web-elements/p-30784693.entry.js +0 -2
  445. package/dist/nylas-web-elements/p-30784693.entry.js.map +0 -1
  446. package/dist/nylas-web-elements/p-3909ec3f.entry.js +0 -2
  447. package/dist/nylas-web-elements/p-3909ec3f.entry.js.map +0 -1
  448. package/dist/nylas-web-elements/p-41dc0d93.js.map +0 -1
  449. package/dist/nylas-web-elements/p-665ef10b.entry.js.map +0 -1
  450. package/dist/nylas-web-elements/p-9ea458c3.js +0 -2
  451. package/dist/nylas-web-elements/p-9ea458c3.js.map +0 -1
  452. package/dist/nylas-web-elements/p-db15d382.js +0 -2
  453. package/dist/nylas-web-elements/p-db15d382.js.map +0 -1
  454. package/dist/nylas-web-elements/scheduler-config-store-8f2e658e.js.map +0 -1
  455. package/dist/nylas-web-elements/scheduler-store-66c2168c.js.map +0 -1
  456. package/dist/nylas-web-elements/utils-73d8a928.js.map +0 -1
  457. /package/dist/nylas-web-elements/{p-ad64c2b8.entry.js.map → p-0d1caebd.entry.js.map} +0 -0
  458. /package/dist/nylas-web-elements/{p-a628eaeb.js.map → p-0dabcb4d.js.map} +0 -0
  459. /package/dist/nylas-web-elements/{p-42791515.entry.js.map → p-2b63efd8.entry.js.map} +0 -0
  460. /package/dist/nylas-web-elements/{p-f154a362.entry.js.map → p-38675cc5.entry.js.map} +0 -0
  461. /package/dist/nylas-web-elements/{p-75a8d077.entry.js.map → p-47fa06de.entry.js.map} +0 -0
  462. /package/dist/nylas-web-elements/{p-df6d54c7.entry.js.map → p-48b205a2.entry.js.map} +0 -0
  463. /package/dist/nylas-web-elements/{p-6110351b.entry.js.map → p-551871cb.entry.js.map} +0 -0
  464. /package/dist/nylas-web-elements/{p-bbf9aff2.entry.js.map → p-61b25ea6.entry.js.map} +0 -0
  465. /package/dist/nylas-web-elements/{p-1d25ca06.entry.js.map → p-75bc6ef8.entry.js.map} +0 -0
  466. /package/dist/nylas-web-elements/{p-7c55dfa0.entry.js.map → p-78e7f732.entry.js.map} +0 -0
  467. /package/dist/nylas-web-elements/{p-eaa9151b.js.map → p-8b53becf.js.map} +0 -0
  468. /package/dist/nylas-web-elements/{p-e22aa0b0.js.map → p-8f88a748.js.map} +0 -0
  469. /package/dist/nylas-web-elements/{p-e03b2592.entry.js.map → p-a002b4cf.entry.js.map} +0 -0
  470. /package/dist/nylas-web-elements/{p-f1f8f745.entry.js.map → p-b302fbb1.entry.js.map} +0 -0
  471. /package/dist/nylas-web-elements/{p-80d6175c.entry.js.map → p-b77c316c.entry.js.map} +0 -0
  472. /package/dist/nylas-web-elements/{p-33b940fb.entry.js.map → p-d3065401.entry.js.map} +0 -0
  473. /package/dist/nylas-web-elements/{p-343b8684.entry.js.map → p-da732fb1.entry.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- import{r as e,h as t,H as n}from"./p-68c2fadf.js";import{R as s}from"./p-eaa9151b.js";import{a as i}from"./p-41dc0d93.js";import"./p-cb65c223.js";const a=":host{display:block}div{height:inherit}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.fade-in{animation:fadeIn 1.5s}.fade-out{animation:fadeOut 1.5s}@keyframes slideIn{0%{transform:translateY(100%)}100%{transform:translateY(0)}}@keyframes slideOut{0%{transform:translateY(0)}100%{transform:translateY(100%)}}.slide-in{animation:slideIn 1.5s}.slide-out{animation:slideOut 1.5s}@keyframes swipeIn{0%{transform:translateX(100%)}100%{transform:translateX(0)}}@keyframes swipeOut{0%{transform:translateX(0)}100%{transform:translateX(100%)}}.swipe-in{animation:swipeIn 1.5s}.swipe-out{animation:swipeOut 1.5s}";const o=a;var r=undefined&&undefined.__decorate||function(e,t,n,s){var i=arguments.length,a=i<3?t:s===null?s=Object.getOwnPropertyDescriptor(t,n):s,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")a=Reflect.decorate(e,t,n,s);else for(var r=e.length-1;r>=0;r--)if(o=e[r])a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a;return i>3&&a&&Object.defineProperty(t,n,a),a};var f=undefined&&undefined.__metadata||function(e,t){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,t)};const d=class{constructor(t){e(this,t);this.state=undefined;this.isStateSet=undefined;this.isBoolean=undefined;this.getStore=undefined;this.transition="none";this.show=false;this.classes={};this.initTransition=this.initTransition.bind(this)}connectedCallback(){}disconnectedCallback(){}async componentWillLoad(){i(`[nylas-if-state] Component will load`);this.watchStore(true)}async componentDidLoad(){i(`[nylas-if-state] Component did load`)}shouldRender(){const[e,t]=this.state?this.state.split("."):["",""];const n=this.getStore;if(typeof n==="undefined"){i(`[nylas-if-state] Store name: ${e} | State name: ${t}`,{getStore:n});return false}const s=n(e);if(typeof s==="undefined"){i(`[nylas-if-state] Store name: ${e} | State name: ${t}`,{store:s});return false}const a=s.state[t];if(typeof this.isStateSet==="boolean"){return this.isStateSet===false&&(typeof a==="undefined"||a===null||a.length===0)||this.isStateSet===true&&typeof a!=="undefined"&&a!==null}if(typeof this.isBoolean==="boolean"){return this.isBoolean===true&&typeof a!=="undefined"&&a===true||this.isBoolean===false&&typeof a!=="undefined"&&a===false}return false}onGetStoreChange(){this.watchStore(true)}watchStore(e=false){const[t,n]=this.state?this.state.split("."):["",""];const s=this.getStore;if(typeof s==="undefined"){i(`[nylas-if-state] Store name: ${t} | State name: ${n}`,{getStore:s});return null}const a=s(t);if(typeof a==="undefined"){i(`[nylas-if-state] Store name: ${t} | State name: ${n}`,{store:a});return null}if(e===true){this.initTransition()}a.onChange(n,this.initTransition)}initTransition(){const e=this.shouldRender();switch(this.transition){case"fade":case"slide":case"swipe":this.classes={[`${this.transition}-in`]:e,[`${this.transition}-out`]:!e};setTimeout((()=>{this.show=e}),150);break;default:this.show=this.shouldRender();break}}render(){return t(n,{key:"91d17bc89a09742106ef3bd9365c5ce48cf14e86"},t("div",{key:"9d0070be4bf5d9a5f405fc4a0733e6d832fa669a",class:this.classes},this.show&&t("slot",null)))}static get watchers(){return{getStore:["onGetStoreChange"]}}};r([s({name:"nylas-if-state",getStoresToProp:"getStore",fireRegisterEvent:true}),f("design:type",Function),f("design:paramtypes",[]),f("design:returntype",void 0)],d.prototype,"render",null);d.style=o;export{d as nylas_if_state};
2
- //# sourceMappingURL=p-e03b2592.entry.js.map
1
+ import{r as e,h as t,H as n}from"./p-68c2fadf.js";import{R as s}from"./p-8b53becf.js";import{a as i}from"./p-01e86103.js";import"./p-cb65c223.js";const a=":host{display:block}div{height:inherit}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.fade-in{animation:fadeIn 1.5s}.fade-out{animation:fadeOut 1.5s}@keyframes slideIn{0%{transform:translateY(100%)}100%{transform:translateY(0)}}@keyframes slideOut{0%{transform:translateY(0)}100%{transform:translateY(100%)}}.slide-in{animation:slideIn 1.5s}.slide-out{animation:slideOut 1.5s}@keyframes swipeIn{0%{transform:translateX(100%)}100%{transform:translateX(0)}}@keyframes swipeOut{0%{transform:translateX(0)}100%{transform:translateX(100%)}}.swipe-in{animation:swipeIn 1.5s}.swipe-out{animation:swipeOut 1.5s}";const o=a;var r=undefined&&undefined.__decorate||function(e,t,n,s){var i=arguments.length,a=i<3?t:s===null?s=Object.getOwnPropertyDescriptor(t,n):s,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")a=Reflect.decorate(e,t,n,s);else for(var r=e.length-1;r>=0;r--)if(o=e[r])a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a;return i>3&&a&&Object.defineProperty(t,n,a),a};var f=undefined&&undefined.__metadata||function(e,t){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,t)};const d=class{constructor(t){e(this,t);this.state=undefined;this.isStateSet=undefined;this.isBoolean=undefined;this.getStore=undefined;this.transition="none";this.show=false;this.classes={};this.initTransition=this.initTransition.bind(this)}connectedCallback(){}disconnectedCallback(){}async componentWillLoad(){i(`[nylas-if-state] Component will load`);this.watchStore(true)}async componentDidLoad(){i(`[nylas-if-state] Component did load`)}shouldRender(){const[e,t]=this.state?this.state.split("."):["",""];const n=this.getStore;if(typeof n==="undefined"){i(`[nylas-if-state] Store name: ${e} | State name: ${t}`,{getStore:n});return false}const s=n(e);if(typeof s==="undefined"){i(`[nylas-if-state] Store name: ${e} | State name: ${t}`,{store:s});return false}const a=s.state[t];if(typeof this.isStateSet==="boolean"){return this.isStateSet===false&&(typeof a==="undefined"||a===null||a.length===0)||this.isStateSet===true&&typeof a!=="undefined"&&a!==null}if(typeof this.isBoolean==="boolean"){return this.isBoolean===true&&typeof a!=="undefined"&&a===true||this.isBoolean===false&&typeof a!=="undefined"&&a===false}return false}onGetStoreChange(){this.watchStore(true)}watchStore(e=false){const[t,n]=this.state?this.state.split("."):["",""];const s=this.getStore;if(typeof s==="undefined"){i(`[nylas-if-state] Store name: ${t} | State name: ${n}`,{getStore:s});return null}const a=s(t);if(typeof a==="undefined"){i(`[nylas-if-state] Store name: ${t} | State name: ${n}`,{store:a});return null}if(e===true){this.initTransition()}a.onChange(n,this.initTransition)}initTransition(){const e=this.shouldRender();switch(this.transition){case"fade":case"slide":case"swipe":this.classes={[`${this.transition}-in`]:e,[`${this.transition}-out`]:!e};setTimeout((()=>{this.show=e}),150);break;default:this.show=this.shouldRender();break}}render(){return t(n,{key:"91d17bc89a09742106ef3bd9365c5ce48cf14e86"},t("div",{key:"9d0070be4bf5d9a5f405fc4a0733e6d832fa669a",class:this.classes},this.show&&t("slot",null)))}static get watchers(){return{getStore:["onGetStoreChange"]}}};r([s({name:"nylas-if-state",getStoresToProp:"getStore",fireRegisterEvent:true}),f("design:type",Function),f("design:paramtypes",[]),f("design:returntype",void 0)],d.prototype,"render",null);d.style=o;export{d as nylas_if_state};
2
+ //# sourceMappingURL=p-a002b4cf.entry.js.map
@@ -0,0 +1,2 @@
1
+ import{a as e}from"./p-01e86103.js";import{c as t}from"./p-cabb2e68.js";var i;(function(e){e["Component"]="component";e["Api"]="api";e["Auth"]="auth"})(i||(i={}));var n;(function(e){e["endtime_not_in_future"]="endtime_not_in_future";e["no_booking_info"]="no_booking_info";e["no_timeslot_selected"]="no_timeslot_selected";e["no_timezone_selected"]="no_timezone_selected";e["no_booking_id"]="no_booking_id";e["invalid_start_time"]="invalid_start_time";e["invalid_end_time"]="invalid_end_time";e["invalid_timezone"]="invalid_timezone"})(n||(n={}));var s;(function(e){e["invalid_session"]="invalid_session";e["general_error"]="general_error";e["internal_error"]="internal_error";e["invalid_request_error"]="invalid_request_error";e["timeslot_not_available"]="timeslot_not_available"})(s||(s={}));class o{constructor(){this.component=e=>{const t=i.Component;const n=`${e} error`;return{endtime_not_in_future:(e='"endtime" can not be in the future')=>({title:n,message:e,category:t}),no_booking_info:(e="No booking info provided")=>({title:n,message:e,category:t}),no_timeslot_selected:(e="No timeslot selected")=>({title:n,message:e,category:t}),no_timezone_selected:(e="No timezone selected")=>({title:n,message:e,category:t}),no_booking_id:(e="No booking id provided")=>({title:n,message:e,category:t}),invalid_start_time:(e="Invalid start time")=>({title:n,message:e,category:t}),invalid_end_time:(e="Invalid end time")=>({title:n,message:e,category:t}),invalid_timezone:(e="Invalid timezone")=>({title:n,message:e,category:t})}};this.api=e=>{const t=i.Api;const n=`${e} error`;return{invalid_session:e=>({title:n,message:e,category:t}),general_error:e=>({title:n,message:e,category:t}),internal_error:e=>({title:n,message:e,category:t}),invalid_request_error:e=>({title:n,message:e,category:t}),timeslot_not_available:e=>({title:n,message:e,category:t})}}}}class a{constructor({schedulerAPIURL:e,schedulerStore:t,sessionId:i,configId:n}){this.errors=new o;this.schedulerStore=t;this.schedulerAPIURL=e;this.sessionId=i;this.configId=n}getHeaders(){return!this.configId?{Authorization:`Bearer ${this.sessionId}`}:{}}async makeAPIRequest(e,t,i,n={}){try{const s=new URL(this.schedulerAPIURL);s.pathname=e;const o=await fetch(decodeURIComponent(s.toString()),{method:t,headers:{"Content-Type":"application/json",Origin:window.location.origin,...n},body:i});const a=await o.json();return a}catch(e){return{error:{message:e.message,title:"API request failed",type:"api"}}}}selectDate(e){this.schedulerStore.set("selectedDate",e);this.schedulerStore.set("selectedTimeslot",null)}selectTime(e){this.schedulerStore.set("selectedTimeslot",e)}selectTimezone(e){this.schedulerStore.set("selectedTimezone",e)}toggleAdditionalData(e){this.schedulerStore.set("showBookingForm",e)}setParticipantName(e){const{bookingInfo:t}=this.schedulerStore.state;this.schedulerStore.set("bookingInfo",{...t,primaryParticipant:{...t?.primaryParticipant,name:e}})}setParticipantEmail(e){const{bookingInfo:t}=this.schedulerStore.state;this.schedulerStore.set("bookingInfo",{...t,primaryParticipant:{...t?.primaryParticipant,email:e}})}async resetStoreStateAndFetchAvailability(){const e=new Date;const t=new Date(e.getFullYear(),e.getMonth(),1).getTime()/1e3;const i=new Date(e.getFullYear(),e.getMonth()+1,1).getTime()/1e3;const n=await this.getAvailability(t,i);const s=this.schedulerStore.get("availability").find((e=>new Date(e.start_time)>new Date));let o=e;if(s){o=s.start_time}this.schedulerStore.set("selectedDate",o);this.schedulerStore.set("eventInfo",null);this.schedulerStore.set("showBookingForm",false);this.schedulerStore.set("selectedTimeslot",null);return n}async setReschedule(e){const t=await this.resetStoreStateAndFetchAvailability();this.schedulerStore.set("rescheduleBookingId",e);return t}async setCancel(e){this.schedulerStore.set("cancelBookingId",e)}async resetCancel(){const e=await this.resetStoreStateAndFetchAvailability();this.schedulerStore.set("cancelBookingId","");this.schedulerStore.set("cancelledEventInfo",null);return e}async bookTimeslot(e){this.schedulerStore.set("isLoading",true);const{selectedTimeslot:t,selectedTimezone:i,bookingInfo:n}=this.schedulerStore.state;if(!e&&!n){return{error:this.errors.component("Booking").no_booking_info()}}const s=e?.timeslot||t;if(!s){return{error:this.errors.component("Create Booking").no_timeslot_selected()}}const o=e&&e?.timezone?e?.timezone:i;if(!o){return{error:this.errors.component("Create Booking").no_timezone_selected()}}const a=e?e?.primaryParticipant:n?.primaryParticipant;const r=e?e?.guests||[]:n?.guests||[];const c=e?{...e?.additionalFields,guests:r}:{...n?.additionalFields,guests:r};const l=this.getHeaders();const d=this.configId?`?configuration_id=${this.configId}`:"";const h=`/v3/scheduling/bookings${d}`;const g=await this.makeAPIRequest(decodeURIComponent(h),"POST",JSON.stringify({additional_fields:c,guest:{...a},start_time:s.start_time.getTime()/1e3,end_time:s.end_time.getTime()/1e3,timezone:o}),l);if("error"in g){this.schedulerStore.set("isLoading",false);const e=g.error?.type;let t=g.error;if(e&&e in this.errors.api("Create Booking")){t=this.errors.api("Create Booking")[e](t?.message||t?.title||"Something went wrong")}return{error:t}}if("data"in g){this.schedulerStore.set("eventInfo",g?.data)}this.schedulerStore.set("isLoading",false);return g}async getUISettings(){this.schedulerStore.set("isLoading",true);const e=this.getHeaders();const t=this.configId?`?configuration_id=${this.configId}`:"";const i=`/v3/scheduling/ui-settings${t}`;const n=await this.makeAPIRequest(i,"GET",undefined,e);if("error"in n){this.schedulerStore.set("isLoading",false);const e=n.error?.type;let t=n.error;if(e&&e in this.errors.api("Get UI Settings")){t=this.errors.api("Get UI Settings")[e](t?.message||t?.title||"Something went wrong")}return{error:t}}if("data"in n){this.schedulerStore.set("configSettings",n.data)}this.schedulerStore.set("isLoading",false);return n}async getAvailability(e=0,t=0){this.schedulerStore.set("isLoading",true);const i=new URLSearchParams;const n=new Date;const s=n.getTime();if(t&&t<s/1e3){this.schedulerStore.set("isLoading",false);const e=this.errors.component("Get Availability").endtime_not_in_future();return{error:e}}if(!e){const t=new Date(n.getFullYear(),n.getMonth(),1);e=Math.floor(t.getTime()/1e3)}if(!t){const e=new Date(n.getFullYear(),n.getMonth()+1,0);t=Math.floor(e.getTime()/1e3)}i.append("start_time",encodeURIComponent(e.toString()));i.append("end_time",encodeURIComponent(t.toString()));if(this.configId){i.append("configuration_id",encodeURIComponent(this.configId))}const o=i.toString();const a=`/v3/scheduling/availability${o?`?${o}`:""}`;const r=this.getHeaders();const c=await this.makeAPIRequest(decodeURIComponent(a),"GET",undefined,r);if("error"in c){this.schedulerStore.set("availability",[]);this.schedulerStore.set("isLoading",false);const e=c.error?.type;let t=c.error;if(e&&e in this.errors.api("Get Availability")){t=this.errors.api("Get Availability")[e](t?.message||t?.title||"Something went wrong")}return{error:t}}if("data"in c){const e=c.data?.time_slots?.map((e=>({...e,start_time:new Date(e.start_time*1e3),end_time:new Date(e.end_time*1e3)})))||[];const t=e.filter((e=>e.start_time.getTime()>s));this.schedulerStore.set("availability",t)}this.schedulerStore.set("isLoading",false);return c}async cancelBooking(e){this.schedulerStore.set("isLoading",true);if(!e){return{error:this.errors.component("Cancel Booking").no_booking_id()}}const t=this.configId?`?configuration_id=${this.configId}`:"";const i=`/v3/scheduling/bookings/${e}${t}`;const n=this.getHeaders();const s=await this.makeAPIRequest(decodeURIComponent(i),"DELETE",JSON.stringify({action:"cancel"}),n);if("error"in s){this.schedulerStore.set("isLoading",false);const e=s.error?.type;let t=s.error;if(e&&e in this.errors.api("Cancel Booking")){t=this.errors.api("Cancel Booking")[e](t?.message||t?.title||"Something went wrong")}return{error:t}}this.schedulerStore.set("cancelledEventInfo",{booking_id:e});this.schedulerStore.set("isLoading",false);return s}async rescheduleBooking(e,t){this.schedulerStore.set("isLoading",true);if(!e){return{error:this.errors.component("Reschedule Booking").no_booking_id()}}const i=this.errors.api("Reschedule Booking");const n=this.errors.component("Reschedule Booking");const{bookingInfo:s,selectedTimeslot:o,selectedTimezone:a}=this.schedulerStore.state;const{startTime:r,endTime:c,timezone:l}=t;const d=r||o?.start_time;if(!d){return{error:n.invalid_start_time('Please pass "startTime" in data or set "selectedTimeslot" in the defaultSchedulerState.')}}const h=c||o?.end_time;if(!h){return{error:n.invalid_end_time('Please pass "endTime" in data or set "selectedTimeslot" in the defaultSchedulerState.')}}const g=l||a;if(!g){return{error:n.invalid_timezone('Please pass "timezone" in data or set "selectedTimezone" in the defaultSchedulerState.')}}const m=t?t?.primaryParticipant:s?.primaryParticipant;const u=t?t?.guests||[]:s?.guests||[];const f=t?{...t?.additionalFields,guests:u}:{...s?.additionalFields,guests:u};const _=this.configId?`?configuration_id=${this.configId}`:"";const v=`/v3/scheduling/bookings/${e}${_}`;const y=this.getHeaders();const b=await this.makeAPIRequest(decodeURIComponent(v),"PATCH",JSON.stringify({start_time:d.getTime()/1e3,end_time:h.getTime()/1e3,time_zone:g,additional_fields:f,guest:{...m}}),y);if("error"in b){this.schedulerStore.set("isLoading",false);const e=b.error?.type;let t=b.error;if(e&&e in i){t=i[e](t?.message||t?.title||"Something went wrong")}}if("data"in b)this.schedulerStore.set("eventInfo",b?.data);this.schedulerStore.set("isLoading",false);return b}}function r(i={}){const n={selectedDate:null,selectedLanguage:navigator.language,selectedTimezone:Intl.DateTimeFormat().resolvedOptions().timeZone,selectedTimeslot:null,showBookingForm:false,selectableDates:null,availability:[],state:"ready",eventInfo:null,cancelledEventInfo:null,isLoading:false,nylasBranding:true,...i};e(`[defaultNylasStoreState]: `,n);const s=t(n);s.onChange("availability",(t=>{e(`[availability]: `,t);const i=t.map((e=>e.start_time));e(`[selectableDates]: `,i);s.set("selectableDates",i)}));s.reset=()=>{for(const e in n){const t=n[e];s.set(e,t)}};return s}export{r as C,i as E,a as N};
2
+ //# sourceMappingURL=p-ab09a78d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ErrorCategory","ComponentErrorType","APIErrorType","Errors","constructor","this","component","_title","category","Component","title","endtime_not_in_future","message","no_booking_info","no_timeslot_selected","no_timezone_selected","no_booking_id","invalid_start_time","invalid_end_time","invalid_timezone","api","Api","invalid_session","general_error","internal_error","invalid_request_error","timeslot_not_available","NylaSchedulerAPIConnector","schedulerAPIURL","schedulerStore","sessionId","configId","errors","getHeaders","Authorization","makeAPIRequest","path","method","body","headers","schedulerURL","URL","pathname","response","fetch","decodeURIComponent","toString","Origin","window","location","origin","data","json","error","type","selectDate","date","set","selectTime","time","selectTimezone","timezone","toggleAdditionalData","value","setParticipantName","name","bookingInfo","state","primaryParticipant","setParticipantEmail","email","resetStoreStateAndFetchAvailability","today","Date","startTime","getFullYear","getMonth","getTime","endTime","result","getAvailability","firstAvailableDate","get","find","timeslot","start_time","_selectedDate","setReschedule","bookingID","setCancel","resetCancel","bookTimeslot","selectedTimeslot","selectedTimezone","guests","additional_fields","additionalFields","configIdParam","url","JSON","stringify","guest","end_time","errorType","getUISettings","undefined","params","URLSearchParams","now","nowTime","startOfMonth","Math","floor","endOfMonth","append","encodeURIComponent","queryString","availability","time_slots","map","availabilityTimeslotsFiltered","filter","cancelBooking","bookingId","action","booking_id","rescheduleBooking","apiErrors","componentErrors","time_zone","CreateNylasSchedulerStore","defaultState","defaultNylasStoreState","selectedDate","selectedLanguage","navigator","language","Intl","DateTimeFormat","resolvedOptions","timeZone","showBookingForm","selectableDates","eventInfo","cancelledEventInfo","isLoading","nylasBranding","debug","store","createStore","onChange","reset","key"],"sources":["src/connector/nylas-scheduler-connector/errors/index.ts","src/connector/shared/api/scheduler.ts","src/stores/scheduler-store.ts"],"sourcesContent":["export enum ErrorCategory {\n Component = 'component',\n Api = 'api',\n Auth = 'auth',\n}\n\nexport interface ErrorDetails {\n title: string;\n message: string;\n category: ErrorCategory;\n}\n\nexport enum ComponentErrorType {\n endtime_not_in_future = 'endtime_not_in_future',\n no_booking_info = 'no_booking_info',\n no_timeslot_selected = 'no_timeslot_selected',\n no_timezone_selected = 'no_timezone_selected',\n no_booking_id = 'no_booking_id',\n invalid_start_time = 'invalid_start_time',\n invalid_end_time = 'invalid_end_time',\n invalid_timezone = 'invalid_timezone',\n}\n\nexport enum APIErrorType {\n invalid_session = 'invalid_session',\n general_error = 'general_error',\n internal_error = 'internal_error',\n invalid_request_error = 'invalid_request_error',\n timeslot_not_available = 'timeslot_not_available',\n}\n\nexport class Errors {\n component = (_title: string): Record<ComponentErrorType, (message?: string) => ErrorDetails> => {\n const category = ErrorCategory.Component;\n const title = `${_title} error`;\n return {\n endtime_not_in_future: (message: string = '\"endtime\" can not be in the future') => {\n return {\n title,\n message,\n category,\n };\n },\n no_booking_info: (message: string = 'No booking info provided') => {\n return {\n title,\n message,\n category,\n };\n },\n no_timeslot_selected: (message: string = 'No timeslot selected') => {\n return {\n title,\n message,\n category,\n };\n },\n no_timezone_selected: (message: string = 'No timezone selected') => {\n return {\n title,\n message,\n category,\n };\n },\n no_booking_id: (message: string = 'No booking id provided') => {\n return {\n title,\n message,\n category,\n };\n },\n invalid_start_time: (message: string = 'Invalid start time') => {\n return {\n title,\n message,\n category,\n };\n },\n invalid_end_time: (message: string = 'Invalid end time') => {\n return {\n title,\n message,\n category,\n };\n },\n invalid_timezone: (message: string = 'Invalid timezone') => {\n return {\n title,\n message,\n category,\n };\n },\n };\n };\n\n api = (_title: string): Record<APIErrorType, (message: string) => ErrorDetails> => {\n const category = ErrorCategory.Api;\n const title = `${_title} error`;\n\n return {\n invalid_session: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n general_error: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n internal_error: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n invalid_request_error: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n timeslot_not_available: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n };\n };\n}\n","import { AvailabilityResponse, NylasEvent, UISettingsResponse } from '@/common/types';\nimport { NylasSchedulerStoreType } from '../../../components';\nimport type { NylasErrorResponse, NylasResponse, NylasSchedulerBookingData, NylasSchedulerResponse, Timeslot } from '@nylas/core';\nimport { APIErrorType, Errors } from '@/connector/nylas-scheduler-connector/errors';\n\ntype NylasSchedulerAPIConnectorOptions = {\n schedulerAPIURL: string;\n schedulerStore: NylasSchedulerStoreType;\n sessionId?: string;\n configId?: string;\n};\n\n/**\n * NylaSchedulerConnector\n * This class is used to make API requests to the scheduler.\n */\nexport class NylaSchedulerAPIConnector {\n private schedulerStore: NylasSchedulerStoreType;\n private schedulerAPIURL: string;\n private sessionId: string | undefined;\n private configId: string | undefined;\n private errors = new Errors();\n\n constructor({ schedulerAPIURL, schedulerStore, sessionId, configId }: NylasSchedulerAPIConnectorOptions) {\n this.schedulerStore = schedulerStore;\n this.schedulerAPIURL = schedulerAPIURL;\n this.sessionId = sessionId;\n this.configId = configId;\n }\n\n private getHeaders() {\n return !this.configId\n ? {\n Authorization: `Bearer ${this.sessionId}`,\n }\n : {};\n }\n\n /**\n * Makes an API request to the scheduler.\n * @param path The path to the API endpoint.\n * @param method The HTTP method.\n * @param body The request body (if any).\n * @returns {Promise<T>}\n */\n public async makeAPIRequest<T>(path: string, method: string, body: string | undefined, headers = {}): Promise<NylasResponse<T>> {\n try {\n const schedulerURL = new URL(this.schedulerAPIURL);\n schedulerURL.pathname = path;\n const response = await fetch(decodeURIComponent(schedulerURL.toString()), {\n method,\n headers: {\n 'Content-Type': 'application/json',\n 'Origin': window.location.origin,\n ...headers,\n },\n body,\n });\n // The server returns a json object for errors: eg.\n // {\n // \"request_id\": \"<request_id>\",\n // \"error\": {\n // \"type\": \"not_found_error\",\n // \"message\": \"Session not found\"\n // }\n // }\n const data = await response.json();\n return data as NylasResponse<T>;\n } catch (error: any) {\n // NOTE: current server implementation doesn't return a JSON object for errors on some endpoints\n // handle this case by returning the error response as a string to be handled downstream\n return {\n error: {\n message: error.message,\n title: 'API request failed',\n type: 'api',\n },\n } as NylasErrorResponse;\n }\n }\n\n /**\n * Selects a date in the scheduler.\n */\n public selectDate(date: Date) {\n this.schedulerStore.set('selectedDate', date);\n this.schedulerStore.set('selectedTimeslot', null);\n }\n\n /**\n * Selects a time in the scheduler.\n */\n public selectTime(time: Timeslot) {\n this.schedulerStore.set('selectedTimeslot', time);\n }\n\n /**\n * Sets the timezone in the scheduler.\n */\n public selectTimezone(timezone: string) {\n this.schedulerStore.set('selectedTimezone', timezone);\n }\n\n /**\n * Toggles showBookingForm\n * @param value boolean\n */\n public toggleAdditionalData(value: boolean) {\n this.schedulerStore.set('showBookingForm', value);\n }\n\n /**\n * Set/update the name of the participant booking the event.\n */\n public setParticipantName(name: string) {\n const { bookingInfo } = this.schedulerStore.state;\n this.schedulerStore.set('bookingInfo', {\n ...bookingInfo,\n primaryParticipant: {\n ...(bookingInfo?.primaryParticipant as NylasSchedulerBookingData['primaryParticipant']),\n name,\n },\n });\n }\n\n /**\n * Set/update the email of the participant booking the event.\n */\n public setParticipantEmail(email: string) {\n const { bookingInfo } = this.schedulerStore.state;\n this.schedulerStore.set('bookingInfo', {\n ...bookingInfo,\n primaryParticipant: {\n ...(bookingInfo?.primaryParticipant as NylasSchedulerBookingData['primaryParticipant']),\n email,\n },\n });\n }\n\n private async resetStoreStateAndFetchAvailability() {\n const today = new Date();\n // Refetch availability\n const startTime = new Date(today.getFullYear(), today.getMonth(), 1).getTime() / 1000;\n const endTime = new Date(today.getFullYear(), today.getMonth() + 1, 1).getTime() / 1000;\n const result = await this.getAvailability(startTime, endTime);\n // Set selected date to first available date\n const firstAvailableDate = this.schedulerStore.get('availability').find((timeslot: any) => new Date(timeslot.start_time) > new Date());\n let _selectedDate = today;\n if (firstAvailableDate) {\n _selectedDate = firstAvailableDate.start_time;\n }\n this.schedulerStore.set('selectedDate', _selectedDate);\n // Reset store state\n this.schedulerStore.set('eventInfo', null);\n this.schedulerStore.set('showBookingForm', false);\n this.schedulerStore.set('selectedTimeslot', null);\n\n return result;\n }\n\n /**\n * Set reschedule booking id\n */\n public async setReschedule(bookingID: string) {\n // Set reschedule booking id\n const result = await this.resetStoreStateAndFetchAvailability();\n this.schedulerStore.set('rescheduleBookingId', bookingID);\n return result;\n }\n\n /**\n * Set cancel booking id\n */\n public async setCancel(bookingID: string) {\n this.schedulerStore.set('cancelBookingId', bookingID);\n }\n\n public async resetCancel() {\n const result = await this.resetStoreStateAndFetchAvailability();\n this.schedulerStore.set('cancelBookingId', '');\n this.schedulerStore.set('cancelledEventInfo', null);\n return result;\n }\n\n /**\n * Book the selected timeslot.\n * @param data The booking info.\n * @returns {Promise<NylasResponse<NylasEvent>>}\n */\n public async bookTimeslot(data?: NylasSchedulerBookingData & { timeslot?: Timeslot }): Promise<NylasSchedulerResponse<NylasEvent>> {\n this.schedulerStore.set('isLoading', true);\n const { selectedTimeslot, selectedTimezone, bookingInfo } = this.schedulerStore.state;\n if (!data && !bookingInfo) {\n return { error: this.errors.component('Booking').no_booking_info() };\n }\n\n const timeslot = data?.timeslot || selectedTimeslot;\n if (!timeslot) {\n return { error: this.errors.component('Create Booking').no_timeslot_selected() };\n }\n\n const timezone = data && data?.timezone ? data?.timezone : selectedTimezone;\n\n if (!timezone) {\n return { error: this.errors.component('Create Booking').no_timezone_selected() };\n }\n\n const primaryParticipant = data ? data?.primaryParticipant : bookingInfo?.primaryParticipant;\n const guests = data ? data?.guests || [] : bookingInfo?.guests || [];\n const additional_fields = data ? { ...data?.additionalFields, guests } : { ...bookingInfo?.additionalFields, guests };\n\n const headers = this.getHeaders();\n const configIdParam = this.configId ? `?configuration_id=${this.configId}` : '';\n const url = `/v3/scheduling/bookings${configIdParam}`;\n\n const response = await this.makeAPIRequest<NylasEvent>(\n decodeURIComponent(url),\n 'POST',\n JSON.stringify({\n additional_fields,\n guest: { ...primaryParticipant },\n start_time: timeslot.start_time.getTime() / 1000,\n end_time: timeslot.end_time.getTime() / 1000,\n timezone: timezone,\n }),\n headers,\n );\n\n if ('error' in response) {\n this.schedulerStore.set('isLoading', false);\n const errorType = response.error?.type;\n let error = response.error;\n if (errorType && errorType in this.errors.api('Create Booking')) {\n error = this.errors.api('Create Booking')[errorType as APIErrorType](error?.message || error?.title || 'Something went wrong');\n }\n return { error };\n }\n\n if ('data' in response) {\n this.schedulerStore.set('eventInfo', response?.data);\n }\n\n this.schedulerStore.set('isLoading', false);\n return response;\n }\n\n /**\n * Get UI settings for the scheduler.\n */\n public async getUISettings(): Promise<NylasSchedulerResponse<UISettingsResponse>> {\n this.schedulerStore.set('isLoading', true);\n const headers = this.getHeaders();\n const configIdParam = this.configId ? `?configuration_id=${this.configId}` : '';\n const url = `/v3/scheduling/ui-settings${configIdParam}`;\n\n const response = await this.makeAPIRequest<UISettingsResponse>(url, 'GET', undefined, headers);\n if ('error' in response) {\n this.schedulerStore.set('isLoading', false);\n const errorType = response.error?.type;\n let error = response.error;\n if (errorType && errorType in this.errors.api('Get UI Settings')) {\n error = this.errors.api('Get UI Settings')[errorType as APIErrorType](error?.message || error?.title || 'Something went wrong');\n }\n return { error };\n }\n if ('data' in response) {\n this.schedulerStore.set('configSettings', response.data);\n }\n this.schedulerStore.set('isLoading', false);\n return response;\n }\n\n /**\n * Gets the availability for a page.\n * @param startTime The start time.\n * @param endTime The end time.\n * @returns {Promise<AvailabilityResponse>}\n */\n public async getAvailability(startTime: number = 0, endTime: number = 0): Promise<NylasSchedulerResponse<AvailabilityResponse>> {\n this.schedulerStore.set('isLoading', true);\n const params = new URLSearchParams();\n const now = new Date();\n const nowTime = now.getTime();\n\n if (endTime && endTime < nowTime / 1000) {\n this.schedulerStore.set('isLoading', false);\n const error = this.errors.component('Get Availability').endtime_not_in_future();\n return { error };\n }\n\n // Calculate the start of the current month if startTime is not provided\n if (!startTime) {\n const startOfMonth = new Date(now.getFullYear(), now.getMonth(), 1);\n startTime = Math.floor(startOfMonth.getTime() / 1000); // Convert to UNIX timestamp in seconds\n }\n\n // Calculate the end of the current month if endTime is not provided\n if (!endTime) {\n const endOfMonth = new Date(now.getFullYear(), now.getMonth() + 1, 0); // Setting day to 0 gets the last day of the previous month, so in this case, the last day of the current month\n endTime = Math.floor(endOfMonth.getTime() / 1000); // Convert to UNIX timestamp in seconds\n }\n\n params.append('start_time', encodeURIComponent(startTime.toString()));\n params.append('end_time', encodeURIComponent(endTime.toString()));\n if (this.configId) {\n params.append('configuration_id', encodeURIComponent(this.configId));\n }\n const queryString = params.toString();\n const url = `/v3/scheduling/availability${queryString ? `?${queryString}` : ''}`;\n const headers = this.getHeaders();\n const response = await this.makeAPIRequest<AvailabilityResponse>(decodeURIComponent(url), 'GET', undefined, headers);\n\n if ('error' in response) {\n this.schedulerStore.set('availability', []);\n this.schedulerStore.set('isLoading', false);\n const errorType = response.error?.type;\n let error = response.error;\n if (errorType && errorType in this.errors.api('Get Availability')) {\n error = this.errors.api('Get Availability')[errorType as APIErrorType](error?.message || error?.title || 'Something went wrong');\n }\n return { error };\n }\n\n if ('data' in response) {\n const availability =\n response.data?.time_slots?.map(timeslot => {\n return {\n ...timeslot,\n start_time: new Date(timeslot.start_time * 1000),\n end_time: new Date(timeslot.end_time * 1000),\n };\n }) || [];\n\n // Filter out timeslots that are in the past\n const availabilityTimeslotsFiltered = availability.filter(timeslot => timeslot.start_time.getTime() > nowTime);\n this.schedulerStore.set('availability', availabilityTimeslotsFiltered);\n }\n\n this.schedulerStore.set('isLoading', false);\n return response;\n }\n\n /**\n * Cancels a booking.\n * @param bookingId The booking ID.\n */\n public async cancelBooking(bookingId: string): Promise<NylasSchedulerResponse<Partial<NylasEvent>>> {\n this.schedulerStore.set('isLoading', true);\n if (!bookingId) {\n return { error: this.errors.component('Cancel Booking').no_booking_id() };\n }\n const configIdParam = this.configId ? `?configuration_id=${this.configId}` : '';\n const url = `/v3/scheduling/bookings/${bookingId}${configIdParam}`;\n const headers = this.getHeaders();\n const response = await this.makeAPIRequest<Partial<NylasEvent>>(\n decodeURIComponent(url),\n 'DELETE',\n JSON.stringify({\n action: 'cancel',\n }),\n headers,\n );\n\n if ('error' in response) {\n this.schedulerStore.set('isLoading', false);\n const errorType = response.error?.type;\n let error = response.error;\n if (errorType && errorType in this.errors.api('Cancel Booking')) {\n error = this.errors.api('Cancel Booking')[errorType as APIErrorType](error?.message || error?.title || 'Something went wrong');\n }\n return { error };\n }\n\n this.schedulerStore.set('cancelledEventInfo', {\n booking_id: bookingId,\n });\n\n this.schedulerStore.set('isLoading', false);\n return response;\n }\n\n /**\n * Reschedules a booking.\n * @param bookingId The booking ID.\n * @param data The booking info.\n * @returns {Promise<NylasResponse<NylasEvent>>}\n */\n public async rescheduleBooking(bookingId: string, data: NylasSchedulerBookingData): Promise<NylasSchedulerResponse<NylasEvent>> {\n this.schedulerStore.set('isLoading', true);\n if (!bookingId) {\n return { error: this.errors.component('Reschedule Booking').no_booking_id() };\n }\n const apiErrors = this.errors.api('Reschedule Booking');\n const componentErrors = this.errors.component('Reschedule Booking');\n const { bookingInfo, selectedTimeslot, selectedTimezone } = this.schedulerStore.state;\n // Validate data\n const { startTime, endTime, timezone } = data;\n const start_time = startTime || selectedTimeslot?.start_time;\n\n if (!start_time) {\n return { error: componentErrors.invalid_start_time('Please pass \"startTime\" in data or set \"selectedTimeslot\" in the defaultSchedulerState.') };\n }\n const end_time = endTime || selectedTimeslot?.end_time;\n if (!end_time) {\n return { error: componentErrors.invalid_end_time('Please pass \"endTime\" in data or set \"selectedTimeslot\" in the defaultSchedulerState.') };\n }\n const time_zone = timezone || selectedTimezone;\n if (!time_zone) {\n return { error: componentErrors.invalid_timezone('Please pass \"timezone\" in data or set \"selectedTimezone\" in the defaultSchedulerState.') };\n }\n\n const primaryParticipant = data ? data?.primaryParticipant : bookingInfo?.primaryParticipant;\n const guests = data ? data?.guests || [] : bookingInfo?.guests || [];\n const additional_fields = data ? { ...data?.additionalFields, guests } : { ...bookingInfo?.additionalFields, guests };\n\n const configIdParam = this.configId ? `?configuration_id=${this.configId}` : '';\n const url = `/v3/scheduling/bookings/${bookingId}${configIdParam}`;\n const headers = this.getHeaders();\n const response = await this.makeAPIRequest<NylasEvent>(\n decodeURIComponent(url),\n 'PATCH',\n JSON.stringify({\n start_time: start_time.getTime() / 1000,\n end_time: end_time.getTime() / 1000,\n time_zone,\n additional_fields,\n guest: { ...primaryParticipant },\n }),\n headers,\n );\n\n if ('error' in response) {\n this.schedulerStore.set('isLoading', false);\n const errorType = response.error?.type;\n let error = response.error;\n if (errorType && errorType in apiErrors) {\n error = apiErrors[errorType as APIErrorType](error?.message || error?.title || 'Something went wrong');\n }\n }\n\n if ('data' in response) this.schedulerStore.set('eventInfo', response?.data);\n\n this.schedulerStore.set('isLoading', false);\n return response;\n }\n}\n","import { DataState, NylasEvent } from '@/common/types';\nimport { debug } from '@/utils/utils';\nimport { NylasSchedulerBookingData, Timeslot } from '@nylas/core';\nimport { createStore } from '@stencil/store';\n\nexport type AvailabilityTimeslot = {\n emails: string[];\n start_time: Date;\n end_time: Date;\n};\n\nexport type LoadingState = {\n api: 'availability' | 'createBooking' | 'cancelBooking' | 'rescheduleBooking';\n};\n\nexport type ConfigSettings = {\n scheduler: {\n available_days_in_future: number;\n min_cancellation_notice: number;\n };\n organizer: {\n name: string;\n email: string;\n };\n};\n\nexport interface NylasSchedulerStoreState {\n selectedDate: Date | null;\n selectedLanguage: string;\n selectedTimezone: string;\n selectedTimeslot: Timeslot | null;\n showBookingForm: boolean;\n selectableDates: Date[] | null;\n availability: AvailabilityTimeslot[];\n state: DataState;\n eventInfo: NylasEvent | null;\n cancelledEventInfo: Partial<NylasEvent> | null;\n bookingInfo?: NylasSchedulerBookingData;\n rescheduleBookingId?: string;\n cancelBookingId?: string;\n isLoading: boolean;\n nylasBranding?: boolean;\n configSettings?: ConfigSettings;\n}\n\nexport type NylasSchedulerStoreType = ReturnType<typeof CreateNylasSchedulerStore>;\n\nexport function CreateNylasSchedulerStore(defaultState: Partial<NylasSchedulerStoreState> = {}) {\n const defaultNylasStoreState: NylasSchedulerStoreState = {\n selectedDate: null,\n selectedLanguage: navigator.language,\n selectedTimezone: Intl.DateTimeFormat().resolvedOptions().timeZone,\n selectedTimeslot: null,\n showBookingForm: false,\n selectableDates: null,\n availability: [],\n state: 'ready',\n eventInfo: null,\n cancelledEventInfo: null,\n isLoading: false,\n nylasBranding: true,\n ...defaultState,\n };\n debug(`[defaultNylasStoreState]: `, defaultNylasStoreState);\n const store = createStore<NylasSchedulerStoreState>(defaultNylasStoreState);\n\n store.onChange('availability', availability => {\n debug(`[availability]: `, availability);\n const selectableDates = availability.map(timeslot => timeslot.start_time);\n debug(`[selectableDates]: `, selectableDates);\n store.set('selectableDates', selectableDates);\n });\n\n /**\n * Reset the Nylas store to its default state.\n * There is something wrong with the stencil/store reset method,\n * so we have to do it via this hack.\n */\n store.reset = () => {\n for (const key in defaultNylasStoreState) {\n const value = defaultNylasStoreState[key as keyof typeof defaultNylasStoreState];\n store.set(key as any, value);\n }\n };\n\n return store;\n}\n"],"mappings":"4EAAYA,GAAZ,SAAYA,GACVA,EAAA,yBACAA,EAAA,aACAA,EAAA,cACD,EAJD,CAAYA,MAAa,KAYzB,IAAYC,GAAZ,SAAYA,GACVA,EAAA,iDACAA,EAAA,qCACAA,EAAA,+CACAA,EAAA,+CACAA,EAAA,iCACAA,EAAA,2CACAA,EAAA,uCACAA,EAAA,sCACD,EATD,CAAYA,MAAkB,KAW9B,IAAYC,GAAZ,SAAYA,GACVA,EAAA,qCACAA,EAAA,iCACAA,EAAA,mCACAA,EAAA,iDACAA,EAAA,kDACD,EAND,CAAYA,MAAY,K,MAQXC,EAAb,WAAAC,GACEC,KAAAC,UAAaC,IACX,MAAMC,EAAWR,EAAcS,UAC/B,MAAMC,EAAQ,GAAGH,UACjB,MAAO,CACLI,sBAAuB,CAACC,EAAkB,wCACjC,CACLF,QACAE,UACAJ,aAGJK,gBAAiB,CAACD,EAAkB,8BAC3B,CACLF,QACAE,UACAJ,aAGJM,qBAAsB,CAACF,EAAkB,0BAChC,CACLF,QACAE,UACAJ,aAGJO,qBAAsB,CAACH,EAAkB,0BAChC,CACLF,QACAE,UACAJ,aAGJQ,cAAe,CAACJ,EAAkB,4BACzB,CACLF,QACAE,UACAJ,aAGJS,mBAAoB,CAACL,EAAkB,wBAC9B,CACLF,QACAE,UACAJ,aAGJU,iBAAkB,CAACN,EAAkB,sBAC5B,CACLF,QACAE,UACAJ,aAGJW,iBAAkB,CAACP,EAAkB,sBAC5B,CACLF,QACAE,UACAJ,aAGL,EAGHH,KAAAe,IAAOb,IACL,MAAMC,EAAWR,EAAcqB,IAC/B,MAAMX,EAAQ,GAAGH,UAEjB,MAAO,CACLe,gBAAkBV,IACT,CACLF,QACAE,UACAJ,aAGJe,cAAgBX,IACP,CACLF,QACAE,UACAJ,aAGJgB,eAAiBZ,IACR,CACLF,QACAE,UACAJ,aAGJiB,sBAAwBb,IACf,CACLF,QACAE,UACAJ,aAGJkB,uBAAyBd,IAChB,CACLF,QACAE,UACAJ,aAGL,C,QCvHQmB,EAOX,WAAAvB,EAAYwB,gBAAEA,EAAeC,eAAEA,EAAcC,UAAEA,EAASC,SAAEA,IAFlD1B,KAAA2B,OAAS,IAAI7B,EAGnBE,KAAKwB,eAAiBA,EACtBxB,KAAKuB,gBAAkBA,EACvBvB,KAAKyB,UAAYA,EACjBzB,KAAK0B,SAAWA,C,CAGV,UAAAE,GACN,OAAQ5B,KAAK0B,SACT,CACEG,cAAe,UAAU7B,KAAKyB,aAEhC,E,CAUC,oBAAMK,CAAkBC,EAAcC,EAAgBC,EAA0BC,EAAU,IAC/F,IACE,MAAMC,EAAe,IAAIC,IAAIpC,KAAKuB,iBAClCY,EAAaE,SAAWN,EACxB,MAAMO,QAAiBC,MAAMC,mBAAmBL,EAAaM,YAAa,CACxET,SACAE,QAAS,CACP,eAAgB,mBAChBQ,OAAUC,OAAOC,SAASC,UACvBX,GAELD,SAUF,MAAMa,QAAaR,EAASS,OAC5B,OAAOD,C,CACP,MAAOE,GAGP,MAAO,CACLA,MAAO,CACLzC,QAASyC,EAAMzC,QACfF,MAAO,qBACP4C,KAAM,O,EASP,UAAAC,CAAWC,GAChBnD,KAAKwB,eAAe4B,IAAI,eAAgBD,GACxCnD,KAAKwB,eAAe4B,IAAI,mBAAoB,K,CAMvC,UAAAC,CAAWC,GAChBtD,KAAKwB,eAAe4B,IAAI,mBAAoBE,E,CAMvC,cAAAC,CAAeC,GACpBxD,KAAKwB,eAAe4B,IAAI,mBAAoBI,E,CAOvC,oBAAAC,CAAqBC,GAC1B1D,KAAKwB,eAAe4B,IAAI,kBAAmBM,E,CAMtC,kBAAAC,CAAmBC,GACxB,MAAMC,YAAEA,GAAgB7D,KAAKwB,eAAesC,MAC5C9D,KAAKwB,eAAe4B,IAAI,cAAe,IAClCS,EACHE,mBAAoB,IACdF,GAAaE,mBACjBH,S,CAQC,mBAAAI,CAAoBC,GACzB,MAAMJ,YAAEA,GAAgB7D,KAAKwB,eAAesC,MAC5C9D,KAAKwB,eAAe4B,IAAI,cAAe,IAClCS,EACHE,mBAAoB,IACdF,GAAaE,mBACjBE,U,CAKE,yCAAMC,GACZ,MAAMC,EAAQ,IAAIC,KAElB,MAAMC,EAAY,IAAID,KAAKD,EAAMG,cAAeH,EAAMI,WAAY,GAAGC,UAAY,IACjF,MAAMC,EAAU,IAAIL,KAAKD,EAAMG,cAAeH,EAAMI,WAAa,EAAG,GAAGC,UAAY,IACnF,MAAME,QAAe1E,KAAK2E,gBAAgBN,EAAWI,GAErD,MAAMG,EAAqB5E,KAAKwB,eAAeqD,IAAI,gBAAgBC,MAAMC,GAAkB,IAAIX,KAAKW,EAASC,YAAc,IAAIZ,OAC/H,IAAIa,EAAgBd,EACpB,GAAIS,EAAoB,CACtBK,EAAgBL,EAAmBI,U,CAErChF,KAAKwB,eAAe4B,IAAI,eAAgB6B,GAExCjF,KAAKwB,eAAe4B,IAAI,YAAa,MACrCpD,KAAKwB,eAAe4B,IAAI,kBAAmB,OAC3CpD,KAAKwB,eAAe4B,IAAI,mBAAoB,MAE5C,OAAOsB,C,CAMF,mBAAMQ,CAAcC,GAEzB,MAAMT,QAAe1E,KAAKkE,sCAC1BlE,KAAKwB,eAAe4B,IAAI,sBAAuB+B,GAC/C,OAAOT,C,CAMF,eAAMU,CAAUD,GACrBnF,KAAKwB,eAAe4B,IAAI,kBAAmB+B,E,CAGtC,iBAAME,GACX,MAAMX,QAAe1E,KAAKkE,sCAC1BlE,KAAKwB,eAAe4B,IAAI,kBAAmB,IAC3CpD,KAAKwB,eAAe4B,IAAI,qBAAsB,MAC9C,OAAOsB,C,CAQF,kBAAMY,CAAaxC,GACxB9C,KAAKwB,eAAe4B,IAAI,YAAa,MACrC,MAAMmC,iBAAEA,EAAgBC,iBAAEA,EAAgB3B,YAAEA,GAAgB7D,KAAKwB,eAAesC,MAChF,IAAKhB,IAASe,EAAa,CACzB,MAAO,CAAEb,MAAOhD,KAAK2B,OAAO1B,UAAU,WAAWO,kB,CAGnD,MAAMuE,EAAWjC,GAAMiC,UAAYQ,EACnC,IAAKR,EAAU,CACb,MAAO,CAAE/B,MAAOhD,KAAK2B,OAAO1B,UAAU,kBAAkBQ,uB,CAG1D,MAAM+C,EAAWV,GAAQA,GAAMU,SAAWV,GAAMU,SAAWgC,EAE3D,IAAKhC,EAAU,CACb,MAAO,CAAER,MAAOhD,KAAK2B,OAAO1B,UAAU,kBAAkBS,uB,CAG1D,MAAMqD,EAAqBjB,EAAOA,GAAMiB,mBAAqBF,GAAaE,mBAC1E,MAAM0B,EAAS3C,EAAOA,GAAM2C,QAAU,GAAK5B,GAAa4B,QAAU,GAClE,MAAMC,EAAoB5C,EAAO,IAAKA,GAAM6C,iBAAkBF,UAAW,IAAK5B,GAAa8B,iBAAkBF,UAE7G,MAAMvD,EAAUlC,KAAK4B,aACrB,MAAMgE,EAAgB5F,KAAK0B,SAAW,qBAAqB1B,KAAK0B,WAAa,GAC7E,MAAMmE,EAAM,0BAA0BD,IAEtC,MAAMtD,QAAiBtC,KAAK8B,eAC1BU,mBAAmBqD,GACnB,OACAC,KAAKC,UAAU,CACbL,oBACAM,MAAO,IAAKjC,GACZiB,WAAYD,EAASC,WAAWR,UAAY,IAC5CyB,SAAUlB,EAASkB,SAASzB,UAAY,IACxChB,SAAUA,IAEZtB,GAGF,GAAI,UAAWI,EAAU,CACvBtC,KAAKwB,eAAe4B,IAAI,YAAa,OACrC,MAAM8C,EAAY5D,EAASU,OAAOC,KAClC,IAAID,EAAQV,EAASU,MACrB,GAAIkD,GAAaA,KAAalG,KAAK2B,OAAOZ,IAAI,kBAAmB,CAC/DiC,EAAQhD,KAAK2B,OAAOZ,IAAI,kBAAkBmF,GAA2BlD,GAAOzC,SAAWyC,GAAO3C,OAAS,uB,CAEzG,MAAO,CAAE2C,Q,CAGX,GAAI,SAAUV,EAAU,CACtBtC,KAAKwB,eAAe4B,IAAI,YAAad,GAAUQ,K,CAGjD9C,KAAKwB,eAAe4B,IAAI,YAAa,OACrC,OAAOd,C,CAMF,mBAAM6D,GACXnG,KAAKwB,eAAe4B,IAAI,YAAa,MACrC,MAAMlB,EAAUlC,KAAK4B,aACrB,MAAMgE,EAAgB5F,KAAK0B,SAAW,qBAAqB1B,KAAK0B,WAAa,GAC7E,MAAMmE,EAAM,6BAA6BD,IAEzC,MAAMtD,QAAiBtC,KAAK8B,eAAmC+D,EAAK,MAAOO,UAAWlE,GACtF,GAAI,UAAWI,EAAU,CACvBtC,KAAKwB,eAAe4B,IAAI,YAAa,OACrC,MAAM8C,EAAY5D,EAASU,OAAOC,KAClC,IAAID,EAAQV,EAASU,MACrB,GAAIkD,GAAaA,KAAalG,KAAK2B,OAAOZ,IAAI,mBAAoB,CAChEiC,EAAQhD,KAAK2B,OAAOZ,IAAI,mBAAmBmF,GAA2BlD,GAAOzC,SAAWyC,GAAO3C,OAAS,uB,CAE1G,MAAO,CAAE2C,Q,CAEX,GAAI,SAAUV,EAAU,CACtBtC,KAAKwB,eAAe4B,IAAI,iBAAkBd,EAASQ,K,CAErD9C,KAAKwB,eAAe4B,IAAI,YAAa,OACrC,OAAOd,C,CASF,qBAAMqC,CAAgBN,EAAoB,EAAGI,EAAkB,GACpEzE,KAAKwB,eAAe4B,IAAI,YAAa,MACrC,MAAMiD,EAAS,IAAIC,gBACnB,MAAMC,EAAM,IAAInC,KAChB,MAAMoC,EAAUD,EAAI/B,UAEpB,GAAIC,GAAWA,EAAU+B,EAAU,IAAM,CACvCxG,KAAKwB,eAAe4B,IAAI,YAAa,OACrC,MAAMJ,EAAQhD,KAAK2B,OAAO1B,UAAU,oBAAoBK,wBACxD,MAAO,CAAE0C,Q,CAIX,IAAKqB,EAAW,CACd,MAAMoC,EAAe,IAAIrC,KAAKmC,EAAIjC,cAAeiC,EAAIhC,WAAY,GACjEF,EAAYqC,KAAKC,MAAMF,EAAajC,UAAY,I,CAIlD,IAAKC,EAAS,CACZ,MAAMmC,EAAa,IAAIxC,KAAKmC,EAAIjC,cAAeiC,EAAIhC,WAAa,EAAG,GACnEE,EAAUiC,KAAKC,MAAMC,EAAWpC,UAAY,I,CAG9C6B,EAAOQ,OAAO,aAAcC,mBAAmBzC,EAAU5B,aACzD4D,EAAOQ,OAAO,WAAYC,mBAAmBrC,EAAQhC,aACrD,GAAIzC,KAAK0B,SAAU,CACjB2E,EAAOQ,OAAO,mBAAoBC,mBAAmB9G,KAAK0B,U,CAE5D,MAAMqF,EAAcV,EAAO5D,WAC3B,MAAMoD,EAAM,8BAA8BkB,EAAc,IAAIA,IAAgB,KAC5E,MAAM7E,EAAUlC,KAAK4B,aACrB,MAAMU,QAAiBtC,KAAK8B,eAAqCU,mBAAmBqD,GAAM,MAAOO,UAAWlE,GAE5G,GAAI,UAAWI,EAAU,CACvBtC,KAAKwB,eAAe4B,IAAI,eAAgB,IACxCpD,KAAKwB,eAAe4B,IAAI,YAAa,OACrC,MAAM8C,EAAY5D,EAASU,OAAOC,KAClC,IAAID,EAAQV,EAASU,MACrB,GAAIkD,GAAaA,KAAalG,KAAK2B,OAAOZ,IAAI,oBAAqB,CACjEiC,EAAQhD,KAAK2B,OAAOZ,IAAI,oBAAoBmF,GAA2BlD,GAAOzC,SAAWyC,GAAO3C,OAAS,uB,CAE3G,MAAO,CAAE2C,Q,CAGX,GAAI,SAAUV,EAAU,CACtB,MAAM0E,EACJ1E,EAASQ,MAAMmE,YAAYC,KAAInC,IACtB,IACFA,EACHC,WAAY,IAAIZ,KAAKW,EAASC,WAAa,KAC3CiB,SAAU,IAAI7B,KAAKW,EAASkB,SAAW,UAErC,GAGR,MAAMkB,EAAgCH,EAAaI,QAAOrC,GAAYA,EAASC,WAAWR,UAAYgC,IACtGxG,KAAKwB,eAAe4B,IAAI,eAAgB+D,E,CAG1CnH,KAAKwB,eAAe4B,IAAI,YAAa,OACrC,OAAOd,C,CAOF,mBAAM+E,CAAcC,GACzBtH,KAAKwB,eAAe4B,IAAI,YAAa,MACrC,IAAKkE,EAAW,CACd,MAAO,CAAEtE,MAAOhD,KAAK2B,OAAO1B,UAAU,kBAAkBU,gB,CAE1D,MAAMiF,EAAgB5F,KAAK0B,SAAW,qBAAqB1B,KAAK0B,WAAa,GAC7E,MAAMmE,EAAM,2BAA2ByB,IAAY1B,IACnD,MAAM1D,EAAUlC,KAAK4B,aACrB,MAAMU,QAAiBtC,KAAK8B,eAC1BU,mBAAmBqD,GACnB,SACAC,KAAKC,UAAU,CACbwB,OAAQ,WAEVrF,GAGF,GAAI,UAAWI,EAAU,CACvBtC,KAAKwB,eAAe4B,IAAI,YAAa,OACrC,MAAM8C,EAAY5D,EAASU,OAAOC,KAClC,IAAID,EAAQV,EAASU,MACrB,GAAIkD,GAAaA,KAAalG,KAAK2B,OAAOZ,IAAI,kBAAmB,CAC/DiC,EAAQhD,KAAK2B,OAAOZ,IAAI,kBAAkBmF,GAA2BlD,GAAOzC,SAAWyC,GAAO3C,OAAS,uB,CAEzG,MAAO,CAAE2C,Q,CAGXhD,KAAKwB,eAAe4B,IAAI,qBAAsB,CAC5CoE,WAAYF,IAGdtH,KAAKwB,eAAe4B,IAAI,YAAa,OACrC,OAAOd,C,CASF,uBAAMmF,CAAkBH,EAAmBxE,GAChD9C,KAAKwB,eAAe4B,IAAI,YAAa,MACrC,IAAKkE,EAAW,CACd,MAAO,CAAEtE,MAAOhD,KAAK2B,OAAO1B,UAAU,sBAAsBU,gB,CAE9D,MAAM+G,EAAY1H,KAAK2B,OAAOZ,IAAI,sBAClC,MAAM4G,EAAkB3H,KAAK2B,OAAO1B,UAAU,sBAC9C,MAAM4D,YAAEA,EAAW0B,iBAAEA,EAAgBC,iBAAEA,GAAqBxF,KAAKwB,eAAesC,MAEhF,MAAMO,UAAEA,EAASI,QAAEA,EAAOjB,SAAEA,GAAaV,EACzC,MAAMkC,EAAaX,GAAakB,GAAkBP,WAElD,IAAKA,EAAY,CACf,MAAO,CAAEhC,MAAO2E,EAAgB/G,mBAAmB,2F,CAErD,MAAMqF,EAAWxB,GAAWc,GAAkBU,SAC9C,IAAKA,EAAU,CACb,MAAO,CAAEjD,MAAO2E,EAAgB9G,iBAAiB,yF,CAEnD,MAAM+G,EAAYpE,GAAYgC,EAC9B,IAAKoC,EAAW,CACd,MAAO,CAAE5E,MAAO2E,EAAgB7G,iBAAiB,0F,CAGnD,MAAMiD,EAAqBjB,EAAOA,GAAMiB,mBAAqBF,GAAaE,mBAC1E,MAAM0B,EAAS3C,EAAOA,GAAM2C,QAAU,GAAK5B,GAAa4B,QAAU,GAClE,MAAMC,EAAoB5C,EAAO,IAAKA,GAAM6C,iBAAkBF,UAAW,IAAK5B,GAAa8B,iBAAkBF,UAE7G,MAAMG,EAAgB5F,KAAK0B,SAAW,qBAAqB1B,KAAK0B,WAAa,GAC7E,MAAMmE,EAAM,2BAA2ByB,IAAY1B,IACnD,MAAM1D,EAAUlC,KAAK4B,aACrB,MAAMU,QAAiBtC,KAAK8B,eAC1BU,mBAAmBqD,GACnB,QACAC,KAAKC,UAAU,CACbf,WAAYA,EAAWR,UAAY,IACnCyB,SAAUA,EAASzB,UAAY,IAC/BoD,YACAlC,oBACAM,MAAO,IAAKjC,KAEd7B,GAGF,GAAI,UAAWI,EAAU,CACvBtC,KAAKwB,eAAe4B,IAAI,YAAa,OACrC,MAAM8C,EAAY5D,EAASU,OAAOC,KAClC,IAAID,EAAQV,EAASU,MACrB,GAAIkD,GAAaA,KAAawB,EAAW,CACvC1E,EAAQ0E,EAAUxB,GAA2BlD,GAAOzC,SAAWyC,GAAO3C,OAAS,uB,EAInF,GAAI,SAAUiC,EAAUtC,KAAKwB,eAAe4B,IAAI,YAAad,GAAUQ,MAEvE9C,KAAKwB,eAAe4B,IAAI,YAAa,OACrC,OAAOd,C,WC5YKuF,EAA0BC,EAAkD,IAC1F,MAAMC,EAAmD,CACvDC,aAAc,KACdC,iBAAkBC,UAAUC,SAC5B3C,iBAAkB4C,KAAKC,iBAAiBC,kBAAkBC,SAC1DhD,iBAAkB,KAClBiD,gBAAiB,MACjBC,gBAAiB,KACjBzB,aAAc,GACdlD,MAAO,QACP4E,UAAW,KACXC,mBAAoB,KACpBC,UAAW,MACXC,cAAe,QACZf,GAELgB,EAAM,6BAA8Bf,GACpC,MAAMgB,EAAQC,EAAsCjB,GAEpDgB,EAAME,SAAS,gBAAgBjC,IAC7B8B,EAAM,mBAAoB9B,GAC1B,MAAMyB,EAAkBzB,EAAaE,KAAInC,GAAYA,EAASC,aAC9D8D,EAAM,sBAAuBL,GAC7BM,EAAM3F,IAAI,kBAAmBqF,EAAgB,IAQ/CM,EAAMG,MAAQ,KACZ,IAAK,MAAMC,KAAOpB,EAAwB,CACxC,MAAMrE,EAAQqE,EAAuBoB,GACrCJ,EAAM3F,IAAI+F,EAAYzF,E,GAI1B,OAAOqF,CACT,Q"}
@@ -0,0 +1,2 @@
1
+ import{r as e,c as a,h as t,H as n,a as s,F as r}from"./p-68c2fadf.js";import{R as i}from"./p-8b53becf.js";import{q as o,a as l,r as c,s as d,h as f,v as b,w as p}from"./p-01e86103.js";import{T as y,g as h,L as u}from"./p-49f716ed.js";import"./p-cb65c223.js";const m=':host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}sp-theme{height:inherit;display:flex;flex-direction:column;justify-content:space-between;align-items:center;font-family:var(--nylas-font-family)}.event-card-wrapper{display:flex;align-items:center;flex-direction:column;background-color:var(--nylas-base-0);color:var(--nylas-base-900);border-radius:var(--nylas-border-radius-3x);position:relative;margin-top:1rem;margin-bottom:2rem;width:424px;box-shadow:0px 1px 4px rgba(0, 0, 0, 0.1), 0px 3px 6px rgba(0, 0, 0, 0.06)}@media screen and (max-width: 768px){.event-card-wrapper{width:100%;border-radius:0px}}.calendar-icon{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:50%;position:absolute;top:-1.25rem;left:50%;transform:translateX(-50%);background-color:var(--nylas-base-0);border:1px solid var(--nylas-base-200);color:var(--nylas-base-700)}.booked-event-header{margin:1.5rem 4rem;overflow-wrap:anywhere;display:flex;align-items:center;flex-direction:column;font-size:1rem;font-weight:400}.booked-event-header h2{color:var(--nylas-base-600);margin-top:1.5rem;margin-bottom:0.25rem;font-size:1.125rem;font-weight:600}.booking-date-time,.booking-participants{padding:0 1rem;margin-top:1.5rem;margin-left:3rem;display:flex;flex-direction:column;justify-content:space-between;align-self:flex-start;position:relative}.booking-date-time svg,.booking-participants svg{color:var(--nylas-base-700);position:absolute;left:-10px}.booking-date-time .block,.booking-participants .block{display:block}.booking-date-time h3,.booking-participants h3{color:var(--nylas-base-600);margin:0;font-size:1rem;font-weight:600;line-height:1.25rem;text-align:justify;margin-bottom:4px}.booking-date-time p,.booking-participants p{font-size:16px;margin:0;font-weight:400;text-align:justify;color:var(--nylas-base-800)}.booking-participants{margin-bottom:1.5rem}.booked-event-timezone{display:flex;color:var(--nylas-base-600);margin-bottom:1.5rem;gap:4px;margin:2rem;align-items:center;align-self:flex-end}.footer{padding:0.5rem;display:grid;grid-template-columns:1fr 1fr;gap:0.5rem;box-sizing:border-box;background-color:var(--nylas-base-25);width:100%;border-radius:0 0 var(--nylas-border-radius-2x) var(--nylas-border-radius-2x)}sp-button{background-color:var(--nylas-base-0);color:var(--nylas-base-700);border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);font-size:16px;padding:8px;font-family:var(--nylas-font-family);font-weight:600;height:48px;line-height:24px}sp-button.cancel{color:var(--nylas-error)}sp-button.cancel:hover,sp-button.cancel:focus{border-color:var(--nylas-error)}sp-button.cancel:active{color:var(--nylas-error-pressed);border-color:var(--nylas-error-pressed)}sp-button.reschedule:hover,sp-button.reschedule:focus{border-color:var(--nylas-primary)}sp-button.reschedule:active{border-color:var(--nylas-base-600)}sp-divider{background-color:var(--nylas-base-200);height:1px}calendar-check-icon{display:flex;align-items:center;justify-content:center;height:100%}';const g=m;var v=undefined&&undefined.__decorate||function(e,a,t,n){var s=arguments.length,r=s<3?a:n===null?n=Object.getOwnPropertyDescriptor(a,t):n,i;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")r=Reflect.decorate(e,a,t,n);else for(var o=e.length-1;o>=0;o--)if(i=e[o])r=(s<3?i(r):s>3?i(a,t,r):i(a,t))||r;return s>3&&r&&Object.defineProperty(a,t,r),r};var k=undefined&&undefined.__metadata||function(e,a){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,a)};const x=class{constructor(t){e(this,t);this.cancelBookingButtonClicked=a(this,"cancelBookingButtonClicked",7);this.rescheduleButtonClicked=a(this,"rescheduleButtonClicked",7);this.rescheduleBookedEventError=a(this,"rescheduleBookedEventError",7);this.cancelBookedEventValidationError=a(this,"cancelBookedEventValidationError",7);this.handleCancelBookingButtonClicked=()=>{const e=new Date;const a=this.configSettings?.scheduler.min_cancellation_notice;const t=o(e,a);if(e.getTime()<t.getTime()){this.cancelBookedEventValidationError.emit({error:{title:"Cancellation Error",message:`You cannot cancel the booking within ${a} minutes of the event.`}})}else{this.cancelBookingButtonClicked.emit({bookingId:this.eventInfo.booking_id})}};this.handleRescheduleButtonClicked=()=>{const e=e=>{this.rescheduleBookedEventError.emit(e)};this.rescheduleButtonClicked.emit({bookingId:this.eventInfo.booking_id,errorHandler:e})};this.getOrganizer=e=>{const a=e?.organizer;return a};this.getPaticipantType=e=>{switch(e){case"host":return"Host";case"you":return"You";default:return""}};this.eventInfo=undefined;this.rescheduleBookingId=undefined;this.bookingInfo=undefined;this.selectedTimezone=Intl.DateTimeFormat().resolvedOptions().timeZone;this.selectedTimeslot=undefined;this.configSettings=undefined}connectedCallback(){}disconnectedCallback(){}async componentWillLoad(){l(`[nylas-booked-event-card] Component will load`)}async componentDidLoad(){l(`[nylas-booked-event-card] Component did load`)}render(){return t(n,{key:"fd31424392865287d5a696d2ea4a0840974324c1",part:"nbec"},t("sp-theme",{key:"5e4fab19061fd773200fc8856355d2efc6c7f767",theme:"spectrum",color:"dark",scale:"medium"},t("div",{key:"5effb33fcc0492a2f968e5b29229a974fb1bf2a3",class:"booked-event-timezone"},t("globe-icon",{key:"7be37ec8323f0c36112e4a8c5903c2078fe0ae0e"}),y[this.selectedTimezone]),t("div",{key:"594e1cffea71361c2a52f5ed3f480b7fc7a6c0f4",class:"event-card-wrapper",part:"nbec__card"},t("div",{key:"e2bcea8c2cd100f6291846d29524ee08a2c6d6ad",class:"calendar-icon"},t("calendar-check-icon",{key:"412d634ebd082474581d8ceba417bcefb45d10eb"})),t("div",{key:"97f9f06776a64a9ceed5f8b7c84ed9d03983e083",class:"booked-event-header"},t("h2",{key:"7453ad8f16ca9e477a5c6f7791dbf2aa89514394",slot:"card-title",part:"nbec__title"},"Booking ",!!this.rescheduleBookingId?"rescheduled":"confirmed","!"),t("div",{key:"5877c31296ad8821c822b8447a9adb495eea9756",part:"nbec__description"},this.getOrganizer(this.eventInfo)?.name||this.getOrganizer(this.eventInfo)?.email," & ",this.bookingInfo?.primaryParticipant?.name||this.bookingInfo?.primaryParticipant?.email)),t("sp-divider",{key:"3845e25500160ac43e0c19af3c3c3c446caca39e"}),t("div",{key:"349d849d49be4e71264436c6add7039b889f8933",class:"booking-date-time"},t("checkmark-circle-icon",{key:"bccea293108ed90eece51494c79c8e5ae2db1411"}),t("h3",{key:"ee98cd2b9c877a7e8342940892ff08be4ee647e0"},"Booking date and time"),t("p",{key:"1efd072abb08a6606299911e594a07b2de396113"},new Date(this.selectedTimeslot?.start_time).toLocaleDateString(undefined,{dateStyle:"full"})," ",t("br",{key:"e014d22678d84c7541854985d945672efde047e9"}),new Date(this.selectedTimeslot?.start_time).toLocaleTimeString(undefined,{timeStyle:"short"})," -"," ",new Date(this.selectedTimeslot?.end_time).toLocaleTimeString(undefined,{timeStyle:"short"}))),t("div",{key:"0870d9969b572bf688c4c12de934066ed36f421a",class:"booking-participants"}),t("sp-divider",{key:"85674fadb92fc69826e738545a9f9bd1c478d522"}),t("div",{key:"c60007a3d63af3cca707736386f7cbc1d2963626",class:"footer"},t("sp-button",{key:"f1295268e7f3341e37e7d66d460eabc28ad56482",variant:"secondary",treatment:"outline",class:"cancel",onClick:this.handleCancelBookingButtonClicked,part:"nbec__button-outline nbec__cancel-cta"},"Cancel booking"),t("sp-button",{key:"276674ce1eb225cfb7ea95936e1cb05056b921cc",variant:"secondary",treatment:"outline",class:"reschedule",onClick:this.handleRescheduleButtonClicked,part:"nbec__button-outline nbec__reschedule-cta"},"Reschedule")))))}};v([i({name:"nylas-booked-event-card",stateToProps:new Map([["scheduler.bookingInfo","bookingInfo"],["scheduler.rescheduleBookingId","rescheduleBookingId"],["scheduler.selectedTimezone","selectedTimezone"],["scheduler.selectedTimeslot","selectedTimeslot"],["scheduler.configSettings","configSettings"]]),eventToProps:{cancelBookingButtonClicked:async(e,a)=>{a.scheduler.setCancel(e.detail.bookingId)},rescheduleButtonClicked:async(e,a)=>{const t=await a.scheduler.setReschedule(e.detail.bookingId);const{errorHandler:n}=e.detail;if(n&&(!t||"error"in t)){n(t)}}},fireRegisterEvent:true}),k("design:type",Function),k("design:paramtypes",[]),k("design:returntype",void 0)],x.prototype,"render",null);x.style=g;const w=':host{display:block;height:100%;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}.nylas-booking-form{width:100%;padding:1.5rem;box-sizing:border-box;height:450px;overflow-y:auto;height:100%}form{height:100%;display:flex;flex-direction:column;justify-content:space-between;align-items:center}sp-textfield{--spectrum-corner-radius-100:var(--nylas-border-radius-2x);--spectrum-textfield-border-color:var(--nylas-base-300);position:relative;width:100%;height:48px;margin-bottom:16px;color:var(--nylas-base-500)}.cta{width:100%;display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:0.5rem;padding:10px;box-sizing:border-box;border-top:1px solid var(--nylas-base-200)}@media screen and (max-width: 768px){.cta{flex-direction:column-reverse}}sp-button{background-color:transparent;color:var(--nylas-base-800);border-radius:var(--nylas-border-radius-2x);--button-width:50%;font-family:var(--nylas-font-family);font-size:16px;font-weight:600;border:none;height:48px;padding:14px}@media screen and (max-width: 768px){sp-button{--button-width:100%}}sp-button:hover,sp-button:focus{background-color:var(--nylas-base-100);color:var(--nylas-primary);border-radius:var(--nylas-border-radius-2x)}sp-button:active{background-color:var(--nylas-base-200);color:var(--nylas-base-800)}sp-button.back{width:var(--button-width);background-color:transparent;color:var(--nylas-base-700);outline:1px solid var(--nylas-base-300)}sp-button.back:hover,sp-button.back:focus{outline-color:var(--nylas-primary)}sp-button.back:active{outline:2px solid var(--nylas-base-600)}sp-button.book{width:var(--button-width);background-color:var(--nylas-primary);color:var(--nylas-base-0)}sp-button.book:hover,sp-button.book:focus{background-color:var(--nylas-base-600)}sp-button.book:active{background-color:var(--nylas-base-800)}.input-wrapper{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:1rem}.input-wrapper input::placeholder{color:var(--nylas-base-300)}.input-wrapper label,.input-wrapper input{font-family:var(--nylas-font-family)}.input-wrapper .help-text{margin:0;color:var(--nylas-error)}.button-wrapper{width:100%;align-items:flex-start;height:max-content;position:relative}sp-infield-button{--spectrum-infield-button-background-color:transparent;--spectrum-infield-button-background-color-hover:transparent;--spectrum-infield-button-background-color-active:transparent;--spectrum-infield-button-border-color:transparent;--spectrum-infield-button-border-width:1px;--spectrum-infield-button-border-radius:0;color:var(--nylas-base-600);background:transparent;border:none;outline:1px solid var(--nylas-base-300);border-radius:0 var(--nylas-border-radius-2x) var(--nylas-border-radius-2x) 0;height:52px;width:52px;display:flex;position:absolute;right:0;align-items:center;justify-content:center;cursor:pointer}sp-infield-button sp-icon-cross300{color:var(--nylas-base-600)}sp-infield-button.error{border-width:2px;border-color:var(--nylas-error)}input[type=text],input[type=email]{display:flex;height:48px;padding-left:16px;align-items:center;gap:8px;align-self:stretch;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-300);background:var(--nylas-base-0);width:-webkit-fill-available;color:var(--nylas-base-900);font-size:16px;font-style:normal;font-weight:400;line-height:150%}input[type=text].error,input[type=email].error{border-radius:var(--nylas-border-radius-2x);font-weight:600;border-color:var(--nylas-error);border-width:2px}input[type=text].error::placeholder,input[type=email].error::placeholder{font-weight:400}input[type=text].guest-email,input[type=email].guest-email{color:var(--nylas-base-900);padding-right:52px}label{display:flex;color:var(--nylas-base-800, #293056);font-size:14px;font-style:normal;font-weight:400;line-height:150%}label.error{color:var(--nylas-error)}label span.required{color:var(--nylas-error);padding:0 0.25rem}';const C=w;var _=undefined&&undefined.__decorate||function(e,a,t,n){var s=arguments.length,r=s<3?a:n===null?n=Object.getOwnPropertyDescriptor(a,t):n,i;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")r=Reflect.decorate(e,a,t,n);else for(var o=e.length-1;o>=0;o--)if(i=e[o])r=(s<3?i(r):s>3?i(a,t,r):i(a,t))||r;return s>3&&r&&Object.defineProperty(a,t,r),r};var z=undefined&&undefined.__metadata||function(e,a){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,a)};const j=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;const R=class{constructor(t){e(this,t);this.nameChanged=a(this,"nameChanged",7);this.emailChanged=a(this,"emailChanged",7);this.backButtonClicked=a(this,"backButtonClicked",7);this.detailsConfirmed=a(this,"detailsConfirmed",7);this.bookingFormError=a(this,"bookingFormError",7);this.handleGuestChange=(e,a)=>{this.resetGuestEmailError(e);const t=[...this.guestEmails];t[e]=a;this.guestEmails=[...t]};this.handleGuestBlur=(e,a)=>{this.resetGuestEmailError(e);if(a===""){this.guestEmailErrors[e]="Email is required";return}if(!j.test(a)){this.guestEmailErrors[e]="Enter a valid email address";return}this.handleGuestChange(e,a)};this.addGuestButtonClickedHandler=()=>{this.guestEmails=[...this.guestEmails,""]};this.removeGuestButtonClickHandler=(e,a)=>{e.preventDefault();this.resetGuestEmailError(a);const t=[...this.guestEmails];t.splice(a,1);this.guestEmails=[...t]};this.handleBackButtonClicked=()=>{this.backButtonClicked.emit()};this.bookButtonClickedHandler=async e=>{e.preventDefault();l("nylas-booking-form","bookButtonClickedHandler",this.bookingInfo);const a=this.name||this.bookingInfo?.primaryParticipant?.name;const t=this.email||this.bookingInfo?.primaryParticipant?.email;if(!a||a===""){this.isNameValid=false;this.validationError.name="Name is required";this.bookingFormError.emit({title:"Booking form error",description:"Name is required"});return}if(!t||t===""){this.isEmailValid=false;this.validationError.email="Email is required";this.bookingFormError.emit({title:"Booking form error",description:"Email is required"});return}if(!j.test(t)){this.isEmailValid=false;this.validationError.email="Enter a valid email address";this.bookingFormError.emit({title:"Booking form error",description:"Invalid email"});return}let n=[];if(this.guestEmails.length>0){let e=false;this.guestEmails.forEach(((a,t)=>{if(a===""){e=true;this.guestEmailErrors={...this.guestEmailErrors,[t]:"Email is required"}}else if(!j.test(a)){e=true;this.guestEmailErrors={...this.guestEmailErrors,[t]:"Enter a valid email address"}}}));if(e){this.bookingFormError.emit({title:"Booking form error",description:"Invalid guest email"});return}n=this.guestEmails.map((e=>({name:"",email:e.trim()})))}else if(this.bookingInfo?.guests){n=this.bookingInfo?.guests}this.detailsConfirmed.emit({primaryParticipant:{name:a,email:t},guests:n,additionalFields:{...this.bookingInfo?.additionalFields}})};this.isLoading=undefined;this.bookingInfo=undefined;this.eventInfo=undefined;this.name="";this.email="";this.guestEmails=[];this.guestEmailErrors={};this.isNameValid=true;this.isEmailValid=true;this.validationError={name:"",email:""}}connectedCallback(){}disconnectedCallback(){}componentWillLoad(){l("nylas-booking-form","componentWillLoad",this.bookingInfo);if(this.bookingInfo){this.name=this.bookingInfo.primaryParticipant?.name;this.email=this.bookingInfo.primaryParticipant?.email}}bookingInfoChangedHandler(e){if(e&&e.primaryParticipant){this.name=e.primaryParticipant.name;this.email=e.primaryParticipant.email}}changeName(e){this.isNameValid=true;this.validationError.name="";this.name=e;this.nameChanged.emit(e)}changeEmail(e){this.isEmailValid=true;this.validationError.email="";this.email=e;this.emailChanged.emit(e)}resetGuestEmailError(e){const a={...this.guestEmailErrors};delete a[e];this.guestEmailErrors={...a}}render(){return t(n,{key:"5a255277a21fa84d100bb53d13bb9dce0ce58e24"},t("form",{key:"19b7aecb9223557f0ff9d4c062968c3242026f0c",onSubmit:e=>this.bookButtonClickedHandler(e),noValidate:true},t("div",{key:"49276b2a59934eeaeb38c06db6968f957b7b9bee",class:"nylas-booking-form"},t("slot",{key:"ee0a8c29c1fb6b7273d6a2d3c8cb88180f0e9dbf",name:"custom-booking-form"},t("div",{key:"662e46f3a7925282f824547a069f52584b94d564",class:"input-wrapper"},t("label",{key:"a01c1903ee983e1555006ad14e75cd1b2c3036ff",htmlFor:"name",class:{"input-label":true,error:!this.isNameValid},part:"nbf__input-label"},"Name ",t("span",{key:"4729d580bbf9d851c2ac8b686dc826c4e3e4616f",class:"required"},"*")),t("input",{key:"51754a63345f1d0332a38f646dde6a8a998c8dee",id:"name",type:"text",placeholder:"Enter your name",value:this.name,class:{input:true,error:!this.isNameValid},part:"nbf__input-textfield",onInput:e=>this.changeName(e.target?.value)}),t("p",{key:"b8a6660e959a877421bdfffdb87279d8f09123b8",class:"help-text"},this.validationError.name)),t("div",{key:"e78a74e67abde7e61c1d3c555c234817770a4040",class:"input-wrapper"},t("label",{key:"d5507037f5c668f58e14031dba4276900ef5ed09",htmlFor:"email",class:{"input-label":true,error:!this.isEmailValid},part:"nbf__input-label"},"Email ",t("span",{key:"514f00587069ac1cfc6d16bfd30750d6d501817d",class:"required"},"*")),t("input",{key:"0b80ded98b2174f783fa9e7c951a47661aa894f6",id:"email",type:"email",placeholder:"Enter your email",value:this.email,class:{input:true,error:!this.isEmailValid},part:"nbf__input-textfield",onInput:e=>this.changeEmail(e.target?.value)}),t("p",{key:"ba185ccb2bec87049e94d8c5f8d211a838de0025",class:"help-text"},this.validationError.email)))),t("div",{key:"56e2cce79371533ad66cccad95a79dd8935fe3eb",class:"cta"},t("sp-button",{key:"2b6410b3cf2b7634737aa858396290ad065dfcfc",treatment:"outline",variant:"secondary",class:"back",part:"nbf__button-outline",onClick:this.handleBackButtonClicked},t("slot",{key:"4ba60a2fb3542434ede16ea382ec4ca80cb8d422",name:"booking-form-back-label"},"Back")),t("sp-button",{key:"49dd32531d7b55529bb73bc82eb0b91820c6ea33",variant:"primary",class:"book",part:"nbf__button-primary",type:"submit"},this.isLoading&&t("loading-icon",{slot:"icon"}),t("slot",{key:"a57ae44c1c3a1b020a110f0156435f27897410c6",name:"booking-form-book-label"},"Book now")))))}get host(){return s(this)}static get watchers(){return{bookingInfo:["bookingInfoChangedHandler"]}}};_([i({name:"nylas-booking-form",stateToProps:new Map([["scheduler.isLoading","isLoading"],["scheduler.bookingInfo","bookingInfo"],["scheduler.eventInfo","eventInfo"]]),eventToProps:{backButtonClicked:async(e,a)=>{a.scheduler.toggleAdditionalData(false)},nameChanged:async(e,a)=>{a.scheduler.setParticipantName(e.detail)},emailChanged:async(e,a)=>{a.scheduler.setParticipantEmail(e.detail)}},fireRegisterEvent:true}),z("design:type",Function),z("design:paramtypes",[]),z("design:returntype",void 0)],R.prototype,"render",null);R.style=C;const L=':host{display:block;width:400px;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}sp-theme{height:inherit;display:flex;flex-direction:column;justify-content:space-between;align-items:center;font-family:var(--nylas-font-family)}.nylas-cancel-booking-form{display:flex;align-items:center;flex-direction:column;background-color:var(--nylas-base-0);color:var(--nylas-base-800);border-radius:var(--nylas-border-radius-2x);padding:1.5rem;position:relative;box-shadow:0px 1px 4px rgba(0, 0, 0, 0.1), 0px 3px 6px rgba(0, 0, 0, 0.06)}.nylas-cancel-booking-form__title{font-size:18px;font-weight:600;margin-bottom:0;color:var(--nylas-base-900)}.nylas-cancel-booking-form__description{font-size:1rem;font-style:normal;font-weight:400;line-height:140%;color:var(--nylas-base-600)}.nylas-cancel-booking-form__calendar-icon{width:3rem;height:3rem;border-radius:50%;position:absolute;top:-1.25rem;left:50%;transform:translateX(-50%);background-color:var(--nylas-base-0);border:1px solid var(--nylas-base-200)}calendar-cancel-icon{display:flex;align-items:center;justify-content:center;height:100%}sp-button{background-color:var(--nylas-base-0);color:var(--nylas-base-700);border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);font-size:16px;font-weight:600;width:100%;height:48px;padding:8px;line-height:24px;font-family:var(--nylas-font-family)}sp-button.cancel{margin-top:1.25rem;background-color:var(--nylas-primary);color:var(--nylas-base-0)}sp-button.cancel:hover,sp-button.cancel:focus{background-color:var(--nylas-base-600)}sp-button.cancel:active{background-color:var(--nylas-base-800)}sp-button.back{margin-top:0.5rem}sp-button.back:hover,sp-button.back:focus{border-color:var(--nylas-primary)}sp-button.back:active{border-color:var(--nylas-base-600)}sp-field-label{margin-top:1rem;display:flex;color:var(--nylas-base-800);font-size:14px}sp-field-label.error{color:var(--nylas-error)}sp-field-label span.required{color:var(--nylas-error)}sp-textfield{--spectrum-textfield-border-color:var(--nylas-base-300);--spectrum-textfield-icon-color-invalid:var(--nylas-error);position:relative;width:100%;height:48px;margin-bottom:16px;background-color:var(--nylas-base-0);color:var(--nylas-base-500)}sp-textfield.error{--spectrum-textfield-border-color:var(--nylas-error)}sp-help-text{margin:0.25rem 0 1rem 0;color:var(--nylas-error)}';const D=L;var T=undefined&&undefined.__decorate||function(e,a,t,n){var s=arguments.length,r=s<3?a:n===null?n=Object.getOwnPropertyDescriptor(a,t):n,i;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")r=Reflect.decorate(e,a,t,n);else for(var o=e.length-1;o>=0;o--)if(i=e[o])r=(s<3?i(r):s>3?i(a,t,r):i(a,t))||r;return s>3&&r&&Object.defineProperty(a,t,r),r};var E=undefined&&undefined.__metadata||function(e,a){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,a)};const I=class{constructor(t){e(this,t);this.goBackButtonClicked=a(this,"goBackButtonClicked",7);this.cancelBookingFormSubmitted=a(this,"cancelBookingFormSubmitted",7);this.cancelBookedEventError=a(this,"cancelBookedEventError",7);this.cancelBookingFormError=a(this,"cancelBookingFormError",7);this.handleGoBackClicked=()=>{this.goBackButtonClicked.emit()};this.handleSubmitCancelBooking=e=>{e.preventDefault();if(!this.cancellationReason){this.cancellationError="Please provide a reason for cancellation.";this.cancelBookingFormError.emit({title:"Cancel booking form error",description:"Please provide a reason for cancellation."});return}l(`[nylas-cancel-booking-form] Cancel booking form submitted with reason: ${this.cancellationReason}`);const a=e=>{this.cancelBookedEventError.emit(e)};this.cancelBookingFormSubmitted.emit({bookingId:this.cancelBookingId,reason:this.cancellationReason,errorHandler:a})};this.handleOnChangeCancellationReason=e=>{this.cancellationError="";this.cancellationReason=e.target.value};this.cancelBookingId=undefined;this.cancellationReason="";this.cancellationError=""}connectedCallback(){l(`[nylas-cancel-booking-form] Component connected`)}async componentWillLoad(){l(`[nylas-cancel-booking-form] Component will load`)}async componentDidLoad(){l(`[nylas-cancel-booking-form] Component did load`)}disconnectedCallback(){l(`[nylas-cancel-booking-form] Component disconnected`)}render(){return t(n,{key:"98dc29d53d8a05beb16dea271cab5c574df4dfd0",part:"ncec"},t("sp-theme",{key:"04feb774090fb57270a3d3c05576687ec78c230d",theme:"spectrum",scale:"medium"},t("div",{key:"024a947c805b9f2ab6204a8548e9c775078fa969",class:"nylas-cancel-booking-form",part:"ncec__card"},t("div",{key:"93295919797719199fbbe6eccdef4e42045c330d",class:"nylas-cancel-booking-form__calendar-icon",part:"ncec__icon"},t("calendar-cancel-icon",{key:"b8da092aa626ebdef64dd3f2f54ca2df5082d1f3"})),t("h3",{key:"8e33cc23c5bc26aa8e5c979814fa5a398c798237",class:"nylas-cancel-booking-form__title",part:"ncec__title"},"Cancel booking?"),t("div",{key:"2c8cd37241e6cfe38bb012be4d700ae03c33876e",class:"nylas-cancel-booking-form__description",part:"ncec__description"},"Your current timeslot will become available to others."),t("form",{key:"be720382bd84086cd8a25279dd4ec58dbfc113e6",onSubmit:this.handleSubmitCancelBooking},t("sp-field-label",{key:"fadd2793a898975b8ba8da0549bcbb37879a68bf",for:"cancel-reason",class:this.cancellationError?"error":""},"Reason for cancellation ",t("span",{key:"0748781625ea7ec8332b4ca20eae8986ad9e8efb",class:"required"},"*")),t("sp-textfield",{key:"e8daf40a5c26b1e6b9b59ab42bbe613da72c987a",id:"cancel-reason",class:this.cancellationError?"error":"",part:"ncec__reason-textarea",multiline:true,value:this.cancellationReason,onInput:this.handleOnChangeCancellationReason,onFocus:this.handleOnChangeCancellationReason,invalid:!!this.cancellationError},t("sp-help-text",{key:"f876e2f41098845a235fe2b563e85891843d5351",slot:"negative-help-text"},this.cancellationError)),t("sp-button",{key:"a05211715fda7fa75935c974bd20ce6c6ef4206a",variant:"primary",class:"cancel",type:"submit",part:"ncec__button-cta"},"Cancel booking"),t("sp-button",{key:"3dd7832e698181eaca4df52835d64c09b664f5f9",variant:"secondary",class:"back",treatment:"outline",part:"ncec__button-outline",onClick:this.handleGoBackClicked},"Go back")))))}};T([i({name:"nylas-cancel-booking-form",eventToProps:{cancelBookingFormSubmitted:async(e,a)=>{const t=await a.scheduler.cancelBooking(e.detail.bookingId);const{errorHandler:n}=e.detail;if(n&&(!t||"error"in t)){n(t)}}},fireRegisterEvent:true}),E("design:type",Function),E("design:paramtypes",[]),E("design:returntype",void 0)],I.prototype,"render",null);I.style=D;const S=':host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}sp-theme{height:inherit;display:flex;flex-direction:column;justify-content:space-between;align-items:center;font-family:var(--nylas-font-family)}.nylas-cancelled-event-card{display:flex;align-items:center;flex-direction:column;width:400px;background-color:var(--nylas-base-0);color:var(--nylas-base-800);border-radius:var(--nylas-border-radius-2x);padding:1.5rem;position:relative;box-shadow:0px 1px 4px rgba(0, 0, 0, 0.1), 0px 3px 6px rgba(0, 0, 0, 0.06)}@media screen and (max-width: 768px){.nylas-cancelled-event-card{width:inherit}}.nylas-cancelled-event-card__title{font-size:18px;font-weight:600;line-height:24px;color:var(--nylas-base-900);text-align:center}.nylas-cancelled-event-description{font-size:16px;font-weight:500;color:var(--nylas-base-600)}.nylas-cancelled-event-card__calendar-icon{width:3rem;height:3rem;border-radius:50%;position:absolute;top:-1.25rem;left:50%;transform:translateX(-50%);background-color:var(--nylas-base-0);border:1px solid var(--nylas-base-200)}.nylas-cancelled-event-card__cta{width:100%;display:flex;flex-direction:row;align-items:flex-start;margin-top:1rem}calendar-cancel-icon{display:flex;align-items:center;justify-content:center;height:100%}sp-button{background-color:var(--nylas-base-0);color:var(--nylas-base-700);border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);font-size:1rem;height:48px;padding:8px;line-height:24px;width:100%}sp-button:hover,sp-button:focus{border-color:var(--nylas-primary)}sp-button:active{border-color:var(--nylas-base-600)}';const B=S;var M=undefined&&undefined.__decorate||function(e,a,t,n){var s=arguments.length,r=s<3?a:n===null?n=Object.getOwnPropertyDescriptor(a,t):n,i;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")r=Reflect.decorate(e,a,t,n);else for(var o=e.length-1;o>=0;o--)if(i=e[o])r=(s<3?i(r):s>3?i(a,t,r):i(a,t))||r;return s>3&&r&&Object.defineProperty(a,t,r),r};var H=undefined&&undefined.__metadata||function(e,a){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,a)};const O=class{constructor(t){e(this,t);this.closeCancelEventCardClicked=a(this,"closeCancelEventCardClicked",7);this.cancelledEventCardError=a(this,"cancelledEventCardError",7);this.handleCloseClicked=()=>{this.isClosing=true;const e=e=>{this.cancelledEventCardError.emit(e);this.isClosing=false};this.closeCancelEventCardClicked.emit({errorHandler:e})};this.cancelledEventInfo=undefined;this.isClosing=false;this.configSettings=undefined}connectedCallback(){l(`[nylas-cancelled-event-card] Component connected`)}async componentWillLoad(){l(`[nylas-cancelled-event-card] Component will load`)}async componentDidLoad(){l(`[nylas-cancelled-event-card] Component did load`)}disconnectedCallback(){l(`[nylas-cancelled-event-card] Component disconnected`)}render(){return t(n,{key:"105954b6497f7a8cf45faedb592896629e90c6d0",part:"ncec"},t("sp-theme",{key:"d248975c2139a611ab60c5c585d87e8701327a4b",theme:"spectrum",color:"dark",scale:"medium"},t("div",{key:"090b767111679ca9968ac0b128c6685fed6e39db",class:"nylas-cancelled-event-card",part:"ncec__card"},t("div",{key:"ae1e57f0f2a39f5ad7f4b7b9ed493f3e93ccdeba",class:"nylas-cancelled-event-card__calendar-icon",part:"ncec__icon"},t("calendar-cancel-icon",{key:"06250b1c0f330957f0f691d0f7724c608dffa28b"})),t("h3",{key:"1826c12ca770476cfd206d9d1a3b80f0d890da56",class:"nylas-cancelled-event-card__title",part:"ncec__title"},"Your booking has been cancelled successfully!"),t("div",{key:"93c4c7e4ed245372e736c61c30b23e9be11453ec",class:"nylas-cancelled-event-card__description",part:"ncec__description"},"A cancellation email has been sent to ",this.configSettings?.organizer?.name||"the participants","."),t("div",{key:"21162d4c4e2ee6c2f95038b0e25e9ad0aed63742",class:"nylas-cancelled-event-card__cta"},t("sp-button",{key:"ab6cb1da324717c3b375c9280f307a2590224f27",variant:"secondary",treatment:"outline",disabled:this.isClosing,part:"ncec__button-outline",onClick:this.handleCloseClicked},this.isClosing?"Closing...":"Close")))))}};M([i({name:"nylas-cancelled-event-card",stateToProps:new Map([["scheduler.configSettings","configSettings"]]),eventToProps:{closeCancelEventCardClicked:async(e,a)=>{const t=await a.scheduler.resetCancel();const{errorHandler:n}=e.detail;if(n&&(!t||"error"in t)){n(t)}}},fireRegisterEvent:true}),H("design:type",Function),H("design:paramtypes",[]),H("design:returntype",void 0)],O.prototype,"render",null);O.style=B;const V=new Date,$=new Date;function F(e,a,t,n){function s(a){return e(a=arguments.length===0?new Date:new Date(+a)),a}s.floor=a=>(e(a=new Date(+a)),a);s.ceil=t=>(e(t=new Date(t-1)),a(t,1),e(t),t);s.round=e=>{const a=s(e),t=s.ceil(e);return e-a<t-e?a:t};s.offset=(e,t)=>(a(e=new Date(+e),t==null?1:Math.floor(t)),e);s.range=(t,n,r)=>{const i=[];t=s.ceil(t);r=r==null?1:Math.floor(r);if(!(t<n)||!(r>0))return i;let o;do{i.push(o=new Date(+t)),a(t,r),e(t)}while(o<t&&t<n);return i};s.filter=t=>F((a=>{if(a>=a)while(e(a),!t(a))a.setTime(a-1)}),((e,n)=>{if(e>=e){if(n<0)while(++n<=0){while(a(e,-1),!t(e)){}}else while(--n>=0){while(a(e,+1),!t(e)){}}}}));if(t){s.count=(a,n)=>{V.setTime(+a),$.setTime(+n);e(V),e($);return Math.floor(t(V,$))};s.every=e=>{e=Math.floor(e);return!isFinite(e)||!(e>0)?null:!(e>1)?s:s.filter(n?a=>n(a)%e===0:a=>s.count(0,a)%e===0)}}return s}const P=1e3;const Z=P*60;const W=Z*60;const q=W*24;const A=F((e=>e.setHours(0,0,0,0)),((e,a)=>e.setDate(e.getDate()+a)),((e,a)=>(a-e-(a.getTimezoneOffset()-e.getTimezoneOffset())*Z)/q),(e=>e.getDate()-1));F((e=>{e.setUTCHours(0,0,0,0)}),((e,a)=>{e.setUTCDate(e.getUTCDate()+a)}),((e,a)=>(a-e)/q),(e=>e.getUTCDate()-1));F((e=>{e.setUTCHours(0,0,0,0)}),((e,a)=>{e.setUTCDate(e.getUTCDate()+a)}),((e,a)=>(a-e)/q),(e=>Math.floor(e/q)));const N=':host{display:block;min-height:444px;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}@media screen and (max-width: 768px){:host{min-height:auto}}.nylas-date-picker{display:flex;gap:1rem;flex-direction:column}.header{margin:0 0.5rem;height:48px}.header h2{font-size:1.3125rem;font-weight:400;line-height:1rem;color:var(--nylas-base-800)}.header h2 strong{font-weight:600}@keyframes pulsate{0%{background-color:var(--nylas-base-50)}50%{background-color:var(--nylas-base-100)}100%{background-color:var(--nylas-base-50)}}.dates{display:grid;justify-items:center;grid-template-columns:repeat(7, 1fr);gap:0.5rem;margin-bottom:1rem}.dates .date{position:relative;display:flex;flex-direction:row;justify-content:center;align-items:center;height:48px;width:48px;min-width:2rem;min-height:2rem;cursor:pointer;border-radius:var(--nylas-border-radius-2x);font-size:16px;font-weight:600;font-family:inherit;color:var(--nylas-base-text);background-color:var(--nylas-base-100);cursor:pointer;border:none}@media screen and (max-width: 412px){.dates .date{width:38px;height:38px;min-width:none}}.dates .date:hover:not(:disabled){box-shadow:0 0 0 2px var(--nylas-base-500) inset}.dates .date.date.current-month{color:var(--nylas-base-800)}.dates .date.date.selected{background-color:var(--nylas-primary);color:var(--nylas-base-0);font-weight:700}.dates .date.date.day-skeleton{color:var(--nylas-base-300)}.dates .date:disabled{color:var(--nylas-base-300);background-color:transparent;font-weight:400;cursor:not-allowed}.dates .day{font-size:12px;color:var(--nylas-base-800);font-weight:600;letter-spacing:0.5px;height:32px;display:flex;align-items:center}@media screen and (max-width: 768px){.dates .day{font-size:14px}}.dates .date.day-skeleton{height:48px;width:48px;border-radius:var(--nylas-border-radius-2x);animation:pulsate 1.5s infinite ease-in-out;background-color:var(--nylas-base-50)}@media screen and (max-width: 412px){.dates .date.day-skeleton{width:38px;height:38px;min-width:none}}.dates .date.current-day::after{content:"";position:absolute;bottom:6px;left:50%;transform:translateX(-50%);width:6px;height:6px;border-radius:50%;background-color:var(--nylas-base-500)}.dates .date.current-day.selected::after{background-color:var(--nylas-base-100)}.pagination{display:flex;flex-direction:row;justify-content:space-between;align-items:center;min-width:92px}.pagination .chevron-right{transform:rotate(180deg)}.pagination .button{display:flex;flex-direction:row;justify-content:center;align-items:center;height:3vh;width:3vh;min-width:3em;min-height:3em;cursor:pointer;border-radius:var(--nylas-border-radius-2x);background-color:transparent;color:var(--nylas-base-800);cursor:pointer;border:none}.pagination .button:hover{background-color:var(--nylas-base-50)}.pagination .button:active{background-color:var(--nylas-base-100)}.pagination .button:disabled{background-color:transparent;color:var(--nylas-base-300);cursor:not-allowed}.flex-row{display:flex;flex-direction:row;justify-content:space-between;align-items:center;color:var(--nylas-base-500)}';const X=N;var U=undefined&&undefined.__decorate||function(e,a,t,n){var s=arguments.length,r=s<3?a:n===null?n=Object.getOwnPropertyDescriptor(a,t):n,i;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")r=Reflect.decorate(e,a,t,n);else for(var o=e.length-1;o>=0;o--)if(i=e[o])r=(s<3?i(r):s>3?i(a,t,r):i(a,t))||r;return s>3&&r&&Object.defineProperty(a,t,r),r};var Y=undefined&&undefined.__metadata||function(e,a){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,a)};const G=class{constructor(t){e(this,t);this.dateSelected=a(this,"dateSelected",7);this.monthChanged=a(this,"monthChanged",7);this.selectableDates=undefined;this.selectedDate=undefined;this.configSettings=undefined;this.isLoading=undefined;this.month=this.selectedDate||new Date;this.dates=this.getDates();this.disableNextMonthButton=false}connectedCallback(){}disconnectedCallback(){}componentWillLoad(){}getDates(){const e=c(this.month);const a=d(this.month);return A.range(A.offset(a,-a.getDay()),A.offset(e,7-e.getDay()))}selectDate(e){this.dateSelected.emit(e)}changeMonth(e){this.month=new Date(this.month.getFullYear(),this.month.getMonth()+e,1);const a=new Date(this.month.getFullYear(),this.month.getMonth()+1,1);const t=this.configSettings?.scheduler?.available_days_in_future;const n=f(new Date,t);if(n.getTime()<a.getTime()){this.disableNextMonthButton=true}else{this.disableNextMonthButton=false}this.dates=this.getDates();this.monthChanged.emit(this.month);this.selectDate()}isSelected(e,a,t){return e&&a&&b(e,a)&&t&&t?.length>0}isDisabled(e,a){return e&&a?.find((a=>b(a,e)))===undefined}render(){return t(n,{key:"fd7de67053417b11844a66e5b978f7feb80efe18",part:"ndp"},t("div",{key:"a08943851e2239ad12121b90f35760d73a085441",class:"nylas-date-picker"},t("div",{key:"832ad38012c55eb04ab2c5b0ceb50052ab3edd42",class:"header flex-row"},t("h2",{key:"2df451227e57dfee081c1d4435443e479cf8871c",part:"ndp__month-header"},t("strong",{key:"63421dca4b9bf36207ba05e9eff795c7c198287c"},this.month.toLocaleDateString(undefined,{month:"long"}))," ",this.month.toLocaleDateString(undefined,{year:"numeric"})),t("div",{key:"ca982a82d87baf5658674624c1153f14e77470aa",class:"pagination"},t("button",{key:"d2a41582014f92c23784c71fe1df9834d77fd355",onClick:()=>this.changeMonth(-1),class:{"chevron-left":true,button:true},disabled:!this.selectableDates?.length||this.month<=new Date,part:"ndp__month-button"},t("chevron-icon",{key:"4f319da7e440236edb9bfa711fb0b05cd046dc8e"})),t("button",{key:"ff00426293e1857592ebae58557ea46e5db9858d",onClick:()=>this.changeMonth(1),class:{"chevron-right":true,button:true},disabled:!this.selectableDates?.length||this.disableNextMonthButton,part:"ndp__month-button"},t("chevron-icon",{key:"7075f5e8da61c9d91fb612771a3d7672f1521b6f"})))),t("div",{key:"3ad884077d163de5182731c03bf856c9e204f411",class:"dates"},["SUN","MON","TUE","WED","THU","FRI","SAT"].map((e=>t("div",{class:"day",part:"ndp__day"},e))),this.dates.map(((e,a)=>{const n=this.isDisabled(e,this.selectableDates);if(this.isLoading){return t("button",{disabled:true,class:{"date day-skeleton":true,"current-month":p(e,this.month)},style:{animationDelay:`${a*20}ms`},part:"ndp__date"},e.getDate())}return t("button",{class:{date:true,selected:!!(this.selectedDate&&b(e,this.selectedDate)&&this.selectableDates&&this.selectableDates?.length>0),"current-day":b(e,new Date),"current-month":p(e,this.month)},"aria-lang":e.toLocaleDateString(undefined,{dateStyle:"full"}),disabled:n,onClick:()=>this.selectDate(e),part:`ndp__date ${this.isSelected(e,this.selectedDate,this.selectableDates)?"ndp__date--selected":""} ${b(e,new Date)?"ndp__date--current-day":""} ${p(e,this.month)?"ndp__date--current-month":""}`},e.getDate())})))))}};U([i({name:"nylas-date-picker",stateToProps:new Map([["scheduler.selectableDates","selectableDates"],["scheduler.selectedDate","selectedDate"],["scheduler.isLoading","isLoading"],["scheduler.configSettings","configSettings"]]),eventToProps:{dateSelected:async(e,a)=>{a.scheduler.selectDate(e.detail)}},fireRegisterEvent:true}),Y("design:type",Function),Y("design:paramtypes",[]),Y("design:returntype",void 0)],G.prototype,"render",null);G.style=X;const J=':host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}.nylas-locale-switch{display:flex;flex-direction:row;justify-content:space-between;align-items:center;height:68px;border-left:none;border-right:none;color:var(--nylas-base-50);font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s ease-in-out;font-family:inherit}@media screen and (max-width: 768px){.nylas-locale-switch{font-size:16px}}.select-wrapper{display:flex;align-items:center;gap:0.5rem}select{border:none;background:transparent;cursor:pointer;outline:none;background-color:transparent;margin:0 0 1px;padding:4px;vertical-align:middle}select#timezone{width:140px}select#language{width:80px}span.timezone-label{display:flex;width:-webkit-fill-available;justify-content:space-between}';const K=J;var Q=undefined&&undefined.__decorate||function(e,a,t,n){var s=arguments.length,r=s<3?a:n===null?n=Object.getOwnPropertyDescriptor(a,t):n,i;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")r=Reflect.decorate(e,a,t,n);else for(var o=e.length-1;o>=0;o--)if(i=e[o])r=(s<3?i(r):s>3?i(a,t,r):i(a,t))||r;return s>3&&r&&Object.defineProperty(a,t,r),r};var ee=undefined&&undefined.__metadata||function(e,a){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,a)};const ae=class{constructor(t){e(this,t);this.timezoneChanged=a(this,"timezoneChanged",7);this.languageChanged=a(this,"languageChanged",7);this.selectedTimezone=Intl.DateTimeFormat().resolvedOptions().timeZone;this.selectedLanguage=navigator.language}connectedCallback(){}disconnectedCallback(){}componentWillLoad(){}changeTimezone(e){this.selectedTimezone=e;this.timezoneChanged.emit(e)}changeLanguage(e){this.selectedLanguage=e;this.languageChanged.emit(e)}selectedOptionChangedHandler(e){const{name:a,value:t}=e.detail;if(a==="timezone"){this.changeTimezone(t)}else if(a==="language"){this.changeLanguage(t)}}getTimezoneLabelHTML(e){const a=h(e);return t("span",{class:"timezone-label",style:{display:"flex",alignItems:"center",justifyContent:"space-between",width:"-webkit-fill-available"}},y[e]," ",t("span",{class:"timezone-offset",style:{fontSize:"14px",fontWeight:"400",color:"var(--nylas-base-500)"}},a))}render(){const e=Object.keys(y).map((e=>({labelHTML:this.getTimezoneLabelHTML(e),label:y[e],value:e})));const a=Object.keys(u).map((e=>({label:u[e],value:e})));return t(n,{key:"688b90cbd1410a8025a8becfd3f979fc854c60a2"},t("div",{key:"a4f485ce6204d89e16336c93809dbcf5ebf862ef",class:"nylas-locale-switch"},t("div",{key:"5525e493d2f8e3258a2fe8b4c739db49d7ef1a35",class:{"select-wrapper":true,timezone:true}},t("select-dropdown",{key:"68f7f48a2cada4cc0c7327431f15384d17ebc261",name:"timezone",options:e,defaultSelectedOption:e.find((e=>e.value==this.selectedTimezone))},t("span",{key:"d1213a8cba28b2163997cdb4bce7e13d7485e869",slot:"select-icon"},t("globe-icon",{key:"f11285b20c93a42a0f195f89966bc7ff7b2d7322",width:"20",height:"20"})))),t("div",{key:"0287627954a80ef5092ded694e61ec2a19606667",class:{"select-wrapper":true,language:true}},t("select-dropdown",{key:"1bd58884de605b22cb6a5631b8e9f960cfa058d4",name:"language",options:a,defaultSelectedOption:a.find((e=>e.value==this.selectedLanguage))},t("span",{key:"0681b6c8296d60c258c2df3bcb60d895c0e0c533",slot:"select-icon"},t("translate-icon",{key:"bd3f346f56da2a139c5050799c9e2774d311d72c",width:"20",height:"20"}))))))}};Q([i({name:"nylas-locale-switch",stateToProps:new Map([["scheduler.selectedLanguage","selectedLanguage"],["scheduler.selectedTimezone","selectedTimezone"]]),eventToProps:{timezoneChanged:async(e,a)=>{a.scheduler.selectTimezone(e.detail)}},fireRegisterEvent:true}),ee("design:type",Function),ee("design:paramtypes",[]),ee("design:returntype",void 0)],ae.prototype,"render",null);ae.style=K;const te=".sc-nylas-logo-h{display:flex}";const ne=te;const se=class{constructor(a){e(this,a);this.width="69";this.height="24"}render(){return t("svg",{key:"5aea87a70e3fd0d4db9231f986662a0e51d5225e",width:this.width,height:this.height,viewBox:"0 0 69 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t("g",{key:"635ee7b2cff95d3949dc8a7aba5d7897ac42bec8","clip-path":"url(#clip0_455_3543)"},t("path",{key:"818b4ab1d5087f3dbd4b65ec92c46da729b7b034",d:"M15.8092 3.03248C14.6497 1.86996 13.1076 1.23047 11.4646 1.23047C9.82156 1.23047 8.27753 1.86996 7.11999 3.03248L0.835347 9.33381C0.686846 9.4827 0.60498 9.68123 0.60498 9.89312C0.60498 10.105 0.686846 10.3035 0.835347 10.4524C0.983848 10.6013 1.18185 10.6834 1.39318 10.6834C1.60451 10.6834 1.80251 10.6013 1.95101 10.4524L8.23374 4.15111C10.0139 2.36627 12.9134 2.36627 14.6935 4.15111C16.4736 5.93785 16.4756 8.84322 14.6935 10.6281L8.4108 16.9275C8.10428 17.2348 8.10428 17.7368 8.4108 18.0461C8.5593 18.195 8.75731 18.2771 8.96863 18.2771C9.17996 18.2771 9.37796 18.195 9.52646 18.0461L15.8092 11.7467C16.9687 10.5841 17.6064 9.03793 17.6064 7.39053C17.6064 5.74314 16.9687 4.19501 15.8092 3.03439V3.03248Z",fill:"currentColor"}),t("path",{key:"0519037016d40d4c264b929f042bffde6fcb4095",d:"M14.9296 7.39038C14.9296 6.46074 14.5698 5.58837 13.9148 4.93361C12.5631 3.57828 10.3641 3.57828 9.01239 4.93361L0.663961 13.3023C0.51546 13.4512 0.433594 13.6497 0.433594 13.8616C0.433594 14.0735 0.51546 14.272 0.663961 14.4209C0.812462 14.5698 1.01046 14.6519 1.22179 14.6519C1.43312 14.6519 1.63112 14.5698 1.77962 14.4209L10.0367 6.1515L10.05 6.13623C10.0747 6.10759 10.1014 6.07705 10.128 6.05033C10.1585 6.01978 10.1928 5.99115 10.2251 5.96252L10.2442 5.94534C10.9886 5.31349 12.1119 5.3593 12.8011 6.05033C13.4903 6.74135 13.536 7.78171 12.9705 8.53192L12.9648 8.53955C12.9058 8.61591 12.8544 8.67699 12.8011 8.73044C12.7497 8.78198 12.6906 8.83352 12.6069 8.90033L4.45264 17.0991C4.30414 17.248 4.22227 17.4465 4.22227 17.6584C4.22227 17.8703 4.30414 18.0689 4.45264 18.2177C4.60114 18.3666 4.79914 18.4487 5.01047 18.4487C5.2218 18.4487 5.4198 18.3666 5.5683 18.2177L13.9167 9.84716C14.5698 9.1924 14.9315 8.31812 14.9315 7.39038H14.9296Z",fill:"currentColor"}),t("path",{key:"10efd16fe4864b407bed8c54611001c6a0f5098f",d:"M10.6821 9.11238C10.4727 9.01694 10.2861 8.88904 10.1281 8.7306C9.97008 8.57216 9.84252 8.38508 9.74733 8.1751L9.69021 8.05103L0.467916 17.2978C0.287049 17.4792 0.174721 17.7082 0.149971 17.9411C0.125221 18.1778 0.19376 18.3897 0.344165 18.5405C0.471724 18.6684 0.65259 18.739 0.850592 18.739C1.11142 18.739 1.37796 18.6207 1.58358 18.4145L10.8059 9.16774L10.6821 9.11047V9.11238Z",fill:"currentColor"}),t("path",{key:"0282ae1035c07bd0f8af5c3530ce7ce799dc2dc1",d:"M68.401 10.6185C68.2126 10.2692 67.9593 9.97334 67.6433 9.73854C67.3235 9.49993 66.956 9.31094 66.5486 9.17541C66.1316 9.03606 65.7033 8.91771 65.2749 8.81844C64.7951 8.70582 64.3039 8.57983 63.8165 8.44811C63.3196 8.31258 62.9065 8.14269 62.5905 7.94225C62.4743 7.88689 62.3391 7.76663 62.3391 7.50129C62.3391 7.39821 62.3639 7.29704 62.4153 7.19587L62.4248 7.18059C62.5352 7.02216 62.7142 6.8828 62.975 6.75109C63.234 6.62128 63.609 6.55829 64.1231 6.55829C64.5286 6.55829 64.877 6.61365 65.1569 6.72436C65.4348 6.83508 65.6652 6.96871 65.8442 7.12524C66.0212 7.27986 66.1659 7.45357 66.2782 7.63873C66.3563 7.76854 66.4267 7.89262 66.4858 8.00525L68.2754 6.84081C68.1669 6.59456 68.0146 6.33495 67.8204 6.0677C67.6033 5.768 67.3254 5.4893 66.9922 5.23732C66.659 4.98534 66.2516 4.77345 65.7813 4.60929C65.3111 4.44512 64.7532 4.36304 64.1231 4.36304C63.3844 4.36304 62.7599 4.46421 62.2706 4.66083C61.7813 4.85935 61.3815 5.09988 61.0845 5.37667C60.7875 5.65346 60.5628 5.95125 60.4143 6.2605C60.2639 6.57547 60.1611 6.85799 60.1078 7.10233C60.0945 7.18059 60.0812 7.27031 60.0678 7.36767C60.0545 7.4593 60.0469 7.5452 60.0469 7.62537C60.0469 8.13314 60.1745 8.56074 60.4239 8.89671C60.679 9.24222 61.0045 9.53429 61.391 9.76336C61.7813 9.99624 62.2116 10.1852 62.6704 10.3227C63.1388 10.462 63.5862 10.5823 64.0012 10.6796C64.4067 10.777 64.7932 10.8782 65.1531 10.9774C65.5224 11.0786 65.8289 11.2122 66.0631 11.3745C66.2801 11.5425 66.3887 11.7448 66.3887 11.9777C66.3887 12.2278 66.2916 12.4263 66.0993 12.5695C65.9279 12.6954 65.7261 12.7985 65.4958 12.8711C65.273 12.9436 65.0407 12.9913 64.8066 13.0142C64.58 13.0352 64.3915 13.0467 64.2468 13.0467C63.8032 13.0467 63.4224 13.0028 63.1197 12.915C62.8151 12.8272 62.5638 12.7241 62.3734 12.6057C62.1811 12.4874 62.0288 12.3614 61.9222 12.2316C61.8213 12.1094 61.747 12.0082 61.7014 11.9319L61.4957 11.6303L59.708 12.7928C59.8508 13.0161 60.0298 13.2643 60.2392 13.5296C60.4772 13.8293 60.7837 14.1138 61.153 14.3734C61.5224 14.633 61.966 14.8525 62.4724 15.0243C62.9788 15.1961 63.5748 15.282 64.2468 15.282C64.797 15.282 65.2901 15.2324 65.7166 15.137C66.1412 15.0396 66.5162 14.9117 66.8285 14.7552C67.1388 14.6005 67.4015 14.4192 67.6109 14.2149C67.8223 14.0107 67.9974 13.8026 68.1326 13.6003C68.4563 13.1135 68.6409 12.5504 68.6828 11.9262C68.6828 11.4069 68.5876 10.9641 68.401 10.6166V10.6185Z",fill:"currentColor"}),t("path",{key:"16e1d732c5e6eee5f772d45085103b099c3130bf",d:"M26.3585 4.27905C23.7901 4.27905 21.6997 6.37504 21.6997 8.95017V15.0701H23.9291V8.95017C23.9291 7.6082 25.0181 6.5163 26.3565 6.5163C27.695 6.5163 28.784 7.6082 28.784 8.95017V15.0701H31.0134V8.95017C31.0134 6.37504 28.9229 4.27905 26.3546 4.27905H26.3585Z",fill:"currentColor"}),t("path",{key:"495550fe08ebeba1c89726b7009112e89088472a",d:"M53.4522 4.27905C50.4251 4.27905 47.9634 6.74728 47.9634 9.78245C47.9634 12.8176 50.427 15.2859 53.4522 15.2859C54.5545 15.2859 55.6188 14.9594 56.5288 14.3409L56.7116 14.2169V15.0682H58.941V9.78245C58.941 6.74728 56.4793 4.27905 53.4522 4.27905ZM53.4522 13.0505C51.655 13.0505 50.1928 11.5845 50.1928 9.78245C50.1928 7.98044 51.655 6.51439 53.4522 6.51439C55.2494 6.51439 56.7116 7.98044 56.7116 9.78245C56.7116 11.5845 55.2494 13.0505 53.4522 13.0505Z",fill:"currentColor"}),t("path",{key:"effe06423b66ff0a533bfb8ec6d9a0cbbf19f765",d:"M45.5795 10.6166V0.356201H43.3501V10.6166C43.3501 13.1517 45.3758 15.2228 47.8908 15.2858V13.0486C46.6057 12.9875 45.5795 11.9204 45.5795 10.6166Z",fill:"currentColor"}),t("path",{key:"785098f3a2ac3a19e79056e355365fd8ccc81cd9",d:"M39.5428 4.4967V10.63C39.5428 11.6761 38.8669 12.621 37.9016 12.9284C37.1249 13.1746 36.3157 13.0486 35.6817 12.5829C35.0592 12.1247 34.6879 11.3917 34.6879 10.6186V4.4967H32.4585V10.5995C32.4585 12.7165 33.8388 14.57 35.8131 15.1084C37.0354 15.4424 38.2995 15.2973 39.3695 14.7037L39.5428 14.6063V14.9747C39.5428 16.2766 38.5166 17.3437 37.2315 17.4067V19.6439C39.7465 19.5809 41.7722 17.5117 41.7722 14.9747V4.4967H39.5428Z",fill:"currentColor"})),t("defs",{key:"9466fc6ad025006936d16136c6f4be4b79282759"},t("clipPath",{key:"901a3ef6048680de4ddbdd8e3fd8edfbb7afc0f3",id:"clip0_455_3543"},t("rect",{key:"aee5f90208b83c446e4ac3877ce788d0dcad0de3",width:"68.7123",height:"19.2877",fill:"white",transform:"translate(0.144043 0.356201)"}))))}};se.style=ne;const re=':host{display:block;margin-bottom:-12px;width:100%;z-index:1;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}.notif{display:flex;padding:17px;align-items:flex-start;justify-content:space-between;gap:16px;border-radius:var(--nylas-border-radius-2x);border:1.5px solid var(--nylas-error);background:var(--nylas-base-0)}@media screen and (max-width: 768px){.notif{width:auto}}.notif .content{display:flex;flex-direction:row;gap:8px}.notif .content .message{font-size:14px;font-weight:400;color:var(--nylas-base-800)}.notif .content .message .title{font-size:16px;font-weight:600;color:var(--nylas-base-950);display:block}.notif .content .message .description{font-size:14px;font-weight:400;color:var(--nylas-base-800);display:block}.notif .content .icon.error{color:var(--nylas-error)}.notif.error{border-color:var(--nylas-error)}.notif.warning{border-color:var(--nylas-warning)}.notif.info{border-color:var(--nylas-info)}.notif.success{border-color:var(--nylas-success)}.notif .dismiss-btn{background:none;border:none;color:var(--nylas-base-950);cursor:pointer}';const ie=re;const oe=class{constructor(a){e(this,a);this.ttl=5e3;this.allowedCategories=["component","api","validation","invalid_session"];this.notifications=[]}onError(e){l(`[nylas-notification] Error: ${e.detail.title}`);this.handleNotification(e)}onWarning(e){l(`[nylas-notification] Warning: ${e.detail.title}`);this.handleNotification(e)}onInfo(e){l(`[nylas-notification] Info: ${e.detail.title}`);this.handleNotification(e)}onSuccess(e){l(`[nylas-notification] Success: ${e.detail.title}`);this.handleNotification(e)}handleNotification(e){if(e.defaultPrevented){l(`[nylas-notification] Event default prevented`);return}if(this.ttl===0){l(`[nylas-notification] TTL is 0`);return}if(this.allowedCategories.length>0&&!this.allowedCategories.includes(e.detail.category)){l(`[nylas-notification] Category not allowed`);return}this.notifications=[...this.notifications,{...e.detail}];if(e.detail.ttl!=="none"){const a=e.detail.ttl?e.detail.ttl:this.ttl;window.setTimeout((()=>{this.notifications=this.notifications.filter((a=>a.id!==e.detail.id))}),a)}}dismissNotification(e){this.notifications=this.notifications.filter((a=>a.id!==e))}render(){return t(n,{key:"16bd673245819e3ed76ba5689c3292be510e3cd7"},t(r,{key:"d88e8ea863d00a8c982c7e26007c975526c7457f"},this.notifications.map((e=>t("div",{class:`notif ${e.type}`,key:e.id},t("div",{class:"content"},t("span",{class:`icon ${e.type}`},(e.type==="error"||e.type==="warning")&&t("warning-icon",null)),t("span",{class:"message"},t("span",{class:"title"},e.title),e.description&&t("span",{class:"description"},e.description))),t("button",{class:"dismiss-btn",onClick:()=>this.dismissNotification(e.id)},t("close-icon",null))))),t("slot",{key:"c40cb61ce0a1dbd3416824b7c26e08e3aea01eae"})))}};oe.style=ie;const le=":host{display:block}sp-theme{position:relative;height:inherit;display:flex;flex-direction:column;justify-content:center;align-items:center;font-family:var(--nylas-font-family)}.event-card{display:flex;align-items:center;flex-direction:column;width:calc(100% - 3rem);background-color:var(--nylas-base-0);color:var(--nylas-base-800);border-radius:var(--nylas-border-radius-2x);padding:3rem 1.5rem 1.5rem 1.5rem;position:relative;box-shadow:0px 1px 3px 0px rgba(0, 0, 0, 0.1), 0px 1px 2px 0px rgba(0, 0, 0, 0.06)}@media screen and (max-width: 768px){.event-card{margin-bottom:2rem}}.nylas-selected-event-card__date{font-size:min(max(16px, 3vw), 18px);font-weight:600}.nylas-selected-event-card__time{font-size:min(max(14px, 3vw), 16px);font-weight:500}.calendar-icon{width:3rem;height:3rem;border-radius:50%;position:absolute;top:-1.25rem;left:50%;transform:translateX(-50%);background-color:var(--nylas-base-0);border:1px solid var(--nylas-base-200)}calendar-icon{display:flex;align-items:center;justify-content:center;height:100%}.event-timezone{display:flex;color:var(--nylas-base-600);margin-bottom:8px;gap:4px;align-items:center}@media screen and (max-width: 768px){.event-timezone{margin-bottom:16px}}";const ce=le;var de=undefined&&undefined.__decorate||function(e,a,t,n){var s=arguments.length,r=s<3?a:n===null?n=Object.getOwnPropertyDescriptor(a,t):n,i;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")r=Reflect.decorate(e,a,t,n);else for(var o=e.length-1;o>=0;o--)if(i=e[o])r=(s<3?i(r):s>3?i(a,t,r):i(a,t))||r;return s>3&&r&&Object.defineProperty(a,t,r),r};var fe=undefined&&undefined.__metadata||function(e,a){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,a)};const be=class{constructor(a){e(this,a);this.selectedDate=undefined;this.selectedTimeslot=undefined;this.selectedTimezone=Intl.DateTimeFormat().resolvedOptions().timeZone;this.startTime="";this.endTime=""}connectedCallback(){}disconnectedCallback(){}async componentWillLoad(){l(`[nylas-selected-event-card] Component will load`)}async componentDidLoad(){l(`[nylas-selected-event-card] Component did load`)}handleSelectedTimeslotChange(e){this.startTime=new Date(e?.start_time).toLocaleString(undefined,{timeStyle:"short"});this.endTime=new Date(e?.end_time).toLocaleString(undefined,{timeStyle:"short"})}render(){return t(n,{key:"1104fd2969ab03bb794c17bbf08f1600a200448c",part:"nsec"},t("sp-theme",{key:"674934ecb54519d9e8c227a9946b9725518b77e5",theme:"spectrum",color:"dark",scale:"medium"},t("div",{key:"4d492e825e93b93ff96af4970812178656de4ab8",class:"event-card",part:"nsec__card"},t("div",{key:"239131412dab45da5b1f7bfe3b4a2eda45a2978b",class:"calendar-icon",part:"nsec__icon"},t("calendar-icon",{key:"a2fa2f47b94a2c331d4cac88ef736faef3e30dae"})),t("div",{key:"81c873d5c2019b6ae1d8b746685dbe5efc2d7d0b",class:"nylas-selected-event-card__date",part:"nsec__date"},this.selectedDate?.toLocaleDateString(undefined,{dateStyle:"full"})),t("div",{key:"67348e66fd879ead10594b216a2d66cf7da272aa",class:"nylas-selected-event-card__time",part:"nsec__time"},this.startTime," - ",this.endTime)),t("div",{key:"0fc6452dae7c5998a70d116c9bdfe25ab109661c",class:"event-timezone",part:"nsec__timezone"},t("globe-icon",{key:"86c4a1e2728a30e34805a7c286378fe9adef110e"}),y[this.selectedTimezone])))}static get watchers(){return{selectedTimeslot:["handleSelectedTimeslotChange"]}}};de([i({name:"nylas-selected-event-card",stateToProps:new Map([["scheduler.selectedDate","selectedDate"],["scheduler.selectedTimeslot","selectedTimeslot"],["scheduler.selectedTimezone","selectedTimezone"]]),eventToProps:{},fireRegisterEvent:true}),fe("design:type",Function),fe("design:paramtypes",[]),fe("design:returntype",void 0)],be.prototype,"render",null);be.style=ce;const pe=":host{display:block;height:calc(100% - 48px)}.time-picker-wrapper{display:flex;flex-direction:column;height:100%}.time-slots{position:relative;display:flex;flex-direction:column;gap:0.75rem;align-items:center;overflow-y:scroll;padding:0.5rem 1.5rem;flex:1}.time{box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:4px 12px;gap:0.5rem;font-size:16px;font-weight:500;font-family:inherit;width:100%;height:48px;color:var(--nylas-base-800);background:var(--nylas-base-0);border:none;outline:1.5px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);flex:none;order:4;align-self:stretch;flex-grow:0;cursor:pointer}.time:hover,.time:focus{color:var(--nylas-primary);outline-color:var(--nylas-primary)}.time.selected{font-weight:600;color:var(--nylas-primary);outline:2px solid var(--nylas-primary);border-color:transparent;box-shadow:0 0 0 2px var(--nylas-primary)}.empty{text-align:center;padding:0 1.5rem;color:var(--nylas-base-600);font-size:min(max(12px, 2vw), 14px);height:450px;display:flex;align-items:center;justify-content:center}@keyframes pulsate{0%{background-color:var(--nylas-base-50)}50%{background-color:var(--nylas-base-100)}100%{background-color:var(--nylas-base-50)}}.loading{padding:0 1.5rem}.loading .time-slot-skeleton{width:100%;height:4rem;background-color:var(--nylas-base-50);margin-bottom:0.5rem;border-radius:var(--nylas-border-radius-2x);animation:pulsate 1.5s infinite ease-in-out}.footer{width:100%;padding:10px;box-sizing:border-box;border-top:1px solid var(--nylas-base-200)}.footer sp-button{padding:14px;color:var(--nylas-base-100);border-radius:var(--nylas-border-radius-2x);width:100%;height:48px;font-weight:600;font-size:16px;background-color:var(--nylas-primary);border:none}.footer sp-button:hover,.footer sp-button:focus{background-color:var(--nylas-base-600)}.footer sp-button:active{background-color:var(--nylas-base-800)}";const ye=pe;var he=undefined&&undefined.__decorate||function(e,a,t,n){var s=arguments.length,r=s<3?a:n===null?n=Object.getOwnPropertyDescriptor(a,t):n,i;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")r=Reflect.decorate(e,a,t,n);else for(var o=e.length-1;o>=0;o--)if(i=e[o])r=(s<3?i(r):s>3?i(a,t,r):i(a,t))||r;return s>3&&r&&Object.defineProperty(a,t,r),r};var ue=undefined&&undefined.__metadata||function(e,a){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,a)};const me=class{constructor(t){e(this,t);this.timeslotSelected=a(this,"timeslotSelected",7);this.timeslotConfirmed=a(this,"timeslotConfirmed",7);this.handleConfirmedTimeslot=async(e,a)=>{e.preventDefault();l(`[nylas-timeslot-picker] Confirm timeslot`,a);this.timeslotConfirmed.emit(a)};this.handleMouseEnter=e=>{this.hoveredTimeslotIndex=e};this.handleMouseLeave=()=>{this.hoveredTimeslotIndex=-1};this.selectedDate=new Date;this.availability=undefined;this.selectedTimeslot=undefined;this.isLoading=undefined;this.selectedTimezone=Intl.DateTimeFormat().resolvedOptions().timeZone;this.times=[];this.hoveredTimeslotIndex=undefined;this.selectedTimeslotIndex=undefined}connectedCallback(){}disconnectedCallback(){}async componentWillLoad(){const e=this.availability?.filter((e=>this.selectedDate&&b(e.start_time,this.selectedDate))).map((e=>e));this.times=e||[];l(`[nylas-timeslot-picker] Component will load`,{selectedDate:this.selectedDate,availability:this.availability,times:this.times})}async componentDidLoad(){l(`[nylas-timeslot-picker] Component did load`)}getTimeslotId(e,a){return`${e.toLocaleDateString()}-${a}`}onClickSelectTime(e,a){l(`[nylas-timeslot-picker] Time selected`,e,a);this.selectedTimeslotIndex=this.getTimeslotId(e.start_time,a);this.timeslotSelected.emit({start_time:e.start_time,end_time:e.end_time})}getTimeSlotLabel(e){const a=new Intl.DateTimeFormat("en-US",{hour:"numeric",minute:"numeric",timeZone:this.selectedTimezone});return`${a.format(e.start_time)} - ${a.format(e.end_time)}`}selectedDateChanged(e){l(`[nylas-timeslot-picker] Selected date changed`,{newVal:e});if(e){this.selectedTimeslotIndex="";if(typeof e!=="undefined"){const a=this.availability?.filter((a=>b(a.start_time,e))).map((e=>e));this.times=a||[]}}}availabilityChanged(e){l(`[nylas-timeslot-picker] Available times changed`,{newVal:e,selectedDate:this.selectedDate});if(typeof e!=="undefined"){const a=e?.filter((e=>this.selectedDate&&b(e.start_time,this.selectedDate))).map((e=>e));this.times=a||[]}}render(){if(this.isLoading){return t(n,null,t("div",{class:"loading"},new Array(6).fill(0).map(((e,a)=>t("div",{class:"time-slot-skeleton",style:{animationDelay:`${a*20}ms`}})))))}if(this.availability&&this.availability.length===0){return t(n,null,t("div",{class:"empty"},t("span",null,"No dates available")))}if((!this.times||this.times.length===0)&&!!this.selectedDate){return t(n,null,t("div",{class:"empty"},t("span",null,"No time slots available for selected date")))}if(!this.selectedDate)return t(n,null);return t(n,{part:"ntp"},t("div",{class:"time-picker-wrapper"},t("div",{class:"time-slots"},this.times.map(((e,a)=>t("button",{part:`ntp__timeslot ${this.selectedTimeslot?.start_time?.getTime()===e.start_time.getTime()?"ntp__timeslot--selected":""}`,"aria-role":"button",class:{time:true,selected:typeof this.selectedTimeslot!=="undefined"&&this.selectedTimeslot?.start_time?.getTime()===e.start_time.getTime()},onClick:()=>this.onClickSelectTime(e,a),onMouseEnter:()=>this.handleMouseEnter(a),onMouseLeave:()=>this.handleMouseLeave()},this.hoveredTimeslotIndex==a||this.selectedTimeslotIndex==this.getTimeslotId(e.start_time,a)?this.getTimeSlotLabel(e):e.start_time.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",timeZone:this.selectedTimezone}))))),this.selectedTimeslot&&t("div",{class:"footer"},t("sp-button",{variant:"primary",onClick:e=>this.handleConfirmedTimeslot(e,this.selectedTimeslot),part:"ntp__button-primary"},t("slot",{name:"timeslot-picker-cta-label"},"Next")))))}static get watchers(){return{selectedDate:["selectedDateChanged"],availability:["availabilityChanged"]}}};he([i({name:"nylas-timeslot-picker",stateToProps:new Map([["scheduler.selectedDate","selectedDate"],["scheduler.availability","availability"],["scheduler.selectedTimeslot","selectedTimeslot"],["scheduler.selectedTimezone","selectedTimezone"],["scheduler.isLoading","isLoading"]]),eventToProps:{timeslotSelected:async(e,a)=>{a.scheduler.selectTime(e.detail)},timeslotConfirmed:async(e,a)=>{if(e.detail){a.scheduler.toggleAdditionalData(true)}}},fireRegisterEvent:true}),ue("design:type",Function),ue("design:paramtypes",[]),ue("design:returntype",void 0)],me.prototype,"render",null);me.style=ye;export{x as nylas_booked_event_card,R as nylas_booking_form,I as nylas_cancel_booking_form,O as nylas_cancelled_event_card,G as nylas_date_picker,ae as nylas_locale_switch,se as nylas_logo,oe as nylas_notification,be as nylas_selected_event_card,me as nylas_timeslot_picker};
2
+ //# sourceMappingURL=p-b1b3eb52.entry.js.map