@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,10 +1,10 @@
1
1
  import { r as registerInstance, i as createEvent, h, a as Host } from './index-8362ce5c.js';
2
- import { R as RegisterComponent } from './register-component-e5afe237.js';
3
- import { a as debug } from './utils-73d8a928.js';
2
+ import { R as RegisterComponent } from './register-component-0462b27d.js';
3
+ import { k as addMinutesToCurrentTime, a as debug } from './utils-157014b4.js';
4
4
  import { T as TIMEZONE_MAP } from './constants-bf39e913.js';
5
5
  import './_commonjsHelpers-7c16df4a.js';
6
6
 
7
- const nylasBookedEventCardCss = ":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 0;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%}";
7
+ const nylasBookedEventCardCss = ":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%}";
8
8
 
9
9
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
10
10
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -26,8 +26,22 @@ const NylasBookedEventCard = class {
26
26
  this.cancelBookingButtonClicked = createEvent(this, "cancelBookingButtonClicked", 7);
27
27
  this.rescheduleButtonClicked = createEvent(this, "rescheduleButtonClicked", 7);
28
28
  this.rescheduleBookedEventError = createEvent(this, "rescheduleBookedEventError", 7);
29
+ this.cancelBookedEventValidationError = createEvent(this, "cancelBookedEventValidationError", 7);
29
30
  this.handleCancelBookingButtonClicked = () => {
30
- this.cancelBookingButtonClicked.emit({ bookingId: this.eventInfo.booking_id });
31
+ const today = new Date();
32
+ const minCancellationNotice = this.configSettings?.scheduler.min_cancellation_notice;
33
+ const dateTillCancellation = addMinutesToCurrentTime(today, minCancellationNotice);
34
+ if (today.getTime() < dateTillCancellation.getTime()) {
35
+ this.cancelBookedEventValidationError.emit({
36
+ error: {
37
+ title: 'Cancellation Error',
38
+ message: `You cannot cancel the booking within ${minCancellationNotice} minutes of the event.`,
39
+ },
40
+ });
41
+ }
42
+ else {
43
+ this.cancelBookingButtonClicked.emit({ bookingId: this.eventInfo.booking_id });
44
+ }
31
45
  };
32
46
  this.handleRescheduleButtonClicked = () => {
33
47
  const errorHandler = (error) => {
@@ -54,6 +68,7 @@ const NylasBookedEventCard = class {
54
68
  this.bookingInfo = undefined;
55
69
  this.selectedTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
56
70
  this.selectedTimeslot = undefined;
71
+ this.configSettings = undefined;
57
72
  }
58
73
  connectedCallback() { }
59
74
  disconnectedCallback() { }
@@ -64,7 +79,7 @@ const NylasBookedEventCard = class {
64
79
  debug(`[nylas-booked-event-card] Component did load`);
65
80
  }
66
81
  render() {
67
- return (h(Host, { key: '1585329ee957e66c757861d989d29a9c1bb1451f', part: "nbec" }, h("sp-theme", { key: '113da8c82dd485188d40f1dea9f814be0c408ca2', theme: "spectrum", color: "dark", scale: "medium" }, h("div", { key: 'af6b0a085e582f2d7bdb5503b9d5b6d3c7042fd3', class: "booked-event-timezone" }, h("globe-icon", { key: '0c3fbff398a24c97d82bb74434d9da574349919f' }), TIMEZONE_MAP[this.selectedTimezone]), h("div", { key: '136d5341ef1d252b525359418e8df0a43f4160a0', class: "event-card-wrapper", part: "nbec__card" }, h("div", { key: '767bcbb50f4ae8c294f3ab3733fe99cd7c4c78e1', class: "calendar-icon" }, h("calendar-check-icon", { key: 'e6fd3ec502795fbcaaf9d34b5b5c4cee2d732d4f' })), h("div", { key: '7dfa8cc7719760d396716ec81ab0022c01bbe22f', class: "booked-event-header" }, h("h2", { key: '34a452c275a3880f64575735a9e67db5a8cdea45', slot: "card-title", part: "nbec__title" }, "Booking ", !!this.rescheduleBookingId ? 'rescheduled' : 'confirmed', "!"), h("div", { key: 'a081b1a3791e2e80dd651d1f9dbf5de2f2057f9a', part: "nbec__description" }, this.getOrganizer(this.eventInfo)?.name || this.getOrganizer(this.eventInfo)?.email, "\u00A0&\u00A0", this.bookingInfo?.primaryParticipant?.name || this.bookingInfo?.primaryParticipant?.email)), h("sp-divider", { key: '0744f0fa4f3fff8f2dc0dec978632496d26bfae6' }), h("div", { key: '38460fbfbe5d19b4f0d48cb0df02e6d12c2f2740', class: "booking-date-time" }, h("checkmark-circle-icon", { key: '1e282c329489e4def089d8fca1bd532557f91b92' }), h("h3", { key: '34bebd074562352d54628f763c339ccd4c44918a' }, "Booking date and time"), h("p", { key: 'd897859d30e6dd6651c0d4b0079bf0eab1df0356' }, new Date(this.selectedTimeslot.start_time).toLocaleDateString(undefined, { dateStyle: 'full' }), " ", h("br", { key: '2aa56898e654721616459102329cbe498232d3e8' }), new Date(this.selectedTimeslot.start_time).toLocaleTimeString(undefined, { timeStyle: 'short' }), " -", ' ', new Date(this.selectedTimeslot.end_time).toLocaleTimeString(undefined, { timeStyle: 'short' }))), h("div", { key: '5009ca55f795c2fd1240ed8bbc50216c4e66be87', class: "booking-participants" }), h("sp-divider", { key: '4b5b4325dda3f935387218429823b850d2a12f0e' }), h("div", { key: 'd25cc602a134085c19f0acea006db0707ceae7e5', class: "footer" }, h("sp-button", { key: '4625e515f2f79d6ecb0bb37813efe100c03cdaf2', variant: "secondary", treatment: "outline", class: "cancel", onClick: this.handleCancelBookingButtonClicked, part: "nbec__button-outline nbec__cancel-cta" }, "Cancel booking"), h("sp-button", { key: '9cbdc95cd53aa2d536751984b91ef5974e71179d', variant: "secondary", treatment: "outline", class: "reschedule", onClick: this.handleRescheduleButtonClicked, part: "nbec__button-outline nbec__reschedule-cta" }, "Reschedule"))))));
82
+ return (h(Host, { key: 'fd31424392865287d5a696d2ea4a0840974324c1', part: "nbec" }, h("sp-theme", { key: '5e4fab19061fd773200fc8856355d2efc6c7f767', theme: "spectrum", color: "dark", scale: "medium" }, h("div", { key: '5effb33fcc0492a2f968e5b29229a974fb1bf2a3', class: "booked-event-timezone" }, h("globe-icon", { key: '7be37ec8323f0c36112e4a8c5903c2078fe0ae0e' }), TIMEZONE_MAP[this.selectedTimezone]), h("div", { key: '594e1cffea71361c2a52f5ed3f480b7fc7a6c0f4', class: "event-card-wrapper", part: "nbec__card" }, h("div", { key: 'e2bcea8c2cd100f6291846d29524ee08a2c6d6ad', class: "calendar-icon" }, h("calendar-check-icon", { key: '412d634ebd082474581d8ceba417bcefb45d10eb' })), h("div", { key: '97f9f06776a64a9ceed5f8b7c84ed9d03983e083', class: "booked-event-header" }, h("h2", { key: '7453ad8f16ca9e477a5c6f7791dbf2aa89514394', slot: "card-title", part: "nbec__title" }, "Booking ", !!this.rescheduleBookingId ? 'rescheduled' : 'confirmed', "!"), h("div", { key: '5877c31296ad8821c822b8447a9adb495eea9756', part: "nbec__description" }, this.getOrganizer(this.eventInfo)?.name || this.getOrganizer(this.eventInfo)?.email, "\u00A0&\u00A0", this.bookingInfo?.primaryParticipant?.name || this.bookingInfo?.primaryParticipant?.email)), h("sp-divider", { key: '3845e25500160ac43e0c19af3c3c3c446caca39e' }), h("div", { key: '349d849d49be4e71264436c6add7039b889f8933', class: "booking-date-time" }, h("checkmark-circle-icon", { key: 'bccea293108ed90eece51494c79c8e5ae2db1411' }), h("h3", { key: 'ee98cd2b9c877a7e8342940892ff08be4ee647e0' }, "Booking date and time"), h("p", { key: '1efd072abb08a6606299911e594a07b2de396113' }, new Date(this.selectedTimeslot?.start_time).toLocaleDateString(undefined, { dateStyle: 'full' }), " ", h("br", { key: 'e014d22678d84c7541854985d945672efde047e9' }), new Date(this.selectedTimeslot?.start_time).toLocaleTimeString(undefined, { timeStyle: 'short' }), " -", ' ', new Date(this.selectedTimeslot?.end_time).toLocaleTimeString(undefined, { timeStyle: 'short' }))), h("div", { key: '0870d9969b572bf688c4c12de934066ed36f421a', class: "booking-participants" }), h("sp-divider", { key: '85674fadb92fc69826e738545a9f9bd1c478d522' }), h("div", { key: 'c60007a3d63af3cca707736386f7cbc1d2963626', class: "footer" }, h("sp-button", { key: 'f1295268e7f3341e37e7d66d460eabc28ad56482', variant: "secondary", treatment: "outline", class: "cancel", onClick: this.handleCancelBookingButtonClicked, part: "nbec__button-outline nbec__cancel-cta" }, "Cancel booking"), h("sp-button", { key: '276674ce1eb225cfb7ea95936e1cb05056b921cc', variant: "secondary", treatment: "outline", class: "reschedule", onClick: this.handleRescheduleButtonClicked, part: "nbec__button-outline nbec__reschedule-cta" }, "Reschedule"))))));
68
83
  }
69
84
  };
70
85
  __decorate([
@@ -75,6 +90,7 @@ __decorate([
75
90
  ['scheduler.rescheduleBookingId', 'rescheduleBookingId'],
76
91
  ['scheduler.selectedTimezone', 'selectedTimezone'],
77
92
  ['scheduler.selectedTimeslot', 'selectedTimeslot'],
93
+ ['scheduler.configSettings', 'configSettings'],
78
94
  ]),
79
95
  eventToProps: {
80
96
  cancelBookingButtonClicked: async (event, nylasSchedulerConnector) => {
@@ -1 +1 @@
1
- {"file":"nylas-booked-event-card.entry.js","mappings":"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","names":[],"sources":["src/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.scss?tag=nylas-booked-event-card&encapsulation=shadow","src/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n\n:host {\n display: block;\n @include default-css-variables;\n}\n\nsp-theme {\n height: inherit;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n align-items: center;\n font-family: var(--nylas-font-family);\n}\n\n.event-card-wrapper {\n display: flex;\n align-items: center;\n flex-direction: column;\n background-color: var(--nylas-base-0);\n color: var(--nylas-base-900);\n border-radius: var(--nylas-border-radius-3x);\n position: relative;\n margin-top: 1rem;\n margin-bottom: 2rem;\n width: 424px;\n @media #{$mobile} {\n width: 100%;\n border-radius: 0px;\n }\n box-shadow:\n 0px 1px 4px rgba(0, 0, 0, 0.1),\n 0px 3px 6px rgba(0, 0, 0, 0.06);\n}\n\n.calendar-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 3rem;\n height: 3rem;\n border-radius: 50%;\n position: absolute;\n top: -1.25rem;\n left: 50%;\n transform: translateX(-50%);\n background-color: var(--nylas-base-0);\n border: 1px solid var(--nylas-base-200);\n color: var(--nylas-base-700);\n}\n\n.booked-event-header {\n margin: 1.5rem 0;\n display: flex;\n align-items: center;\n flex-direction: column;\n font-size: 1rem;\n font-weight: 400;\n\n h2 {\n color: var(--nylas-base-600);\n margin-top: 1.5rem;\n margin-bottom: 0.25rem;\n font-size: 1.125rem;\n font-weight: 600;\n }\n}\n\n.booking-date-time,\n.booking-participants {\n padding: 0 1rem;\n margin-top: 1.5rem;\n margin-left: 3rem;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n align-self: flex-start;\n position: relative;\n\n svg {\n color: var(--nylas-base-700);\n position: absolute;\n left: -10px;\n }\n\n .block {\n display: block;\n }\n\n h3 {\n color: var(--nylas-base-600);\n margin: 0;\n font-size: 1rem;\n font-weight: 600;\n line-height: 1.25rem;\n text-align: justify;\n margin-bottom: 4px;\n }\n p {\n font-size: 16px;\n margin: 0;\n font-weight: 400;\n text-align: justify;\n color: var(--nylas-base-800);\n }\n}\n\n.booking-participants {\n margin-bottom: 1.5rem;\n}\n\n.booked-event-timezone {\n display: flex;\n color: var(--nylas-base-600);\n margin-bottom: 1.5rem;\n gap: 4px;\n margin: 2rem;\n align-items: center;\n align-self: flex-end;\n}\n\n.footer {\n padding: 0.5rem;\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 0.5rem;\n box-sizing: border-box;\n background-color: var(--nylas-base-25);\n width: 100%;\n border-radius: 0 0 var(--nylas-border-radius-2x) var(--nylas-border-radius-2x);\n}\n\nsp-button {\n background-color: var(--nylas-base-0);\n color: var(--nylas-base-700);\n border: 1px solid var(--nylas-base-200);\n border-radius: var(--nylas-border-radius-2x);\n font-size: 16px;\n padding: 8px;\n font-family: var(--nylas-font-family);\n font-weight: 600;\n height: 48px;\n line-height: 24px;\n &.cancel {\n color: var(--nylas-error);\n &:hover,\n &:focus {\n border-color: var(--nylas-error);\n }\n &:active {\n color: var(--nylas-error-pressed);\n border-color: var(--nylas-error-pressed);\n }\n }\n &.reschedule {\n &:hover,\n &:focus {\n border-color: var(--nylas-primary);\n }\n &:active {\n border-color: var(--nylas-base-600);\n }\n }\n}\n\nsp-divider {\n background-color: var(--nylas-base-200);\n height: 1px;\n}\n\ncalendar-check-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { Component, EventEmitter, h, Host, Prop } from '@stencil/core';\nimport { NylasSchedulerBookingData, NylasSchedulerConnector } from '../../..';\nimport { NylasScheduling } from '../nylas-scheduler/nylas-scheduling';\nimport { debug } from '@/utils/utils';\nimport { TIMEZONE_MAP } from '@/common/constants';\nimport { NylasEvent } from '@/common/types';\nimport { Event } from '@stencil/core';\nimport { NylasSchedulerErrorResponse, Timeslot } from '@nylas/core';\n\n/**\n * The `nylas-booked-event-card` component is a UI component that displays the booked event card.\n *\n * @part nbec - The booked event card host.\n * @part nbec__card - The booked event card.\n * @part nbec__title - The title of the booked event card.\n * @part nbec__description - The description of the booked event card.\n * @part nbec__button-outline - The cancel & reschedule button CTA.\n * @part nbec__cancel-cta - The cancel button CTA.\n * @part nbec__reschedule-cta - The reschedule button CTA.\n */\n@Component({\n tag: 'nylas-booked-event-card',\n styleUrl: 'nylas-booked-event-card.scss',\n shadow: true,\n})\nexport class NylasBookedEventCard {\n /**\n * The booked event.\n */\n @Prop() readonly eventInfo!: NylasEvent;\n\n /**\n * Booking flow type.\n */\n @Prop() readonly rescheduleBookingId?: string;\n\n /**\n * The booking info used to book / reschedule the event.\n */\n @Prop() readonly bookingInfo?: NylasSchedulerBookingData;\n\n /**\n * The selected timezone.\n */\n @Prop() readonly selectedTimezone: string = Intl.DateTimeFormat().resolvedOptions().timeZone;\n\n /**\n * The selected timeslot.\n */\n @Prop() readonly selectedTimeslot!: Timeslot;\n\n /**\n * Cancel booking button clicked event.\n */\n @Event() readonly cancelBookingButtonClicked!: EventEmitter<{ bookingId: string }>;\n\n /**\n * Reschedule button clicked event.\n * */\n @Event() readonly rescheduleButtonClicked!: EventEmitter<{ bookingId: string; errorHandler?: (error: NylasSchedulerErrorResponse) => void }>;\n\n /**\n * This event is fired when an error occurs while rescheduling the booking.\n */\n @Event() readonly rescheduleBookedEventError!: EventEmitter<NylasSchedulerErrorResponse>;\n\n connectedCallback() {}\n\n disconnectedCallback() {}\n\n async componentWillLoad() {\n debug(`[nylas-booked-event-card] Component will load`);\n }\n\n async componentDidLoad() {\n debug(`[nylas-booked-event-card] Component did load`);\n }\n\n private handleCancelBookingButtonClicked = () => {\n this.cancelBookingButtonClicked.emit({ bookingId: this.eventInfo.booking_id });\n };\n\n private handleRescheduleButtonClicked = () => {\n const errorHandler = (error: NylasSchedulerErrorResponse) => {\n this.rescheduleBookedEventError.emit(error);\n };\n this.rescheduleButtonClicked.emit({ bookingId: this.eventInfo.booking_id, errorHandler });\n };\n\n private getOrganizer = (eventInfo: NylasEvent) => {\n const organizer = eventInfo?.organizer;\n return organizer;\n };\n\n getPaticipantType = (type: string) => {\n switch (type) {\n case 'host':\n return 'Host';\n case 'you':\n return 'You';\n default:\n return '';\n }\n };\n\n @RegisterComponent<NylasBookedEventCard, NylasSchedulerConnector, Exclude<NylasScheduling['stores'], undefined>>({\n name: 'nylas-booked-event-card',\n stateToProps: new Map([\n ['scheduler.bookingInfo', 'bookingInfo'],\n ['scheduler.rescheduleBookingId', 'rescheduleBookingId'],\n ['scheduler.selectedTimezone', 'selectedTimezone'],\n ['scheduler.selectedTimeslot', 'selectedTimeslot'],\n ]),\n eventToProps: {\n cancelBookingButtonClicked: async (event: CustomEvent<{ bookingId: string }>, nylasSchedulerConnector: NylasSchedulerConnector) => {\n nylasSchedulerConnector.scheduler.setCancel(event.detail.bookingId);\n },\n rescheduleButtonClicked: async (\n event: CustomEvent<{ bookingId: string; errorHandler?: (error: NylasSchedulerErrorResponse) => void }>,\n nylasSchedulerConnector: NylasSchedulerConnector,\n ) => {\n const result = await nylasSchedulerConnector.scheduler.setReschedule(event.detail.bookingId);\n const { errorHandler } = event.detail;\n if (errorHandler && (!result || 'error' in result)) {\n errorHandler(result);\n }\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host part=\"nbec\">\n <sp-theme theme=\"spectrum\" color=\"dark\" scale=\"medium\">\n <div class=\"booked-event-timezone\">\n <globe-icon></globe-icon>\n {TIMEZONE_MAP[this.selectedTimezone]}\n </div>\n <div class=\"event-card-wrapper\" part=\"nbec__card\">\n <div class=\"calendar-icon\">\n <calendar-check-icon />\n </div>\n <div class=\"booked-event-header\">\n <h2 slot=\"card-title\" part=\"nbec__title\">\n Booking {!!this.rescheduleBookingId ? 'rescheduled' : 'confirmed'}!\n </h2>\n <div part=\"nbec__description\">\n {this.getOrganizer(this.eventInfo)?.name || this.getOrganizer(this.eventInfo)?.email}&nbsp;&amp;&nbsp;\n {this.bookingInfo?.primaryParticipant?.name || this.bookingInfo?.primaryParticipant?.email}\n </div>\n </div>\n <sp-divider></sp-divider>\n <div class=\"booking-date-time\">\n <checkmark-circle-icon></checkmark-circle-icon>\n <h3>Booking date and time</h3>\n <p>\n {new Date(this.selectedTimeslot.start_time).toLocaleDateString(undefined, { dateStyle: 'full' })} <br />\n {new Date(this.selectedTimeslot.start_time).toLocaleTimeString(undefined, { timeStyle: 'short' })} -{' '}\n {new Date(this.selectedTimeslot.end_time).toLocaleTimeString(undefined, { timeStyle: 'short' })}\n </p>\n </div>\n <div class=\"booking-participants\">\n {/* <people-icon></people-icon>\n <h3>All participants</h3>\n {this.eventInfo?.participants && (\n <p>\n {this.eventInfo?.participants?.map((participant: NylasEvent['participants'][0]) => {\n return (\n <span class=\"block\">\n {participant.email} {this.getPaticipantType(participant.type) && `(${this.getPaticipantType(participant.type)})`}\n </span>\n );\n })}\n </p>\n )} */}\n </div>\n <sp-divider></sp-divider>\n <div class=\"footer\">\n <sp-button variant=\"secondary\" treatment=\"outline\" class=\"cancel\" onClick={this.handleCancelBookingButtonClicked} part=\"nbec__button-outline nbec__cancel-cta\">\n Cancel booking\n </sp-button>\n <sp-button variant=\"secondary\" treatment=\"outline\" class=\"reschedule\" onClick={this.handleRescheduleButtonClicked} part=\"nbec__button-outline nbec__reschedule-cta\">\n Reschedule\n </sp-button>\n </div>\n </div>\n </sp-theme>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nylas-booked-event-card.entry.js","mappings":"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","names":[],"sources":["src/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.scss?tag=nylas-booked-event-card&encapsulation=shadow","src/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n\n:host {\n display: block;\n @include default-css-variables;\n}\n\nsp-theme {\n height: inherit;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n align-items: center;\n font-family: var(--nylas-font-family);\n}\n\n.event-card-wrapper {\n display: flex;\n align-items: center;\n flex-direction: column;\n background-color: var(--nylas-base-0);\n color: var(--nylas-base-900);\n border-radius: var(--nylas-border-radius-3x);\n position: relative;\n margin-top: 1rem;\n margin-bottom: 2rem;\n width: 424px;\n @media #{$mobile} {\n width: 100%;\n border-radius: 0px;\n }\n box-shadow:\n 0px 1px 4px rgba(0, 0, 0, 0.1),\n 0px 3px 6px rgba(0, 0, 0, 0.06);\n}\n\n.calendar-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 3rem;\n height: 3rem;\n border-radius: 50%;\n position: absolute;\n top: -1.25rem;\n left: 50%;\n transform: translateX(-50%);\n background-color: var(--nylas-base-0);\n border: 1px solid var(--nylas-base-200);\n color: var(--nylas-base-700);\n}\n\n.booked-event-header {\n margin: 1.5rem 4rem;\n overflow-wrap: anywhere;\n display: flex;\n align-items: center;\n flex-direction: column;\n font-size: 1rem;\n font-weight: 400;\n\n h2 {\n color: var(--nylas-base-600);\n margin-top: 1.5rem;\n margin-bottom: 0.25rem;\n font-size: 1.125rem;\n font-weight: 600;\n }\n}\n\n.booking-date-time,\n.booking-participants {\n padding: 0 1rem;\n margin-top: 1.5rem;\n margin-left: 3rem;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n align-self: flex-start;\n position: relative;\n\n svg {\n color: var(--nylas-base-700);\n position: absolute;\n left: -10px;\n }\n\n .block {\n display: block;\n }\n\n h3 {\n color: var(--nylas-base-600);\n margin: 0;\n font-size: 1rem;\n font-weight: 600;\n line-height: 1.25rem;\n text-align: justify;\n margin-bottom: 4px;\n }\n p {\n font-size: 16px;\n margin: 0;\n font-weight: 400;\n text-align: justify;\n color: var(--nylas-base-800);\n }\n}\n\n.booking-participants {\n margin-bottom: 1.5rem;\n}\n\n.booked-event-timezone {\n display: flex;\n color: var(--nylas-base-600);\n margin-bottom: 1.5rem;\n gap: 4px;\n margin: 2rem;\n align-items: center;\n align-self: flex-end;\n}\n\n.footer {\n padding: 0.5rem;\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 0.5rem;\n box-sizing: border-box;\n background-color: var(--nylas-base-25);\n width: 100%;\n border-radius: 0 0 var(--nylas-border-radius-2x) var(--nylas-border-radius-2x);\n}\n\nsp-button {\n background-color: var(--nylas-base-0);\n color: var(--nylas-base-700);\n border: 1px solid var(--nylas-base-200);\n border-radius: var(--nylas-border-radius-2x);\n font-size: 16px;\n padding: 8px;\n font-family: var(--nylas-font-family);\n font-weight: 600;\n height: 48px;\n line-height: 24px;\n &.cancel {\n color: var(--nylas-error);\n &:hover,\n &:focus {\n border-color: var(--nylas-error);\n }\n &:active {\n color: var(--nylas-error-pressed);\n border-color: var(--nylas-error-pressed);\n }\n }\n &.reschedule {\n &:hover,\n &:focus {\n border-color: var(--nylas-primary);\n }\n &:active {\n border-color: var(--nylas-base-600);\n }\n }\n}\n\nsp-divider {\n background-color: var(--nylas-base-200);\n height: 1px;\n}\n\ncalendar-check-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { Component, EventEmitter, h, Host, Prop } from '@stencil/core';\nimport { ConfigSettings, NylasSchedulerBookingData, NylasSchedulerConnector } from '../../..';\nimport { NylasScheduling } from '../nylas-scheduler/nylas-scheduling';\nimport { addMinutesToCurrentTime, debug } from '@/utils/utils';\nimport { TIMEZONE_MAP } from '@/common/constants';\nimport { NylasEvent } from '@/common/types';\nimport { Event } from '@stencil/core';\nimport { NylasSchedulerErrorResponse, Timeslot } from '@nylas/core';\n\n/**\n * The `nylas-booked-event-card` component is a UI component that displays the booked event card.\n *\n * @part nbec - The booked event card host.\n * @part nbec__card - The booked event card.\n * @part nbec__title - The title of the booked event card.\n * @part nbec__description - The description of the booked event card.\n * @part nbec__button-outline - The cancel & reschedule button CTA.\n * @part nbec__cancel-cta - The cancel button CTA.\n * @part nbec__reschedule-cta - The reschedule button CTA.\n */\n@Component({\n tag: 'nylas-booked-event-card',\n styleUrl: 'nylas-booked-event-card.scss',\n shadow: true,\n})\nexport class NylasBookedEventCard {\n /**\n * The booked event.\n */\n @Prop() readonly eventInfo!: NylasEvent;\n\n /**\n * Booking flow type.\n */\n @Prop() readonly rescheduleBookingId?: string;\n\n /**\n * The booking info used to book / reschedule the event.\n */\n @Prop() readonly bookingInfo?: NylasSchedulerBookingData;\n\n /**\n * The selected timezone.\n */\n @Prop() readonly selectedTimezone: string = Intl.DateTimeFormat().resolvedOptions().timeZone;\n\n /**\n * The selected timeslot.\n */\n @Prop() readonly selectedTimeslot!: Timeslot;\n\n /**\n * The config settings for the scheduler.\n */\n @Prop() readonly configSettings?: ConfigSettings;\n\n /**\n * Cancel booking button clicked event.\n */\n @Event() readonly cancelBookingButtonClicked!: EventEmitter<{ bookingId: string }>;\n\n /**\n * Reschedule button clicked event.\n * */\n @Event() readonly rescheduleButtonClicked!: EventEmitter<{ bookingId: string; errorHandler?: (error: NylasSchedulerErrorResponse) => void }>;\n\n /**\n * This event is fired when an error occurs while rescheduling the booking.\n */\n @Event() readonly rescheduleBookedEventError!: EventEmitter<NylasSchedulerErrorResponse>;\n\n /**\n * This event is fired when an error occurs while cancelling the booking.\n */\n @Event() readonly cancelBookedEventValidationError!: EventEmitter<{\n error: {\n title: string;\n message: string;\n };\n }>;\n\n connectedCallback() {}\n\n disconnectedCallback() {}\n\n async componentWillLoad() {\n debug(`[nylas-booked-event-card] Component will load`);\n }\n\n async componentDidLoad() {\n debug(`[nylas-booked-event-card] Component did load`);\n }\n\n private handleCancelBookingButtonClicked = () => {\n const today = new Date();\n const minCancellationNotice = this.configSettings?.scheduler.min_cancellation_notice;\n const dateTillCancellation = addMinutesToCurrentTime(today, minCancellationNotice);\n if (today.getTime() < dateTillCancellation.getTime()) {\n this.cancelBookedEventValidationError.emit({\n error: {\n title: 'Cancellation Error',\n message: `You cannot cancel the booking within ${minCancellationNotice} minutes of the event.`,\n },\n });\n } else {\n this.cancelBookingButtonClicked.emit({ bookingId: this.eventInfo.booking_id });\n }\n };\n\n private handleRescheduleButtonClicked = () => {\n const errorHandler = (error: NylasSchedulerErrorResponse) => {\n this.rescheduleBookedEventError.emit(error);\n };\n this.rescheduleButtonClicked.emit({ bookingId: this.eventInfo.booking_id, errorHandler });\n };\n\n private getOrganizer = (eventInfo: NylasEvent) => {\n const organizer = eventInfo?.organizer;\n return organizer;\n };\n\n getPaticipantType = (type: string) => {\n switch (type) {\n case 'host':\n return 'Host';\n case 'you':\n return 'You';\n default:\n return '';\n }\n };\n\n @RegisterComponent<NylasBookedEventCard, NylasSchedulerConnector, Exclude<NylasScheduling['stores'], undefined>>({\n name: 'nylas-booked-event-card',\n stateToProps: new Map([\n ['scheduler.bookingInfo', 'bookingInfo'],\n ['scheduler.rescheduleBookingId', 'rescheduleBookingId'],\n ['scheduler.selectedTimezone', 'selectedTimezone'],\n ['scheduler.selectedTimeslot', 'selectedTimeslot'],\n ['scheduler.configSettings', 'configSettings'],\n ]),\n eventToProps: {\n cancelBookingButtonClicked: async (event: CustomEvent<{ bookingId: string }>, nylasSchedulerConnector: NylasSchedulerConnector) => {\n nylasSchedulerConnector.scheduler.setCancel(event.detail.bookingId);\n },\n rescheduleButtonClicked: async (\n event: CustomEvent<{ bookingId: string; errorHandler?: (error: NylasSchedulerErrorResponse) => void }>,\n nylasSchedulerConnector: NylasSchedulerConnector,\n ) => {\n const result = await nylasSchedulerConnector.scheduler.setReschedule(event.detail.bookingId);\n const { errorHandler } = event.detail;\n if (errorHandler && (!result || 'error' in result)) {\n errorHandler(result);\n }\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host part=\"nbec\">\n <sp-theme theme=\"spectrum\" color=\"dark\" scale=\"medium\">\n <div class=\"booked-event-timezone\">\n <globe-icon></globe-icon>\n {TIMEZONE_MAP[this.selectedTimezone]}\n </div>\n <div class=\"event-card-wrapper\" part=\"nbec__card\">\n <div class=\"calendar-icon\">\n <calendar-check-icon />\n </div>\n <div class=\"booked-event-header\">\n <h2 slot=\"card-title\" part=\"nbec__title\">\n Booking {!!this.rescheduleBookingId ? 'rescheduled' : 'confirmed'}!\n </h2>\n <div part=\"nbec__description\">\n {this.getOrganizer(this.eventInfo)?.name || this.getOrganizer(this.eventInfo)?.email}&nbsp;&amp;&nbsp;\n {this.bookingInfo?.primaryParticipant?.name || this.bookingInfo?.primaryParticipant?.email}\n </div>\n </div>\n <sp-divider></sp-divider>\n <div class=\"booking-date-time\">\n <checkmark-circle-icon></checkmark-circle-icon>\n <h3>Booking date and time</h3>\n <p>\n {new Date(this.selectedTimeslot?.start_time).toLocaleDateString(undefined, { dateStyle: 'full' })} <br />\n {new Date(this.selectedTimeslot?.start_time).toLocaleTimeString(undefined, { timeStyle: 'short' })} -{' '}\n {new Date(this.selectedTimeslot?.end_time).toLocaleTimeString(undefined, { timeStyle: 'short' })}\n </p>\n </div>\n <div class=\"booking-participants\">\n {/* <people-icon></people-icon>\n <h3>All participants</h3>\n {this.eventInfo?.participants && (\n <p>\n {this.eventInfo?.participants?.map((participant: NylasEvent['participants'][0]) => {\n return (\n <span class=\"block\">\n {participant.email} {this.getPaticipantType(participant.type) && `(${this.getPaticipantType(participant.type)})`}\n </span>\n );\n })}\n </p>\n )} */}\n </div>\n <sp-divider></sp-divider>\n <div class=\"footer\">\n <sp-button variant=\"secondary\" treatment=\"outline\" class=\"cancel\" onClick={this.handleCancelBookingButtonClicked} part=\"nbec__button-outline nbec__cancel-cta\">\n Cancel booking\n </sp-button>\n <sp-button variant=\"secondary\" treatment=\"outline\" class=\"reschedule\" onClick={this.handleRescheduleButtonClicked} part=\"nbec__button-outline nbec__reschedule-cta\">\n Reschedule\n </sp-button>\n </div>\n </div>\n </sp-theme>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,10 +1,10 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, a as getElement, F as Fragment } from './index-7cb0dd3d.js';
2
- import { R as RegisterComponent } from './register-component-cf5c8420.js';
3
- import { a as debug, n as getLastDayOfMonth, o as getFirstDayOfMonth, q as isSameDay, r as isSameMonth } from './utils-d6204242.js';
2
+ import { R as RegisterComponent } from './register-component-83e24412.js';
3
+ import { q as addMinutesToCurrentTime, a as debug, r as getLastDayOfMonth, s as getFirstDayOfMonth, h as addDaysToCurrentDate, v as isSameDay, w as isSameMonth } from './utils-e6b73120.js';
4
4
  import { T as TIMEZONE_MAP, g as getTimezoneOffset, L as LANGUAGE_MAP } from './constants-f34b9c6e.js';
5
5
  import './_commonjsHelpers-57e89916.js';
6
6
 
7
- const nylasBookedEventCardCss = ":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 0;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%}";
7
+ const nylasBookedEventCardCss = ":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%}";
8
8
  const NylasBookedEventCardStyle0 = nylasBookedEventCardCss;
9
9
 
10
10
  var __decorate$7 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
@@ -27,8 +27,22 @@ const NylasBookedEventCard = class {
27
27
  this.cancelBookingButtonClicked = createEvent(this, "cancelBookingButtonClicked", 7);
28
28
  this.rescheduleButtonClicked = createEvent(this, "rescheduleButtonClicked", 7);
29
29
  this.rescheduleBookedEventError = createEvent(this, "rescheduleBookedEventError", 7);
30
+ this.cancelBookedEventValidationError = createEvent(this, "cancelBookedEventValidationError", 7);
30
31
  this.handleCancelBookingButtonClicked = () => {
31
- this.cancelBookingButtonClicked.emit({ bookingId: this.eventInfo.booking_id });
32
+ const today = new Date();
33
+ const minCancellationNotice = this.configSettings?.scheduler.min_cancellation_notice;
34
+ const dateTillCancellation = addMinutesToCurrentTime(today, minCancellationNotice);
35
+ if (today.getTime() < dateTillCancellation.getTime()) {
36
+ this.cancelBookedEventValidationError.emit({
37
+ error: {
38
+ title: 'Cancellation Error',
39
+ message: `You cannot cancel the booking within ${minCancellationNotice} minutes of the event.`,
40
+ },
41
+ });
42
+ }
43
+ else {
44
+ this.cancelBookingButtonClicked.emit({ bookingId: this.eventInfo.booking_id });
45
+ }
32
46
  };
33
47
  this.handleRescheduleButtonClicked = () => {
34
48
  const errorHandler = (error) => {
@@ -55,6 +69,7 @@ const NylasBookedEventCard = class {
55
69
  this.bookingInfo = undefined;
56
70
  this.selectedTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
57
71
  this.selectedTimeslot = undefined;
72
+ this.configSettings = undefined;
58
73
  }
59
74
  connectedCallback() { }
60
75
  disconnectedCallback() { }
@@ -65,7 +80,7 @@ const NylasBookedEventCard = class {
65
80
  debug(`[nylas-booked-event-card] Component did load`);
66
81
  }
67
82
  render() {
68
- return (h(Host, { key: '1585329ee957e66c757861d989d29a9c1bb1451f', part: "nbec" }, h("sp-theme", { key: '113da8c82dd485188d40f1dea9f814be0c408ca2', theme: "spectrum", color: "dark", scale: "medium" }, h("div", { key: 'af6b0a085e582f2d7bdb5503b9d5b6d3c7042fd3', class: "booked-event-timezone" }, h("globe-icon", { key: '0c3fbff398a24c97d82bb74434d9da574349919f' }), TIMEZONE_MAP[this.selectedTimezone]), h("div", { key: '136d5341ef1d252b525359418e8df0a43f4160a0', class: "event-card-wrapper", part: "nbec__card" }, h("div", { key: '767bcbb50f4ae8c294f3ab3733fe99cd7c4c78e1', class: "calendar-icon" }, h("calendar-check-icon", { key: 'e6fd3ec502795fbcaaf9d34b5b5c4cee2d732d4f' })), h("div", { key: '7dfa8cc7719760d396716ec81ab0022c01bbe22f', class: "booked-event-header" }, h("h2", { key: '34a452c275a3880f64575735a9e67db5a8cdea45', slot: "card-title", part: "nbec__title" }, "Booking ", !!this.rescheduleBookingId ? 'rescheduled' : 'confirmed', "!"), h("div", { key: 'a081b1a3791e2e80dd651d1f9dbf5de2f2057f9a', part: "nbec__description" }, this.getOrganizer(this.eventInfo)?.name || this.getOrganizer(this.eventInfo)?.email, "\u00A0&\u00A0", this.bookingInfo?.primaryParticipant?.name || this.bookingInfo?.primaryParticipant?.email)), h("sp-divider", { key: '0744f0fa4f3fff8f2dc0dec978632496d26bfae6' }), h("div", { key: '38460fbfbe5d19b4f0d48cb0df02e6d12c2f2740', class: "booking-date-time" }, h("checkmark-circle-icon", { key: '1e282c329489e4def089d8fca1bd532557f91b92' }), h("h3", { key: '34bebd074562352d54628f763c339ccd4c44918a' }, "Booking date and time"), h("p", { key: 'd897859d30e6dd6651c0d4b0079bf0eab1df0356' }, new Date(this.selectedTimeslot.start_time).toLocaleDateString(undefined, { dateStyle: 'full' }), " ", h("br", { key: '2aa56898e654721616459102329cbe498232d3e8' }), new Date(this.selectedTimeslot.start_time).toLocaleTimeString(undefined, { timeStyle: 'short' }), " -", ' ', new Date(this.selectedTimeslot.end_time).toLocaleTimeString(undefined, { timeStyle: 'short' }))), h("div", { key: '5009ca55f795c2fd1240ed8bbc50216c4e66be87', class: "booking-participants" }), h("sp-divider", { key: '4b5b4325dda3f935387218429823b850d2a12f0e' }), h("div", { key: 'd25cc602a134085c19f0acea006db0707ceae7e5', class: "footer" }, h("sp-button", { key: '4625e515f2f79d6ecb0bb37813efe100c03cdaf2', variant: "secondary", treatment: "outline", class: "cancel", onClick: this.handleCancelBookingButtonClicked, part: "nbec__button-outline nbec__cancel-cta" }, "Cancel booking"), h("sp-button", { key: '9cbdc95cd53aa2d536751984b91ef5974e71179d', variant: "secondary", treatment: "outline", class: "reschedule", onClick: this.handleRescheduleButtonClicked, part: "nbec__button-outline nbec__reschedule-cta" }, "Reschedule"))))));
83
+ return (h(Host, { key: 'fd31424392865287d5a696d2ea4a0840974324c1', part: "nbec" }, h("sp-theme", { key: '5e4fab19061fd773200fc8856355d2efc6c7f767', theme: "spectrum", color: "dark", scale: "medium" }, h("div", { key: '5effb33fcc0492a2f968e5b29229a974fb1bf2a3', class: "booked-event-timezone" }, h("globe-icon", { key: '7be37ec8323f0c36112e4a8c5903c2078fe0ae0e' }), TIMEZONE_MAP[this.selectedTimezone]), h("div", { key: '594e1cffea71361c2a52f5ed3f480b7fc7a6c0f4', class: "event-card-wrapper", part: "nbec__card" }, h("div", { key: 'e2bcea8c2cd100f6291846d29524ee08a2c6d6ad', class: "calendar-icon" }, h("calendar-check-icon", { key: '412d634ebd082474581d8ceba417bcefb45d10eb' })), h("div", { key: '97f9f06776a64a9ceed5f8b7c84ed9d03983e083', class: "booked-event-header" }, h("h2", { key: '7453ad8f16ca9e477a5c6f7791dbf2aa89514394', slot: "card-title", part: "nbec__title" }, "Booking ", !!this.rescheduleBookingId ? 'rescheduled' : 'confirmed', "!"), h("div", { key: '5877c31296ad8821c822b8447a9adb495eea9756', part: "nbec__description" }, this.getOrganizer(this.eventInfo)?.name || this.getOrganizer(this.eventInfo)?.email, "\u00A0&\u00A0", this.bookingInfo?.primaryParticipant?.name || this.bookingInfo?.primaryParticipant?.email)), h("sp-divider", { key: '3845e25500160ac43e0c19af3c3c3c446caca39e' }), h("div", { key: '349d849d49be4e71264436c6add7039b889f8933', class: "booking-date-time" }, h("checkmark-circle-icon", { key: 'bccea293108ed90eece51494c79c8e5ae2db1411' }), h("h3", { key: 'ee98cd2b9c877a7e8342940892ff08be4ee647e0' }, "Booking date and time"), h("p", { key: '1efd072abb08a6606299911e594a07b2de396113' }, new Date(this.selectedTimeslot?.start_time).toLocaleDateString(undefined, { dateStyle: 'full' }), " ", h("br", { key: 'e014d22678d84c7541854985d945672efde047e9' }), new Date(this.selectedTimeslot?.start_time).toLocaleTimeString(undefined, { timeStyle: 'short' }), " -", ' ', new Date(this.selectedTimeslot?.end_time).toLocaleTimeString(undefined, { timeStyle: 'short' }))), h("div", { key: '0870d9969b572bf688c4c12de934066ed36f421a', class: "booking-participants" }), h("sp-divider", { key: '85674fadb92fc69826e738545a9f9bd1c478d522' }), h("div", { key: 'c60007a3d63af3cca707736386f7cbc1d2963626', class: "footer" }, h("sp-button", { key: 'f1295268e7f3341e37e7d66d460eabc28ad56482', variant: "secondary", treatment: "outline", class: "cancel", onClick: this.handleCancelBookingButtonClicked, part: "nbec__button-outline nbec__cancel-cta" }, "Cancel booking"), h("sp-button", { key: '276674ce1eb225cfb7ea95936e1cb05056b921cc', variant: "secondary", treatment: "outline", class: "reschedule", onClick: this.handleRescheduleButtonClicked, part: "nbec__button-outline nbec__reschedule-cta" }, "Reschedule"))))));
69
84
  }
70
85
  };
71
86
  __decorate$7([
@@ -76,6 +91,7 @@ __decorate$7([
76
91
  ['scheduler.rescheduleBookingId', 'rescheduleBookingId'],
77
92
  ['scheduler.selectedTimezone', 'selectedTimezone'],
78
93
  ['scheduler.selectedTimeslot', 'selectedTimeslot'],
94
+ ['scheduler.configSettings', 'configSettings'],
79
95
  ]),
80
96
  eventToProps: {
81
97
  cancelBookingButtonClicked: async (event, nylasSchedulerConnector) => {
@@ -411,10 +427,18 @@ const NylasCancelledEventCard = class {
411
427
  constructor(hostRef) {
412
428
  registerInstance(this, hostRef);
413
429
  this.closeCancelEventCardClicked = createEvent(this, "closeCancelEventCardClicked", 7);
430
+ this.cancelledEventCardError = createEvent(this, "cancelledEventCardError", 7);
414
431
  this.handleCloseClicked = () => {
415
- this.closeCancelEventCardClicked.emit();
432
+ this.isClosing = true;
433
+ const errorHandler = (error) => {
434
+ this.cancelledEventCardError.emit(error);
435
+ this.isClosing = false;
436
+ };
437
+ this.closeCancelEventCardClicked.emit({ errorHandler });
416
438
  };
417
439
  this.cancelledEventInfo = undefined;
440
+ this.isClosing = false;
441
+ this.configSettings = undefined;
418
442
  }
419
443
  connectedCallback() {
420
444
  debug(`[nylas-cancelled-event-card] Component connected`);
@@ -429,13 +453,22 @@ const NylasCancelledEventCard = class {
429
453
  debug(`[nylas-cancelled-event-card] Component disconnected`);
430
454
  }
431
455
  render() {
432
- return (h(Host, { key: '656dd5537bf436780d779e06362974295b6cf552', part: "ncec" }, h("sp-theme", { key: 'e6aa25eb233fd0bca7006fd9bf63c9fb54738a66', theme: "spectrum", color: "dark", scale: "medium" }, h("div", { key: '005da251e2cad861ca1cb2bc276b01990618995f', class: "nylas-cancelled-event-card", part: "ncec__card" }, h("div", { key: 'b30f8abc7dede57b909d69beb11a7da0015bf044', class: "nylas-cancelled-event-card__calendar-icon", part: "ncec__icon" }, h("calendar-cancel-icon", { key: '9cc6e10a041979ff5a2a76c9d3e04446fdbfa27f' })), h("h3", { key: '0419fbe2aad08be631618146b77869307832f752', class: "nylas-cancelled-event-card__title", part: "ncec__title" }, "Your booking has been cancelled successfully!"), h("div", { key: 'c3fb84c05112e0a4055f6eaaf878ad7afda8726e', class: "nylas-cancelled-event-card__description", part: "ncec__description" }, "A cancellation email has been sent to the participants."), h("div", { key: '0409b5465346ffea4c43789fa027f9b5a853d263', class: "nylas-cancelled-event-card__cta" }, h("sp-button", { key: '1d2efade3b5cd5ff48f3924c6b1e8248d2e478a3', variant: "secondary", treatment: "outline", part: "ncec__button-outline", onClick: this.handleCloseClicked }, "Close"))))));
456
+ return (h(Host, { key: '105954b6497f7a8cf45faedb592896629e90c6d0', part: "ncec" }, h("sp-theme", { key: 'd248975c2139a611ab60c5c585d87e8701327a4b', theme: "spectrum", color: "dark", scale: "medium" }, h("div", { key: '090b767111679ca9968ac0b128c6685fed6e39db', class: "nylas-cancelled-event-card", part: "ncec__card" }, h("div", { key: 'ae1e57f0f2a39f5ad7f4b7b9ed493f3e93ccdeba', class: "nylas-cancelled-event-card__calendar-icon", part: "ncec__icon" }, h("calendar-cancel-icon", { key: '06250b1c0f330957f0f691d0f7724c608dffa28b' })), h("h3", { key: '1826c12ca770476cfd206d9d1a3b80f0d890da56', class: "nylas-cancelled-event-card__title", part: "ncec__title" }, "Your booking has been cancelled successfully!"), h("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', "."), h("div", { key: '21162d4c4e2ee6c2f95038b0e25e9ad0aed63742', class: "nylas-cancelled-event-card__cta" }, h("sp-button", { key: 'ab6cb1da324717c3b375c9280f307a2590224f27', variant: "secondary", treatment: "outline", disabled: this.isClosing, part: "ncec__button-outline", onClick: this.handleCloseClicked }, this.isClosing ? 'Closing...' : 'Close'))))));
433
457
  }
434
458
  };
435
459
  __decorate$4([
436
460
  RegisterComponent({
437
461
  name: 'nylas-cancelled-event-card',
438
- eventToProps: {},
462
+ stateToProps: new Map([['scheduler.configSettings', 'configSettings']]),
463
+ eventToProps: {
464
+ closeCancelEventCardClicked: async (_, nylasschedulerconnector) => {
465
+ const result = await nylasschedulerconnector.scheduler.resetCancel();
466
+ const { errorHandler } = _.detail;
467
+ if (errorHandler && (!result || 'error' in result)) {
468
+ errorHandler(result);
469
+ }
470
+ },
471
+ },
439
472
  fireRegisterEvent: true,
440
473
  }),
441
474
  __metadata$4("design:type", Function),
@@ -570,9 +603,11 @@ const NylasDatePicker = class {
570
603
  this.monthChanged = createEvent(this, "monthChanged", 7);
571
604
  this.selectableDates = undefined;
572
605
  this.selectedDate = undefined;
606
+ this.configSettings = undefined;
573
607
  this.isLoading = undefined;
574
608
  this.month = this.selectedDate || new Date();
575
609
  this.dates = this.getDates();
610
+ this.disableNextMonthButton = false;
576
611
  }
577
612
  connectedCallback() { }
578
613
  disconnectedCallback() { }
@@ -587,6 +622,15 @@ const NylasDatePicker = class {
587
622
  }
588
623
  changeMonth(change) {
589
624
  this.month = new Date(this.month.getFullYear(), this.month.getMonth() + change, 1);
625
+ const nextMonth = new Date(this.month.getFullYear(), this.month.getMonth() + 1, 1);
626
+ const availableDaysInFuture = this.configSettings?.scheduler?.available_days_in_future;
627
+ const endDate = addDaysToCurrentDate(new Date(), availableDaysInFuture);
628
+ if (endDate.getTime() < nextMonth.getTime()) {
629
+ this.disableNextMonthButton = true;
630
+ }
631
+ else {
632
+ this.disableNextMonthButton = false;
633
+ }
590
634
  this.dates = this.getDates();
591
635
  this.monthChanged.emit(this.month);
592
636
  this.selectDate();
@@ -598,7 +642,7 @@ const NylasDatePicker = class {
598
642
  return date && selectableDates?.find(d => isSameDay(d, date)) === undefined;
599
643
  }
600
644
  render() {
601
- return (h(Host, { key: 'da3c7e290b60613575379d559e03d5e1dca04535', part: "ndp" }, h("div", { key: '4bb1b14f4f609f601b27f7ad2eb4baeed6cc4d55', class: "nylas-date-picker" }, h("div", { key: '5d6c68298c5e9606bae9e45a99f0c59da3d36854', class: 'header flex-row' }, h("h2", { key: '2504a779961e1e07a881f2eb2f5ffa5d8329e627', part: 'ndp__month-header' }, h("strong", { key: '433fdd38ccf5b49144bafd3b284acd26b94d19c4' }, this.month.toLocaleDateString(undefined, { month: 'long' })), "\u00A0", this.month.toLocaleDateString(undefined, { year: 'numeric' })), h("div", { key: 'ffaa3276b249a85dc197828625835ad1f2278179', class: 'pagination' }, h("button", { key: '451c9d09fc01e4c7ae35742d7c6b4b2f3da4d3ee', onClick: () => this.changeMonth(-1), class: { 'chevron-left': true, 'button': true }, disabled: !this.selectableDates?.length || this.month <= new Date(), part: "ndp__month-button" }, h("chevron-icon", { key: '3a23fa0fb325feab4b56477602f122b800dce5ce' })), h("button", { key: '56b81156d02525a70c6c567e5facb1d9995ea2de', onClick: () => this.changeMonth(1), class: { 'chevron-right': true, 'button': true }, disabled: !this.selectableDates?.length, part: "ndp__month-button" }, h("chevron-icon", { key: '1329d513678bffec6bc21d579b240e7af29ec530' })))), h("div", { key: '14eb94fe04ca2797f3377057a87825689b818719', class: 'dates' }, ['SUN', 'MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT'].map(day => {
645
+ return (h(Host, { key: 'fd7de67053417b11844a66e5b978f7feb80efe18', part: "ndp" }, h("div", { key: 'a08943851e2239ad12121b90f35760d73a085441', class: "nylas-date-picker" }, h("div", { key: '832ad38012c55eb04ab2c5b0ceb50052ab3edd42', class: 'header flex-row' }, h("h2", { key: '2df451227e57dfee081c1d4435443e479cf8871c', part: 'ndp__month-header' }, h("strong", { key: '63421dca4b9bf36207ba05e9eff795c7c198287c' }, this.month.toLocaleDateString(undefined, { month: 'long' })), "\u00A0", this.month.toLocaleDateString(undefined, { year: 'numeric' })), h("div", { key: 'ca982a82d87baf5658674624c1153f14e77470aa', class: 'pagination' }, h("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" }, h("chevron-icon", { key: '4f319da7e440236edb9bfa711fb0b05cd046dc8e' })), h("button", { key: 'ff00426293e1857592ebae58557ea46e5db9858d', onClick: () => this.changeMonth(1), class: { 'chevron-right': true, 'button': true }, disabled: !this.selectableDates?.length || this.disableNextMonthButton, part: "ndp__month-button" }, h("chevron-icon", { key: '7075f5e8da61c9d91fb612771a3d7672f1521b6f' })))), h("div", { key: '3ad884077d163de5182731c03bf856c9e204f411', class: 'dates' }, ['SUN', 'MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT'].map(day => {
602
646
  return (h("div", { class: 'day', part: "ndp__day" }, day));
603
647
  }), this.dates.map((date, i) => {
604
648
  const isDisabled = this.isDisabled(date, this.selectableDates);
@@ -624,6 +668,7 @@ __decorate$3([
624
668
  ['scheduler.selectableDates', 'selectableDates'],
625
669
  ['scheduler.selectedDate', 'selectedDate'],
626
670
  ['scheduler.isLoading', 'isLoading'],
671
+ ['scheduler.configSettings', 'configSettings'],
627
672
  ]),
628
673
  eventToProps: {
629
674
  dateSelected: async (event, nylasSchedulerConnector) => {