@nylas/web-elements 1.1.0-canary.8 → 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 (470) hide show
  1. package/dist/cjs/{add-circle-icon_22.cjs.entry.js → add-circle-icon_21.cjs.entry.js} +35 -156
  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-7af03e3f.js +1 -158
  7. package/dist/cjs/index-c14ea8f5.js +1 -362
  8. package/dist/cjs/index.cjs.js +2 -2
  9. package/dist/cjs/{index.es-4a7d8d3f.js → index.es-cc2d145f.js} +3 -3
  10. package/dist/cjs/index.es-cc2d145f.js.map +1 -0
  11. package/dist/cjs/{index.es-b2cce060.js → index.es-ec84e726.js} +3 -3
  12. package/dist/cjs/index.es-ec84e726.js.map +1 -0
  13. package/dist/cjs/loader.cjs.js +1 -1
  14. package/dist/cjs/{mailbox-store-ecceb918.js → mailbox-store-5ea7604e.js} +3 -3
  15. package/dist/cjs/{mailbox-store-a2f858b7.js.map → mailbox-store-5ea7604e.js.map} +1 -1
  16. package/dist/cjs/{mailbox-store-a2f858b7.js → mailbox-store-a02df2a7.js} +3 -3
  17. package/dist/cjs/{mailbox-store-ecceb918.js.map → mailbox-store-a02df2a7.js.map} +1 -1
  18. package/dist/cjs/multi-select-dropdown.cjs.entry.js +1 -1
  19. package/dist/cjs/nylas-additional-participants.cjs.entry.js +2 -2
  20. package/dist/cjs/{nylas-api-request-c9e0e347.js → nylas-api-request-05f1e068.js} +2 -2
  21. package/dist/cjs/{nylas-api-request-c9e0e347.js.map → nylas-api-request-05f1e068.js.map} +1 -1
  22. package/dist/cjs/{nylas-api-request-28b4576a.js → nylas-api-request-de316f1a.js} +2 -2
  23. package/dist/cjs/{nylas-api-request-28b4576a.js.map → nylas-api-request-de316f1a.js.map} +1 -1
  24. package/dist/cjs/nylas-availability-picker.cjs.entry.js +4 -3
  25. package/dist/cjs/nylas-availability-picker.cjs.entry.js.map +1 -1
  26. package/dist/cjs/nylas-booked-event-card.cjs.entry.js +21 -5
  27. package/dist/cjs/nylas-booked-event-card.cjs.entry.js.map +1 -1
  28. package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js +54 -9
  29. package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js.map +1 -1
  30. package/dist/cjs/nylas-booking-calendar-picker.cjs.entry.js +2 -2
  31. package/dist/cjs/nylas-booking-form.cjs.entry.js +2 -2
  32. package/dist/cjs/nylas-buffer-time.cjs.entry.js +4 -4
  33. package/dist/cjs/nylas-buffer-time.cjs.entry.js.map +1 -1
  34. package/dist/cjs/nylas-calendar-picker.cjs.entry.js +2 -2
  35. package/dist/cjs/nylas-cancel-booking-form.cjs.entry.js +2 -2
  36. package/dist/cjs/nylas-cancelled-event-card.cjs.entry.js +22 -5
  37. package/dist/cjs/nylas-cancelled-event-card.cjs.entry.js.map +1 -1
  38. package/dist/cjs/nylas-composer.cjs.entry.js +1 -1
  39. package/dist/cjs/nylas-custom-booking-flow.cjs.entry.js +2 -2
  40. package/dist/cjs/nylas-date-picker.cjs.entry.js +15 -3
  41. package/dist/cjs/nylas-date-picker.cjs.entry.js.map +1 -1
  42. package/dist/cjs/nylas-editor-tabs.cjs.entry.js +18 -12
  43. package/dist/cjs/nylas-editor-tabs.cjs.entry.js.map +1 -1
  44. package/dist/cjs/nylas-event-description.cjs.entry.js +2 -2
  45. package/dist/cjs/nylas-event-duration.cjs.entry.js +2 -2
  46. package/dist/cjs/nylas-event-info.cjs.entry.js +3 -3
  47. package/dist/cjs/nylas-event-info.cjs.entry.js.map +1 -1
  48. package/dist/cjs/nylas-event-limits.cjs.entry.js +3 -3
  49. package/dist/cjs/nylas-event-limits.cjs.entry.js.map +1 -1
  50. package/dist/cjs/nylas-event-title.cjs.entry.js +2 -2
  51. package/dist/cjs/nylas-form-card.cjs.entry.js +2 -2
  52. package/dist/cjs/nylas-if-state.cjs.entry.js +2 -2
  53. package/dist/cjs/nylas-limit-future-bookings.cjs.entry.js +3 -3
  54. package/dist/cjs/nylas-limit-future-bookings.cjs.entry.js.map +1 -1
  55. package/dist/cjs/nylas-list-configurations.cjs.entry.js +8 -6
  56. package/dist/cjs/nylas-list-configurations.cjs.entry.js.map +1 -1
  57. package/dist/cjs/nylas-list-folders.cjs.entry.js +2 -2
  58. package/dist/cjs/nylas-list-threads.cjs.entry.js +2 -2
  59. package/dist/cjs/nylas-locale-switch.cjs.entry.js +2 -2
  60. package/dist/cjs/nylas-location-component.cjs.entry.js +3 -3
  61. package/dist/cjs/nylas-location-component.cjs.entry.js.map +1 -1
  62. package/dist/cjs/nylas-login.cjs.entry.js +2 -2
  63. package/dist/cjs/nylas-mailbox-pagination.cjs.entry.js +2 -2
  64. package/dist/cjs/nylas-mailbox-toolbar-button.cjs.entry.js +2 -2
  65. package/dist/cjs/nylas-mailbox.cjs.entry.js +3 -3
  66. package/dist/cjs/nylas-min-cancellation-notice.cjs.entry.js +3 -3
  67. package/dist/cjs/nylas-min-cancellation-notice.cjs.entry.js.map +1 -1
  68. package/dist/cjs/nylas-notification.cjs.entry.js +1 -1
  69. package/dist/cjs/nylas-provider.cjs.entry.js +5 -5
  70. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js +8 -14
  71. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js.map +1 -1
  72. package/dist/cjs/nylas-scheduling.cjs.entry.js +35 -12
  73. package/dist/cjs/nylas-scheduling.cjs.entry.js.map +1 -1
  74. package/dist/cjs/nylas-selected-event-card.cjs.entry.js +2 -2
  75. package/dist/cjs/nylas-summarize-message-button.cjs.entry.js +2 -2
  76. package/dist/cjs/nylas-threads-refresh.cjs.entry.js +2 -2
  77. package/dist/cjs/nylas-threads-search.cjs.entry.js +2 -2
  78. package/dist/cjs/nylas-time-window-picker.cjs.entry.js +1 -1
  79. package/dist/cjs/nylas-timeslot-picker.cjs.entry.js +2 -2
  80. package/dist/cjs/nylas-view-email.cjs.entry.js +1 -1
  81. package/dist/cjs/nylas-view-thread.cjs.entry.js +2 -2
  82. package/dist/cjs/nylas-web-elements.cjs.js +1 -1
  83. package/dist/cjs/{register-component-98ab6f54.js → register-component-2c3ad1d1.js} +2 -2
  84. package/dist/cjs/{register-component-7ecacf90.js.map → register-component-2c3ad1d1.js.map} +1 -1
  85. package/dist/cjs/{register-component-7ecacf90.js → register-component-4f8ae42c.js} +2 -2
  86. package/dist/cjs/{register-component-98ab6f54.js.map → register-component-4f8ae42c.js.map} +1 -1
  87. package/dist/cjs/{scheduler-config-store-37690bf0.js → scheduler-config-store-918c20d5.js} +3 -4
  88. package/dist/cjs/scheduler-config-store-918c20d5.js.map +1 -0
  89. package/dist/cjs/{scheduler-config-store-529c8d7e.js → scheduler-config-store-a5b7c08b.js} +3 -4
  90. package/dist/cjs/scheduler-config-store-a5b7c08b.js.map +1 -0
  91. package/dist/cjs/{scheduler-store-22103c86.js → scheduler-store-33e204ef.js} +39 -7
  92. package/dist/cjs/scheduler-store-33e204ef.js.map +1 -0
  93. package/dist/cjs/{scheduler-store-fad9ed7a.js → scheduler-store-df23f511.js} +39 -7
  94. package/dist/cjs/scheduler-store-df23f511.js.map +1 -0
  95. package/dist/cjs/time-period-selector.cjs.entry.js +1 -1
  96. package/dist/cjs/{utils-d8cfc3be.js → utils-85bd0909.js} +64 -2
  97. package/dist/cjs/utils-85bd0909.js.map +1 -0
  98. package/dist/cjs/{utils-9fc33c77.js → utils-e6d76818.js} +64 -2
  99. package/dist/cjs/utils-e6d76818.js.map +1 -0
  100. package/dist/collection/common/types.js.map +1 -1
  101. package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.css +2 -1
  102. package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.js +56 -3
  103. package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.js.map +1 -1
  104. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js +75 -6
  105. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js.map +1 -1
  106. package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.js +37 -3
  107. package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.js.map +1 -1
  108. package/dist/collection/components/scheduler/nylas-scheduler/nylas-scheduling.js +41 -12
  109. package/dist/collection/components/scheduler/nylas-scheduler/nylas-scheduling.js.map +1 -1
  110. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js +2 -1
  111. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js.map +1 -1
  112. package/dist/collection/components/scheduler-editor/nylas-buffer-time/nylas-buffer-time.css +23 -3
  113. package/dist/collection/components/scheduler-editor/nylas-buffer-time/nylas-buffer-time.js +1 -1
  114. package/dist/collection/components/scheduler-editor/nylas-buffer-time/nylas-buffer-time.js.map +1 -1
  115. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.css +7 -0
  116. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js +39 -14
  117. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js.map +1 -1
  118. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js +1 -1
  119. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js.map +1 -1
  120. package/dist/collection/components/scheduler-editor/nylas-event-info/nylas-event-info.js +1 -1
  121. package/dist/collection/components/scheduler-editor/nylas-event-info/nylas-event-info.js.map +1 -1
  122. package/dist/collection/components/scheduler-editor/nylas-event-limits/nylas-event-limits.js +1 -1
  123. package/dist/collection/components/scheduler-editor/nylas-event-limits/nylas-event-limits.js.map +1 -1
  124. package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.css +7 -1
  125. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.css +20 -2
  126. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.js +5 -3
  127. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.js.map +1 -1
  128. package/dist/collection/components/scheduler-editor/nylas-location-component/nylas-location-component.css +5 -0
  129. package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.css +7 -1
  130. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.css +20 -0
  131. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js +6 -13
  132. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js.map +1 -1
  133. package/dist/collection/connector/shared/api/scheduler-config.js +0 -1
  134. package/dist/collection/connector/shared/api/scheduler-config.js.map +1 -1
  135. package/dist/collection/connector/shared/api/scheduler.js +37 -5
  136. package/dist/collection/connector/shared/api/scheduler.js.map +1 -1
  137. package/dist/collection/stores/scheduler-config-store.js +2 -3
  138. package/dist/collection/stores/scheduler-config-store.js.map +1 -1
  139. package/dist/collection/stores/scheduler-store.js.map +1 -1
  140. package/dist/collection/utils/utils.js +60 -1
  141. package/dist/collection/utils/utils.js.map +1 -1
  142. package/dist/components/index.es.js +2 -2
  143. package/dist/components/index.es.js.map +1 -1
  144. package/dist/components/nylas-availability-picker2.js +2 -1
  145. package/dist/components/nylas-availability-picker2.js.map +1 -1
  146. package/dist/components/nylas-booked-event-card2.js +22 -5
  147. package/dist/components/nylas-booked-event-card2.js.map +1 -1
  148. package/dist/components/nylas-buffer-time2.js +2 -2
  149. package/dist/components/nylas-buffer-time2.js.map +1 -1
  150. package/dist/components/nylas-cancelled-event-card2.js +23 -4
  151. package/dist/components/nylas-cancelled-event-card2.js.map +1 -1
  152. package/dist/components/nylas-custom-booking-flow.js +170 -1
  153. package/dist/components/nylas-custom-booking-flow.js.map +1 -1
  154. package/dist/components/nylas-date-picker2.js +17 -3
  155. package/dist/components/nylas-date-picker2.js.map +1 -1
  156. package/dist/components/nylas-editor-tabs2.js +52 -51
  157. package/dist/components/nylas-editor-tabs2.js.map +1 -1
  158. package/dist/components/nylas-event-info2.js +1 -1
  159. package/dist/components/nylas-event-info2.js.map +1 -1
  160. package/dist/components/nylas-event-limits2.js +1 -1
  161. package/dist/components/nylas-event-limits2.js.map +1 -1
  162. package/dist/components/nylas-event-title2.js +1 -1
  163. package/dist/components/nylas-limit-future-bookings2.js +1 -1
  164. package/dist/components/nylas-limit-future-bookings2.js.map +1 -1
  165. package/dist/components/nylas-list-configurations2.js +7 -5
  166. package/dist/components/nylas-list-configurations2.js.map +1 -1
  167. package/dist/components/nylas-list-folders.js +1 -1
  168. package/dist/components/nylas-list-threads.js +1 -1
  169. package/dist/components/nylas-location-component2.js +1 -1
  170. package/dist/components/nylas-location-component2.js.map +1 -1
  171. package/dist/components/nylas-min-cancellation-notice2.js +1 -1
  172. package/dist/components/nylas-min-cancellation-notice2.js.map +1 -1
  173. package/dist/components/nylas-scheduler-editor.js +46 -59
  174. package/dist/components/nylas-scheduler-editor.js.map +1 -1
  175. package/dist/components/nylas-scheduling.js +34 -11
  176. package/dist/components/nylas-scheduling.js.map +1 -1
  177. package/dist/components/nylas-summarize-message-button2.js +1 -1
  178. package/dist/components/nylas-timeslot-picker2.js +1 -1
  179. package/dist/components/nylas-view-email2.js +1 -1
  180. package/dist/components/nylas-view-thread.js +1 -1
  181. package/dist/components/scheduler-config-store.js +2 -3
  182. package/dist/components/scheduler-config-store.js.map +1 -1
  183. package/dist/components/scheduler-store.js +37 -5
  184. package/dist/components/scheduler-store.js.map +1 -1
  185. package/dist/components/utils.js +61 -2
  186. package/dist/components/utils.js.map +1 -1
  187. package/dist/esm/{add-circle-icon_22.entry.js → add-circle-icon_21.entry.js} +36 -156
  188. package/dist/esm/add-circle-icon_21.entry.js.map +1 -0
  189. package/dist/esm/forward-icon_6.entry.js +2 -2
  190. package/dist/esm/google-logo-icon_4.entry.js +24 -16
  191. package/dist/esm/google-logo-icon_4.entry.js.map +1 -1
  192. package/dist/esm/index-7cb0dd3d.js +1 -158
  193. package/dist/esm/index-8362ce5c.js +1 -362
  194. package/dist/esm/{index.es-df564f87.js → index.es-be19d2df.js} +3 -3
  195. package/dist/esm/index.es-be19d2df.js.map +1 -0
  196. package/dist/{nylas-web-elements/index.es-e4f027a2.js → esm/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-69c5c5f6.js → mailbox-store-76540d24.js} +3 -3
  201. package/dist/{nylas-web-elements/mailbox-store-5075f820.js.map → esm/mailbox-store-76540d24.js.map} +1 -1
  202. package/dist/{nylas-web-elements/mailbox-store-5075f820.js → esm/mailbox-store-9f819402.js} +3 -3
  203. package/dist/esm/{mailbox-store-5075f820.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-b49b1da6.js → nylas-api-request-59738f8c.js} +2 -2
  207. package/dist/esm/{nylas-api-request-b49b1da6.js.map → nylas-api-request-59738f8c.js.map} +1 -1
  208. package/dist/{nylas-web-elements/nylas-api-request-6a19db25.js → esm/nylas-api-request-ff2869d7.js} +2 -2
  209. package/dist/esm/{nylas-api-request-6a19db25.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 +2 -2
  237. package/dist/esm/nylas-form-card.entry.js +2 -2
  238. package/dist/esm/nylas-if-state.entry.js +2 -2
  239. package/dist/esm/nylas-limit-future-bookings.entry.js +3 -3
  240. package/dist/esm/nylas-limit-future-bookings.entry.js.map +1 -1
  241. package/dist/esm/nylas-list-configurations.entry.js +8 -6
  242. package/dist/esm/nylas-list-configurations.entry.js.map +1 -1
  243. package/dist/esm/nylas-list-folders.entry.js +2 -2
  244. package/dist/esm/nylas-list-threads.entry.js +2 -2
  245. package/dist/esm/nylas-locale-switch.entry.js +2 -2
  246. package/dist/esm/nylas-location-component.entry.js +3 -3
  247. package/dist/esm/nylas-location-component.entry.js.map +1 -1
  248. package/dist/esm/nylas-login.entry.js +2 -2
  249. package/dist/esm/nylas-mailbox-pagination.entry.js +2 -2
  250. package/dist/esm/nylas-mailbox-toolbar-button.entry.js +2 -2
  251. package/dist/esm/nylas-mailbox.entry.js +3 -3
  252. package/dist/esm/nylas-min-cancellation-notice.entry.js +3 -3
  253. package/dist/esm/nylas-min-cancellation-notice.entry.js.map +1 -1
  254. package/dist/esm/nylas-notification.entry.js +1 -1
  255. package/dist/esm/nylas-provider.entry.js +5 -5
  256. package/dist/esm/nylas-scheduler-editor.entry.js +8 -14
  257. package/dist/esm/nylas-scheduler-editor.entry.js.map +1 -1
  258. package/dist/esm/nylas-scheduling.entry.js +35 -12
  259. package/dist/esm/nylas-scheduling.entry.js.map +1 -1
  260. package/dist/esm/nylas-selected-event-card.entry.js +2 -2
  261. package/dist/esm/nylas-summarize-message-button.entry.js +2 -2
  262. package/dist/esm/nylas-threads-refresh.entry.js +2 -2
  263. package/dist/esm/nylas-threads-search.entry.js +2 -2
  264. package/dist/esm/nylas-time-window-picker.entry.js +1 -1
  265. package/dist/esm/nylas-timeslot-picker.entry.js +2 -2
  266. package/dist/esm/nylas-view-email.entry.js +1 -1
  267. package/dist/esm/nylas-view-thread.entry.js +2 -2
  268. package/dist/esm/nylas-web-elements.js +1 -1
  269. package/dist/{nylas-web-elements/register-component-ff6f5df4.js → esm/register-component-0462b27d.js} +2 -2
  270. package/dist/esm/{register-component-b9cfcbaf.js.map → register-component-0462b27d.js.map} +1 -1
  271. package/dist/esm/{register-component-b9cfcbaf.js → register-component-83e24412.js} +2 -2
  272. package/dist/esm/{register-component-ff6f5df4.js.map → register-component-83e24412.js.map} +1 -1
  273. package/dist/{nylas-web-elements/scheduler-config-store-8f2e658e.js → esm/scheduler-config-store-8ccc8dc7.js} +3 -4
  274. package/dist/esm/scheduler-config-store-8ccc8dc7.js.map +1 -0
  275. package/dist/esm/{scheduler-config-store-07d98279.js → scheduler-config-store-ec3b6190.js} +3 -4
  276. package/dist/esm/scheduler-config-store-ec3b6190.js.map +1 -0
  277. package/dist/esm/{scheduler-store-24fd0e91.js → scheduler-store-8ca9003d.js} +39 -7
  278. package/dist/esm/scheduler-store-8ca9003d.js.map +1 -0
  279. package/dist/esm/{scheduler-store-e62b2146.js → scheduler-store-e314bbe6.js} +39 -7
  280. package/dist/esm/scheduler-store-e314bbe6.js.map +1 -0
  281. package/dist/esm/time-period-selector.entry.js +1 -1
  282. package/dist/esm/{utils-3e18e0b2.js → utils-157014b4.js} +62 -3
  283. package/dist/esm/utils-157014b4.js.map +1 -0
  284. package/dist/esm/{utils-db11d29c.js → utils-e6b73120.js} +62 -3
  285. package/dist/esm/utils-e6b73120.js.map +1 -0
  286. package/dist/{esm/index.es-e4f027a2.js → nylas-web-elements/index.es-eb477d56.js} +3 -3
  287. package/dist/nylas-web-elements/index.es-eb477d56.js.map +1 -0
  288. package/dist/nylas-web-elements/index.esm.js +2 -2
  289. package/dist/{esm/mailbox-store-5075f820.js → nylas-web-elements/mailbox-store-9f819402.js} +3 -3
  290. package/dist/{esm/mailbox-store-69c5c5f6.js.map → nylas-web-elements/mailbox-store-9f819402.js.map} +1 -1
  291. package/dist/nylas-web-elements/multi-select-dropdown.entry.js +1 -1
  292. package/dist/nylas-web-elements/nylas-additional-participants.entry.js +2 -2
  293. package/dist/{esm/nylas-api-request-6a19db25.js → nylas-web-elements/nylas-api-request-ff2869d7.js} +2 -2
  294. package/dist/nylas-web-elements/{nylas-api-request-6a19db25.js.map → nylas-api-request-ff2869d7.js.map} +1 -1
  295. package/dist/nylas-web-elements/nylas-availability-picker.entry.js +4 -3
  296. package/dist/nylas-web-elements/nylas-availability-picker.entry.js.map +1 -1
  297. package/dist/nylas-web-elements/nylas-booked-event-card.entry.js +21 -5
  298. package/dist/nylas-web-elements/nylas-booked-event-card.entry.js.map +1 -1
  299. package/dist/nylas-web-elements/nylas-booking-calendar-picker.entry.js +2 -2
  300. package/dist/nylas-web-elements/nylas-booking-form.entry.js +2 -2
  301. package/dist/nylas-web-elements/nylas-buffer-time.entry.js +4 -4
  302. package/dist/nylas-web-elements/nylas-buffer-time.entry.js.map +1 -1
  303. package/dist/nylas-web-elements/nylas-calendar-picker.entry.js +2 -2
  304. package/dist/nylas-web-elements/nylas-cancel-booking-form.entry.js +2 -2
  305. package/dist/nylas-web-elements/nylas-cancelled-event-card.entry.js +22 -5
  306. package/dist/nylas-web-elements/nylas-cancelled-event-card.entry.js.map +1 -1
  307. package/dist/nylas-web-elements/nylas-composer.entry.js +1 -1
  308. package/dist/nylas-web-elements/nylas-custom-booking-flow.entry.js +2 -2
  309. package/dist/nylas-web-elements/nylas-date-picker.entry.js +15 -3
  310. package/dist/nylas-web-elements/nylas-date-picker.entry.js.map +1 -1
  311. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js +18 -12
  312. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js.map +1 -1
  313. package/dist/nylas-web-elements/nylas-event-description.entry.js +2 -2
  314. package/dist/nylas-web-elements/nylas-event-duration.entry.js +2 -2
  315. package/dist/nylas-web-elements/nylas-event-info.entry.js +3 -3
  316. package/dist/nylas-web-elements/nylas-event-info.entry.js.map +1 -1
  317. package/dist/nylas-web-elements/nylas-event-limits.entry.js +3 -3
  318. package/dist/nylas-web-elements/nylas-event-limits.entry.js.map +1 -1
  319. package/dist/nylas-web-elements/nylas-event-title.entry.js +2 -2
  320. package/dist/nylas-web-elements/nylas-form-card.entry.js +2 -2
  321. package/dist/nylas-web-elements/nylas-if-state.entry.js +2 -2
  322. package/dist/nylas-web-elements/nylas-limit-future-bookings.entry.js +3 -3
  323. package/dist/nylas-web-elements/nylas-limit-future-bookings.entry.js.map +1 -1
  324. package/dist/nylas-web-elements/nylas-list-configurations.entry.js +8 -6
  325. package/dist/nylas-web-elements/nylas-list-configurations.entry.js.map +1 -1
  326. package/dist/nylas-web-elements/nylas-list-folders.entry.js +2 -2
  327. package/dist/nylas-web-elements/nylas-list-threads.entry.js +2 -2
  328. package/dist/nylas-web-elements/nylas-locale-switch.entry.js +2 -2
  329. package/dist/nylas-web-elements/nylas-location-component.entry.js +3 -3
  330. package/dist/nylas-web-elements/nylas-location-component.entry.js.map +1 -1
  331. package/dist/nylas-web-elements/nylas-login.entry.js +2 -2
  332. package/dist/nylas-web-elements/nylas-mailbox-pagination.entry.js +2 -2
  333. package/dist/nylas-web-elements/nylas-mailbox-toolbar-button.entry.js +2 -2
  334. package/dist/nylas-web-elements/nylas-mailbox.entry.js +3 -3
  335. package/dist/nylas-web-elements/nylas-min-cancellation-notice.entry.js +3 -3
  336. package/dist/nylas-web-elements/nylas-min-cancellation-notice.entry.js.map +1 -1
  337. package/dist/nylas-web-elements/nylas-notification.entry.js +1 -1
  338. package/dist/nylas-web-elements/nylas-provider.entry.js +5 -5
  339. package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js +8 -14
  340. package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js.map +1 -1
  341. package/dist/nylas-web-elements/nylas-scheduling.entry.js +35 -12
  342. package/dist/nylas-web-elements/nylas-scheduling.entry.js.map +1 -1
  343. package/dist/nylas-web-elements/nylas-selected-event-card.entry.js +2 -2
  344. package/dist/nylas-web-elements/nylas-summarize-message-button.entry.js +2 -2
  345. package/dist/nylas-web-elements/nylas-threads-refresh.entry.js +2 -2
  346. package/dist/nylas-web-elements/nylas-threads-search.entry.js +2 -2
  347. package/dist/nylas-web-elements/nylas-time-window-picker.entry.js +1 -1
  348. package/dist/nylas-web-elements/nylas-timeslot-picker.entry.js +2 -2
  349. package/dist/nylas-web-elements/nylas-view-email.entry.js +1 -1
  350. package/dist/nylas-web-elements/nylas-view-thread.entry.js +2 -2
  351. package/dist/nylas-web-elements/nylas-web-elements.esm.js +1 -1
  352. package/dist/nylas-web-elements/{p-ad7cf473.js → p-01e86103.js} +2 -2
  353. package/dist/nylas-web-elements/p-01e86103.js.map +1 -0
  354. package/dist/nylas-web-elements/{p-a17f542c.entry.js → p-0d1caebd.entry.js} +2 -2
  355. package/dist/nylas-web-elements/{p-a3b1a98c.js → p-0dabcb4d.js} +2 -2
  356. package/dist/nylas-web-elements/{p-22531c3d.entry.js → p-2b63efd8.entry.js} +2 -2
  357. package/dist/nylas-web-elements/p-30f17ef2.entry.js +2 -0
  358. package/dist/nylas-web-elements/p-30f17ef2.entry.js.map +1 -0
  359. package/dist/nylas-web-elements/{p-21c3dcad.entry.js → p-38675cc5.entry.js} +2 -2
  360. package/dist/nylas-web-elements/p-39aa2263.js +2 -0
  361. package/dist/nylas-web-elements/p-39aa2263.js.map +1 -0
  362. package/dist/nylas-web-elements/{p-980c32d9.entry.js → p-44a0f658.entry.js} +3 -3
  363. package/dist/nylas-web-elements/{p-980c32d9.entry.js.map → p-44a0f658.entry.js.map} +1 -1
  364. package/dist/nylas-web-elements/{p-828165d3.entry.js → p-47fa06de.entry.js} +2 -2
  365. package/dist/nylas-web-elements/{p-7614e31e.entry.js → p-48b205a2.entry.js} +2 -2
  366. package/dist/nylas-web-elements/{p-f3974e14.entry.js → p-551871cb.entry.js} +2 -2
  367. package/dist/nylas-web-elements/{p-434fcde2.entry.js → p-61b25ea6.entry.js} +2 -2
  368. package/dist/nylas-web-elements/p-74492776.entry.js +2 -0
  369. package/dist/nylas-web-elements/p-74492776.entry.js.map +1 -0
  370. package/dist/nylas-web-elements/{p-7687925d.entry.js → p-75bc6ef8.entry.js} +2 -2
  371. package/dist/nylas-web-elements/p-76461af6.entry.js +2 -0
  372. package/dist/nylas-web-elements/p-76461af6.entry.js.map +1 -0
  373. package/dist/nylas-web-elements/{p-2d151de9.entry.js → p-78e7f732.entry.js} +2 -2
  374. package/dist/nylas-web-elements/{p-f0f3f350.js → p-8b53becf.js} +2 -2
  375. package/dist/nylas-web-elements/{p-47b99cf5.js → p-8f88a748.js} +2 -2
  376. package/dist/nylas-web-elements/p-8ffc644d.entry.js +2 -0
  377. package/dist/nylas-web-elements/p-8ffc644d.entry.js.map +1 -0
  378. package/dist/nylas-web-elements/{p-f5d17746.entry.js → p-933c6d32.entry.js} +4 -4
  379. package/dist/nylas-web-elements/p-933c6d32.entry.js.map +1 -0
  380. package/dist/nylas-web-elements/{p-4154e97e.entry.js → p-a002b4cf.entry.js} +2 -2
  381. package/dist/nylas-web-elements/p-ab09a78d.js +2 -0
  382. package/dist/nylas-web-elements/p-ab09a78d.js.map +1 -0
  383. package/dist/nylas-web-elements/p-b1b3eb52.entry.js +2 -0
  384. package/dist/nylas-web-elements/p-b1b3eb52.entry.js.map +1 -0
  385. package/dist/nylas-web-elements/{p-f47163ac.entry.js → p-b302fbb1.entry.js} +2 -2
  386. package/dist/nylas-web-elements/{p-5caa0f36.entry.js → p-b77c316c.entry.js} +2 -2
  387. package/dist/nylas-web-elements/{p-d5375409.entry.js → p-d3065401.entry.js} +2 -2
  388. package/dist/nylas-web-elements/{p-bb89e973.entry.js → p-da732fb1.entry.js} +2 -2
  389. package/dist/nylas-web-elements/p-ee91a2a0.js +2 -0
  390. package/dist/nylas-web-elements/p-ee91a2a0.js.map +1 -0
  391. package/dist/{esm/register-component-ff6f5df4.js → nylas-web-elements/register-component-0462b27d.js} +2 -2
  392. package/dist/nylas-web-elements/{register-component-ff6f5df4.js.map → register-component-0462b27d.js.map} +1 -1
  393. package/dist/{esm/scheduler-config-store-8f2e658e.js → nylas-web-elements/scheduler-config-store-8ccc8dc7.js} +3 -4
  394. package/dist/nylas-web-elements/scheduler-config-store-8ccc8dc7.js.map +1 -0
  395. package/dist/nylas-web-elements/{scheduler-store-e62b2146.js → scheduler-store-e314bbe6.js} +39 -7
  396. package/dist/nylas-web-elements/scheduler-store-e314bbe6.js.map +1 -0
  397. package/dist/nylas-web-elements/time-period-selector.entry.js +1 -1
  398. package/dist/nylas-web-elements/{utils-3e18e0b2.js → utils-157014b4.js} +62 -3
  399. package/dist/nylas-web-elements/utils-157014b4.js.map +1 -0
  400. package/dist/types/common/types.d.ts +10 -0
  401. package/dist/types/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.d.ts +8 -1
  402. package/dist/types/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.d.ts +8 -2
  403. package/dist/types/components/scheduler/nylas-date-picker/nylas-date-picker.d.ts +3 -0
  404. package/dist/types/components/scheduler/nylas-scheduler/nylas-scheduling.d.ts +2 -0
  405. package/dist/types/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.d.ts +1 -1
  406. package/dist/types/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.d.ts +2 -1
  407. package/dist/types/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.d.ts +1 -2
  408. package/dist/types/components.d.ts +87 -16
  409. package/dist/types/connector/shared/api/scheduler.d.ts +4 -1
  410. package/dist/types/stores/scheduler-config-store.d.ts +0 -1
  411. package/dist/types/stores/scheduler-store.d.ts +11 -0
  412. package/dist/types/utils/utils.d.ts +4 -0
  413. package/package.json +3 -3
  414. package/dist/cjs/add-circle-icon_22.cjs.entry.js.map +0 -1
  415. package/dist/cjs/index.es-4a7d8d3f.js.map +0 -1
  416. package/dist/cjs/index.es-b2cce060.js.map +0 -1
  417. package/dist/cjs/scheduler-config-store-37690bf0.js.map +0 -1
  418. package/dist/cjs/scheduler-config-store-529c8d7e.js.map +0 -1
  419. package/dist/cjs/scheduler-store-22103c86.js.map +0 -1
  420. package/dist/cjs/scheduler-store-fad9ed7a.js.map +0 -1
  421. package/dist/cjs/utils-9fc33c77.js.map +0 -1
  422. package/dist/cjs/utils-d8cfc3be.js.map +0 -1
  423. package/dist/components/nylas-custom-booking-flow2.js +0 -174
  424. package/dist/components/nylas-custom-booking-flow2.js.map +0 -1
  425. package/dist/esm/add-circle-icon_22.entry.js.map +0 -1
  426. package/dist/esm/index.es-df564f87.js.map +0 -1
  427. package/dist/esm/index.es-e4f027a2.js.map +0 -1
  428. package/dist/esm/scheduler-config-store-07d98279.js.map +0 -1
  429. package/dist/esm/scheduler-config-store-8f2e658e.js.map +0 -1
  430. package/dist/esm/scheduler-store-24fd0e91.js.map +0 -1
  431. package/dist/esm/scheduler-store-e62b2146.js.map +0 -1
  432. package/dist/esm/utils-3e18e0b2.js.map +0 -1
  433. package/dist/esm/utils-db11d29c.js.map +0 -1
  434. package/dist/nylas-web-elements/index.es-e4f027a2.js.map +0 -1
  435. package/dist/nylas-web-elements/p-074919b0.entry.js +0 -2
  436. package/dist/nylas-web-elements/p-074919b0.entry.js.map +0 -1
  437. package/dist/nylas-web-elements/p-349f07e3.entry.js +0 -2
  438. package/dist/nylas-web-elements/p-349f07e3.entry.js.map +0 -1
  439. package/dist/nylas-web-elements/p-4c12e1e9.js +0 -2
  440. package/dist/nylas-web-elements/p-4c12e1e9.js.map +0 -1
  441. package/dist/nylas-web-elements/p-ad7cf473.js.map +0 -1
  442. package/dist/nylas-web-elements/p-c529dced.entry.js +0 -2
  443. package/dist/nylas-web-elements/p-c529dced.entry.js.map +0 -1
  444. package/dist/nylas-web-elements/p-da74ec1c.entry.js +0 -2
  445. package/dist/nylas-web-elements/p-da74ec1c.entry.js.map +0 -1
  446. package/dist/nylas-web-elements/p-db15d382.js +0 -2
  447. package/dist/nylas-web-elements/p-db15d382.js.map +0 -1
  448. package/dist/nylas-web-elements/p-f0250b7d.js +0 -2
  449. package/dist/nylas-web-elements/p-f0250b7d.js.map +0 -1
  450. package/dist/nylas-web-elements/p-f5d17746.entry.js.map +0 -1
  451. package/dist/nylas-web-elements/scheduler-config-store-8f2e658e.js.map +0 -1
  452. package/dist/nylas-web-elements/scheduler-store-e62b2146.js.map +0 -1
  453. package/dist/nylas-web-elements/utils-3e18e0b2.js.map +0 -1
  454. /package/dist/nylas-web-elements/{p-a17f542c.entry.js.map → p-0d1caebd.entry.js.map} +0 -0
  455. /package/dist/nylas-web-elements/{p-a3b1a98c.js.map → p-0dabcb4d.js.map} +0 -0
  456. /package/dist/nylas-web-elements/{p-22531c3d.entry.js.map → p-2b63efd8.entry.js.map} +0 -0
  457. /package/dist/nylas-web-elements/{p-21c3dcad.entry.js.map → p-38675cc5.entry.js.map} +0 -0
  458. /package/dist/nylas-web-elements/{p-828165d3.entry.js.map → p-47fa06de.entry.js.map} +0 -0
  459. /package/dist/nylas-web-elements/{p-7614e31e.entry.js.map → p-48b205a2.entry.js.map} +0 -0
  460. /package/dist/nylas-web-elements/{p-f3974e14.entry.js.map → p-551871cb.entry.js.map} +0 -0
  461. /package/dist/nylas-web-elements/{p-434fcde2.entry.js.map → p-61b25ea6.entry.js.map} +0 -0
  462. /package/dist/nylas-web-elements/{p-7687925d.entry.js.map → p-75bc6ef8.entry.js.map} +0 -0
  463. /package/dist/nylas-web-elements/{p-2d151de9.entry.js.map → p-78e7f732.entry.js.map} +0 -0
  464. /package/dist/nylas-web-elements/{p-f0f3f350.js.map → p-8b53becf.js.map} +0 -0
  465. /package/dist/nylas-web-elements/{p-47b99cf5.js.map → p-8f88a748.js.map} +0 -0
  466. /package/dist/nylas-web-elements/{p-4154e97e.entry.js.map → p-a002b4cf.entry.js.map} +0 -0
  467. /package/dist/nylas-web-elements/{p-f47163ac.entry.js.map → p-b302fbb1.entry.js.map} +0 -0
  468. /package/dist/nylas-web-elements/{p-5caa0f36.entry.js.map → p-b77c316c.entry.js.map} +0 -0
  469. /package/dist/nylas-web-elements/{p-d5375409.entry.js.map → p-d3065401.entry.js.map} +0 -0
  470. /package/dist/nylas-web-elements/{p-bb89e973.entry.js.map → p-da732fb1.entry.js.map} +0 -0
@@ -1,25 +1,24 @@
1
1
  import { h, proxyCustomElement, HTMLElement, createEvent, Host } from '@stencil/core/internal/client';
2
2
  import { R as RegisterComponent } from './register-component.js';
3
- import { a as debug, p as parsePreviewLink } from './utils.js';
3
+ import { s as mergeDeep, a as debug, u as parsePreviewLink } from './utils.js';
4
4
  import { D as DEFAULT_OPEN_HOURS } from './constants.js';
5
- import { d as defineCustomElement$w } from './add-circle.js';
6
- import { d as defineCustomElement$v } from './button-component2.js';
7
- import { d as defineCustomElement$u } from './calendar-info.js';
8
- import { d as defineCustomElement$t } from './calendar-patterns.js';
9
- import { d as defineCustomElement$s } from './chevron.js';
10
- import { d as defineCustomElement$r } from './close.js';
11
- import { d as defineCustomElement$q } from './flow.js';
12
- import { d as defineCustomElement$p } from './globe.js';
13
- import { d as defineCustomElement$o } from './info.js';
14
- import { d as defineCustomElement$n } from './loading.js';
15
- import { d as defineCustomElement$m } from './location.js';
16
- import { d as defineCustomElement$l } from './location-off.js';
17
- import { d as defineCustomElement$k } from './multi-select-dropdown2.js';
18
- import { d as defineCustomElement$j } from './nylas-availability-picker2.js';
19
- import { d as defineCustomElement$i } from './nylas-booking-calendar-picker2.js';
20
- import { d as defineCustomElement$h } from './nylas-buffer-time2.js';
21
- import { d as defineCustomElement$g } from './nylas-calendar-picker2.js';
22
- import { d as defineCustomElement$f } from './nylas-custom-booking-flow2.js';
5
+ import { d as defineCustomElement$v } from './add-circle.js';
6
+ import { d as defineCustomElement$u } from './button-component2.js';
7
+ import { d as defineCustomElement$t } from './calendar-info.js';
8
+ import { d as defineCustomElement$s } from './calendar-patterns.js';
9
+ import { d as defineCustomElement$r } from './chevron.js';
10
+ import { d as defineCustomElement$q } from './close.js';
11
+ import { d as defineCustomElement$p } from './flow.js';
12
+ import { d as defineCustomElement$o } from './globe.js';
13
+ import { d as defineCustomElement$n } from './info.js';
14
+ import { d as defineCustomElement$m } from './loading.js';
15
+ import { d as defineCustomElement$l } from './location.js';
16
+ import { d as defineCustomElement$k } from './location-off.js';
17
+ import { d as defineCustomElement$j } from './multi-select-dropdown2.js';
18
+ import { d as defineCustomElement$i } from './nylas-availability-picker2.js';
19
+ import { d as defineCustomElement$h } from './nylas-booking-calendar-picker2.js';
20
+ import { d as defineCustomElement$g } from './nylas-buffer-time2.js';
21
+ import { d as defineCustomElement$f } from './nylas-calendar-picker2.js';
23
22
  import { d as defineCustomElement$e } from './nylas-event-description2.js';
24
23
  import { d as defineCustomElement$d } from './nylas-event-duration2.js';
25
24
  import { d as defineCustomElement$c } from './nylas-event-info2.js';
@@ -63,7 +62,6 @@ function TabContents({ id, formState, activeTab, calendars }) {
63
62
  case 'bookingOptions':
64
63
  return (h("div", { key: id },
65
64
  h("nylas-buffer-time", { name: "buffer-time", buffer: formState.buffer, exportparts: 'nbt, nbt__header, nbt__body, nbt__dropdown-before, nbt__dropdown-button-before, nbt__dropdown-content-before, nbt__dropdown-after, nbt__dropdown-button-after, nbt__dropdown-content-after, nbt__preview' }),
66
- h("nylas-custom-booking-flow", { name: "booking-type", bookingType: formState.bookingType, exportparts: 'ncbf, ncbf__header, ncbf__dropdown, ncbf__dropdown-button, ncbf__dropdown-content' }),
67
65
  h("nylas-event-limits", null,
68
66
  h("div", { slot: "inputs" },
69
67
  h("nylas-limit-future-bookings", { name: "limit-future-bookings", availableDaysInFuture: formState.availableDaysInFuture, exportparts: "nlfb, nlfb__number-dropdown, nlfb__number-dropdown-button, nlfb__number-dropdown-content, nlfb__period-dropdown, nlfb__period-dropdown-button, nlfb__period-dropdown-content" }),
@@ -71,7 +69,7 @@ function TabContents({ id, formState, activeTab, calendars }) {
71
69
  }
72
70
  }
73
71
 
74
- const nylasEditorTabsCss = ".sc-nylas-editor-tabs-h{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}.scheduler-editor.sc-nylas-editor-tabs{display:flex;flex-direction:column}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs{display:grid;grid-template-columns:minmax(224px, 25%) 1fr}@media screen and (max-width: 768px){.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs{display:table-column-group}}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tabs.sc-nylas-editor-tabs{display:flex;flex-direction:column;border-right:1px solid var(--nylas-base-200);background-color:var(--nylas-base-25)}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tabs.sc-nylas-editor-tabs .tab.sc-nylas-editor-tabs{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 1rem;color:var(--nylas-base-900);background:var(--nylas-base-0);border:none;height:56px;font-family:var(--nylas-font-family);font-size:16px;font-weight:500;line-height:24px;cursor:pointer}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tabs.sc-nylas-editor-tabs .tab.sc-nylas-editor-tabs:not(:first-of-type){margin-top:0.25rem}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tabs.sc-nylas-editor-tabs .tab.active.sc-nylas-editor-tabs{font-weight:600;background:var(--nylas-base-0);color:var(--nylas-primary);border-left:4px solid var(--nylas-primary);box-shadow:0px 1px 2px 0px rgba(0, 0, 0, 0.0588235294);box-shadow:0px 1px 3px 0px rgba(0, 0, 0, 0.1019607843)}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tab-content.sc-nylas-editor-tabs{max-width:692px}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tab-content.sc-nylas-editor-tabs nylas-event-info.sc-nylas-editor-tabs div[slot=inputs].sc-nylas-editor-tabs,.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tab-content.sc-nylas-editor-tabs nylas-event-limits.sc-nylas-editor-tabs div[slot=inputs].sc-nylas-editor-tabs{display:flex;flex-direction:column;gap:1rem}.footer.sc-nylas-editor-tabs{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:80px;padding:0 1rem;border-top:1px solid var(--nylas-base-200)}@media screen and (max-width: 768px){.footer.sc-nylas-editor-tabs{flex-direction:column;height:auto}}@media screen and (max-width: 768px){.footer.sc-nylas-editor-tabs .preview.sc-nylas-editor-tabs{margin-top:1rem;width:100%}}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs{display:flex;justify-content:flex-end;align-items:center;justify-self:flex-end;gap:1rem}@media screen and (max-width: 768px){.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs{flex-direction:column-reverse;width:100%}}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs p.sc-nylas-editor-tabs{max-width:524px}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs p.unsaved-changes.sc-nylas-editor-tabs{color:var(--nylas-base-600)}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs p.saved-changes.sc-nylas-editor-tabs{color:var(--nylas-success)}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs p.error.sc-nylas-editor-tabs{color:var(--nylas-error)}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs p.error-full-width.sc-nylas-editor-tabs{max-width:660px}@media screen and (max-width: 768px){.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs button-component.sc-nylas-editor-tabs{width:100%}}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs button.sc-nylas-editor-tabs{background:var(--nylas-primary);color:var(--nylas-base-0);height:48px;border:none;border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;cursor:pointer;width:148px}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs button.sc-nylas-editor-tabs:hover{background:var(--nylas-base-600)}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs button.sc-nylas-editor-tabs:active{background:var(--nylas-base-800)}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs button.sc-nylas-editor-tabs:disabled{background:var(--nylas-base-300);cursor:not-allowed}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs button.sc-nylas-editor-tabs span.sc-nylas-editor-tabs{display:flex;align-items:center;justify-content:center;gap:0.5rem}";
72
+ const nylasEditorTabsCss = ".sc-nylas-editor-tabs-h{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}.scheduler-editor.sc-nylas-editor-tabs{display:flex;flex-direction:column}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs{height:554px;display:grid;grid-template-columns:minmax(224px, 25%) 1fr}@media screen and (max-width: 768px){.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs{display:table-column-group;height:auto}}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tabs.sc-nylas-editor-tabs{display:flex;flex-direction:column;border-right:1px solid var(--nylas-base-200);background-color:var(--nylas-base-25)}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tabs.sc-nylas-editor-tabs .tab.sc-nylas-editor-tabs{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 1rem;color:var(--nylas-base-900);background:var(--nylas-base-0);border:none;height:56px;font-family:var(--nylas-font-family);font-size:16px;font-weight:500;line-height:24px;cursor:pointer}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tabs.sc-nylas-editor-tabs .tab.sc-nylas-editor-tabs:not(:first-of-type){margin-top:0.25rem}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tabs.sc-nylas-editor-tabs .tab.active.sc-nylas-editor-tabs{font-weight:600;background:var(--nylas-base-0);color:var(--nylas-primary);border-left:4px solid var(--nylas-primary);box-shadow:0px 1px 2px 0px rgba(0, 0, 0, 0.0588235294);box-shadow:0px 1px 3px 0px rgba(0, 0, 0, 0.1019607843)}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tab-content.sc-nylas-editor-tabs{max-width:692px;overflow-y:auto}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tab-content.sc-nylas-editor-tabs nylas-event-info.sc-nylas-editor-tabs,.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tab-content.sc-nylas-editor-tabs nylas-event-limits.sc-nylas-editor-tabs{width:inherit}.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tab-content.sc-nylas-editor-tabs nylas-event-info.sc-nylas-editor-tabs div[slot=inputs].sc-nylas-editor-tabs,.scheduler-editor.sc-nylas-editor-tabs .form-contents.sc-nylas-editor-tabs .tab-content.sc-nylas-editor-tabs nylas-event-limits.sc-nylas-editor-tabs div[slot=inputs].sc-nylas-editor-tabs{display:flex;flex-direction:column;gap:1rem}.footer.sc-nylas-editor-tabs{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:80px;padding:0 1rem;border-top:1px solid var(--nylas-base-200)}@media screen and (max-width: 768px){.footer.sc-nylas-editor-tabs{flex-direction:column;height:auto}}@media screen and (max-width: 768px){.footer.sc-nylas-editor-tabs .preview.sc-nylas-editor-tabs{margin-top:1rem;width:100%}}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs{display:flex;justify-content:flex-end;align-items:center;justify-self:flex-end;gap:1rem}@media screen and (max-width: 768px){.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs{flex-direction:column-reverse;width:100%}}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs p.sc-nylas-editor-tabs{max-width:524px}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs p.unsaved-changes.sc-nylas-editor-tabs{color:var(--nylas-base-600)}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs p.saved-changes.sc-nylas-editor-tabs{color:var(--nylas-success)}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs p.error.sc-nylas-editor-tabs{color:var(--nylas-error)}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs p.error-full-width.sc-nylas-editor-tabs{max-width:660px}@media screen and (max-width: 768px){.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs button-component.sc-nylas-editor-tabs{width:100%}}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs button.sc-nylas-editor-tabs{background:var(--nylas-primary);color:var(--nylas-base-0);height:48px;border:none;border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;cursor:pointer;width:148px}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs button.sc-nylas-editor-tabs:hover{background:var(--nylas-base-600)}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs button.sc-nylas-editor-tabs:active{background:var(--nylas-base-800)}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs button.sc-nylas-editor-tabs:disabled{background:var(--nylas-base-300);cursor:not-allowed}.footer.sc-nylas-editor-tabs .buttons.sc-nylas-editor-tabs button.sc-nylas-editor-tabs span.sc-nylas-editor-tabs{display:flex;align-items:center;justify-content:center;gap:0.5rem}";
75
73
 
76
74
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
77
75
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -111,7 +109,7 @@ const NylasEditorTabs = proxyCustomElement(class NylasEditorTabs extends HTMLEle
111
109
  const { title, description, duration, availability, calendarIds, bookingCalendar, location, bookingType, buffer, availableDaysInFuture, minCancellationNotice } = formState;
112
110
  const organizer = this.selectedConfiguration?.participants?.find(p => p.is_organizer);
113
111
  const configObject = {
114
- ...this.selectedConfiguration,
112
+ ...(this.selectedConfiguration?.id && { id: this.selectedConfiguration.id }),
115
113
  version: this.selectedConfiguration?.version ?? '1.0.0',
116
114
  availability: {
117
115
  duration_minutes: duration ? parseInt(duration) : 0,
@@ -148,6 +146,9 @@ const NylasEditorTabs = proxyCustomElement(class NylasEditorTabs extends HTMLEle
148
146
  min_cancellation_notice: minCancellationNotice ?? 0,
149
147
  },
150
148
  };
149
+ const configObjectWithDeveloperSettings = mergeDeep(configObject, this.selectedConfiguration);
150
+ configObjectWithDeveloperSettings.requires_session_auth = this.defaultRequiresSessionAuth;
151
+ const finalConfig = this.action === 'create' ? configObjectWithDeveloperSettings : configObject;
151
152
  const resetLoadingState = (_e) => {
152
153
  this.isLoading = false;
153
154
  this.changesSaved = true;
@@ -155,14 +156,15 @@ const NylasEditorTabs = proxyCustomElement(class NylasEditorTabs extends HTMLEle
155
156
  this.changesSaved = false;
156
157
  }, 5000);
157
158
  };
158
- this.schedulerConfigChanged.emit({ config: configObject, resetLoadingState, setError: this.setError, action: this.action });
159
+ this.schedulerConfigChanged.emit({ config: finalConfig, resetLoadingState, setError: this.setError, action: this.action });
159
160
  };
160
161
  this.calendars = undefined;
161
162
  this.selectedConfiguration = undefined;
163
+ this.defaultRequiresSessionAuth = true;
162
164
  this.currentUser = undefined;
163
165
  this.schedulerPreviewLink = '';
164
- this.action = 'create';
165
166
  this.mode = 'app';
167
+ this.action = 'create';
166
168
  this.activeTab = 'eventInfo';
167
169
  this.isLoading = false;
168
170
  this.hasUnsavedChanges = false;
@@ -274,22 +276,22 @@ const NylasEditorTabs = proxyCustomElement(class NylasEditorTabs extends HTMLEle
274
276
  }
275
277
  render() {
276
278
  debug('[nylas-editor-tabs]', 'render', this.formState);
277
- return (h(Host, { key: 'c1e6e9d2cfe242e407a909281063767a0985245e' }, h("form", { key: '4baaac0129e8a357b78980636bd32b3818ec0820', onSubmit: this.formSubmissionHandler, class: "scheduler-editor", ref: el => (this.formRef = el), noValidate: true }, this.mode === 'app' ? (h("div", { class: "form-contents" }, h("div", { class: "tabs" }, h("button", { class: { tab: true, active: this.activeTab == 'eventInfo' }, onClick: e => this.setActiveTab(e, 'eventInfo') }, h("calendar-info-icon", { width: "16", height: "16" }), "Event Info"), h("button", { class: { tab: true, active: this.activeTab == 'availability' }, onClick: e => this.setActiveTab(e, 'availability') }, h("calendar-patterns-icon", { width: "16", height: "16" }), "Availability"), h("button", { class: { tab: true, active: this.activeTab == 'bookingOptions' }, onClick: e => this.setActiveTab(e, 'bookingOptions') }, h("flow-icon", { width: "16", height: "16" }), "Booking Options")), h("div", { class: "tab-content" }, h(TabContents, { formState: this.formState, activeTab: this.activeTab, calendars: this.calendars, id: this.selectedConfiguration?.id ?? 'new' })))) : (h("slot", null)), h("div", { key: '38bdcdd7283d98ea54c7594a52cc16b85b3b776a', class: "footer" }, h("div", { key: '5543e3f7eb2fa9f2f3bbe6053fde7d0ea13c3bc0', class: "preview" }, this.schedulerPreviewLink !== '' && this.action === 'edit' && (h("button-component", { type: "button", disabled: this.isLoading, clickHandler: event => {
279
+ return (h(Host, { key: '1b22e2152ebb021ef1b5a8bc7b84d34742d8b141' }, h("form", { key: '0e3a7c3b9a058ff4abc759b6891b7f4d1e8075ef', onSubmit: this.formSubmissionHandler, class: "scheduler-editor", ref: el => (this.formRef = el), noValidate: true }, this.mode === 'app' ? (h("div", { class: "form-contents" }, h("div", { class: "tabs" }, h("button", { class: { tab: true, active: this.activeTab == 'eventInfo' }, onClick: e => this.setActiveTab(e, 'eventInfo') }, h("calendar-info-icon", { width: "16", height: "16" }), "Event Info"), h("button", { class: { tab: true, active: this.activeTab == 'availability' }, onClick: e => this.setActiveTab(e, 'availability') }, h("calendar-patterns-icon", { width: "16", height: "16" }), "Availability"), h("button", { class: { tab: true, active: this.activeTab == 'bookingOptions' }, onClick: e => this.setActiveTab(e, 'bookingOptions') }, h("flow-icon", { width: "16", height: "16" }), "Booking Options")), h("div", { class: "tab-content" }, h(TabContents, { formState: this.formState, activeTab: this.activeTab, calendars: this.calendars, id: this.selectedConfiguration?.id ?? 'new' })))) : (h("slot", null)), h("div", { key: '33093cefafa2ff596a2b6e00e5ed994319065f53', class: "footer" }, h("div", { key: 'ffbea04fe503c6f6482c3eaae7f87bac173ad9b9', class: "preview" }, this.schedulerPreviewLink !== '' && this.action === 'edit' && (h("button-component", { type: "button", disabled: this.isLoading, clickHandler: event => {
278
280
  event.preventDefault();
279
281
  const previewEvent = this.previewButtonClicked.emit(this.host);
280
282
  if (!previewEvent.defaultPrevented) {
281
283
  window.open(parsePreviewLink(this.schedulerPreviewLink, this.selectedConfiguration), '_blank');
282
284
  }
283
- }, variant: 'basic' }, "Preview"))), h("div", { key: '62470cdbc7c4670e6ff03e9979ca803f81482b15', class: "buttons" }, h("p", { key: '5ecdfa1082650aab2f8fef8ed7beeb11fedb381c', class: {
285
+ }, variant: 'basic' }, "Preview"))), h("div", { key: '88a229d932ab65f90da5fc64f5c09ab8ae4bcae8', class: "buttons" }, h("p", { key: '8e2c76b956e7291775dc3515b4fffa7b77e1fe6c', class: {
284
286
  'unsaved-changes': this.hasUnsavedChanges && !this.changesSaved,
285
287
  'saved-changes': this.changesSaved,
286
288
  'error': this.error !== '',
287
289
  'error-full-width': this.error !== '' && this.action === 'create',
288
- } }, this.error !== '' ? this.error : '', this.error == '' && this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : this.error == '' && this.changesSaved ? 'Changes saved!' : ''), h("button-component", { key: '1bb3af5cc04c49e311267fb43ac326267acdaa1d', type: "button", disabled: this.isLoading, clickHandler: event => {
290
+ } }, this.error !== '' ? this.error : '', this.error == '' && this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : this.error == '' && this.changesSaved ? 'Changes saved!' : ''), h("button-component", { key: 'e90b955a86235e50227d5655225860e427e1e6c8', type: "button", disabled: this.isLoading, clickHandler: event => {
289
291
  event.preventDefault();
290
292
  this.cancelButtonClick.emit();
291
293
  this.error = '';
292
- }, variant: 'basic' }, "Cancel"), h("button-component", { key: '28c9725c69104d1849b2ab3068b61a269370f016', type: "submit", disabled: this.isLoading }, this.isLoading ? (h("span", null, "Saving", h("loading-icon", null), ' ')) : this.action == 'create' ? ('Create') : ('Save changes')))))));
294
+ }, variant: 'basic' }, "Cancel"), h("button-component", { key: 'da69635d229d324cb7ae5019037a9cf431f71125', type: "submit", disabled: this.isLoading }, this.isLoading ? (h("span", null, "Saving", h("loading-icon", null), ' ')) : this.action == 'create' ? ('Create') : ('Save changes')))))));
293
295
  }
294
296
  get host() { return this; }
295
297
  static get watchers() { return {
@@ -299,6 +301,7 @@ const NylasEditorTabs = proxyCustomElement(class NylasEditorTabs extends HTMLEle
299
301
  }, [6, "nylas-editor-tabs", {
300
302
  "calendars": [16],
301
303
  "selectedConfiguration": [16],
304
+ "defaultRequiresSessionAuth": [4, "default-requires-session-auth"],
302
305
  "currentUser": [16],
303
306
  "schedulerPreviewLink": [1, "scheduler-preview-link"],
304
307
  "mode": [1],
@@ -345,7 +348,10 @@ __decorate([
345
348
  nylasSchedulerConfigConnector.schedulerConfigStore.state.action = null;
346
349
  },
347
350
  },
348
- localPropsToProp: new Map([['schedulerPreviewLink', 'schedulerPreviewLink']]),
351
+ localPropsToProp: new Map([
352
+ ['schedulerPreviewLink', 'schedulerPreviewLink'],
353
+ ['defaultRequiresSessionAuth', 'defaultRequiresSessionAuth'],
354
+ ]),
349
355
  fireRegisterEvent: true,
350
356
  }),
351
357
  __metadata("design:type", Function),
@@ -356,7 +362,7 @@ function defineCustomElement() {
356
362
  if (typeof customElements === "undefined") {
357
363
  return;
358
364
  }
359
- const components = ["nylas-editor-tabs", "add-circle-icon", "button-component", "calendar-info-icon", "calendar-patterns-icon", "chevron-icon", "close-icon", "flow-icon", "globe-icon", "info-icon", "loading-icon", "location-icon", "location-off-icon", "multi-select-dropdown", "nylas-availability-picker", "nylas-booking-calendar-picker", "nylas-buffer-time", "nylas-calendar-picker", "nylas-custom-booking-flow", "nylas-event-description", "nylas-event-duration", "nylas-event-info", "nylas-event-limits", "nylas-event-title", "nylas-form-card", "nylas-limit-future-bookings", "nylas-location-component", "nylas-min-cancellation-notice", "nylas-time-window-picker", "search-icon", "select-dropdown", "time-period-selector", "tooltip-component"];
365
+ const components = ["nylas-editor-tabs", "add-circle-icon", "button-component", "calendar-info-icon", "calendar-patterns-icon", "chevron-icon", "close-icon", "flow-icon", "globe-icon", "info-icon", "loading-icon", "location-icon", "location-off-icon", "multi-select-dropdown", "nylas-availability-picker", "nylas-booking-calendar-picker", "nylas-buffer-time", "nylas-calendar-picker", "nylas-event-description", "nylas-event-duration", "nylas-event-info", "nylas-event-limits", "nylas-event-title", "nylas-form-card", "nylas-limit-future-bookings", "nylas-location-component", "nylas-min-cancellation-notice", "nylas-time-window-picker", "search-icon", "select-dropdown", "time-period-selector", "tooltip-component"];
360
366
  components.forEach(tagName => { switch (tagName) {
361
367
  case "nylas-editor-tabs":
362
368
  if (!customElements.get(tagName)) {
@@ -364,91 +370,86 @@ function defineCustomElement() {
364
370
  }
365
371
  break;
366
372
  case "add-circle-icon":
367
- if (!customElements.get(tagName)) {
368
- defineCustomElement$w();
369
- }
370
- break;
371
- case "button-component":
372
373
  if (!customElements.get(tagName)) {
373
374
  defineCustomElement$v();
374
375
  }
375
376
  break;
376
- case "calendar-info-icon":
377
+ case "button-component":
377
378
  if (!customElements.get(tagName)) {
378
379
  defineCustomElement$u();
379
380
  }
380
381
  break;
381
- case "calendar-patterns-icon":
382
+ case "calendar-info-icon":
382
383
  if (!customElements.get(tagName)) {
383
384
  defineCustomElement$t();
384
385
  }
385
386
  break;
386
- case "chevron-icon":
387
+ case "calendar-patterns-icon":
387
388
  if (!customElements.get(tagName)) {
388
389
  defineCustomElement$s();
389
390
  }
390
391
  break;
391
- case "close-icon":
392
+ case "chevron-icon":
392
393
  if (!customElements.get(tagName)) {
393
394
  defineCustomElement$r();
394
395
  }
395
396
  break;
396
- case "flow-icon":
397
+ case "close-icon":
397
398
  if (!customElements.get(tagName)) {
398
399
  defineCustomElement$q();
399
400
  }
400
401
  break;
401
- case "globe-icon":
402
+ case "flow-icon":
402
403
  if (!customElements.get(tagName)) {
403
404
  defineCustomElement$p();
404
405
  }
405
406
  break;
406
- case "info-icon":
407
+ case "globe-icon":
407
408
  if (!customElements.get(tagName)) {
408
409
  defineCustomElement$o();
409
410
  }
410
411
  break;
411
- case "loading-icon":
412
+ case "info-icon":
412
413
  if (!customElements.get(tagName)) {
413
414
  defineCustomElement$n();
414
415
  }
415
416
  break;
416
- case "location-icon":
417
+ case "loading-icon":
417
418
  if (!customElements.get(tagName)) {
418
419
  defineCustomElement$m();
419
420
  }
420
421
  break;
421
- case "location-off-icon":
422
+ case "location-icon":
422
423
  if (!customElements.get(tagName)) {
423
424
  defineCustomElement$l();
424
425
  }
425
426
  break;
426
- case "multi-select-dropdown":
427
+ case "location-off-icon":
427
428
  if (!customElements.get(tagName)) {
428
429
  defineCustomElement$k();
429
430
  }
430
431
  break;
431
- case "nylas-availability-picker":
432
+ case "multi-select-dropdown":
432
433
  if (!customElements.get(tagName)) {
433
434
  defineCustomElement$j();
434
435
  }
435
436
  break;
436
- case "nylas-booking-calendar-picker":
437
+ case "nylas-availability-picker":
437
438
  if (!customElements.get(tagName)) {
438
439
  defineCustomElement$i();
439
440
  }
440
441
  break;
441
- case "nylas-buffer-time":
442
+ case "nylas-booking-calendar-picker":
442
443
  if (!customElements.get(tagName)) {
443
444
  defineCustomElement$h();
444
445
  }
445
446
  break;
446
- case "nylas-calendar-picker":
447
+ case "nylas-buffer-time":
447
448
  if (!customElements.get(tagName)) {
448
449
  defineCustomElement$g();
449
450
  }
450
451
  break;
451
- case "nylas-custom-booking-flow":
452
+ case "nylas-calendar-picker":
452
453
  if (!customElements.get(tagName)) {
453
454
  defineCustomElement$f();
454
455
  }
@@ -1 +1 @@
1
- {"file":"nylas-editor-tabs2.js","mappings":"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","names":[],"sources":["src/components/scheduler-editor/nylas-editor-tabs/tab-contents.tsx","src/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.scss?tag=nylas-editor-tabs&encapsulation=scoped","src/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.tsx"],"sourcesContent":["import { h } from '@stencil/core';\n\nexport type TabContentsProps = {\n id: string;\n formState: any;\n activeTab: string;\n calendars?: any[];\n};\n\nexport default function TabContents({ id, formState, activeTab, calendars }: TabContentsProps) {\n switch (activeTab) {\n case 'eventInfo':\n const eventTitle = formState.title;\n const eventDescription = formState.description;\n const eventDuration = parseInt(formState.duration);\n const location = formState.location;\n // const eventParticipants = formState.participants;\n\n return (\n <div key={id}>\n <nylas-event-info>\n <div slot=\"inputs\">\n <nylas-event-title name=\"title\" eventTitle={eventTitle} exportparts=\"net, net__title, net__dropdown-content\" />\n <nylas-event-duration\n name=\"duration\"\n eventDurationMinutes={eventDuration}\n exportparts=\"ned, ned__input, ned__dropdown, ned__dropdown-button, ned__dropdown-content\"\n />\n <nylas-location-component name=\"location\" eventLocation={location} exportparts=\"nel, nel__location, nel__dropdown, nel__dropdown-button, nel__dropdown-content\" />\n <nylas-event-description name=\"description\" eventDescription={eventDescription} exportparts=\"nedesc, nedesc__textarea\" />\n </div>\n </nylas-event-info>\n {/* <nylas-additional-participants\n name=\"participants\"\n eventParticipants={eventParticipants}\n exportparts={'nap__title, nap__subtitle, nap__content, nap__input_group, nap__input_wrapper, nap__input, nap__remove-participant, nap__add-participant'}\n /> */}\n </div>\n );\n case 'availability':\n const openHours = formState.availability.openHours;\n const timezone = formState.availability.timezone ? formState.availability.timezone : Intl.DateTimeFormat().resolvedOptions().timeZone;\n const organizer = formState.participants?.find(p => p.is_organizer);\n const organizerEmail = organizer?.email ?? 'primary';\n const selectedCalendars = formState.calendarIds.length > 0 ? formState.calendarIds : [organizerEmail];\n const bookingCalendar = formState.bookingCalendar == 'primary' ? organizerEmail : formState.bookingCalendar;\n return (\n <div key={id}>\n <nylas-booking-calendar-picker\n name=\"booking-calendar\"\n calendars={calendars ?? []}\n defaultBookingCalendar={bookingCalendar}\n exportparts={'nbcp, nbcp__header, nbcp__input-label, nbcp__dropdown, nbcp__dropdown-button, nbcp__dropdown-content'}\n />\n <nylas-calendar-picker\n name=\"calendars\"\n calendars={calendars ?? []}\n defaultSelectedCalendars={selectedCalendars}\n exportparts={'ncp ncp__header, ncp__dropdown, ncp__dropdown-button, ncp__dropdown-content'}\n />\n <nylas-availability-picker\n name=\"availability\"\n openHours={openHours}\n defaultTimezone={timezone}\n exportparts={\n 'nap__header, nap__select-timezone, nap__select-timezone-button, nap__select-timezone-dropdown-content, nap__availability, nap__day, nap__time-ranges, nap__time-range, nap__add-time-range, nap__time-picker-container, nap__time-picker-input, nap__time-picker-times'\n }\n />\n </div>\n );\n case 'bookingOptions':\n return (\n <div key={id}>\n <nylas-buffer-time\n name=\"buffer-time\"\n buffer={formState.buffer}\n exportparts={\n 'nbt, nbt__header, nbt__body, nbt__dropdown-before, nbt__dropdown-button-before, nbt__dropdown-content-before, nbt__dropdown-after, nbt__dropdown-button-after, nbt__dropdown-content-after, nbt__preview'\n }\n />\n <nylas-custom-booking-flow\n name=\"booking-type\"\n bookingType={formState.bookingType}\n exportparts={'ncbf, ncbf__header, ncbf__dropdown, ncbf__dropdown-button, ncbf__dropdown-content'}\n />\n <nylas-event-limits>\n <div slot=\"inputs\">\n <nylas-limit-future-bookings\n name=\"limit-future-bookings\"\n availableDaysInFuture={formState.availableDaysInFuture}\n exportparts=\"nlfb, nlfb__number-dropdown, nlfb__number-dropdown-button, nlfb__number-dropdown-content, nlfb__period-dropdown, nlfb__period-dropdown-button, nlfb__period-dropdown-content\"\n />\n <nylas-min-cancellation-notice\n name=\"min-cancellation-notice\"\n minCancellationNotice={formState.minCancellationNotice}\n exportparts=\"nmcn, nmcn__number-dropdown, nmcn__number-dropdown-button, nmcn__number-dropdown-content, nmcn__period-dropdown, nmcn__period-dropdown-button, nmcn__period-dropdown-content\"\n />\n </div>\n </nylas-event-limits>\n </div>\n );\n }\n}\n","@import '../../../common/styles/variables.scss';\n@import '../../../common/mixins/buttons.scss';\n\n:host {\n display: block;\n @include default-css-variables;\n}\n\n.scheduler-editor {\n display: flex;\n flex-direction: column;\n .form-contents {\n display: grid;\n grid-template-columns: minmax(224px, 25%) 1fr;\n @media #{$mobile} {\n display: table-column-group;\n }\n .tabs {\n display: flex;\n flex-direction: column;\n border-right: 1px solid var(--nylas-base-200);\n background-color: var(--nylas-base-25);\n .tab {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.5rem 1rem;\n color: var(--nylas-base-900);\n background: var(--nylas-base-0);\n border: none;\n height: 56px;\n font-family: var(--nylas-font-family);\n font-size: 16px;\n font-weight: 500;\n line-height: 24px;\n cursor: pointer;\n &:not(:first-of-type) {\n margin-top: 0.25rem;\n }\n &.active {\n font-weight: 600;\n background: var(--nylas-base-0);\n color: var(--nylas-primary);\n border-left: 4px solid var(--nylas-primary);\n box-shadow: 0px 1px 2px 0px #0000000f;\n box-shadow: 0px 1px 3px 0px #0000001a;\n }\n }\n }\n .tab-content {\n max-width: 692px;\n nylas-event-info,\n nylas-event-limits {\n div[slot='inputs'] {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n }\n }\n }\n }\n}\n\n.footer {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 1rem;\n min-height: 80px;\n padding: 0 1rem;\n border-top: 1px solid var(--nylas-base-200);\n @media #{$mobile} {\n flex-direction: column;\n height: auto;\n }\n .preview {\n @media #{$mobile} {\n margin-top: 1rem;\n width: 100%;\n }\n }\n .buttons {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n justify-self: flex-end;\n gap: 1rem;\n @media #{$mobile} {\n flex-direction: column-reverse;\n width: 100%;\n }\n p {\n max-width: 524px;\n &.unsaved-changes {\n color: var(--nylas-base-600);\n }\n &.saved-changes {\n color: var(--nylas-success);\n }\n &.error {\n color: var(--nylas-error);\n }\n &.error-full-width {\n max-width: 660px;\n }\n }\n\n button-component {\n @media #{$mobile} {\n width: 100%;\n }\n }\n button {\n @include primary-button;\n width: 148px;\n span {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug, parsePreviewLink } from '@/utils/utils';\nimport { BookingType, Calendar, Configuration, OpenHours } from '@nylas/core';\nimport { Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport TabContents from './tab-contents';\nimport { User } from '@/common/nylas-api-request';\nimport { DEFAULT_OPEN_HOURS } from '@/common/constants';\nimport { DataResponseReturnType } from '@/common/types';\n\ntype SchedulerEventDetail = {\n config: Partial<Configuration>;\n action: 'create' | 'edit';\n resetLoadingState?: (e: CustomEvent) => void;\n setError?: (error: Error) => void;\n};\n\n/**\n * The `nylas-editor-tabs` component is a UI component that displays the editor tabs for the scheduler editor.\n * @part nap__title - [nylas-additional-participants] The title of the component.\n * @part nap__subtitle - [nylas-additional-participants] The subtitle of the component.\n * @part nap__content - [nylas-additional-participants] The content of the component.\n * @part nap__input - [nylas-additional-participants] The input of the component.\n * @part nap__remove-participant - [nylas-additional-participants] The remove participant button of the component.\n * @part nap__add-participant - [nylas-additional-participants] The add participant button of the component.\n * @part nap__header - [nylas-availability-picker] The header of the availability picker\n * @part nap__select-timezone - [nylas-availability-picker] The timezone selection container\n * @part nap__select-timezone-button -[nylas-availability-picker] The timezone selection button\n * @part nap__select-timezone-dropdown-content -[nylas-availability-picker] The timezone selection dropdown content\n * @part nap__availability - [nylas-availability-picker] The availability container\n * @part nap__day - [nylas-availability-picker] The day container\n * @part nap__time-ranges - [nylas-availability-picker] The time ranges container\n * @part nap__time-range - [nylas-availability-picker] The time range container\n * @part nap__add-time-range - [nylas-availability-picker] The add time range button\n * @part nap__time-picker-container -[nylas-availability-picker] The time picker container\n * @part nap__time-picker-input - [nylas-availability-picker] The time picker input\n * @part nap__time-picker-times - [nylas-availability-picker] The time picker times\n * @part nbcp - [nylas-booking-calendar-picker] The booking calendar picker container\n * @part nbcp__header - [nylas-booking-calendar-picker] The header of the booking calendar picker\n * @part nbcp__input-label - [nylas-booking-calendar-picker] The input label of the booking calendar picker\n * @part nbcp__dropdown - [nylas-booking-calendar-picker] The dropdown container\n * @part nbcp__dropdown-button - [nylas-booking-calendar-picker] The dropdown button\n * @part nbcp__dropdown-content - [nylas-booking-calendar-picker] The dropdown content\n * @part nbt - [nylas-buffer-time] The buffer time container\n * @part nbt__header - [nylas-buffer-time] The header of the buffer time\n * @part nbt__body - [nylas-buffer-time] The body of the buffer time\n * @part nbt__dropdown-before - [nylas-buffer-time] The before buffer dropdown container\n * @part nbt__dropdown-button-before - [nylas-buffer-time] The before buffer dropdown button\n * @part nbt__dropdown-content-before - [nylas-buffer-time] The before buffer dropdown content\n * @part nbt__dropdown-after - [nylas-buffer-time] The after buffer dropdown container\n * @part nbt__dropdown-button-after - [nylas-buffer-time] The after buffer dropdown button\n * @part nbt__dropdown-content-after - [nylas-buffer-time] The after buffer dropdown content\n * @part nbt__preview - [nylas-buffer-time] The buffer time preview\n * @part ncp - [nylas-calendar-picker] The calendar picker container\n * @part ncp__header - [nylas-calendar-picker] The header of the calendar picker\n * @part ncp__dropdown - [nylas-calendar-picker] The dropdown container\n * @part ncp__dropdown-button - [nylas-calendar-picker] The dropdown button\n * @part ncp__dropdown-content - [nylas-calendar-picker] The dropdown content\n * @part ncbf - [nylas-custom-booking-flow] The custom booking flow container\n * @part ncbf__header - [nylas-custom-booking-flow] The header of the custom booking flow\n * @part ncbf__dropdown - [nylas-custom-booking-flow] The dropdown container\n * @part ncbf__dropdown-button - [nylas-custom-booking-flow] The dropdown button\n * @part ncbf__dropdown-content - [nylas-custom-booking-flow] The dropdown content\n * @part nedesc - [nylas-event-description] The event description container\n * @part nedesc__textarea - [nylas-event-description] The event description textarea\n * @part ned - [nylas-event-duration] The event duration container\n * @part ned__input - [nylas-event-duration] The event duration input\n * @part ned__dropdown - [nylas-event-duration] The event duration dropdown\n * @part ned__dropdown-button - [nylas-event-duration] The event duration dropdown button\n * @part ned__dropdown-content - [nylas-event-duration] The event duration dropdown content\n * @part net - [nylas-event-title] The event title container\n * @part net__title - [nylas-event-title] The event title input\n * @part net__dropdown-content - [nylas-event-title] The token options container\n * @part nlfb - [nylas-limit-future-bookings] The limit future bookings container\n * @part nlfb__number-dropdown - [nylas-limit-future-bookings] The number dropdown container\n * @part nlfb__number-dropdown-button - [nylas-limit-future-bookings] The number dropdown button\n * @part nlfb__number-dropdown-content - [nylas-limit-future-bookings] The number dropdown content\n * @part nlfb__period-dropdown - [nylas-limit-future-bookings] The period dropdown container\n * @part nlfb__period-dropdown-button - [nylas-limit-future-bookings] The period dropdown button\n * @part nlfb__period-dropdown-content - [nylas-limit-future-bookings] The period dropdown content\n * @part nel - [nylas-location-component] The event location container\n * @part nel__location - [nylas-location-component] The event location input\n * @part nel__dropdown - [nylas-location-component] The dropdown container\n * @part nel__dropdown-button - [nylas-location-component] The dropdown button\n * @part nel__dropdown-content - [nylas-location-component] The dropdown content\n * @part nmcn - [nylas-min-cancellation-notice] The minimum cancellation notice container\n * @part nmcn__number-dropdown - [nylas-min-cancellation-notice] The number dropdown container\n * @part nmcn__number-dropdown-button - [nylas-min-cancellation-notice] The number dropdown button\n * @part nmcn__number-dropdown-content - [nylas-min-cancellation-notice] The number dropdown content\n * @part nmcn__period-dropdown - [nylas-min-cancellation-notice] The period dropdown container\n * @part nmcn__period-dropdown-button - [nylas-min-cancellation-notice] The period dropdown button\n * @part nmcn__period-dropdown-content - [nylas-min-cancellation-notice] The period dropdown content\n */\n@Component({\n tag: 'nylas-editor-tabs',\n styleUrl: 'nylas-editor-tabs.scss',\n scoped: true,\n})\nexport class NylasEditorTabs {\n private formRef!: HTMLFormElement;\n @Element() host!: HTMLNylasEditorTabsElement;\n @Prop() calendars?: Calendar[];\n @Prop() selectedConfiguration?: Configuration;\n @Prop() currentUser?: User;\n /**\n * The scheduler preview link to use when the user clicks on the preview button.\n * You can use a placeholder `{config.id}` to replace the configuration id anywhere in the link.\n */\n @Prop({ attribute: 'scheduler-preview-link' }) schedulerPreviewLink: string = '';\n @State() action: 'create' | 'edit' = 'create';\n @Prop() mode?: 'app' | 'composable' = 'app';\n @State() activeTab: string = 'eventInfo';\n @State() isLoading: boolean = false;\n @State() hasUnsavedChanges: boolean = false;\n @State() changesSaved: boolean = false;\n @State() formState: Partial<{\n title: string;\n description: string;\n duration: string;\n availability?: {\n timezone: string;\n openHours?: OpenHours[];\n };\n calendarIds: string[];\n participants?: any[];\n bookingCalendar?: string;\n location?: string;\n bookingType?: string;\n buffer?: { before: number; after: number };\n availableDaysInFuture?: number;\n minCancellationNotice?: number;\n }> = {};\n @State() error?: string = '';\n\n @Event() schedulerConfigChanged!: EventEmitter<SchedulerEventDetail>;\n\n /**\n * Event emitted when the user clicks the cancel button.\n */\n @Event() cancelButtonClick!: EventEmitter<void>;\n\n /**\n * Event emitted on form submission.\n */\n @Event() formSubmitted!: EventEmitter<void>;\n\n /**\n * Event emitted when the user clicks the cancel button.\n */\n @Event() previewButtonClicked!: EventEmitter<HTMLNylasEditorTabsElement>;\n\n @Watch('selectedConfiguration')\n configChangedHandler(newConfig: Configuration) {\n debug('[nylas-editor-tabs]', 'configChangedHandler', newConfig, this.selectedConfiguration);\n this.formState = {\n ...this.getFormStateFromConfig(newConfig),\n };\n\n if (newConfig.id) {\n this.action = 'edit';\n } else {\n this.action = 'create';\n }\n }\n\n connectedCallback() {\n debug('[nylas-editor-tabs]', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('[nylas-editor-tabs]', 'componentWillLoad');\n this.formState = this.getFormStateFromConfig(this.selectedConfiguration);\n }\n\n componentDidLoad() {\n debug('[nylas-editor-tabs]', 'componentDidLoad');\n }\n\n disconnectedCallback() {\n debug('[nylas-editor-tabs]', 'disconnectedCallback');\n }\n\n @Listen('valueChanged')\n handleValueChanged(event: CustomEvent) {\n debug('[nylas-editor-tabs]', 'handleValueChanged', event);\n const { name, value } = event.detail;\n this.formState = { ...this.formState, [name]: value };\n this.hasUnsavedChanges = true;\n this.error = '';\n }\n\n getFormStateFromConfig(config?: Configuration) {\n const organizerParticipant = config?.participants?.find(p => p.is_organizer);\n return {\n title: config?.event_booking?.title ?? '',\n description: config?.event_booking?.description ?? '',\n duration: config?.availability?.duration_minutes?.toString() ?? '10',\n availability: {\n timezone: config?.event_booking?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n open_hours: organizerParticipant?.availability?.open_hours ?? undefined,\n },\n calendarIds: organizerParticipant?.availability?.calendar_ids ?? [],\n participants: config?.participants ?? [],\n bookingCalendar: organizerParticipant?.booking?.calendar_id ?? organizerParticipant?.email ?? '',\n location: this.selectedConfiguration?.event_booking?.location ?? '',\n bookingType: this.selectedConfiguration?.event_booking?.booking_type ?? 'booking',\n buffer: this.selectedConfiguration?.availability?.availability_rules?.buffer ?? { before: 0, after: 0 },\n availableDaysInFuture: this.selectedConfiguration?.scheduler?.available_days_in_future ?? 30,\n minCancellationNotice: this.selectedConfiguration?.scheduler?.min_cancellation_notice ?? 0,\n };\n }\n\n updateFormState() {\n const formData = new FormData(this.formRef);\n formData.forEach((value, key) => {\n switch (key) {\n case 'title':\n this.formState.title = value.toString();\n break;\n case 'description':\n this.formState.description = value.toString();\n break;\n case 'duration':\n this.formState.duration = value.toString();\n break;\n case 'availability':\n this.formState.availability = JSON.parse(value.toString());\n break;\n case 'participants':\n this.formState.participants = JSON.parse(value.toString());\n break;\n case 'calendars':\n this.formState.calendarIds = value.toString().split(',');\n break;\n case 'booking-calendar':\n this.formState.bookingCalendar = value.toString();\n break;\n case 'location':\n this.formState.location = value.toString();\n break;\n case 'booking-type':\n this.formState.bookingType = value.toString();\n break;\n case 'buffer-time':\n this.formState.buffer = JSON.parse(value.toString());\n break;\n case 'limit-future-bookings':\n this.formState.availableDaysInFuture = parseInt(value.toString());\n break;\n case 'min-cancellation-notice':\n this.formState.minCancellationNotice = parseInt(value.toString());\n break;\n }\n });\n\n this.formState = { ...this.formState };\n return this.formState;\n }\n\n setActiveTab(e: Event, tabName: string) {\n e.preventDefault();\n this.updateFormState();\n this.activeTab = tabName;\n }\n\n setError = (error: Error) => {\n this.error = error.message;\n };\n\n formSubmissionHandler = async (event: Event) => {\n event.preventDefault();\n this.formSubmitted.emit();\n const valid = this.formRef.checkValidity();\n if (!valid) {\n return;\n }\n this.isLoading = true;\n this.hasUnsavedChanges = false;\n const formState = this.updateFormState();\n const { title, description, duration, availability, calendarIds, bookingCalendar, location, bookingType, buffer, availableDaysInFuture, minCancellationNotice } = formState;\n const organizer = this.selectedConfiguration?.participants?.find(p => p.is_organizer);\n const configObject: Partial<Configuration> = {\n ...this.selectedConfiguration,\n version: this.selectedConfiguration?.version ?? '1.0.0',\n availability: {\n duration_minutes: duration ? parseInt(duration) : 0,\n availability_rules: {\n availability_method: this.selectedConfiguration?.availability?.availability_rules?.availability_method ?? 'collective',\n buffer: buffer || { before: 0, after: 0 },\n default_open_hours: this.selectedConfiguration?.availability?.availability_rules?.default_open_hours ?? DEFAULT_OPEN_HOURS,\n round_robin_group_id: this.selectedConfiguration?.availability?.availability_rules?.round_robin_group_id ?? '',\n },\n },\n participants: [\n {\n name: organizer?.name ?? organizer?.email ?? this.currentUser?.name ?? this.currentUser?.email ?? '',\n email: organizer?.email ?? this.currentUser?.email ?? '',\n is_organizer: true,\n availability: {\n calendar_ids: calendarIds?.length ? calendarIds : ['primary'],\n open_hours: availability?.openHours ?? [],\n },\n booking: {\n calendar_id: bookingCalendar && bookingCalendar !== '' ? bookingCalendar : 'primary',\n },\n },\n ],\n event_booking: {\n title: title?.toString() ?? '',\n description: description?.toString() ?? '',\n location: location?.toString() ?? '',\n booking_type: (bookingType?.toString() as BookingType) ?? 'booking',\n timezone: availability?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n },\n scheduler: {\n available_days_in_future: availableDaysInFuture ?? 30,\n min_cancellation_notice: minCancellationNotice ?? 0,\n },\n };\n const resetLoadingState = (_e: CustomEvent) => {\n this.isLoading = false;\n this.changesSaved = true;\n setTimeout(() => {\n this.changesSaved = false;\n }, 5000);\n };\n this.schedulerConfigChanged.emit({ config: configObject, resetLoadingState, setError: this.setError, action: this.action });\n };\n\n @RegisterComponent<NylasEditorTabs, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-editor-tabs',\n stateToProps: new Map([\n ['schedulerConfig.calendars', 'calendars'],\n ['schedulerConfig.selectedConfiguration', 'selectedConfiguration'],\n ['schedulerConfig.currentUser', 'currentUser'],\n ]),\n eventToProps: {\n schedulerConfigChanged: async (event: CustomEvent<SchedulerEventDetail>, nylasSchedulerConfigConnector: NylasSchedulerConfigConnector) => {\n const { resetLoadingState, setError, action, config } = event.detail;\n const checkForErrors = (response: DataResponseReturnType) => {\n const [data, error] = response;\n if (!data && error && setError) {\n setError(error as Error);\n }\n if (resetLoadingState) {\n resetLoadingState(event);\n }\n };\n\n // If we have an ID, we are updating an existing configuration\n if (action === 'edit') {\n const response = await nylasSchedulerConfigConnector.schedulerConfig.updateConfiguration(config);\n checkForErrors(response);\n } else {\n const response = await nylasSchedulerConfigConnector.schedulerConfig.createConfiguration(config);\n checkForErrors(response);\n }\n },\n cancelButtonClick: async (_, nylasSchedulerConfigConnector) => {\n nylasSchedulerConfigConnector.schedulerConfigStore.state.action = null;\n },\n },\n localPropsToProp: new Map([['schedulerPreviewLink', 'schedulerPreviewLink']]),\n fireRegisterEvent: true,\n })\n render() {\n debug('[nylas-editor-tabs]', 'render', this.formState);\n return (\n <Host>\n <form onSubmit={this.formSubmissionHandler} class=\"scheduler-editor\" ref={el => (this.formRef = el as HTMLFormElement)} noValidate>\n {this.mode === 'app' ? (\n <div class=\"form-contents\">\n <div class=\"tabs\">\n <button class={{ tab: true, active: this.activeTab == 'eventInfo' }} onClick={e => this.setActiveTab(e, 'eventInfo')}>\n <calendar-info-icon width=\"16\" height=\"16\" />\n Event Info\n </button>\n <button class={{ tab: true, active: this.activeTab == 'availability' }} onClick={e => this.setActiveTab(e, 'availability')}>\n <calendar-patterns-icon width=\"16\" height=\"16\" />\n Availability\n </button>\n <button class={{ tab: true, active: this.activeTab == 'bookingOptions' }} onClick={e => this.setActiveTab(e, 'bookingOptions')}>\n <flow-icon width=\"16\" height=\"16\" />\n Booking Options\n </button>\n </div>\n <div class=\"tab-content\">\n <TabContents formState={this.formState} activeTab={this.activeTab} calendars={this.calendars} id={this.selectedConfiguration?.id ?? 'new'} />\n </div>\n </div>\n ) : (\n <slot></slot>\n )}\n\n <div class=\"footer\">\n <div class=\"preview\">\n {this.schedulerPreviewLink !== '' && this.action === 'edit' && (\n <button-component\n type=\"button\"\n disabled={this.isLoading}\n clickHandler={event => {\n event.preventDefault();\n const previewEvent = this.previewButtonClicked.emit(this.host);\n if (!previewEvent.defaultPrevented) {\n window.open(parsePreviewLink(this.schedulerPreviewLink, this.selectedConfiguration), '_blank');\n }\n }}\n variant={'basic'}\n >\n Preview\n </button-component>\n )}\n </div>\n <div class=\"buttons\">\n <p\n class={{\n 'unsaved-changes': this.hasUnsavedChanges && !this.changesSaved,\n 'saved-changes': this.changesSaved,\n 'error': this.error !== '',\n 'error-full-width': this.error !== '' && this.action === 'create',\n }}\n >\n {this.error !== '' ? this.error : ''}\n {this.error == '' && this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : this.error == '' && this.changesSaved ? 'Changes saved!' : ''}\n </p>\n <button-component\n type=\"button\"\n disabled={this.isLoading}\n clickHandler={event => {\n event.preventDefault();\n this.cancelButtonClick.emit();\n this.error = '';\n }}\n variant={'basic'}\n >\n Cancel\n </button-component>\n <button-component type=\"submit\" disabled={this.isLoading}>\n {this.isLoading ? (\n <span>\n Saving\n <loading-icon />{' '}\n </span>\n ) : this.action == 'create' ? (\n 'Create'\n ) : (\n 'Save changes'\n )}\n </button-component>\n </div>\n </div>\n </form>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nylas-editor-tabs2.js","mappings":"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","names":[],"sources":["src/components/scheduler-editor/nylas-editor-tabs/tab-contents.tsx","src/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.scss?tag=nylas-editor-tabs&encapsulation=scoped","src/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.tsx"],"sourcesContent":["import { h } from '@stencil/core';\n\nexport type TabContentsProps = {\n id: string;\n formState: any;\n activeTab: string;\n calendars?: any[];\n};\n\nexport default function TabContents({ id, formState, activeTab, calendars }: TabContentsProps) {\n switch (activeTab) {\n case 'eventInfo':\n const eventTitle = formState.title;\n const eventDescription = formState.description;\n const eventDuration = parseInt(formState.duration);\n const location = formState.location;\n // const eventParticipants = formState.participants;\n\n return (\n <div key={id}>\n <nylas-event-info>\n <div slot=\"inputs\">\n <nylas-event-title name=\"title\" eventTitle={eventTitle} exportparts=\"net, net__title, net__dropdown-content\" />\n <nylas-event-duration\n name=\"duration\"\n eventDurationMinutes={eventDuration}\n exportparts=\"ned, ned__input, ned__dropdown, ned__dropdown-button, ned__dropdown-content\"\n />\n <nylas-location-component name=\"location\" eventLocation={location} exportparts=\"nel, nel__location, nel__dropdown, nel__dropdown-button, nel__dropdown-content\" />\n <nylas-event-description name=\"description\" eventDescription={eventDescription} exportparts=\"nedesc, nedesc__textarea\" />\n </div>\n </nylas-event-info>\n {/* <nylas-additional-participants\n name=\"participants\"\n eventParticipants={eventParticipants}\n exportparts={'nap__title, nap__subtitle, nap__content, nap__input_group, nap__input_wrapper, nap__input, nap__remove-participant, nap__add-participant'}\n /> */}\n </div>\n );\n case 'availability':\n const openHours = formState.availability.openHours;\n const timezone = formState.availability.timezone ? formState.availability.timezone : Intl.DateTimeFormat().resolvedOptions().timeZone;\n const organizer = formState.participants?.find(p => p.is_organizer);\n const organizerEmail = organizer?.email ?? 'primary';\n const selectedCalendars = formState.calendarIds.length > 0 ? formState.calendarIds : [organizerEmail];\n const bookingCalendar = formState.bookingCalendar == 'primary' ? organizerEmail : formState.bookingCalendar;\n return (\n <div key={id}>\n <nylas-booking-calendar-picker\n name=\"booking-calendar\"\n calendars={calendars ?? []}\n defaultBookingCalendar={bookingCalendar}\n exportparts={'nbcp, nbcp__header, nbcp__input-label, nbcp__dropdown, nbcp__dropdown-button, nbcp__dropdown-content'}\n />\n <nylas-calendar-picker\n name=\"calendars\"\n calendars={calendars ?? []}\n defaultSelectedCalendars={selectedCalendars}\n exportparts={'ncp ncp__header, ncp__dropdown, ncp__dropdown-button, ncp__dropdown-content'}\n />\n <nylas-availability-picker\n name=\"availability\"\n openHours={openHours}\n defaultTimezone={timezone}\n exportparts={\n 'nap__header, nap__select-timezone, nap__select-timezone-button, nap__select-timezone-dropdown-content, nap__availability, nap__day, nap__time-ranges, nap__time-range, nap__add-time-range, nap__time-picker-container, nap__time-picker-input, nap__time-picker-times'\n }\n />\n </div>\n );\n case 'bookingOptions':\n return (\n <div key={id}>\n <nylas-buffer-time\n name=\"buffer-time\"\n buffer={formState.buffer}\n exportparts={\n 'nbt, nbt__header, nbt__body, nbt__dropdown-before, nbt__dropdown-button-before, nbt__dropdown-content-before, nbt__dropdown-after, nbt__dropdown-button-after, nbt__dropdown-content-after, nbt__preview'\n }\n />\n {/* <nylas-custom-booking-flow\n name=\"booking-type\"\n bookingType={formState.bookingType}\n exportparts={'ncbf, ncbf__header, ncbf__dropdown, ncbf__dropdown-button, ncbf__dropdown-content'}\n /> */}\n <nylas-event-limits>\n <div slot=\"inputs\">\n <nylas-limit-future-bookings\n name=\"limit-future-bookings\"\n availableDaysInFuture={formState.availableDaysInFuture}\n exportparts=\"nlfb, nlfb__number-dropdown, nlfb__number-dropdown-button, nlfb__number-dropdown-content, nlfb__period-dropdown, nlfb__period-dropdown-button, nlfb__period-dropdown-content\"\n />\n <nylas-min-cancellation-notice\n name=\"min-cancellation-notice\"\n minCancellationNotice={formState.minCancellationNotice}\n exportparts=\"nmcn, nmcn__number-dropdown, nmcn__number-dropdown-button, nmcn__number-dropdown-content, nmcn__period-dropdown, nmcn__period-dropdown-button, nmcn__period-dropdown-content\"\n />\n </div>\n </nylas-event-limits>\n </div>\n );\n }\n}\n","@import '../../../common/styles/variables.scss';\n@import '../../../common/mixins/buttons.scss';\n\n:host {\n display: block;\n @include default-css-variables;\n}\n\n.scheduler-editor {\n display: flex;\n flex-direction: column;\n .form-contents {\n height: 554px;\n display: grid;\n grid-template-columns: minmax(224px, 25%) 1fr;\n @media #{$mobile} {\n display: table-column-group;\n height: auto;\n }\n .tabs {\n display: flex;\n flex-direction: column;\n border-right: 1px solid var(--nylas-base-200);\n background-color: var(--nylas-base-25);\n .tab {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.5rem 1rem;\n color: var(--nylas-base-900);\n background: var(--nylas-base-0);\n border: none;\n height: 56px;\n font-family: var(--nylas-font-family);\n font-size: 16px;\n font-weight: 500;\n line-height: 24px;\n cursor: pointer;\n &:not(:first-of-type) {\n margin-top: 0.25rem;\n }\n &.active {\n font-weight: 600;\n background: var(--nylas-base-0);\n color: var(--nylas-primary);\n border-left: 4px solid var(--nylas-primary);\n box-shadow: 0px 1px 2px 0px #0000000f;\n box-shadow: 0px 1px 3px 0px #0000001a;\n }\n }\n }\n .tab-content {\n max-width: 692px;\n overflow-y: auto;\n nylas-event-info,\n nylas-event-limits {\n width: inherit;\n div[slot='inputs'] {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n }\n }\n }\n }\n}\n\n.footer {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 1rem;\n min-height: 80px;\n padding: 0 1rem;\n border-top: 1px solid var(--nylas-base-200);\n @media #{$mobile} {\n flex-direction: column;\n height: auto;\n }\n .preview {\n @media #{$mobile} {\n margin-top: 1rem;\n width: 100%;\n }\n }\n .buttons {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n justify-self: flex-end;\n gap: 1rem;\n @media #{$mobile} {\n flex-direction: column-reverse;\n width: 100%;\n }\n p {\n max-width: 524px;\n &.unsaved-changes {\n color: var(--nylas-base-600);\n }\n &.saved-changes {\n color: var(--nylas-success);\n }\n &.error {\n color: var(--nylas-error);\n }\n &.error-full-width {\n max-width: 660px;\n }\n }\n\n button-component {\n @media #{$mobile} {\n width: 100%;\n }\n }\n button {\n @include primary-button;\n width: 148px;\n span {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug, mergeDeep, parsePreviewLink } from '@/utils/utils';\nimport { BookingType, Calendar, Configuration, OpenHours } from '@nylas/core';\nimport { Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport TabContents from './tab-contents';\nimport { User } from '@/common/nylas-api-request';\nimport { DEFAULT_OPEN_HOURS } from '@/common/constants';\nimport { DataResponseReturnType } from '@/common/types';\n\ntype SchedulerEventDetail = {\n config: Partial<Configuration>;\n action: 'create' | 'edit';\n resetLoadingState?: (e: CustomEvent) => void;\n setError?: (error: Error) => void;\n};\n\n/**\n * The `nylas-editor-tabs` component is a UI component that displays the editor tabs for the scheduler editor.\n * @part nap__title - [nylas-additional-participants] The title of the component.\n * @part nap__subtitle - [nylas-additional-participants] The subtitle of the component.\n * @part nap__content - [nylas-additional-participants] The content of the component.\n * @part nap__input - [nylas-additional-participants] The input of the component.\n * @part nap__remove-participant - [nylas-additional-participants] The remove participant button of the component.\n * @part nap__add-participant - [nylas-additional-participants] The add participant button of the component.\n * @part nap__header - [nylas-availability-picker] The header of the availability picker\n * @part nap__select-timezone - [nylas-availability-picker] The timezone selection container\n * @part nap__select-timezone-button -[nylas-availability-picker] The timezone selection button\n * @part nap__select-timezone-dropdown-content -[nylas-availability-picker] The timezone selection dropdown content\n * @part nap__availability - [nylas-availability-picker] The availability container\n * @part nap__day - [nylas-availability-picker] The day container\n * @part nap__time-ranges - [nylas-availability-picker] The time ranges container\n * @part nap__time-range - [nylas-availability-picker] The time range container\n * @part nap__add-time-range - [nylas-availability-picker] The add time range button\n * @part nap__time-picker-container -[nylas-availability-picker] The time picker container\n * @part nap__time-picker-input - [nylas-availability-picker] The time picker input\n * @part nap__time-picker-times - [nylas-availability-picker] The time picker times\n * @part nbcp - [nylas-booking-calendar-picker] The booking calendar picker container\n * @part nbcp__header - [nylas-booking-calendar-picker] The header of the booking calendar picker\n * @part nbcp__input-label - [nylas-booking-calendar-picker] The input label of the booking calendar picker\n * @part nbcp__dropdown - [nylas-booking-calendar-picker] The dropdown container\n * @part nbcp__dropdown-button - [nylas-booking-calendar-picker] The dropdown button\n * @part nbcp__dropdown-content - [nylas-booking-calendar-picker] The dropdown content\n * @part nbt - [nylas-buffer-time] The buffer time container\n * @part nbt__header - [nylas-buffer-time] The header of the buffer time\n * @part nbt__body - [nylas-buffer-time] The body of the buffer time\n * @part nbt__dropdown-before - [nylas-buffer-time] The before buffer dropdown container\n * @part nbt__dropdown-button-before - [nylas-buffer-time] The before buffer dropdown button\n * @part nbt__dropdown-content-before - [nylas-buffer-time] The before buffer dropdown content\n * @part nbt__dropdown-after - [nylas-buffer-time] The after buffer dropdown container\n * @part nbt__dropdown-button-after - [nylas-buffer-time] The after buffer dropdown button\n * @part nbt__dropdown-content-after - [nylas-buffer-time] The after buffer dropdown content\n * @part nbt__preview - [nylas-buffer-time] The buffer time preview\n * @part ncp - [nylas-calendar-picker] The calendar picker container\n * @part ncp__header - [nylas-calendar-picker] The header of the calendar picker\n * @part ncp__dropdown - [nylas-calendar-picker] The dropdown container\n * @part ncp__dropdown-button - [nylas-calendar-picker] The dropdown button\n * @part ncp__dropdown-content - [nylas-calendar-picker] The dropdown content\n * @part ncbf - [nylas-custom-booking-flow] The custom booking flow container\n * @part ncbf__header - [nylas-custom-booking-flow] The header of the custom booking flow\n * @part ncbf__dropdown - [nylas-custom-booking-flow] The dropdown container\n * @part ncbf__dropdown-button - [nylas-custom-booking-flow] The dropdown button\n * @part ncbf__dropdown-content - [nylas-custom-booking-flow] The dropdown content\n * @part nedesc - [nylas-event-description] The event description container\n * @part nedesc__textarea - [nylas-event-description] The event description textarea\n * @part ned - [nylas-event-duration] The event duration container\n * @part ned__input - [nylas-event-duration] The event duration input\n * @part ned__dropdown - [nylas-event-duration] The event duration dropdown\n * @part ned__dropdown-button - [nylas-event-duration] The event duration dropdown button\n * @part ned__dropdown-content - [nylas-event-duration] The event duration dropdown content\n * @part net - [nylas-event-title] The event title container\n * @part net__title - [nylas-event-title] The event title input\n * @part net__dropdown-content - [nylas-event-title] The token options container\n * @part nlfb - [nylas-limit-future-bookings] The limit future bookings container\n * @part nlfb__number-dropdown - [nylas-limit-future-bookings] The number dropdown container\n * @part nlfb__number-dropdown-button - [nylas-limit-future-bookings] The number dropdown button\n * @part nlfb__number-dropdown-content - [nylas-limit-future-bookings] The number dropdown content\n * @part nlfb__period-dropdown - [nylas-limit-future-bookings] The period dropdown container\n * @part nlfb__period-dropdown-button - [nylas-limit-future-bookings] The period dropdown button\n * @part nlfb__period-dropdown-content - [nylas-limit-future-bookings] The period dropdown content\n * @part nel - [nylas-location-component] The event location container\n * @part nel__location - [nylas-location-component] The event location input\n * @part nel__dropdown - [nylas-location-component] The dropdown container\n * @part nel__dropdown-button - [nylas-location-component] The dropdown button\n * @part nel__dropdown-content - [nylas-location-component] The dropdown content\n * @part nmcn - [nylas-min-cancellation-notice] The minimum cancellation notice container\n * @part nmcn__number-dropdown - [nylas-min-cancellation-notice] The number dropdown container\n * @part nmcn__number-dropdown-button - [nylas-min-cancellation-notice] The number dropdown button\n * @part nmcn__number-dropdown-content - [nylas-min-cancellation-notice] The number dropdown content\n * @part nmcn__period-dropdown - [nylas-min-cancellation-notice] The period dropdown container\n * @part nmcn__period-dropdown-button - [nylas-min-cancellation-notice] The period dropdown button\n * @part nmcn__period-dropdown-content - [nylas-min-cancellation-notice] The period dropdown content\n */\n@Component({\n tag: 'nylas-editor-tabs',\n styleUrl: 'nylas-editor-tabs.scss',\n scoped: true,\n})\nexport class NylasEditorTabs {\n /**\n * The form reference to access the form data.\n */\n private formRef!: HTMLFormElement;\n /**\n * The host element.\n */\n @Element() host!: HTMLNylasEditorTabsElement;\n /**\n * The list of calendars to use in the editor when configuring availability.\n */\n @Prop() calendars?: Calendar[];\n /**\n * The selected configuration to use in the editor when editing an existing configuration or creating a new one.\n */\n @Prop() selectedConfiguration?: Configuration;\n /**\n * The default require session auth flag to used to set the default value for the requireSessionAuth\n * property when creating a configuration. If set to true, then a session token must be provided\n * to the <nylas-scheduling/> component. If set to false, then a session token is not required\n * and the configuration id can passed to the <nylas-scheduling/> component instead.\n */\n @Prop() defaultRequiresSessionAuth: boolean = true;\n /**\n * The current user to use in the editor.\n */\n @Prop() currentUser?: User;\n /**\n * The scheduler preview link to use when the user clicks on the preview button.\n * You can use a placeholder `{config.id}` to replace the configuration id anywhere in the link.\n */\n @Prop({ attribute: 'scheduler-preview-link' }) schedulerPreviewLink: string = '';\n /**\n * The mode of the editor.\n * - `app`: The editor is used as a standalone app.\n * - `composable`: The editor is used as a composable component.\n */\n @Prop() mode?: 'app' | 'composable' = 'app';\n /**\n * The action to perform in the editor.\n * - `create`: Create a new configuration.\n * - `edit`: Edit an existing configuration.\n */\n @State() action: 'create' | 'edit' = 'create';\n /**\n * The active tab in the editor.\n */\n @State() activeTab: string = 'eventInfo';\n /**\n * The loading state of the editor.\n */\n @State() isLoading: boolean = false;\n /**\n * The unsaved changes state of the editor.\n */\n @State() hasUnsavedChanges: boolean = false;\n /**\n * The changes saved state of the editor.\n */\n @State() changesSaved: boolean = false;\n /**\n * The form state of the editor.\n */\n @State() formState: Partial<{\n title: string;\n description: string;\n duration: string;\n availability?: {\n timezone: string;\n openHours?: OpenHours[];\n };\n calendarIds: string[];\n participants?: any[];\n bookingCalendar?: string;\n location?: string;\n bookingType?: string;\n buffer?: { before: number; after: number };\n availableDaysInFuture?: number;\n minCancellationNotice?: number;\n }> = {};\n /**\n * The error state of the editor.\n */\n @State() error?: string = '';\n /**\n * Event emitted when the configuration is changed.\n */\n @Event() schedulerConfigChanged!: EventEmitter<SchedulerEventDetail>;\n /**\n * Event emitted when the user clicks the cancel button.\n */\n @Event() cancelButtonClick!: EventEmitter<void>;\n /**\n * Event emitted on form submission.\n */\n @Event() formSubmitted!: EventEmitter<void>;\n /**\n * Event emitted when the user clicks the cancel button.\n */\n @Event() previewButtonClicked!: EventEmitter<HTMLNylasEditorTabsElement>;\n\n @Watch('selectedConfiguration')\n configChangedHandler(newConfig: Configuration) {\n debug('[nylas-editor-tabs]', 'configChangedHandler', newConfig, this.selectedConfiguration);\n this.formState = {\n ...this.getFormStateFromConfig(newConfig),\n };\n\n if (newConfig.id) {\n this.action = 'edit';\n } else {\n this.action = 'create';\n }\n }\n\n connectedCallback() {\n debug('[nylas-editor-tabs]', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('[nylas-editor-tabs]', 'componentWillLoad');\n this.formState = this.getFormStateFromConfig(this.selectedConfiguration);\n }\n\n componentDidLoad() {\n debug('[nylas-editor-tabs]', 'componentDidLoad');\n }\n\n disconnectedCallback() {\n debug('[nylas-editor-tabs]', 'disconnectedCallback');\n }\n\n @Listen('valueChanged')\n handleValueChanged(event: CustomEvent) {\n debug('[nylas-editor-tabs]', 'handleValueChanged', event);\n const { name, value } = event.detail;\n this.formState = { ...this.formState, [name]: value };\n this.hasUnsavedChanges = true;\n this.error = '';\n }\n\n getFormStateFromConfig(config?: Configuration) {\n const organizerParticipant = config?.participants?.find(p => p.is_organizer);\n return {\n title: config?.event_booking?.title ?? '',\n description: config?.event_booking?.description ?? '',\n duration: config?.availability?.duration_minutes?.toString() ?? '10',\n availability: {\n timezone: config?.event_booking?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n open_hours: organizerParticipant?.availability?.open_hours ?? undefined,\n },\n calendarIds: organizerParticipant?.availability?.calendar_ids ?? [],\n participants: config?.participants ?? [],\n bookingCalendar: organizerParticipant?.booking?.calendar_id ?? organizerParticipant?.email ?? '',\n location: this.selectedConfiguration?.event_booking?.location ?? '',\n bookingType: this.selectedConfiguration?.event_booking?.booking_type ?? 'booking',\n buffer: this.selectedConfiguration?.availability?.availability_rules?.buffer ?? { before: 0, after: 0 },\n availableDaysInFuture: this.selectedConfiguration?.scheduler?.available_days_in_future ?? 30,\n minCancellationNotice: this.selectedConfiguration?.scheduler?.min_cancellation_notice ?? 0,\n };\n }\n\n updateFormState() {\n const formData = new FormData(this.formRef);\n formData.forEach((value, key) => {\n switch (key) {\n case 'title':\n this.formState.title = value.toString();\n break;\n case 'description':\n this.formState.description = value.toString();\n break;\n case 'duration':\n this.formState.duration = value.toString();\n break;\n case 'availability':\n this.formState.availability = JSON.parse(value.toString());\n break;\n case 'participants':\n this.formState.participants = JSON.parse(value.toString());\n break;\n case 'calendars':\n this.formState.calendarIds = value.toString().split(',');\n break;\n case 'booking-calendar':\n this.formState.bookingCalendar = value.toString();\n break;\n case 'location':\n this.formState.location = value.toString();\n break;\n case 'booking-type':\n this.formState.bookingType = value.toString();\n break;\n case 'buffer-time':\n this.formState.buffer = JSON.parse(value.toString());\n break;\n case 'limit-future-bookings':\n this.formState.availableDaysInFuture = parseInt(value.toString());\n break;\n case 'min-cancellation-notice':\n this.formState.minCancellationNotice = parseInt(value.toString());\n break;\n }\n });\n\n this.formState = { ...this.formState };\n return this.formState;\n }\n\n setActiveTab(e: Event, tabName: string) {\n e.preventDefault();\n this.updateFormState();\n this.activeTab = tabName;\n }\n\n setError = (error: Error) => {\n this.error = error.message;\n };\n\n formSubmissionHandler = async (event: Event) => {\n event.preventDefault();\n this.formSubmitted.emit();\n const valid = this.formRef.checkValidity();\n if (!valid) {\n return;\n }\n this.isLoading = true;\n this.hasUnsavedChanges = false;\n const formState = this.updateFormState();\n const { title, description, duration, availability, calendarIds, bookingCalendar, location, bookingType, buffer, availableDaysInFuture, minCancellationNotice } = formState;\n const organizer = this.selectedConfiguration?.participants?.find(p => p.is_organizer);\n const configObject: Partial<Configuration> = {\n ...(this.selectedConfiguration?.id && { id: this.selectedConfiguration.id }),\n version: this.selectedConfiguration?.version ?? '1.0.0',\n availability: {\n duration_minutes: duration ? parseInt(duration) : 0,\n availability_rules: {\n availability_method: this.selectedConfiguration?.availability?.availability_rules?.availability_method ?? 'collective',\n buffer: buffer || { before: 0, after: 0 },\n default_open_hours: this.selectedConfiguration?.availability?.availability_rules?.default_open_hours ?? DEFAULT_OPEN_HOURS,\n round_robin_group_id: this.selectedConfiguration?.availability?.availability_rules?.round_robin_group_id ?? '',\n },\n },\n participants: [\n {\n name: organizer?.name ?? organizer?.email ?? this.currentUser?.name ?? this.currentUser?.email ?? '',\n email: organizer?.email ?? this.currentUser?.email ?? '',\n is_organizer: true,\n availability: {\n calendar_ids: calendarIds?.length ? calendarIds : ['primary'],\n open_hours: availability?.openHours ?? [],\n },\n booking: {\n calendar_id: bookingCalendar && bookingCalendar !== '' ? bookingCalendar : 'primary',\n },\n },\n ],\n event_booking: {\n title: title?.toString() ?? '',\n description: description?.toString() ?? '',\n location: location?.toString() ?? '',\n booking_type: (bookingType?.toString() as BookingType) ?? 'booking',\n timezone: availability?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n },\n scheduler: {\n available_days_in_future: availableDaysInFuture ?? 30,\n min_cancellation_notice: minCancellationNotice ?? 0,\n },\n };\n\n const configObjectWithDeveloperSettings = mergeDeep(configObject, this.selectedConfiguration);\n // Set the requires_session_auth flag to the default value for new configurations\n configObjectWithDeveloperSettings.requires_session_auth = this.defaultRequiresSessionAuth;\n\n const finalConfig = this.action === 'create' ? configObjectWithDeveloperSettings : configObject;\n\n const resetLoadingState = (_e: CustomEvent) => {\n this.isLoading = false;\n this.changesSaved = true;\n setTimeout(() => {\n this.changesSaved = false;\n }, 5000);\n };\n this.schedulerConfigChanged.emit({ config: finalConfig, resetLoadingState, setError: this.setError, action: this.action });\n };\n\n @RegisterComponent<NylasEditorTabs, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-editor-tabs',\n stateToProps: new Map([\n ['schedulerConfig.calendars', 'calendars'],\n ['schedulerConfig.selectedConfiguration', 'selectedConfiguration'],\n ['schedulerConfig.currentUser', 'currentUser'],\n ]),\n eventToProps: {\n schedulerConfigChanged: async (event: CustomEvent<SchedulerEventDetail>, nylasSchedulerConfigConnector: NylasSchedulerConfigConnector) => {\n const { resetLoadingState, setError, action, config } = event.detail;\n const checkForErrors = (response: DataResponseReturnType) => {\n const [data, error] = response;\n if (!data && error && setError) {\n setError(error as Error);\n }\n if (resetLoadingState) {\n resetLoadingState(event);\n }\n };\n\n // If we have an ID, we are updating an existing configuration\n if (action === 'edit') {\n const response = await nylasSchedulerConfigConnector.schedulerConfig.updateConfiguration(config);\n checkForErrors(response);\n } else {\n const response = await nylasSchedulerConfigConnector.schedulerConfig.createConfiguration(config);\n checkForErrors(response);\n }\n },\n cancelButtonClick: async (_, nylasSchedulerConfigConnector) => {\n nylasSchedulerConfigConnector.schedulerConfigStore.state.action = null;\n },\n },\n localPropsToProp: new Map([\n ['schedulerPreviewLink', 'schedulerPreviewLink'],\n ['defaultRequiresSessionAuth', 'defaultRequiresSessionAuth'],\n ]),\n fireRegisterEvent: true,\n })\n render() {\n debug('[nylas-editor-tabs]', 'render', this.formState);\n return (\n <Host>\n <form onSubmit={this.formSubmissionHandler} class=\"scheduler-editor\" ref={el => (this.formRef = el as HTMLFormElement)} noValidate>\n {this.mode === 'app' ? (\n <div class=\"form-contents\">\n <div class=\"tabs\">\n <button class={{ tab: true, active: this.activeTab == 'eventInfo' }} onClick={e => this.setActiveTab(e, 'eventInfo')}>\n <calendar-info-icon width=\"16\" height=\"16\" />\n Event Info\n </button>\n <button class={{ tab: true, active: this.activeTab == 'availability' }} onClick={e => this.setActiveTab(e, 'availability')}>\n <calendar-patterns-icon width=\"16\" height=\"16\" />\n Availability\n </button>\n <button class={{ tab: true, active: this.activeTab == 'bookingOptions' }} onClick={e => this.setActiveTab(e, 'bookingOptions')}>\n <flow-icon width=\"16\" height=\"16\" />\n Booking Options\n </button>\n </div>\n <div class=\"tab-content\">\n <TabContents formState={this.formState} activeTab={this.activeTab} calendars={this.calendars} id={this.selectedConfiguration?.id ?? 'new'} />\n </div>\n </div>\n ) : (\n <slot></slot>\n )}\n\n <div class=\"footer\">\n <div class=\"preview\">\n {this.schedulerPreviewLink !== '' && this.action === 'edit' && (\n <button-component\n type=\"button\"\n disabled={this.isLoading}\n clickHandler={event => {\n event.preventDefault();\n const previewEvent = this.previewButtonClicked.emit(this.host);\n if (!previewEvent.defaultPrevented) {\n window.open(parsePreviewLink(this.schedulerPreviewLink, this.selectedConfiguration), '_blank');\n }\n }}\n variant={'basic'}\n >\n Preview\n </button-component>\n )}\n </div>\n <div class=\"buttons\">\n <p\n class={{\n 'unsaved-changes': this.hasUnsavedChanges && !this.changesSaved,\n 'saved-changes': this.changesSaved,\n 'error': this.error !== '',\n 'error-full-width': this.error !== '' && this.action === 'create',\n }}\n >\n {this.error !== '' ? this.error : ''}\n {this.error == '' && this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : this.error == '' && this.changesSaved ? 'Changes saved!' : ''}\n </p>\n <button-component\n type=\"button\"\n disabled={this.isLoading}\n clickHandler={event => {\n event.preventDefault();\n this.cancelButtonClick.emit();\n this.error = '';\n }}\n variant={'basic'}\n >\n Cancel\n </button-component>\n <button-component type=\"submit\" disabled={this.isLoading}>\n {this.isLoading ? (\n <span>\n Saving\n <loading-icon />{' '}\n </span>\n ) : this.action == 'create' ? (\n 'Create'\n ) : (\n 'Save changes'\n )}\n </button-component>\n </div>\n </div>\n </form>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -39,7 +39,7 @@ const NylasEventInfo = proxyCustomElement(class NylasEventInfo extends HTMLEleme
39
39
  debug('nylas-event-info', 'disconnectedCallback');
40
40
  }
41
41
  render() {
42
- return (h(Host, { key: '73cf50f7f006fed6b41256b3f83c6a549f6919f8' }, h("nylas-form-card", { key: 'f34f24881a48a3af65e665693548388a9cbebb5f' }, h("h1", { key: '5e6ff9922a926b74bbaafe8502bae2724bd6ee3a', slot: "header-title", class: "nylas-event-info__title" }, "Event information"), h("h3", { key: '2a127a2206f7dec1b1cc93804588a8b96a893f83', slot: "header-subtitle", class: "nylas-event-info__subtitle" }, "Enter all event information."), h("div", { key: 'b3dcd7ddb2bbb278327ca059e1d8fce793645a47', slot: "content", class: "nylas-event-info__content" }, h("slot", { key: '7868be55755715b91a591f92225f13aeb5dbf00d', name: "inputs" })))));
42
+ return (h(Host, { key: '457f3d049f6a14d618ef40112be0edee12d65a2d' }, h("nylas-form-card", { key: 'b44f094aa09d25ca21a04181d1ae6e66d0a85610' }, h("h1", { key: '60ce63fea2cb8871a7680b903af74aca3b6a65ca', slot: "header-title", class: "nylas-event-info__title" }, "Event information"), h("h3", { key: '174984461cc3acfe3fca921f8578f9066405f209', slot: "header-subtitle", class: "nylas-event-info__subtitle" }, "Enter all event information."), h("div", { key: '7b256c5bf099d277450242fae4b8d7d866249ef8', slot: "content", class: "nylas-event-info__content" }, h("slot", { key: '429339b55f9f729202d37e1bf1ffc39f851545ba', name: "inputs" })))));
43
43
  }
44
44
  static get formAssociated() { return true; }
45
45
  static get style() { return nylasEventInfoCss; }
@@ -1 +1 @@
1
- {"file":"nylas-event-info2.js","mappings":";;;;;AAAA,MAAM,iBAAiB,GAAG,ilCAAilC;;;;;;;;;;;;;;;;MCgB9lC,cAAc;;;;;;;IAGzB,iBAAiB;QACf,KAAK,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;KAChD;IAED,iBAAiB;QACf,KAAK,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;KAChD;IAED,gBAAgB;QACd,KAAK,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;KAC/C;IAED,oBAAoB;QAClB,KAAK,CAAC,kBAAkB,EAAE,sBAAsB,CAAC,CAAC;KACnD;IAOD,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,0EACE,2DAAI,IAAI,EAAC,cAAc,EAAC,KAAK,EAAC,yBAAyB,wBAElD,EACL,2DAAI,IAAI,EAAC,iBAAiB,EAAC,KAAK,EAAC,4BAA4B,mCAExD,EACL,4DAAK,IAAI,EAAC,SAAS,EAAC,KAAK,EAAC,2BAA2B,IACnD,6DAAM,IAAI,EAAC,QAAQ,GAAQ,CACvB,CACU,CACb,EACP;KACH;;;;AAhBD;IALC,iBAAiB,CAAoG;QACpH,IAAI,EAAE,kBAAkB;QACxB,YAAY,EAAE,EAAE;QAChB,iBAAiB,EAAE,IAAI;KACxB,CAAC;;;;4CAiBD;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/scheduler-editor/nylas-event-info/nylas-event-info.scss?tag=nylas-event-info&encapsulation=shadow","src/components/scheduler-editor/nylas-event-info/nylas-event-info.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n\n:host {\n display: block;\n margin: 1rem;\n @include default-css-variables;\n}\n\n.nylas-event-info__title {\n color: var(--nylas-base-900);\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px; /* 125% */\n margin: 0;\n text-align: left;\n}\n.nylas-event-info__subtitle {\n color: var(--nylas-base-600);\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px; /* 142.857% */\n margin: 0.25rem 0px 0px;\n text-align: left;\n}\n.nylas-event-info__content {\n padding: 1rem;\n display: flex;\n flex-direction: column;\n gap: 1rem;\n}\n\n.nylas-event-info__block {\n display: flex;\n justify-content: space-between;\n gap: 0.5rem;\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { AttachInternals, Component, Host, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\n\n/**\n * The `nylas-event-info` component is a input form for the event information.\n * ```\n */\n@Component({\n tag: 'nylas-event-info',\n styleUrl: 'nylas-event-info.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasEventInfo {\n @AttachInternals() internals!: ElementInternals;\n\n connectedCallback() {\n debug('nylas-event-info', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-event-info', 'componentWillLoad');\n }\n\n componentDidLoad() {\n debug('nylas-event-info', 'componentDidLoad');\n }\n\n disconnectedCallback() {\n debug('nylas-event-info', 'disconnectedCallback');\n }\n\n @RegisterComponent<NylasEventInfo, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-event-info',\n eventToProps: {},\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <nylas-form-card>\n <h1 slot=\"header-title\" class=\"nylas-event-info__title\">\n Event information\n </h1>\n <h3 slot=\"header-subtitle\" class=\"nylas-event-info__subtitle\">\n Enter all event information.\n </h3>\n <div slot=\"content\" class=\"nylas-event-info__content\">\n <slot name=\"inputs\"></slot>\n </div>\n </nylas-form-card>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nylas-event-info2.js","mappings":";;;;;AAAA,MAAM,iBAAiB,GAAG,ilCAAilC;;;;;;;;;;;;;;;;MCe9lC,cAAc;;;;;;;IAGzB,iBAAiB;QACf,KAAK,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;KAChD;IAED,iBAAiB;QACf,KAAK,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;KAChD;IAED,gBAAgB;QACd,KAAK,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;KAC/C;IAED,oBAAoB;QAClB,KAAK,CAAC,kBAAkB,EAAE,sBAAsB,CAAC,CAAC;KACnD;IAOD,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,0EACE,2DAAI,IAAI,EAAC,cAAc,EAAC,KAAK,EAAC,yBAAyB,wBAElD,EACL,2DAAI,IAAI,EAAC,iBAAiB,EAAC,KAAK,EAAC,4BAA4B,mCAExD,EACL,4DAAK,IAAI,EAAC,SAAS,EAAC,KAAK,EAAC,2BAA2B,IACnD,6DAAM,IAAI,EAAC,QAAQ,GAAQ,CACvB,CACU,CACb,EACP;KACH;;;;AAhBD;IALC,iBAAiB,CAAoG;QACpH,IAAI,EAAE,kBAAkB;QACxB,YAAY,EAAE,EAAE;QAChB,iBAAiB,EAAE,IAAI;KACxB,CAAC;;;;4CAiBD;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/scheduler-editor/nylas-event-info/nylas-event-info.scss?tag=nylas-event-info&encapsulation=shadow","src/components/scheduler-editor/nylas-event-info/nylas-event-info.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n\n:host {\n display: block;\n margin: 1rem;\n @include default-css-variables;\n}\n\n.nylas-event-info__title {\n color: var(--nylas-base-900);\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px; /* 125% */\n margin: 0;\n text-align: left;\n}\n.nylas-event-info__subtitle {\n color: var(--nylas-base-600);\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px; /* 142.857% */\n margin: 0.25rem 0px 0px;\n text-align: left;\n}\n.nylas-event-info__content {\n padding: 1rem;\n display: flex;\n flex-direction: column;\n gap: 1rem;\n}\n\n.nylas-event-info__block {\n display: flex;\n justify-content: space-between;\n gap: 0.5rem;\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { AttachInternals, Component, Host, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\n\n/**\n * The `nylas-event-info` component is a input form for the event information.\n */\n@Component({\n tag: 'nylas-event-info',\n styleUrl: 'nylas-event-info.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasEventInfo {\n @AttachInternals() internals!: ElementInternals;\n\n connectedCallback() {\n debug('nylas-event-info', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-event-info', 'componentWillLoad');\n }\n\n componentDidLoad() {\n debug('nylas-event-info', 'componentDidLoad');\n }\n\n disconnectedCallback() {\n debug('nylas-event-info', 'disconnectedCallback');\n }\n\n @RegisterComponent<NylasEventInfo, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-event-info',\n eventToProps: {},\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <nylas-form-card>\n <h1 slot=\"header-title\" class=\"nylas-event-info__title\">\n Event information\n </h1>\n <h3 slot=\"header-subtitle\" class=\"nylas-event-info__subtitle\">\n Enter all event information.\n </h3>\n <div slot=\"content\" class=\"nylas-event-info__content\">\n <slot name=\"inputs\"></slot>\n </div>\n </nylas-form-card>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -39,7 +39,7 @@ const NylasEventLimits = proxyCustomElement(class NylasEventLimits extends HTMLE
39
39
  debug('nylas-event-limits', 'disconnectedCallback');
40
40
  }
41
41
  render() {
42
- return (h(Host, { key: '2cc9ace0192971cd75683313d64f3ef06d400136' }, h("nylas-form-card", { key: 'cbca7bb803781e3c93a85c73e56e762f9daa2f9d' }, h("h1", { key: '5a55b7edf422b59b251c2df6d9cf174d83c012eb', slot: "header-title", class: "nylas-event-limits__title" }, "Set event limits"), h("h3", { key: '70415910cf84c503291373387bdab5c6da95e091', slot: "header-subtitle", class: "nylas-event-limits__subtitle" }, "Customize event limits for the event."), h("div", { key: '0735659855b9ad599c70dc8045e2477b853571e6', slot: "content", class: "nylas-event-limits__content" }, h("slot", { key: 'a35e9bcc861998b14d5bbf630d6c1fcbd038fbdf', name: "inputs" })))));
42
+ return (h(Host, { key: '5842b0e121d5e2939d95ae584eb70ef7cbae6b1f' }, h("nylas-form-card", { key: '57141d607074889e5daa1b00ff124cbb4fbfd33d' }, h("h1", { key: '4be5625d740dd7f04d50151ff1af48d175262ec9', slot: "header-title", class: "nylas-event-limits__title" }, "Set event limits"), h("h3", { key: '6eb7607dcaf1e7bc344a5fd06ff5555543927aa7', slot: "header-subtitle", class: "nylas-event-limits__subtitle" }, "Customize event limits for the event."), h("div", { key: 'b3ca5e1a7d63a3d4b79be46536f19a22ec54e95e', slot: "content", class: "nylas-event-limits__content" }, h("slot", { key: '452c3dce511c89c4e07fd54bf325264d686c83d6', name: "inputs" })))));
43
43
  }
44
44
  static get formAssociated() { return true; }
45
45
  static get style() { return nylasEventLimitsCss; }
@@ -1 +1 @@
1
- {"file":"nylas-event-limits2.js","mappings":";;;;;AAAA,MAAM,mBAAmB,GAAG,ylCAAylC;;;;;;;;;;;;;;;;MCgBxmC,gBAAgB;;;;;;;IAG3B,iBAAiB;QACf,KAAK,CAAC,oBAAoB,EAAE,mBAAmB,CAAC,CAAC;KAClD;IAED,iBAAiB;QACf,KAAK,CAAC,oBAAoB,EAAE,mBAAmB,CAAC,CAAC;KAClD;IAED,gBAAgB;QACd,KAAK,CAAC,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;KACjD;IAED,oBAAoB;QAClB,KAAK,CAAC,oBAAoB,EAAE,sBAAsB,CAAC,CAAC;KACrD;IAOD,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,0EACE,2DAAI,IAAI,EAAC,cAAc,EAAC,KAAK,EAAC,2BAA2B,uBAEpD,EACL,2DAAI,IAAI,EAAC,iBAAiB,EAAC,KAAK,EAAC,8BAA8B,4CAE1D,EACL,4DAAK,IAAI,EAAC,SAAS,EAAC,KAAK,EAAC,6BAA6B,IACrD,6DAAM,IAAI,EAAC,QAAQ,GAAQ,CACvB,CACU,CACb,EACP;KACH;;;;AAhBD;IALC,iBAAiB,CAAsG;QACtH,IAAI,EAAE,oBAAoB;QAC1B,YAAY,EAAE,EAAE;QAChB,iBAAiB,EAAE,IAAI;KACxB,CAAC;;;;8CAiBD;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/scheduler-editor/nylas-event-limits/nylas-event-limits.scss?tag=nylas-event-limits&encapsulation=shadow","src/components/scheduler-editor/nylas-event-limits/nylas-event-limits.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n\n:host {\n display: block;\n margin: 1rem;\n @include default-css-variables;\n}\n\n.nylas-event-limits__title {\n color: var(--nylas-base-900);\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px; /* 125% */\n margin: 0;\n text-align: left;\n}\n.nylas-event-limits__subtitle {\n color: var(--nylas-base-600);\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px; /* 142.857% */\n margin: 0.25rem 0px 0px;\n text-align: left;\n}\n.nylas-event-limits__content {\n padding: 1rem;\n display: flex;\n flex-direction: column;\n gap: 1rem;\n}\n\n.nylas-event-limits__block {\n display: flex;\n justify-content: space-between;\n gap: 0.5rem;\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { AttachInternals, Component, Host, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\n\n/**\n * The `nylas-event-limits` component is a input form for the event information.\n * ```\n */\n@Component({\n tag: 'nylas-event-limits',\n styleUrl: 'nylas-event-limits.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasEventLimits {\n @AttachInternals() internals!: ElementInternals;\n\n connectedCallback() {\n debug('nylas-event-limits', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-event-limits', 'componentWillLoad');\n }\n\n componentDidLoad() {\n debug('nylas-event-limits', 'componentDidLoad');\n }\n\n disconnectedCallback() {\n debug('nylas-event-limits', 'disconnectedCallback');\n }\n\n @RegisterComponent<NylasEventLimits, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-event-limits',\n eventToProps: {},\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <nylas-form-card>\n <h1 slot=\"header-title\" class=\"nylas-event-limits__title\">\n Set event limits\n </h1>\n <h3 slot=\"header-subtitle\" class=\"nylas-event-limits__subtitle\">\n Customize event limits for the event.\n </h3>\n <div slot=\"content\" class=\"nylas-event-limits__content\">\n <slot name=\"inputs\"></slot>\n </div>\n </nylas-form-card>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nylas-event-limits2.js","mappings":";;;;;AAAA,MAAM,mBAAmB,GAAG,ylCAAylC;;;;;;;;;;;;;;;;MCexmC,gBAAgB;;;;;;;IAG3B,iBAAiB;QACf,KAAK,CAAC,oBAAoB,EAAE,mBAAmB,CAAC,CAAC;KAClD;IAED,iBAAiB;QACf,KAAK,CAAC,oBAAoB,EAAE,mBAAmB,CAAC,CAAC;KAClD;IAED,gBAAgB;QACd,KAAK,CAAC,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;KACjD;IAED,oBAAoB;QAClB,KAAK,CAAC,oBAAoB,EAAE,sBAAsB,CAAC,CAAC;KACrD;IAOD,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,0EACE,2DAAI,IAAI,EAAC,cAAc,EAAC,KAAK,EAAC,2BAA2B,uBAEpD,EACL,2DAAI,IAAI,EAAC,iBAAiB,EAAC,KAAK,EAAC,8BAA8B,4CAE1D,EACL,4DAAK,IAAI,EAAC,SAAS,EAAC,KAAK,EAAC,6BAA6B,IACrD,6DAAM,IAAI,EAAC,QAAQ,GAAQ,CACvB,CACU,CACb,EACP;KACH;;;;AAhBD;IALC,iBAAiB,CAAsG;QACtH,IAAI,EAAE,oBAAoB;QAC1B,YAAY,EAAE,EAAE;QAChB,iBAAiB,EAAE,IAAI;KACxB,CAAC;;;;8CAiBD;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/scheduler-editor/nylas-event-limits/nylas-event-limits.scss?tag=nylas-event-limits&encapsulation=shadow","src/components/scheduler-editor/nylas-event-limits/nylas-event-limits.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n\n:host {\n display: block;\n margin: 1rem;\n @include default-css-variables;\n}\n\n.nylas-event-limits__title {\n color: var(--nylas-base-900);\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px; /* 125% */\n margin: 0;\n text-align: left;\n}\n.nylas-event-limits__subtitle {\n color: var(--nylas-base-600);\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px; /* 142.857% */\n margin: 0.25rem 0px 0px;\n text-align: left;\n}\n.nylas-event-limits__content {\n padding: 1rem;\n display: flex;\n flex-direction: column;\n gap: 1rem;\n}\n\n.nylas-event-limits__block {\n display: flex;\n justify-content: space-between;\n gap: 0.5rem;\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { AttachInternals, Component, Host, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\n\n/**\n * The `nylas-event-limits` component is a input form for the event information.\n */\n@Component({\n tag: 'nylas-event-limits',\n styleUrl: 'nylas-event-limits.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasEventLimits {\n @AttachInternals() internals!: ElementInternals;\n\n connectedCallback() {\n debug('nylas-event-limits', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-event-limits', 'componentWillLoad');\n }\n\n componentDidLoad() {\n debug('nylas-event-limits', 'componentDidLoad');\n }\n\n disconnectedCallback() {\n debug('nylas-event-limits', 'disconnectedCallback');\n }\n\n @RegisterComponent<NylasEventLimits, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-event-limits',\n eventToProps: {},\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <nylas-form-card>\n <h1 slot=\"header-title\" class=\"nylas-event-limits__title\">\n Set event limits\n </h1>\n <h3 slot=\"header-subtitle\" class=\"nylas-event-limits__subtitle\">\n Customize event limits for the event.\n </h3>\n <div slot=\"content\" class=\"nylas-event-limits__content\">\n <slot name=\"inputs\"></slot>\n </div>\n </nylas-form-card>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,6 +1,6 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { R as RegisterComponent } from './register-component.js';
3
- import { a as debug, q as getBrowser, s as isNonPrintableKey } from './utils.js';
3
+ import { a as debug, w as getBrowser, x as isNonPrintableKey } from './utils.js';
4
4
  import { E as EVENT_TITLE_TOKENS } from './constants.js';
5
5
  import { d as defineCustomElement$2 } from './info.js';
6
6
  import { d as defineCustomElement$1 } from './toolitp-component.js';
@@ -8,7 +8,7 @@ import { d as defineCustomElement$3 } from './select-dropdown2.js';
8
8
  import { d as defineCustomElement$2 } from './time-period-selector2.js';
9
9
  import { d as defineCustomElement$1 } from './toolitp-component.js';
10
10
 
11
- const nylasLimitFutureBookingsCss = ":host{--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif}.nylas-limit-future-bookings{display:flex;justify-content:space-between;font-family:var(--nylas-font-family)}.nylas-limit-future-bookings label{display:flex;align-items:center;color:var(--nylas-base-800);font-size:14px;font-style:normal;font-weight:400;line-height:150%;}.nylas-limit-future-bookings label span.label-icon{margin-left:4px}.nylas-limit-future-bookings label span.label-icon tooltip-component{display:flex}";
11
+ const nylasLimitFutureBookingsCss = ":host{--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif}.nylas-limit-future-bookings{display:flex;justify-content:space-between;font-family:var(--nylas-font-family)}@media screen and (max-width: 768px){.nylas-limit-future-bookings{flex-direction:column;gap:0.5rem}}.nylas-limit-future-bookings label{display:flex;align-items:center;color:var(--nylas-base-800);font-size:16px;font-style:normal;font-weight:400;line-height:150%;}.nylas-limit-future-bookings label span.label-icon{margin-left:4px}.nylas-limit-future-bookings label span.label-icon tooltip-component{display:flex}";
12
12
 
13
13
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
14
14
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;