@nylas/web-elements 1.1.0-canary.3 → 1.1.0-canary.5

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 (831) hide show
  1. package/dist/cjs/add-circle-icon.cjs.entry.js +1 -1
  2. package/dist/cjs/add-circle-icon_22.cjs.entry.js +20 -20
  3. package/dist/cjs/archive-icon.cjs.entry.js +1 -1
  4. package/dist/cjs/archive-icon_7.cjs.entry.js +7 -7
  5. package/dist/cjs/arrow-icon.cjs.entry.js +1 -1
  6. package/dist/cjs/bold-icon.cjs.entry.js +1 -1
  7. package/dist/cjs/bold-icon_3.cjs.entry.js +3 -3
  8. package/dist/cjs/button-component.cjs.entry.js +1 -1
  9. package/dist/cjs/calendar-cancel-icon.cjs.entry.js +1 -1
  10. package/dist/cjs/calendar-check-icon.cjs.entry.js +1 -1
  11. package/dist/cjs/calendar-check-icon_2.cjs.entry.js +2 -2
  12. package/dist/cjs/calendar-icon.cjs.entry.js +1 -1
  13. package/dist/cjs/calendar-info-icon.cjs.entry.js +1 -1
  14. package/dist/cjs/calendar-patterns-icon.cjs.entry.js +1 -1
  15. package/dist/cjs/checkmark-circle-icon.cjs.entry.js +1 -1
  16. package/dist/cjs/chevron-icon.cjs.entry.js +1 -1
  17. package/dist/cjs/chevron-icon_3.cjs.entry.js +4 -4
  18. package/dist/cjs/close-icon.cjs.entry.js +1 -1
  19. package/dist/cjs/document-refresh-icon.cjs.entry.js +1 -1
  20. package/dist/cjs/flow-icon.cjs.entry.js +1 -1
  21. package/dist/cjs/folder-icon.cjs.entry.js +1 -1
  22. package/dist/cjs/forward-icon.cjs.entry.js +1 -1
  23. package/dist/cjs/forward-icon_6.cjs.entry.js +9 -9
  24. package/dist/cjs/globe-icon.cjs.entry.js +1 -1
  25. package/dist/cjs/google-logo-icon.cjs.entry.js +1 -1
  26. package/dist/cjs/{google-logo-icon_3.cjs.entry.js → google-logo-icon_4.cjs.entry.js} +137 -16
  27. package/dist/cjs/google-logo-icon_4.cjs.entry.js.map +1 -0
  28. package/dist/cjs/inbox-icon.cjs.entry.js +1 -1
  29. package/dist/cjs/index-7af03e3f.js +6 -6
  30. package/dist/cjs/index-c14ea8f5.js +12 -8
  31. package/dist/cjs/index.cjs.js +3 -1
  32. package/dist/cjs/index.cjs.js.map +1 -1
  33. package/dist/cjs/{index.es-68425511.js → index.es-0a0f2d87.js} +9 -4
  34. package/dist/cjs/index.es-0a0f2d87.js.map +1 -0
  35. package/dist/cjs/{index.es-447c5aca.js → index.es-b12b7df1.js} +9 -4
  36. package/dist/cjs/index.es-b12b7df1.js.map +1 -0
  37. package/dist/cjs/info-icon.cjs.entry.js +1 -1
  38. package/dist/cjs/info-icon_2.cjs.entry.js +2 -2
  39. package/dist/cjs/italic-icon.cjs.entry.js +1 -1
  40. package/dist/cjs/loader.cjs.js +1 -1
  41. package/dist/cjs/loading-icon.cjs.entry.js +1 -1
  42. package/dist/cjs/location-icon.cjs.entry.js +1 -1
  43. package/dist/cjs/location-off-icon.cjs.entry.js +1 -1
  44. package/dist/cjs/{mailbox-store-556bc7b6.js → mailbox-store-05fa3bec.js} +3 -3
  45. package/dist/cjs/{mailbox-store-556bc7b6.js.map → mailbox-store-05fa3bec.js.map} +1 -1
  46. package/dist/cjs/{mailbox-store-aacd75ff.js → mailbox-store-14531fd4.js} +3 -3
  47. package/dist/cjs/{mailbox-store-aacd75ff.js.map → mailbox-store-14531fd4.js.map} +1 -1
  48. package/dist/cjs/microsoft-logo-icon.cjs.entry.js +1 -1
  49. package/dist/cjs/multi-select-dropdown.cjs.entry.js +3 -3
  50. package/dist/cjs/nylas-additional-participants.cjs.entry.js +3 -3
  51. package/dist/cjs/{nylas-api-request-8ec3a89c.js → nylas-api-request-2a0e7022.js} +17 -7
  52. package/dist/cjs/nylas-api-request-2a0e7022.js.map +1 -0
  53. package/dist/cjs/{nylas-api-request-ab24150d.js → nylas-api-request-55923233.js} +17 -7
  54. package/dist/cjs/nylas-api-request-55923233.js.map +1 -0
  55. package/dist/cjs/nylas-availability-picker.cjs.entry.js +2 -2
  56. package/dist/cjs/nylas-booked-event-card.cjs.entry.js +2 -2
  57. package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js +6 -6
  58. package/dist/cjs/nylas-booking-calendar-picker.cjs.entry.js +2 -2
  59. package/dist/cjs/nylas-booking-form.cjs.entry.js +2 -2
  60. package/dist/cjs/nylas-buffer-time.cjs.entry.js +2 -2
  61. package/dist/cjs/nylas-calendar-picker.cjs.entry.js +2 -2
  62. package/dist/cjs/nylas-cancel-booking-form.cjs.entry.js +3 -3
  63. package/dist/cjs/nylas-cancelled-event-card.cjs.entry.js +3 -3
  64. package/dist/cjs/nylas-composer.cjs.entry.js +2 -2
  65. package/dist/cjs/nylas-custom-booking-flow.cjs.entry.js +3 -3
  66. package/dist/cjs/nylas-date-picker.cjs.entry.js +2 -2
  67. package/dist/cjs/nylas-editor-tabs.cjs.entry.js +25 -8
  68. package/dist/cjs/nylas-editor-tabs.cjs.entry.js.map +1 -1
  69. package/dist/cjs/nylas-event-description.cjs.entry.js +2 -2
  70. package/dist/cjs/nylas-event-duration.cjs.entry.js +2 -2
  71. package/dist/cjs/nylas-event-info.cjs.entry.js +3 -3
  72. package/dist/cjs/nylas-event-limits.cjs.entry.js +3 -3
  73. package/dist/cjs/nylas-event-title.cjs.entry.js +2 -2
  74. package/dist/cjs/nylas-form-card.cjs.entry.js +3 -3
  75. package/dist/cjs/nylas-if-state.cjs.entry.js +2 -2
  76. package/dist/cjs/nylas-limit-future-bookings.cjs.entry.js +3 -3
  77. package/dist/cjs/nylas-list-configurations.cjs.entry.js +114 -0
  78. package/dist/cjs/nylas-list-configurations.cjs.entry.js.map +1 -0
  79. package/dist/cjs/nylas-list-folders.cjs.entry.js +3 -3
  80. package/dist/cjs/nylas-list-threads.cjs.entry.js +3 -3
  81. package/dist/cjs/nylas-locale-switch.cjs.entry.js +2 -2
  82. package/dist/cjs/nylas-location-component.cjs.entry.js +5 -5
  83. package/dist/cjs/nylas-login.cjs.entry.js +3 -3
  84. package/dist/cjs/nylas-logo.cjs.entry.js +1 -1
  85. package/dist/cjs/nylas-mailbox-pagination.cjs.entry.js +2 -2
  86. package/dist/cjs/nylas-mailbox-toolbar-button.cjs.entry.js +3 -3
  87. package/dist/cjs/nylas-mailbox.cjs.entry.js +4 -4
  88. package/dist/cjs/nylas-min-cancellation-notice.cjs.entry.js +3 -3
  89. package/dist/cjs/nylas-notification.cjs.entry.js +2 -2
  90. package/dist/cjs/nylas-provider.cjs.entry.js +6 -6
  91. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js +207 -66
  92. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js.map +1 -1
  93. package/dist/cjs/nylas-scheduling.cjs.entry.js +6 -6
  94. package/dist/cjs/nylas-scheduling.cjs.entry.js.map +1 -1
  95. package/dist/cjs/nylas-selected-event-card.cjs.entry.js +2 -2
  96. package/dist/cjs/nylas-summarize-message-button.cjs.entry.js +4 -4
  97. package/dist/cjs/nylas-threads-refresh.cjs.entry.js +4 -4
  98. package/dist/cjs/nylas-threads-search.cjs.entry.js +3 -3
  99. package/dist/cjs/nylas-time-window-picker.cjs.entry.js +2 -2
  100. package/dist/cjs/nylas-timeslot-picker.cjs.entry.js +2 -2
  101. package/dist/cjs/nylas-view-email.cjs.entry.js +2 -2
  102. package/dist/cjs/nylas-view-thread.cjs.entry.js +3 -3
  103. package/dist/cjs/nylas-web-elements.cjs.js +1 -1
  104. package/dist/cjs/people-icon.cjs.entry.js +1 -1
  105. package/dist/cjs/play-icon.cjs.entry.js +1 -1
  106. package/dist/cjs/play-icon_2.cjs.entry.js +2 -2
  107. package/dist/cjs/refresh-icon.cjs.entry.js +1 -1
  108. package/dist/cjs/{register-component-d729f3f7.js → register-component-09ebdf31.js} +8 -2
  109. package/dist/cjs/register-component-09ebdf31.js.map +1 -0
  110. package/dist/cjs/{register-component-f1ebc65d.js → register-component-c8b6e907.js} +8 -2
  111. package/dist/cjs/register-component-c8b6e907.js.map +1 -0
  112. package/dist/cjs/reply-all-icon.cjs.entry.js +1 -1
  113. package/dist/cjs/reply-icon.cjs.entry.js +1 -1
  114. package/dist/cjs/{scheduler-config-store-9c2cc421.js → scheduler-config-store-4d93a9b7.js} +8 -1
  115. package/dist/cjs/scheduler-config-store-4d93a9b7.js.map +1 -0
  116. package/dist/cjs/{scheduler-config-store-31b83ad3.js → scheduler-config-store-a0e08cab.js} +8 -1
  117. package/dist/cjs/scheduler-config-store-a0e08cab.js.map +1 -0
  118. package/dist/cjs/{scheduler-store-7320f5d0.js → scheduler-store-a492526c.js} +2 -2
  119. package/dist/cjs/{scheduler-store-7320f5d0.js.map → scheduler-store-a492526c.js.map} +1 -1
  120. package/dist/cjs/{scheduler-store-4cb46b3c.js → scheduler-store-e148a4cc.js} +2 -2
  121. package/dist/cjs/{scheduler-store-4cb46b3c.js.map → scheduler-store-e148a4cc.js.map} +1 -1
  122. package/dist/cjs/search-icon.cjs.entry.js +1 -1
  123. package/dist/cjs/select-dropdown.cjs.entry.js +2 -2
  124. package/dist/cjs/sent-icon.cjs.entry.js +1 -1
  125. package/dist/cjs/spam-icon.cjs.entry.js +1 -1
  126. package/dist/cjs/star-icon.cjs.entry.js +1 -1
  127. package/dist/cjs/stop-icon.cjs.entry.js +1 -1
  128. package/dist/cjs/time-period-selector.cjs.entry.js +2 -2
  129. package/dist/cjs/tooltip-component.cjs.entry.js +1 -1
  130. package/dist/cjs/translate-icon.cjs.entry.js +1 -1
  131. package/dist/cjs/trash-icon.cjs.entry.js +1 -1
  132. package/dist/cjs/underline-icon.cjs.entry.js +1 -1
  133. package/dist/cjs/{utils-53dd7574.js → utils-20663d54.js} +19 -1
  134. package/dist/cjs/utils-20663d54.js.map +1 -0
  135. package/dist/cjs/{utils-53298b01.js → utils-2c7f0895.js} +19 -1
  136. package/dist/cjs/{utils-53298b01.js.map → utils-2c7f0895.js.map} +1 -1
  137. package/dist/cjs/warning-icon.cjs.entry.js +1 -1
  138. package/dist/collection/collection-manifest.json +1 -0
  139. package/dist/collection/common/abstract-provider.js +7 -2
  140. package/dist/collection/common/abstract-provider.js.map +1 -1
  141. package/dist/collection/common/component-types.js.map +1 -1
  142. package/dist/collection/common/icons/add-circle.js +1 -1
  143. package/dist/collection/common/icons/archive.js +1 -1
  144. package/dist/collection/common/icons/arrow.js +1 -1
  145. package/dist/collection/common/icons/bold.js +1 -1
  146. package/dist/collection/common/icons/calendar-cancel.js +1 -1
  147. package/dist/collection/common/icons/calendar-check.js +1 -1
  148. package/dist/collection/common/icons/calendar-info.js +1 -1
  149. package/dist/collection/common/icons/calendar-patterns.js +1 -1
  150. package/dist/collection/common/icons/calendar.js +1 -1
  151. package/dist/collection/common/icons/checkmark-circle.js +1 -1
  152. package/dist/collection/common/icons/chevron.js +1 -1
  153. package/dist/collection/common/icons/close.js +1 -1
  154. package/dist/collection/common/icons/document-refresh.js +1 -1
  155. package/dist/collection/common/icons/flow.js +1 -1
  156. package/dist/collection/common/icons/folder.js +1 -1
  157. package/dist/collection/common/icons/forward.js +1 -1
  158. package/dist/collection/common/icons/globe.js +1 -1
  159. package/dist/collection/common/icons/google-logo.js +1 -1
  160. package/dist/collection/common/icons/inbox.js +1 -1
  161. package/dist/collection/common/icons/info.js +1 -1
  162. package/dist/collection/common/icons/italic.js +1 -1
  163. package/dist/collection/common/icons/loading.js +1 -1
  164. package/dist/collection/common/icons/location-off.js +1 -1
  165. package/dist/collection/common/icons/location.js +1 -1
  166. package/dist/collection/common/icons/microsoft-logo.js +1 -1
  167. package/dist/collection/common/icons/nylas-logo.js +1 -1
  168. package/dist/collection/common/icons/people.js +1 -1
  169. package/dist/collection/common/icons/play.js +1 -1
  170. package/dist/collection/common/icons/refresh.js +1 -1
  171. package/dist/collection/common/icons/reply-all.js +1 -1
  172. package/dist/collection/common/icons/reply.js +1 -1
  173. package/dist/collection/common/icons/search.js +1 -1
  174. package/dist/collection/common/icons/sent.js +1 -1
  175. package/dist/collection/common/icons/spam.js +1 -1
  176. package/dist/collection/common/icons/star.js +1 -1
  177. package/dist/collection/common/icons/stop.js +1 -1
  178. package/dist/collection/common/icons/translate.js +1 -1
  179. package/dist/collection/common/icons/trash.js +1 -1
  180. package/dist/collection/common/icons/underline.js +1 -1
  181. package/dist/collection/common/icons/warning.js +1 -1
  182. package/dist/collection/common/nylas-api-request.js +15 -6
  183. package/dist/collection/common/nylas-api-request.js.map +1 -1
  184. package/dist/collection/common/register-component.js +6 -0
  185. package/dist/collection/common/register-component.js.map +1 -1
  186. package/dist/collection/common/types.js.map +1 -1
  187. package/dist/collection/components/design-system/button-component/button-component.js +1 -1
  188. package/dist/collection/components/design-system/multi-select-dropdown/multi-select-dropdown.js +2 -2
  189. package/dist/collection/components/design-system/select-dropdown/select-dropdown.js +2 -2
  190. package/dist/collection/components/design-system/time-period-selector/time-period-selector.js +1 -1
  191. package/dist/collection/components/design-system/tooltip-component/toolitp-component.js +1 -1
  192. package/dist/collection/components/mailbox/nylas-composer/nylas-composer.js +1 -1
  193. package/dist/collection/components/mailbox/nylas-list-folders/nylas-list-folders.js +1 -1
  194. package/dist/collection/components/mailbox/nylas-list-threads/nylas-list-threads.js +1 -1
  195. package/dist/collection/components/mailbox/nylas-mailbox/nylas-mailbox.js +1 -1
  196. package/dist/collection/components/mailbox/nylas-mailbox-toolbar-button/nylas-mailbox-toolbar-button.js +1 -1
  197. package/dist/collection/components/mailbox/nylas-summarize-message-button/nylas-summarize-message-button.js +2 -2
  198. package/dist/collection/components/mailbox/nylas-threads-refresh/nylas-threads-refresh.js +2 -2
  199. package/dist/collection/components/mailbox/nylas-threads-search/nylas-threads-search.js +1 -1
  200. package/dist/collection/components/mailbox/nylas-view-email/nylas-view-email.js +1 -1
  201. package/dist/collection/components/mailbox/nylas-view-thread/nylas-view-thread.js +1 -1
  202. package/dist/collection/components/nylas-login/nylas-login.js +1 -1
  203. package/dist/collection/components/nylas-provider/nylas-provider.js +1 -1
  204. package/dist/collection/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.js +1 -1
  205. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js +1 -1
  206. package/dist/collection/components/scheduler/nylas-notification/nylas-notification.js +1 -1
  207. package/dist/collection/components/scheduler/nylas-scheduler/nylas-scheduling.js +5 -5
  208. package/dist/collection/components/scheduler/nylas-scheduler/nylas-scheduling.js.map +1 -1
  209. package/dist/collection/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.js +1 -1
  210. package/dist/collection/components/scheduler-editor/nylas-custom-booking-flow/nylas-custom-booking-flow.js +1 -1
  211. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.css +15 -8
  212. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js +75 -7
  213. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js.map +1 -1
  214. package/dist/collection/components/scheduler-editor/nylas-event-info/nylas-event-info.js +1 -1
  215. package/dist/collection/components/scheduler-editor/nylas-event-limits/nylas-event-limits.js +1 -1
  216. package/dist/collection/components/scheduler-editor/nylas-form-card/nylas-form-card.js +1 -1
  217. package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.js +1 -1
  218. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.css +105 -0
  219. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.js +293 -0
  220. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.js.map +1 -0
  221. package/dist/collection/components/scheduler-editor/nylas-location-component/nylas-location-component.js +3 -3
  222. package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.js +1 -1
  223. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/LoginRequired.js +30 -0
  224. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/LoginRequired.js.map +1 -0
  225. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.css +17 -2
  226. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js +90 -40
  227. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js.map +1 -1
  228. package/dist/collection/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.js +1 -1
  229. package/dist/collection/connector/nylas-scheduler-config-connector/index.js.map +1 -1
  230. package/dist/collection/connector/shared/api/scheduler-config.js +114 -26
  231. package/dist/collection/connector/shared/api/scheduler-config.js.map +1 -1
  232. package/dist/collection/stores/scheduler-config-store.js +7 -0
  233. package/dist/collection/stores/scheduler-config-store.js.map +1 -1
  234. package/dist/collection/utils/utils.js +16 -0
  235. package/dist/collection/utils/utils.js.map +1 -1
  236. package/dist/collection/utils/utils.spec.js +8 -1
  237. package/dist/collection/utils/utils.spec.js.map +1 -1
  238. package/dist/components/add-circle.js +1 -2
  239. package/dist/components/add-circle.js.map +1 -1
  240. package/dist/components/archive.js +1 -2
  241. package/dist/components/archive.js.map +1 -1
  242. package/dist/components/arrow.js +1 -2
  243. package/dist/components/arrow.js.map +1 -1
  244. package/dist/components/bold.js +1 -2
  245. package/dist/components/bold.js.map +1 -1
  246. package/dist/components/button-component2.js +1 -2
  247. package/dist/components/button-component2.js.map +1 -1
  248. package/dist/components/calendar-cancel.js +1 -2
  249. package/dist/components/calendar-cancel.js.map +1 -1
  250. package/dist/components/calendar-check.js +1 -2
  251. package/dist/components/calendar-check.js.map +1 -1
  252. package/dist/components/calendar-info.js +1 -2
  253. package/dist/components/calendar-info.js.map +1 -1
  254. package/dist/components/calendar-patterns.js +1 -2
  255. package/dist/components/calendar-patterns.js.map +1 -1
  256. package/dist/components/calendar.js +1 -2
  257. package/dist/components/calendar.js.map +1 -1
  258. package/dist/components/checkmark-circle.js +1 -2
  259. package/dist/components/checkmark-circle.js.map +1 -1
  260. package/dist/components/chevron.js +1 -2
  261. package/dist/components/chevron.js.map +1 -1
  262. package/dist/components/close.js +1 -2
  263. package/dist/components/close.js.map +1 -1
  264. package/dist/components/constants.js +1 -1
  265. package/dist/components/document-refresh-icon.js +1 -2
  266. package/dist/components/document-refresh-icon.js.map +1 -1
  267. package/dist/components/flow.js +1 -2
  268. package/dist/components/flow.js.map +1 -1
  269. package/dist/components/focus-visible.js +1 -1
  270. package/dist/components/folder.js +1 -2
  271. package/dist/components/folder.js.map +1 -1
  272. package/dist/components/forward.js +1 -2
  273. package/dist/components/forward.js.map +1 -1
  274. package/dist/components/globe.js +1 -2
  275. package/dist/components/globe.js.map +1 -1
  276. package/dist/components/google-logo.js +1 -2
  277. package/dist/components/google-logo.js.map +1 -1
  278. package/dist/components/inbox.js +1 -2
  279. package/dist/components/inbox.js.map +1 -1
  280. package/dist/components/index.d.ts +179 -0
  281. package/dist/components/index.es.js +201 -4
  282. package/dist/components/index.es.js.map +1 -1
  283. package/dist/components/index.js +89 -2
  284. package/dist/components/index.js.map +1 -1
  285. package/dist/components/info.js +1 -2
  286. package/dist/components/info.js.map +1 -1
  287. package/dist/components/italic.js +1 -2
  288. package/dist/components/italic.js.map +1 -1
  289. package/dist/components/loading.js +1 -2
  290. package/dist/components/loading.js.map +1 -1
  291. package/dist/components/location-off.js +1 -2
  292. package/dist/components/location-off.js.map +1 -1
  293. package/dist/components/location.js +1 -2
  294. package/dist/components/location.js.map +1 -1
  295. package/dist/components/mailbox-store.js +1 -2
  296. package/dist/components/mailbox-store.js.map +1 -1
  297. package/dist/components/microsoft-logo.js +1 -2
  298. package/dist/components/microsoft-logo.js.map +1 -1
  299. package/dist/components/multi-select-dropdown2.js +2 -3
  300. package/dist/components/multi-select-dropdown2.js.map +1 -1
  301. package/dist/components/nylas-additional-participants.js +1 -2
  302. package/dist/components/nylas-additional-participants.js.map +1 -1
  303. package/dist/components/nylas-availability-picker2.js +1 -2
  304. package/dist/components/nylas-availability-picker2.js.map +1 -1
  305. package/dist/components/nylas-booked-event-card2.js +0 -1
  306. package/dist/components/nylas-booked-event-card2.js.map +1 -1
  307. package/dist/components/nylas-booking-calendar-picker2.js +0 -1
  308. package/dist/components/nylas-booking-calendar-picker2.js.map +1 -1
  309. package/dist/components/nylas-booking-form2.js +0 -1
  310. package/dist/components/nylas-booking-form2.js.map +1 -1
  311. package/dist/components/nylas-buffer-time2.js +0 -1
  312. package/dist/components/nylas-buffer-time2.js.map +1 -1
  313. package/dist/components/nylas-calendar-picker2.js +0 -1
  314. package/dist/components/nylas-calendar-picker2.js.map +1 -1
  315. package/dist/components/nylas-cancel-booking-form2.js +1 -2
  316. package/dist/components/nylas-cancel-booking-form2.js.map +1 -1
  317. package/dist/components/nylas-cancelled-event-card2.js +1 -2
  318. package/dist/components/nylas-cancelled-event-card2.js.map +1 -1
  319. package/dist/components/nylas-composer2.js +1 -2
  320. package/dist/components/nylas-composer2.js.map +1 -1
  321. package/dist/components/nylas-custom-booking-flow2.js +1 -2
  322. package/dist/components/nylas-custom-booking-flow2.js.map +1 -1
  323. package/dist/components/nylas-date-picker2.js +1 -2
  324. package/dist/components/nylas-date-picker2.js.map +1 -1
  325. package/dist/components/nylas-editor-tabs2.js +25 -8
  326. package/dist/components/nylas-editor-tabs2.js.map +1 -1
  327. package/dist/components/nylas-event-description2.js +0 -1
  328. package/dist/components/nylas-event-description2.js.map +1 -1
  329. package/dist/components/nylas-event-duration2.js +0 -1
  330. package/dist/components/nylas-event-duration2.js.map +1 -1
  331. package/dist/components/nylas-event-info2.js +1 -2
  332. package/dist/components/nylas-event-info2.js.map +1 -1
  333. package/dist/components/nylas-event-limits2.js +1 -2
  334. package/dist/components/nylas-event-limits2.js.map +1 -1
  335. package/dist/components/nylas-event-title2.js +1 -2
  336. package/dist/components/nylas-event-title2.js.map +1 -1
  337. package/dist/components/nylas-form-card2.js +1 -2
  338. package/dist/components/nylas-form-card2.js.map +1 -1
  339. package/dist/components/nylas-if-state.js +0 -1
  340. package/dist/components/nylas-if-state.js.map +1 -1
  341. package/dist/components/nylas-limit-future-bookings2.js +1 -2
  342. package/dist/components/nylas-limit-future-bookings2.js.map +1 -1
  343. package/dist/components/nylas-list-configurations.d.ts +11 -0
  344. package/dist/components/nylas-list-configurations.js +8 -0
  345. package/dist/components/nylas-list-configurations.js.map +1 -0
  346. package/dist/components/nylas-list-configurations2.js +142 -0
  347. package/dist/components/nylas-list-configurations2.js.map +1 -0
  348. package/dist/components/nylas-list-folders.js +2 -3
  349. package/dist/components/nylas-list-folders.js.map +1 -1
  350. package/dist/components/nylas-list-threads.js +2 -3
  351. package/dist/components/nylas-list-threads.js.map +1 -1
  352. package/dist/components/nylas-locale-switch2.js +0 -1
  353. package/dist/components/nylas-locale-switch2.js.map +1 -1
  354. package/dist/components/nylas-location-component2.js +3 -4
  355. package/dist/components/nylas-location-component2.js.map +1 -1
  356. package/dist/components/nylas-login.js +1 -2
  357. package/dist/components/nylas-login.js.map +1 -1
  358. package/dist/components/nylas-logo2.js +1 -2
  359. package/dist/components/nylas-logo2.js.map +1 -1
  360. package/dist/components/nylas-mailbox-pagination.js +0 -1
  361. package/dist/components/nylas-mailbox-pagination.js.map +1 -1
  362. package/dist/components/nylas-mailbox-toolbar-button.js +1 -2
  363. package/dist/components/nylas-mailbox-toolbar-button.js.map +1 -1
  364. package/dist/components/nylas-mailbox.js +1 -2
  365. package/dist/components/nylas-mailbox.js.map +1 -1
  366. package/dist/components/nylas-min-cancellation-notice2.js +1 -2
  367. package/dist/components/nylas-min-cancellation-notice2.js.map +1 -1
  368. package/dist/components/nylas-notification2.js +1 -2
  369. package/dist/components/nylas-notification2.js.map +1 -1
  370. package/dist/components/nylas-provider.js +1 -2
  371. package/dist/components/nylas-provider.js.map +1 -1
  372. package/dist/components/nylas-scheduler-editor.js +317 -128
  373. package/dist/components/nylas-scheduler-editor.js.map +1 -1
  374. package/dist/components/nylas-scheduling.js +4 -5
  375. package/dist/components/nylas-scheduling.js.map +1 -1
  376. package/dist/components/nylas-selected-event-card2.js +0 -1
  377. package/dist/components/nylas-selected-event-card2.js.map +1 -1
  378. package/dist/components/nylas-summarize-message-button2.js +3 -4
  379. package/dist/components/nylas-summarize-message-button2.js.map +1 -1
  380. package/dist/components/nylas-threads-refresh.js +2 -3
  381. package/dist/components/nylas-threads-refresh.js.map +1 -1
  382. package/dist/components/nylas-threads-search.js +1 -2
  383. package/dist/components/nylas-threads-search.js.map +1 -1
  384. package/dist/components/nylas-time-window-picker2.js +2 -4
  385. package/dist/components/nylas-time-window-picker2.js.map +1 -1
  386. package/dist/components/nylas-timeslot-picker2.js +1 -2
  387. package/dist/components/nylas-timeslot-picker2.js.map +1 -1
  388. package/dist/components/nylas-view-email2.js +2 -4
  389. package/dist/components/nylas-view-email2.js.map +1 -1
  390. package/dist/components/nylas-view-thread.js +2 -3
  391. package/dist/components/nylas-view-thread.js.map +1 -1
  392. package/dist/components/people-icon.js +1 -2
  393. package/dist/components/people-icon.js.map +1 -1
  394. package/dist/components/play.js +1 -2
  395. package/dist/components/play.js.map +1 -1
  396. package/dist/components/refresh.js +1 -2
  397. package/dist/components/refresh.js.map +1 -1
  398. package/dist/components/register-component.js +7 -1
  399. package/dist/components/register-component.js.map +1 -1
  400. package/dist/components/reply-all.js +1 -2
  401. package/dist/components/reply-all.js.map +1 -1
  402. package/dist/components/reply.js +1 -2
  403. package/dist/components/reply.js.map +1 -1
  404. package/dist/components/scheduler-config-store.js +8 -1
  405. package/dist/components/scheduler-config-store.js.map +1 -1
  406. package/dist/components/scheduler-store.js +1 -1
  407. package/dist/components/search.js +1 -2
  408. package/dist/components/search.js.map +1 -1
  409. package/dist/components/select-dropdown2.js +2 -3
  410. package/dist/components/select-dropdown2.js.map +1 -1
  411. package/dist/components/sent.js +1 -2
  412. package/dist/components/sent.js.map +1 -1
  413. package/dist/components/spam.js +1 -2
  414. package/dist/components/spam.js.map +1 -1
  415. package/dist/components/star.js +1 -2
  416. package/dist/components/star.js.map +1 -1
  417. package/dist/components/stop.js +1 -2
  418. package/dist/components/stop.js.map +1 -1
  419. package/dist/components/time-period-selector2.js +1 -2
  420. package/dist/components/time-period-selector2.js.map +1 -1
  421. package/dist/components/toolitp-component.js +1 -2
  422. package/dist/components/toolitp-component.js.map +1 -1
  423. package/dist/components/translate.js +1 -2
  424. package/dist/components/translate.js.map +1 -1
  425. package/dist/components/trash.js +1 -2
  426. package/dist/components/trash.js.map +1 -1
  427. package/dist/components/underline.js +1 -2
  428. package/dist/components/underline.js.map +1 -1
  429. package/dist/components/utils.js +49 -2
  430. package/dist/components/utils.js.map +1 -1
  431. package/dist/components/warning.js +1 -2
  432. package/dist/components/warning.js.map +1 -1
  433. package/dist/esm/add-circle-icon.entry.js +1 -1
  434. package/dist/esm/add-circle-icon_22.entry.js +20 -20
  435. package/dist/esm/archive-icon.entry.js +1 -1
  436. package/dist/esm/archive-icon_7.entry.js +7 -7
  437. package/dist/esm/arrow-icon.entry.js +1 -1
  438. package/dist/esm/bold-icon.entry.js +1 -1
  439. package/dist/esm/bold-icon_3.entry.js +3 -3
  440. package/dist/esm/button-component.entry.js +1 -1
  441. package/dist/esm/calendar-cancel-icon.entry.js +1 -1
  442. package/dist/esm/calendar-check-icon.entry.js +1 -1
  443. package/dist/esm/calendar-check-icon_2.entry.js +2 -2
  444. package/dist/esm/calendar-icon.entry.js +1 -1
  445. package/dist/esm/calendar-info-icon.entry.js +1 -1
  446. package/dist/esm/calendar-patterns-icon.entry.js +1 -1
  447. package/dist/esm/checkmark-circle-icon.entry.js +1 -1
  448. package/dist/esm/chevron-icon.entry.js +1 -1
  449. package/dist/esm/chevron-icon_3.entry.js +4 -4
  450. package/dist/esm/close-icon.entry.js +1 -1
  451. package/dist/esm/document-refresh-icon.entry.js +1 -1
  452. package/dist/esm/flow-icon.entry.js +1 -1
  453. package/dist/esm/folder-icon.entry.js +1 -1
  454. package/dist/esm/forward-icon.entry.js +1 -1
  455. package/dist/esm/forward-icon_6.entry.js +9 -9
  456. package/dist/esm/globe-icon.entry.js +1 -1
  457. package/dist/esm/google-logo-icon.entry.js +1 -1
  458. package/dist/esm/{google-logo-icon_3.entry.js → google-logo-icon_4.entry.js} +138 -18
  459. package/dist/esm/google-logo-icon_4.entry.js.map +1 -0
  460. package/dist/esm/inbox-icon.entry.js +1 -1
  461. package/dist/esm/index-7cb0dd3d.js +6 -6
  462. package/dist/esm/index-8362ce5c.js +12 -8
  463. package/dist/{nylas-web-elements/index.es-bd511719.js → esm/index.es-2842f8c8.js} +9 -4
  464. package/dist/esm/index.es-2842f8c8.js.map +1 -0
  465. package/dist/esm/{index.es-2578c6a5.js → index.es-f57e612a.js} +9 -4
  466. package/dist/esm/index.es-f57e612a.js.map +1 -0
  467. package/dist/esm/index.js +3 -1
  468. package/dist/esm/index.js.map +1 -1
  469. package/dist/esm/info-icon.entry.js +1 -1
  470. package/dist/esm/info-icon_2.entry.js +2 -2
  471. package/dist/esm/italic-icon.entry.js +1 -1
  472. package/dist/esm/loader.js +1 -1
  473. package/dist/esm/loading-icon.entry.js +1 -1
  474. package/dist/esm/location-icon.entry.js +1 -1
  475. package/dist/esm/location-off-icon.entry.js +1 -1
  476. package/dist/esm/{mailbox-store-bb21512c.js → mailbox-store-47fc8a1a.js} +3 -3
  477. package/dist/{nylas-web-elements/mailbox-store-150cc456.js.map → esm/mailbox-store-47fc8a1a.js.map} +1 -1
  478. package/dist/esm/{mailbox-store-150cc456.js → mailbox-store-d48269de.js} +3 -3
  479. package/dist/esm/{mailbox-store-150cc456.js.map → mailbox-store-d48269de.js.map} +1 -1
  480. package/dist/esm/microsoft-logo-icon.entry.js +1 -1
  481. package/dist/esm/multi-select-dropdown.entry.js +3 -3
  482. package/dist/esm/nylas-additional-participants.entry.js +3 -3
  483. package/dist/esm/{nylas-api-request-c97a0153.js → nylas-api-request-3120d9ac.js} +17 -7
  484. package/dist/esm/nylas-api-request-3120d9ac.js.map +1 -0
  485. package/dist/{nylas-web-elements/nylas-api-request-55446aba.js → esm/nylas-api-request-4f3dbb72.js} +17 -7
  486. package/dist/esm/nylas-api-request-4f3dbb72.js.map +1 -0
  487. package/dist/esm/nylas-availability-picker.entry.js +2 -2
  488. package/dist/esm/nylas-booked-event-card.entry.js +2 -2
  489. package/dist/esm/nylas-booked-event-card_10.entry.js +6 -6
  490. package/dist/esm/nylas-booking-calendar-picker.entry.js +2 -2
  491. package/dist/esm/nylas-booking-form.entry.js +2 -2
  492. package/dist/esm/nylas-buffer-time.entry.js +2 -2
  493. package/dist/esm/nylas-calendar-picker.entry.js +2 -2
  494. package/dist/esm/nylas-cancel-booking-form.entry.js +3 -3
  495. package/dist/esm/nylas-cancelled-event-card.entry.js +3 -3
  496. package/dist/esm/nylas-composer.entry.js +2 -2
  497. package/dist/esm/nylas-custom-booking-flow.entry.js +3 -3
  498. package/dist/esm/nylas-date-picker.entry.js +2 -2
  499. package/dist/esm/nylas-editor-tabs.entry.js +26 -9
  500. package/dist/esm/nylas-editor-tabs.entry.js.map +1 -1
  501. package/dist/esm/nylas-event-description.entry.js +2 -2
  502. package/dist/esm/nylas-event-duration.entry.js +2 -2
  503. package/dist/esm/nylas-event-info.entry.js +3 -3
  504. package/dist/esm/nylas-event-limits.entry.js +3 -3
  505. package/dist/esm/nylas-event-title.entry.js +2 -2
  506. package/dist/esm/nylas-form-card.entry.js +3 -3
  507. package/dist/esm/nylas-if-state.entry.js +2 -2
  508. package/dist/esm/nylas-limit-future-bookings.entry.js +3 -3
  509. package/dist/esm/nylas-list-configurations.entry.js +110 -0
  510. package/dist/esm/nylas-list-configurations.entry.js.map +1 -0
  511. package/dist/esm/nylas-list-folders.entry.js +3 -3
  512. package/dist/esm/nylas-list-threads.entry.js +3 -3
  513. package/dist/esm/nylas-locale-switch.entry.js +2 -2
  514. package/dist/esm/nylas-location-component.entry.js +5 -5
  515. package/dist/esm/nylas-login.entry.js +3 -3
  516. package/dist/esm/nylas-logo.entry.js +1 -1
  517. package/dist/esm/nylas-mailbox-pagination.entry.js +2 -2
  518. package/dist/esm/nylas-mailbox-toolbar-button.entry.js +3 -3
  519. package/dist/esm/nylas-mailbox.entry.js +4 -4
  520. package/dist/esm/nylas-min-cancellation-notice.entry.js +3 -3
  521. package/dist/esm/nylas-notification.entry.js +2 -2
  522. package/dist/esm/nylas-provider.entry.js +6 -6
  523. package/dist/esm/nylas-scheduler-editor.entry.js +208 -67
  524. package/dist/esm/nylas-scheduler-editor.entry.js.map +1 -1
  525. package/dist/esm/nylas-scheduling.entry.js +6 -6
  526. package/dist/esm/nylas-scheduling.entry.js.map +1 -1
  527. package/dist/esm/nylas-selected-event-card.entry.js +2 -2
  528. package/dist/esm/nylas-summarize-message-button.entry.js +4 -4
  529. package/dist/esm/nylas-threads-refresh.entry.js +4 -4
  530. package/dist/esm/nylas-threads-search.entry.js +3 -3
  531. package/dist/esm/nylas-time-window-picker.entry.js +2 -2
  532. package/dist/esm/nylas-timeslot-picker.entry.js +2 -2
  533. package/dist/esm/nylas-view-email.entry.js +2 -2
  534. package/dist/esm/nylas-view-thread.entry.js +3 -3
  535. package/dist/esm/nylas-web-elements.js +1 -1
  536. package/dist/esm/people-icon.entry.js +1 -1
  537. package/dist/esm/play-icon.entry.js +1 -1
  538. package/dist/esm/play-icon_2.entry.js +2 -2
  539. package/dist/esm/refresh-icon.entry.js +1 -1
  540. package/dist/esm/{register-component-dc659dc3.js → register-component-cf5c8420.js} +8 -2
  541. package/dist/esm/register-component-cf5c8420.js.map +1 -0
  542. package/dist/{nylas-web-elements/register-component-0645dce0.js → esm/register-component-e5afe237.js} +8 -2
  543. package/dist/esm/register-component-e5afe237.js.map +1 -0
  544. package/dist/esm/reply-all-icon.entry.js +1 -1
  545. package/dist/esm/reply-icon.entry.js +1 -1
  546. package/dist/esm/{scheduler-config-store-bc59545b.js → scheduler-config-store-0efc3519.js} +8 -1
  547. package/dist/esm/scheduler-config-store-0efc3519.js.map +1 -0
  548. package/dist/esm/{scheduler-config-store-51ee4f42.js → scheduler-config-store-6222c0ed.js} +8 -1
  549. package/dist/esm/scheduler-config-store-6222c0ed.js.map +1 -0
  550. package/dist/esm/{scheduler-store-72116723.js → scheduler-store-39d37291.js} +2 -2
  551. package/dist/esm/{scheduler-store-4d0a4f8a.js.map → scheduler-store-39d37291.js.map} +1 -1
  552. package/dist/{nylas-web-elements/scheduler-store-4d0a4f8a.js → esm/scheduler-store-8ddcc496.js} +2 -2
  553. package/dist/esm/{scheduler-store-72116723.js.map → scheduler-store-8ddcc496.js.map} +1 -1
  554. package/dist/esm/search-icon.entry.js +1 -1
  555. package/dist/esm/select-dropdown.entry.js +2 -2
  556. package/dist/esm/sent-icon.entry.js +1 -1
  557. package/dist/esm/spam-icon.entry.js +1 -1
  558. package/dist/esm/star-icon.entry.js +1 -1
  559. package/dist/esm/stop-icon.entry.js +1 -1
  560. package/dist/esm/time-period-selector.entry.js +2 -2
  561. package/dist/esm/tooltip-component.entry.js +1 -1
  562. package/dist/esm/translate-icon.entry.js +1 -1
  563. package/dist/esm/trash-icon.entry.js +1 -1
  564. package/dist/esm/underline-icon.entry.js +1 -1
  565. package/dist/{nylas-web-elements/utils-3a8d433a.js → esm/utils-73d8a928.js} +18 -2
  566. package/dist/{nylas-web-elements/utils-3a8d433a.js.map → esm/utils-73d8a928.js.map} +1 -1
  567. package/dist/esm/{utils-c00bdc3c.js → utils-d6204242.js} +18 -2
  568. package/dist/esm/utils-d6204242.js.map +1 -0
  569. package/dist/esm/warning-icon.entry.js +1 -1
  570. package/dist/nylas-web-elements/add-circle-icon.entry.js +1 -1
  571. package/dist/nylas-web-elements/archive-icon.entry.js +1 -1
  572. package/dist/nylas-web-elements/arrow-icon.entry.js +1 -1
  573. package/dist/nylas-web-elements/bold-icon.entry.js +1 -1
  574. package/dist/nylas-web-elements/button-component.entry.js +1 -1
  575. package/dist/nylas-web-elements/calendar-cancel-icon.entry.js +1 -1
  576. package/dist/nylas-web-elements/calendar-check-icon.entry.js +1 -1
  577. package/dist/nylas-web-elements/calendar-icon.entry.js +1 -1
  578. package/dist/nylas-web-elements/calendar-info-icon.entry.js +1 -1
  579. package/dist/nylas-web-elements/calendar-patterns-icon.entry.js +1 -1
  580. package/dist/nylas-web-elements/checkmark-circle-icon.entry.js +1 -1
  581. package/dist/nylas-web-elements/chevron-icon.entry.js +1 -1
  582. package/dist/nylas-web-elements/close-icon.entry.js +1 -1
  583. package/dist/nylas-web-elements/document-refresh-icon.entry.js +1 -1
  584. package/dist/nylas-web-elements/flow-icon.entry.js +1 -1
  585. package/dist/nylas-web-elements/folder-icon.entry.js +1 -1
  586. package/dist/nylas-web-elements/forward-icon.entry.js +1 -1
  587. package/dist/nylas-web-elements/globe-icon.entry.js +1 -1
  588. package/dist/nylas-web-elements/google-logo-icon.entry.js +1 -1
  589. package/dist/nylas-web-elements/inbox-icon.entry.js +1 -1
  590. package/dist/{esm/index.es-bd511719.js → nylas-web-elements/index.es-2842f8c8.js} +9 -4
  591. package/dist/nylas-web-elements/index.es-2842f8c8.js.map +1 -0
  592. package/dist/nylas-web-elements/index.esm.js +3 -1
  593. package/dist/nylas-web-elements/index.esm.js.map +1 -1
  594. package/dist/nylas-web-elements/info-icon.entry.js +1 -1
  595. package/dist/nylas-web-elements/italic-icon.entry.js +1 -1
  596. package/dist/nylas-web-elements/loading-icon.entry.js +1 -1
  597. package/dist/nylas-web-elements/location-icon.entry.js +1 -1
  598. package/dist/nylas-web-elements/location-off-icon.entry.js +1 -1
  599. package/dist/nylas-web-elements/{mailbox-store-150cc456.js → mailbox-store-d48269de.js} +3 -3
  600. package/dist/{esm/mailbox-store-bb21512c.js.map → nylas-web-elements/mailbox-store-d48269de.js.map} +1 -1
  601. package/dist/nylas-web-elements/microsoft-logo-icon.entry.js +1 -1
  602. package/dist/nylas-web-elements/multi-select-dropdown.entry.js +3 -3
  603. package/dist/nylas-web-elements/nylas-additional-participants.entry.js +3 -3
  604. package/dist/{esm/nylas-api-request-55446aba.js → nylas-web-elements/nylas-api-request-4f3dbb72.js} +17 -7
  605. package/dist/nylas-web-elements/nylas-api-request-4f3dbb72.js.map +1 -0
  606. package/dist/nylas-web-elements/nylas-availability-picker.entry.js +2 -2
  607. package/dist/nylas-web-elements/nylas-booked-event-card.entry.js +2 -2
  608. package/dist/nylas-web-elements/nylas-booking-calendar-picker.entry.js +2 -2
  609. package/dist/nylas-web-elements/nylas-booking-form.entry.js +2 -2
  610. package/dist/nylas-web-elements/nylas-buffer-time.entry.js +2 -2
  611. package/dist/nylas-web-elements/nylas-calendar-picker.entry.js +2 -2
  612. package/dist/nylas-web-elements/nylas-cancel-booking-form.entry.js +3 -3
  613. package/dist/nylas-web-elements/nylas-cancelled-event-card.entry.js +3 -3
  614. package/dist/nylas-web-elements/nylas-composer.entry.js +2 -2
  615. package/dist/nylas-web-elements/nylas-custom-booking-flow.entry.js +3 -3
  616. package/dist/nylas-web-elements/nylas-date-picker.entry.js +2 -2
  617. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js +26 -9
  618. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js.map +1 -1
  619. package/dist/nylas-web-elements/nylas-event-description.entry.js +2 -2
  620. package/dist/nylas-web-elements/nylas-event-duration.entry.js +2 -2
  621. package/dist/nylas-web-elements/nylas-event-info.entry.js +3 -3
  622. package/dist/nylas-web-elements/nylas-event-limits.entry.js +3 -3
  623. package/dist/nylas-web-elements/nylas-event-title.entry.js +2 -2
  624. package/dist/nylas-web-elements/nylas-form-card.entry.js +3 -3
  625. package/dist/nylas-web-elements/nylas-if-state.entry.js +2 -2
  626. package/dist/nylas-web-elements/nylas-limit-future-bookings.entry.js +3 -3
  627. package/dist/nylas-web-elements/nylas-list-configurations.entry.js +110 -0
  628. package/dist/nylas-web-elements/nylas-list-configurations.entry.js.map +1 -0
  629. package/dist/nylas-web-elements/nylas-list-folders.entry.js +3 -3
  630. package/dist/nylas-web-elements/nylas-list-threads.entry.js +3 -3
  631. package/dist/nylas-web-elements/nylas-locale-switch.entry.js +2 -2
  632. package/dist/nylas-web-elements/nylas-location-component.entry.js +5 -5
  633. package/dist/nylas-web-elements/nylas-login.entry.js +3 -3
  634. package/dist/nylas-web-elements/nylas-logo.entry.js +1 -1
  635. package/dist/nylas-web-elements/nylas-mailbox-pagination.entry.js +2 -2
  636. package/dist/nylas-web-elements/nylas-mailbox-toolbar-button.entry.js +3 -3
  637. package/dist/nylas-web-elements/nylas-mailbox.entry.js +4 -4
  638. package/dist/nylas-web-elements/nylas-min-cancellation-notice.entry.js +3 -3
  639. package/dist/nylas-web-elements/nylas-notification.entry.js +2 -2
  640. package/dist/nylas-web-elements/nylas-provider.entry.js +6 -6
  641. package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js +208 -67
  642. package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js.map +1 -1
  643. package/dist/nylas-web-elements/nylas-scheduling.entry.js +6 -6
  644. package/dist/nylas-web-elements/nylas-scheduling.entry.js.map +1 -1
  645. package/dist/nylas-web-elements/nylas-selected-event-card.entry.js +2 -2
  646. package/dist/nylas-web-elements/nylas-summarize-message-button.entry.js +4 -4
  647. package/dist/nylas-web-elements/nylas-threads-refresh.entry.js +4 -4
  648. package/dist/nylas-web-elements/nylas-threads-search.entry.js +3 -3
  649. package/dist/nylas-web-elements/nylas-time-window-picker.entry.js +2 -2
  650. package/dist/nylas-web-elements/nylas-timeslot-picker.entry.js +2 -2
  651. package/dist/nylas-web-elements/nylas-view-email.entry.js +2 -2
  652. package/dist/nylas-web-elements/nylas-view-thread.entry.js +3 -3
  653. package/dist/nylas-web-elements/nylas-web-elements.esm.js +1 -1
  654. package/dist/nylas-web-elements/{p-f48d0571.entry.js → p-04e3a98e.entry.js} +2 -2
  655. package/dist/nylas-web-elements/p-0edb3b69.entry.js +2 -0
  656. package/dist/nylas-web-elements/{p-40ed7eab.entry.js → p-1260ac06.entry.js} +2 -2
  657. package/dist/nylas-web-elements/{p-af22da60.entry.js → p-1655dec3.entry.js} +4 -4
  658. package/dist/nylas-web-elements/p-1655dec3.entry.js.map +1 -0
  659. package/dist/nylas-web-elements/{p-64364434.entry.js → p-18a936a3.entry.js} +2 -2
  660. package/dist/nylas-web-elements/{p-df5e9aaf.js → p-1aa7b357.js} +2 -2
  661. package/dist/nylas-web-elements/{p-b2208193.entry.js → p-1ab25f04.entry.js} +2 -2
  662. package/dist/nylas-web-elements/p-1c94940d.entry.js +2 -0
  663. package/dist/nylas-web-elements/{p-d85eecf4.entry.js.map → p-1c94940d.entry.js.map} +1 -1
  664. package/dist/nylas-web-elements/p-1f843391.js +2 -0
  665. package/dist/nylas-web-elements/p-1f843391.js.map +1 -0
  666. package/dist/nylas-web-elements/{p-42a4c2fd.entry.js → p-266f9995.entry.js} +2 -2
  667. package/dist/nylas-web-elements/p-3116f5cc.js +2 -0
  668. package/dist/nylas-web-elements/p-3116f5cc.js.map +1 -0
  669. package/dist/nylas-web-elements/{p-ad9c3cab.entry.js → p-370cdcca.entry.js} +2 -2
  670. package/dist/nylas-web-elements/{p-2c5d5953.entry.js → p-3f6155de.entry.js} +2 -2
  671. package/dist/nylas-web-elements/{p-901f9612.js → p-41dc0d93.js} +2 -2
  672. package/dist/nylas-web-elements/p-41dc0d93.js.map +1 -0
  673. package/dist/nylas-web-elements/{p-006ab406.entry.js → p-424f4d9a.entry.js} +2 -2
  674. package/dist/nylas-web-elements/p-47180df9.entry.js +2 -0
  675. package/dist/nylas-web-elements/{p-5a3809a7.entry.js → p-55368bc0.entry.js} +2 -2
  676. package/dist/nylas-web-elements/{p-374527e6.entry.js → p-572bf8c2.entry.js} +2 -2
  677. package/dist/nylas-web-elements/{p-2523c292.entry.js → p-57b753c6.entry.js} +2 -2
  678. package/dist/nylas-web-elements/{p-a0c2ce03.entry.js → p-605142a9.entry.js} +2 -2
  679. package/dist/nylas-web-elements/p-618b94cd.entry.js +2 -0
  680. package/dist/nylas-web-elements/p-618b94cd.entry.js.map +1 -0
  681. package/dist/nylas-web-elements/{p-4d9fceeb.entry.js → p-674b6d5d.entry.js} +2 -2
  682. package/dist/nylas-web-elements/{p-39b280e2.entry.js → p-6dcc9411.entry.js} +2 -2
  683. package/dist/nylas-web-elements/{p-395f49eb.entry.js → p-7692056f.entry.js} +2 -2
  684. package/dist/nylas-web-elements/p-7c55dfa0.entry.js +2 -0
  685. package/dist/nylas-web-elements/{p-ba3d383f.entry.js.map → p-7c55dfa0.entry.js.map} +1 -1
  686. package/dist/nylas-web-elements/{p-9dac153b.entry.js → p-81ea7310.entry.js} +2 -2
  687. package/dist/nylas-web-elements/{p-a1e27dc5.entry.js → p-858f0aad.entry.js} +2 -2
  688. package/dist/nylas-web-elements/{p-baa620b4.entry.js → p-8b1a6e27.entry.js} +2 -2
  689. package/dist/nylas-web-elements/{p-deafc6bc.entry.js → p-945caf14.entry.js} +2 -2
  690. package/dist/nylas-web-elements/{p-ae01e1cb.entry.js → p-9b195811.entry.js} +2 -2
  691. package/dist/nylas-web-elements/{p-409d4410.entry.js → p-9c399019.entry.js} +2 -2
  692. package/dist/nylas-web-elements/p-9d0c0340.entry.js +2 -0
  693. package/dist/nylas-web-elements/{p-fbbca7a6.entry.js → p-9d4bffbb.entry.js} +2 -2
  694. package/dist/nylas-web-elements/p-9d75bcb2.entry.js +2 -0
  695. package/dist/nylas-web-elements/p-9d75bcb2.entry.js.map +1 -0
  696. package/dist/nylas-web-elements/p-9ea458c3.js +2 -0
  697. package/dist/nylas-web-elements/p-9ea458c3.js.map +1 -0
  698. package/dist/nylas-web-elements/{p-7b1bb792.entry.js → p-ae893050.entry.js} +3 -3
  699. package/dist/nylas-web-elements/{p-d92a0405.entry.js → p-be7124f0.entry.js} +2 -2
  700. package/dist/nylas-web-elements/{p-3da66838.entry.js → p-c199d203.entry.js} +2 -2
  701. package/dist/nylas-web-elements/p-c451c9e1.entry.js +2 -0
  702. package/dist/nylas-web-elements/{p-41c1654e.entry.js.map → p-c451c9e1.entry.js.map} +1 -1
  703. package/dist/nylas-web-elements/p-c45ac7c6.entry.js +2 -0
  704. package/dist/nylas-web-elements/{p-d224c7af.entry.js → p-e03b2592.entry.js} +2 -2
  705. package/dist/nylas-web-elements/{p-9f168ff0.js → p-e22aa0b0.js} +2 -2
  706. package/dist/nylas-web-elements/{p-408dda49.js → p-eaa9151b.js} +2 -2
  707. package/dist/nylas-web-elements/p-eaa9151b.js.map +1 -0
  708. package/dist/nylas-web-elements/{p-3631e6e5.entry.js → p-fe3b8e66.entry.js} +2 -2
  709. package/dist/nylas-web-elements/people-icon.entry.js +1 -1
  710. package/dist/nylas-web-elements/play-icon.entry.js +1 -1
  711. package/dist/nylas-web-elements/refresh-icon.entry.js +1 -1
  712. package/dist/{esm/register-component-0645dce0.js → nylas-web-elements/register-component-e5afe237.js} +8 -2
  713. package/dist/nylas-web-elements/register-component-e5afe237.js.map +1 -0
  714. package/dist/nylas-web-elements/reply-all-icon.entry.js +1 -1
  715. package/dist/nylas-web-elements/reply-icon.entry.js +1 -1
  716. package/dist/nylas-web-elements/{scheduler-config-store-bc59545b.js → scheduler-config-store-0efc3519.js} +8 -1
  717. package/dist/nylas-web-elements/scheduler-config-store-0efc3519.js.map +1 -0
  718. package/dist/{esm/scheduler-store-4d0a4f8a.js → nylas-web-elements/scheduler-store-8ddcc496.js} +2 -2
  719. package/dist/nylas-web-elements/{scheduler-store-4d0a4f8a.js.map → scheduler-store-8ddcc496.js.map} +1 -1
  720. package/dist/nylas-web-elements/search-icon.entry.js +1 -1
  721. package/dist/nylas-web-elements/select-dropdown.entry.js +2 -2
  722. package/dist/nylas-web-elements/sent-icon.entry.js +1 -1
  723. package/dist/nylas-web-elements/spam-icon.entry.js +1 -1
  724. package/dist/nylas-web-elements/star-icon.entry.js +1 -1
  725. package/dist/nylas-web-elements/stop-icon.entry.js +1 -1
  726. package/dist/nylas-web-elements/time-period-selector.entry.js +2 -2
  727. package/dist/nylas-web-elements/tooltip-component.entry.js +1 -1
  728. package/dist/nylas-web-elements/translate-icon.entry.js +1 -1
  729. package/dist/nylas-web-elements/trash-icon.entry.js +1 -1
  730. package/dist/nylas-web-elements/underline-icon.entry.js +1 -1
  731. package/dist/{esm/utils-3a8d433a.js → nylas-web-elements/utils-73d8a928.js} +18 -2
  732. package/dist/{esm/utils-3a8d433a.js.map → nylas-web-elements/utils-73d8a928.js.map} +1 -1
  733. package/dist/nylas-web-elements/warning-icon.entry.js +1 -1
  734. package/dist/types/common/component-types.d.ts +3 -1
  735. package/dist/types/common/nylas-api-request.d.ts +3 -2
  736. package/dist/types/common/register-component.d.ts +1 -0
  737. package/dist/types/common/types.d.ts +3 -1
  738. package/dist/types/components/scheduler/nylas-scheduler/nylas-scheduling.d.ts +1 -1
  739. package/dist/types/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.d.ts +6 -2
  740. package/dist/types/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.d.ts +25 -0
  741. package/dist/types/components/scheduler-editor/nylas-scheduler-editor/LoginRequired.d.ts +4 -0
  742. package/dist/types/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.d.ts +7 -2
  743. package/dist/types/components.d.ts +125 -2
  744. package/dist/types/connector/nylas-scheduler-config-connector/index.d.ts +2 -2
  745. package/dist/types/connector/shared/api/scheduler-config.d.ts +45 -8
  746. package/dist/types/stores/scheduler-config-store.d.ts +2 -0
  747. package/dist/types/utils/utils.d.ts +4 -1
  748. package/package.json +1 -2
  749. package/dist/cjs/google-logo-icon_3.cjs.entry.js.map +0 -1
  750. package/dist/cjs/index.es-447c5aca.js.map +0 -1
  751. package/dist/cjs/index.es-68425511.js.map +0 -1
  752. package/dist/cjs/nylas-api-request-8ec3a89c.js.map +0 -1
  753. package/dist/cjs/nylas-api-request-ab24150d.js.map +0 -1
  754. package/dist/cjs/register-component-d729f3f7.js.map +0 -1
  755. package/dist/cjs/register-component-f1ebc65d.js.map +0 -1
  756. package/dist/cjs/scheduler-config-store-31b83ad3.js.map +0 -1
  757. package/dist/cjs/scheduler-config-store-9c2cc421.js.map +0 -1
  758. package/dist/cjs/utils-53dd7574.js.map +0 -1
  759. package/dist/components/_commonjsHelpers.js +0 -36
  760. package/dist/components/_commonjsHelpers.js.map +0 -1
  761. package/dist/components/index2.js +0 -196
  762. package/dist/components/index2.js.map +0 -1
  763. package/dist/components/nylas-api-request.js +0 -37
  764. package/dist/components/nylas-api-request.js.map +0 -1
  765. package/dist/esm/google-logo-icon_3.entry.js.map +0 -1
  766. package/dist/esm/index.es-2578c6a5.js.map +0 -1
  767. package/dist/esm/index.es-bd511719.js.map +0 -1
  768. package/dist/esm/nylas-api-request-55446aba.js.map +0 -1
  769. package/dist/esm/nylas-api-request-c97a0153.js.map +0 -1
  770. package/dist/esm/register-component-0645dce0.js.map +0 -1
  771. package/dist/esm/register-component-dc659dc3.js.map +0 -1
  772. package/dist/esm/scheduler-config-store-51ee4f42.js.map +0 -1
  773. package/dist/esm/scheduler-config-store-bc59545b.js.map +0 -1
  774. package/dist/esm/utils-c00bdc3c.js.map +0 -1
  775. package/dist/nylas-web-elements/index.es-bd511719.js.map +0 -1
  776. package/dist/nylas-web-elements/nylas-api-request-55446aba.js.map +0 -1
  777. package/dist/nylas-web-elements/p-01bf65c2.entry.js +0 -2
  778. package/dist/nylas-web-elements/p-408dda49.js.map +0 -1
  779. package/dist/nylas-web-elements/p-41c1654e.entry.js +0 -2
  780. package/dist/nylas-web-elements/p-59b6ae90.entry.js +0 -2
  781. package/dist/nylas-web-elements/p-59b6ae90.entry.js.map +0 -1
  782. package/dist/nylas-web-elements/p-65fdfb60.js +0 -2
  783. package/dist/nylas-web-elements/p-65fdfb60.js.map +0 -1
  784. package/dist/nylas-web-elements/p-901f9612.js.map +0 -1
  785. package/dist/nylas-web-elements/p-a3d5a1dd.entry.js +0 -2
  786. package/dist/nylas-web-elements/p-af22da60.entry.js.map +0 -1
  787. package/dist/nylas-web-elements/p-ba3d383f.entry.js +0 -2
  788. package/dist/nylas-web-elements/p-bfdc148c.entry.js +0 -2
  789. package/dist/nylas-web-elements/p-cadc9052.js +0 -2
  790. package/dist/nylas-web-elements/p-cadc9052.js.map +0 -1
  791. package/dist/nylas-web-elements/p-d67d1c72.js +0 -2
  792. package/dist/nylas-web-elements/p-d67d1c72.js.map +0 -1
  793. package/dist/nylas-web-elements/p-d85eecf4.entry.js +0 -2
  794. package/dist/nylas-web-elements/p-dc1cee56.entry.js +0 -2
  795. package/dist/nylas-web-elements/p-dc1cee56.entry.js.map +0 -1
  796. package/dist/nylas-web-elements/p-de63bc35.entry.js +0 -2
  797. package/dist/nylas-web-elements/register-component-0645dce0.js.map +0 -1
  798. package/dist/nylas-web-elements/scheduler-config-store-bc59545b.js.map +0 -1
  799. /package/dist/nylas-web-elements/{p-f48d0571.entry.js.map → p-04e3a98e.entry.js.map} +0 -0
  800. /package/dist/nylas-web-elements/{p-a3d5a1dd.entry.js.map → p-0edb3b69.entry.js.map} +0 -0
  801. /package/dist/nylas-web-elements/{p-40ed7eab.entry.js.map → p-1260ac06.entry.js.map} +0 -0
  802. /package/dist/nylas-web-elements/{p-64364434.entry.js.map → p-18a936a3.entry.js.map} +0 -0
  803. /package/dist/nylas-web-elements/{p-df5e9aaf.js.map → p-1aa7b357.js.map} +0 -0
  804. /package/dist/nylas-web-elements/{p-b2208193.entry.js.map → p-1ab25f04.entry.js.map} +0 -0
  805. /package/dist/nylas-web-elements/{p-42a4c2fd.entry.js.map → p-266f9995.entry.js.map} +0 -0
  806. /package/dist/nylas-web-elements/{p-ad9c3cab.entry.js.map → p-370cdcca.entry.js.map} +0 -0
  807. /package/dist/nylas-web-elements/{p-2c5d5953.entry.js.map → p-3f6155de.entry.js.map} +0 -0
  808. /package/dist/nylas-web-elements/{p-006ab406.entry.js.map → p-424f4d9a.entry.js.map} +0 -0
  809. /package/dist/nylas-web-elements/{p-bfdc148c.entry.js.map → p-47180df9.entry.js.map} +0 -0
  810. /package/dist/nylas-web-elements/{p-5a3809a7.entry.js.map → p-55368bc0.entry.js.map} +0 -0
  811. /package/dist/nylas-web-elements/{p-374527e6.entry.js.map → p-572bf8c2.entry.js.map} +0 -0
  812. /package/dist/nylas-web-elements/{p-2523c292.entry.js.map → p-57b753c6.entry.js.map} +0 -0
  813. /package/dist/nylas-web-elements/{p-a0c2ce03.entry.js.map → p-605142a9.entry.js.map} +0 -0
  814. /package/dist/nylas-web-elements/{p-4d9fceeb.entry.js.map → p-674b6d5d.entry.js.map} +0 -0
  815. /package/dist/nylas-web-elements/{p-39b280e2.entry.js.map → p-6dcc9411.entry.js.map} +0 -0
  816. /package/dist/nylas-web-elements/{p-395f49eb.entry.js.map → p-7692056f.entry.js.map} +0 -0
  817. /package/dist/nylas-web-elements/{p-9dac153b.entry.js.map → p-81ea7310.entry.js.map} +0 -0
  818. /package/dist/nylas-web-elements/{p-a1e27dc5.entry.js.map → p-858f0aad.entry.js.map} +0 -0
  819. /package/dist/nylas-web-elements/{p-baa620b4.entry.js.map → p-8b1a6e27.entry.js.map} +0 -0
  820. /package/dist/nylas-web-elements/{p-deafc6bc.entry.js.map → p-945caf14.entry.js.map} +0 -0
  821. /package/dist/nylas-web-elements/{p-ae01e1cb.entry.js.map → p-9b195811.entry.js.map} +0 -0
  822. /package/dist/nylas-web-elements/{p-409d4410.entry.js.map → p-9c399019.entry.js.map} +0 -0
  823. /package/dist/nylas-web-elements/{p-01bf65c2.entry.js.map → p-9d0c0340.entry.js.map} +0 -0
  824. /package/dist/nylas-web-elements/{p-fbbca7a6.entry.js.map → p-9d4bffbb.entry.js.map} +0 -0
  825. /package/dist/nylas-web-elements/{p-7b1bb792.entry.js.map → p-ae893050.entry.js.map} +0 -0
  826. /package/dist/nylas-web-elements/{p-d92a0405.entry.js.map → p-be7124f0.entry.js.map} +0 -0
  827. /package/dist/nylas-web-elements/{p-3da66838.entry.js.map → p-c199d203.entry.js.map} +0 -0
  828. /package/dist/nylas-web-elements/{p-de63bc35.entry.js.map → p-c45ac7c6.entry.js.map} +0 -0
  829. /package/dist/nylas-web-elements/{p-d224c7af.entry.js.map → p-e03b2592.entry.js.map} +0 -0
  830. /package/dist/nylas-web-elements/{p-9f168ff0.js.map → p-e22aa0b0.js.map} +0 -0
  831. /package/dist/nylas-web-elements/{p-3631e6e5.entry.js.map → p-fe3b8e66.entry.js.map} +0 -0
@@ -13,7 +13,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
13
13
  return Reflect.metadata(k, v);
14
14
  };
15
15
  import { RegisterComponent } from "../../../common/register-component";
16
- import { debug } from "../../../utils/utils";
16
+ import { debug, parsePreviewLink } from "../../../utils/utils";
17
17
  import { Host, h } from "@stencil/core";
18
18
  import TabContents from "./tab-contents";
19
19
  export class NylasEditorTabs {
@@ -47,7 +47,7 @@ export class NylasEditorTabs {
47
47
  open_hours: availability ?? [],
48
48
  },
49
49
  booking: {
50
- calendar_id: bookingCalendar ?? 'primary',
50
+ calendar_id: bookingCalendar && bookingCalendar !== '' ? bookingCalendar : 'primary',
51
51
  },
52
52
  },
53
53
  ],
@@ -74,6 +74,7 @@ export class NylasEditorTabs {
74
74
  this.calendars = undefined;
75
75
  this.config = undefined;
76
76
  this.currentUser = undefined;
77
+ this.schedulerPreviewLink = '';
77
78
  this.action = 'create';
78
79
  this.activeTab = 'eventInfo';
79
80
  this.isLoading = false;
@@ -87,7 +88,7 @@ export class NylasEditorTabs {
87
88
  ...this.getFormStateFromConfig(newConfig),
88
89
  };
89
90
  if (newConfig.id) {
90
- this.action = 'update';
91
+ this.action = 'edit';
91
92
  }
92
93
  else {
93
94
  this.action = 'create';
@@ -179,10 +180,19 @@ export class NylasEditorTabs {
179
180
  }
180
181
  render() {
181
182
  debug('[nylas-editor-tabs]', 'render', this.formState);
182
- return (h(Host, { key: 'e26c05a424e53163d97bd14723151c73a870b8be' }, h("form", { key: 'e5c3af66eebb0d133e8a6931d84aa12b5e07d329', onSubmit: this.formSubmissionHandler, class: "scheduler-editor", ref: el => (this.formRef = el) }, h("div", { key: 'd24109dc87e9b18fb62bf684c25c08dfa58334ed', class: "form-contents" }, h("div", { key: 'b74f053cbd15654c1d3d43af8a765607fdcd28d3', class: "tabs" }, h("button", { key: 'ccf9034c5bf0194ad5db7ad29ddd46eb6846cfbb', class: { tab: true, active: this.activeTab == 'eventInfo' }, onClick: e => this.setActiveTab(e, 'eventInfo') }, h("calendar-info-icon", { key: '6527d78a3d54f54baa6f7c4552937dbfe992ec96', width: "16", height: "16" }), "Event Info"), h("button", { key: 'e561f4f7ab01629860f13812a14d0bdf92ad7d6b', class: { tab: true, active: this.activeTab == 'availability' }, onClick: e => this.setActiveTab(e, 'availability') }, h("calendar-patterns-icon", { key: 'dde4d0f70cdf0aad66e25e7b683372a0c9035398', width: "16", height: "16" }), "Availability"), h("button", { key: '8a8131ed4f2f07b6f9d228d9bc86667718f5766f', class: { tab: true, active: this.activeTab == 'bookingOptions' }, onClick: e => this.setActiveTab(e, 'bookingOptions') }, h("flow-icon", { key: '1cc07a769eca6090749bc0c04ca3aa283864d925', width: "16", height: "16" }), "Booking Options")), h("div", { key: '2802d58acf7965856f6802b17794dc34cec424e7', class: "tab-content" }, h(TabContents, { key: 'c965af9cecdd91977c8b036f504e33620443b7af', formState: this.formState, activeTab: this.activeTab, calendars: this.calendars, id: this.config?.id ?? 'new' }))), h("div", { key: '2faed468348afb67f0fc867de91c901c5c1546f5', class: "footer" }, h("p", { key: 'd79a6e1562cd3ced4b84a01f8939d8d5c047979c', class: {
183
+ return (h(Host, { key: '5a1e8ee246d47626dce5515c3ec4df3e6ae893a4' }, h("form", { key: 'f49d1fa60f2724c5cae8c1328dfee945ae24f1e2', onSubmit: this.formSubmissionHandler, class: "scheduler-editor", ref: el => (this.formRef = el) }, h("div", { key: 'f0b678836e12c3878128e4b810e5541f00ddee29', class: "form-contents" }, h("div", { key: '910dc155a6b7b01e300084fe405da0d0b0801847', class: "tabs" }, h("button", { key: '80ca54ac98ae0d3b2298ae62253ffcb9d3ae539d', class: { tab: true, active: this.activeTab == 'eventInfo' }, onClick: e => this.setActiveTab(e, 'eventInfo') }, h("calendar-info-icon", { key: '842e45f308921afa7948f8408b84f95d7b802850', width: "16", height: "16" }), "Event Info"), h("button", { key: '7b79207240cbae5dcd554d448f68dc544f2e6c80', class: { tab: true, active: this.activeTab == 'availability' }, onClick: e => this.setActiveTab(e, 'availability') }, h("calendar-patterns-icon", { key: '47b3d8cf7ee50eac7d377ab3faf35c27f1215e96', width: "16", height: "16" }), "Availability"), h("button", { key: 'ffb175caa6ccc4ba377ee4947759d0561ebb089b', class: { tab: true, active: this.activeTab == 'bookingOptions' }, onClick: e => this.setActiveTab(e, 'bookingOptions') }, h("flow-icon", { key: 'fc3bec08bd5080e7b2ec7816bb3c021876c20d7c', width: "16", height: "16" }), "Booking Options")), h("div", { key: '80802e1388eb767bcea718907e75d5b4a2de3701', class: "tab-content" }, h(TabContents, { key: '5c5618341227447d2a41061f415e54d83efc354a', formState: this.formState, activeTab: this.activeTab, calendars: this.calendars, id: this.config?.id ?? 'new' }))), h("div", { key: 'd315bad7ea2efe6699557a5e07b55053926a7517', class: "footer" }, h("div", { key: '4c92a480ee6d2f04d9fa36f3e870d414835406e1', class: "preview" }, this.schedulerPreviewLink !== '' && this.action === 'edit' && (h("button-component", { type: "button", disabled: this.isLoading, clickHandler: event => {
184
+ event.preventDefault();
185
+ const previewEvent = this.previewButtonClicked.emit(this.host);
186
+ if (!previewEvent.defaultPrevented) {
187
+ window.open(parsePreviewLink(this.schedulerPreviewLink, this.config), '_blank');
188
+ }
189
+ }, variant: 'basic' }, "Preview"))), h("div", { key: '22fdd2183dcc2c299d2fdacf0db8922a95a5692e', class: "buttons" }, h("p", { key: '63ea7b4d8362f409caec467a7bce22142ccc1b20', class: {
183
190
  'unsaved-changes': this.hasUnsavedChanges && !this.changesSaved,
184
191
  'saved-changes': this.changesSaved,
185
- } }, this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : this.changesSaved ? 'Changes saved!' : ''), h("button-component", { key: '1e77a73ef49c9a17a3cdd7d9adcf49515765de7c', type: "submit", disabled: this.isLoading }, this.isLoading ? (h("span", null, "Saving", h("loading-icon", null), ' ')) : this.action == 'create' ? ('Create') : ('Save changes'))))));
192
+ } }, this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : this.changesSaved ? 'Changes saved!' : ''), h("button-component", { key: '6ceded872ee5510234ff79bff3f0173a72314714', type: "button", disabled: this.isLoading, clickHandler: event => {
193
+ event.preventDefault();
194
+ this.cancelButtonClick.emit();
195
+ }, variant: 'basic' }, "Cancel"), h("button-component", { key: '4f33ad6071f503837395d900b67fafc8605d8043', type: "submit", disabled: this.isLoading }, this.isLoading ? (h("span", null, "Saving", h("loading-icon", null), ' ')) : this.action == 'create' ? ('Create') : ('Save changes')))))));
186
196
  }
187
197
  static get is() { return "nylas-editor-tabs"; }
188
198
  static get encapsulation() { return "scoped"; }
@@ -260,6 +270,24 @@ export class NylasEditorTabs {
260
270
  "tags": [],
261
271
  "text": ""
262
272
  }
273
+ },
274
+ "schedulerPreviewLink": {
275
+ "type": "string",
276
+ "mutable": false,
277
+ "complexType": {
278
+ "original": "string",
279
+ "resolved": "string",
280
+ "references": {}
281
+ },
282
+ "required": false,
283
+ "optional": false,
284
+ "docs": {
285
+ "tags": [],
286
+ "text": "The scheduler preview link to use when the user clicks on the preview button.\nYou can use a placeholder `{config.id}` to replace the configuration id anywhere in the link."
287
+ },
288
+ "attribute": "scheduler-preview-link",
289
+ "reflect": false,
290
+ "defaultValue": "''"
263
291
  }
264
292
  };
265
293
  }
@@ -286,7 +314,7 @@ export class NylasEditorTabs {
286
314
  },
287
315
  "complexType": {
288
316
  "original": "SchedulerEventDetail",
289
- "resolved": "{ config: Partial<Configuration>; action: \"create\" | \"update\"; resetLoadingState?: ((e: CustomEvent<any>) => void) | undefined; }",
317
+ "resolved": "{ config: Partial<Configuration>; action: \"create\" | \"edit\"; resetLoadingState?: ((e: CustomEvent<any>) => void) | undefined; }",
290
318
  "references": {
291
319
  "SchedulerEventDetail": {
292
320
  "location": "global",
@@ -294,8 +322,44 @@ export class NylasEditorTabs {
294
322
  }
295
323
  }
296
324
  }
325
+ }, {
326
+ "method": "cancelButtonClick",
327
+ "name": "cancelButtonClick",
328
+ "bubbles": true,
329
+ "cancelable": true,
330
+ "composed": true,
331
+ "docs": {
332
+ "tags": [],
333
+ "text": "Event emitted when the user clicks the cancel button."
334
+ },
335
+ "complexType": {
336
+ "original": "void",
337
+ "resolved": "void",
338
+ "references": {}
339
+ }
340
+ }, {
341
+ "method": "previewButtonClicked",
342
+ "name": "previewButtonClicked",
343
+ "bubbles": true,
344
+ "cancelable": true,
345
+ "composed": true,
346
+ "docs": {
347
+ "tags": [],
348
+ "text": "Event emitted when the user clicks the cancel button."
349
+ },
350
+ "complexType": {
351
+ "original": "HTMLNylasEditorTabsElement",
352
+ "resolved": "HTMLNylasEditorTabsElement",
353
+ "references": {
354
+ "HTMLNylasEditorTabsElement": {
355
+ "location": "global",
356
+ "id": "global::HTMLNylasEditorTabsElement"
357
+ }
358
+ }
359
+ }
297
360
  }];
298
361
  }
362
+ static get elementRef() { return "host"; }
299
363
  static get watchers() {
300
364
  return [{
301
365
  "propName": "config",
@@ -326,14 +390,18 @@ __decorate([
326
390
  if (resetLoadingState) {
327
391
  resetLoadingState(event);
328
392
  }
329
- if (action === 'update') {
393
+ if (action === 'edit') {
330
394
  await nylasSchedulerConfigConnector.schedulerConfig.updateConfiguration(config);
331
395
  }
332
396
  else {
333
397
  await nylasSchedulerConfigConnector.schedulerConfig.createConfiguration(config);
334
398
  }
335
399
  },
400
+ cancelButtonClick: async (_, nylasSchedulerConfigConnector) => {
401
+ nylasSchedulerConfigConnector.schedulerConfigStore.state.action = null;
402
+ },
336
403
  },
404
+ localPropsToProp: new Map([['schedulerPreviewLink', 'schedulerPreviewLink']]),
337
405
  fireRegisterEvent: true,
338
406
  }),
339
407
  __metadata("design:type", Function),
@@ -1 +1 @@
1
- {"version":3,"file":"nylas-editor-tabs.js","sourceRoot":"","sources":["../../../../src/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.tsx"],"names":[],"mappings":"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","sourcesContent":["import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { BookingType, Calendar, Configuration } from '@nylas/core';\nimport { Component, 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';\n\ntype SchedulerEventDetail = {\n config: Partial<Configuration>;\n action: 'create' | 'update';\n resetLoadingState?: (e: CustomEvent) => 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 @Prop() calendars?: Calendar[];\n @Prop() config?: Configuration;\n @Prop() currentUser?: User;\n @State() action: 'create' | 'update' = 'create';\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?: any;\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 @Event() schedulerConfigChanged!: EventEmitter<SchedulerEventDetail>;\n\n @Watch('config')\n configChangedHandler(newConfig: Configuration) {\n debug('[nylas-editor-tabs]', 'configChangedHandler', newConfig, this.config);\n this.formState = {\n ...this.getFormStateFromConfig(newConfig),\n };\n\n if (newConfig.id) {\n this.action = 'update';\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.config);\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 this.formState = { ...this.formState, [event.detail.name]: event.detail.value };\n this.hasUnsavedChanges = true;\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: organizerParticipant?.availability?.open_hours ?? undefined,\n calendarIds: organizerParticipant?.availability?.calendar_ids ?? [],\n participants: config?.participants ?? [],\n bookingCalendar: organizerParticipant?.booking?.calendar_id ?? organizerParticipant?.email ?? '',\n location: this.config?.event_booking?.location ?? '',\n bookingType: this.config?.event_booking?.booking_type ?? 'booking',\n buffer: this.config?.availability?.availability_rules?.buffer ?? { before: 0, after: 0 },\n availableDaysInFuture: this.config?.scheduler?.available_days_in_future ?? 30,\n minCancellationNotice: this.config?.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 this.formState = { ...this.formState };\n }\n\n setActiveTab(e: Event, tabName: string) {\n e.preventDefault();\n this.updateFormState();\n this.activeTab = tabName;\n }\n\n formSubmissionHandler = async (event: Event) => {\n event.preventDefault();\n this.isLoading = true;\n this.hasUnsavedChanges = false;\n this.updateFormState();\n const { title, description, duration, availability, calendarIds, bookingCalendar, location, bookingType, buffer, availableDaysInFuture, minCancellationNotice } =\n this.formState;\n\n const organizer = this.config?.participants?.find(p => p.is_organizer);\n\n const configObject: Partial<Configuration> = {\n ...(this.config?.id && { id: this.config.id }),\n version: this.config?.version ?? '1.0.0',\n availability: {\n duration_minutes: duration ? parseInt(duration) : 0,\n availability_rules: {\n availability_method: this.config?.availability?.availability_rules?.availability_method ?? 'collective',\n buffer: buffer || { before: 0, after: 0 },\n default_open_hours: this.config?.availability?.availability_rules?.default_open_hours ?? [],\n round_robin_group_id: this.config?.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 ?? [],\n },\n booking: {\n calendar_id: 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 },\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, 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.config', 'config'],\n ['schedulerConfig.currentUser', 'currentUser'],\n ]),\n eventToProps: {\n schedulerConfigChanged: async (event: CustomEvent<SchedulerEventDetail>, nylasSchedulerConfigConnector: NylasSchedulerConfigConnector) => {\n const { resetLoadingState, action, config } = event.detail;\n if (resetLoadingState) {\n resetLoadingState(event);\n }\n\n // If we have an ID, we are updating an existing configuration\n if (action === 'update') {\n await nylasSchedulerConfigConnector.schedulerConfig.updateConfiguration(config);\n } else {\n await nylasSchedulerConfigConnector.schedulerConfig.createConfiguration(config);\n }\n },\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)}>\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.config?.id ?? 'new'} />\n </div>\n </div>\n <div class=\"footer\">\n <p\n class={{\n 'unsaved-changes': this.hasUnsavedChanges && !this.changesSaved,\n 'saved-changes': this.changesSaved,\n }}\n >\n {this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : this.changesSaved ? 'Changes saved!' : ''}\n </p>\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 </form>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"nylas-editor-tabs.js","sourceRoot":"","sources":["../../../../src/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.tsx"],"names":[],"mappings":"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","sourcesContent":["import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug, parsePreviewLink } from '@/utils/utils';\nimport { BookingType, Calendar, Configuration } 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';\n\ntype SchedulerEventDetail = {\n config: Partial<Configuration>;\n action: 'create' | 'edit';\n resetLoadingState?: (e: CustomEvent) => 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() config?: 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 @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?: any;\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 @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 when the user clicks the cancel button.\n */\n @Event() previewButtonClicked!: EventEmitter<HTMLNylasEditorTabsElement>;\n\n @Watch('config')\n configChangedHandler(newConfig: Configuration) {\n debug('[nylas-editor-tabs]', 'configChangedHandler', newConfig, this.config);\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.config);\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 this.formState = { ...this.formState, [event.detail.name]: event.detail.value };\n this.hasUnsavedChanges = true;\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: organizerParticipant?.availability?.open_hours ?? undefined,\n calendarIds: organizerParticipant?.availability?.calendar_ids ?? [],\n participants: config?.participants ?? [],\n bookingCalendar: organizerParticipant?.booking?.calendar_id ?? organizerParticipant?.email ?? '',\n location: this.config?.event_booking?.location ?? '',\n bookingType: this.config?.event_booking?.booking_type ?? 'booking',\n buffer: this.config?.availability?.availability_rules?.buffer ?? { before: 0, after: 0 },\n availableDaysInFuture: this.config?.scheduler?.available_days_in_future ?? 30,\n minCancellationNotice: this.config?.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 this.formState = { ...this.formState };\n }\n\n setActiveTab(e: Event, tabName: string) {\n e.preventDefault();\n this.updateFormState();\n this.activeTab = tabName;\n }\n\n formSubmissionHandler = async (event: Event) => {\n event.preventDefault();\n this.isLoading = true;\n this.hasUnsavedChanges = false;\n this.updateFormState();\n const { title, description, duration, availability, calendarIds, bookingCalendar, location, bookingType, buffer, availableDaysInFuture, minCancellationNotice } =\n this.formState;\n\n const organizer = this.config?.participants?.find(p => p.is_organizer);\n\n const configObject: Partial<Configuration> = {\n ...(this.config?.id && { id: this.config.id }),\n version: this.config?.version ?? '1.0.0',\n availability: {\n duration_minutes: duration ? parseInt(duration) : 0,\n availability_rules: {\n availability_method: this.config?.availability?.availability_rules?.availability_method ?? 'collective',\n buffer: buffer || { before: 0, after: 0 },\n default_open_hours: this.config?.availability?.availability_rules?.default_open_hours ?? [],\n round_robin_group_id: this.config?.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 ?? [],\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 },\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, 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.config', 'config'],\n ['schedulerConfig.currentUser', 'currentUser'],\n ]),\n eventToProps: {\n schedulerConfigChanged: async (event: CustomEvent<SchedulerEventDetail>, nylasSchedulerConfigConnector: NylasSchedulerConfigConnector) => {\n const { resetLoadingState, action, config } = event.detail;\n if (resetLoadingState) {\n resetLoadingState(event);\n }\n\n // If we have an ID, we are updating an existing configuration\n if (action === 'edit') {\n await nylasSchedulerConfigConnector.schedulerConfig.updateConfiguration(config);\n } else {\n await nylasSchedulerConfigConnector.schedulerConfig.createConfiguration(config);\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)}>\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.config?.id ?? 'new'} />\n </div>\n </div>\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.config), '_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 }}\n >\n {this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : 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 }}\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"]}
@@ -29,7 +29,7 @@ export class NylasEventInfo {
29
29
  debug('nylas-event-info', 'disconnectedCallback');
30
30
  }
31
31
  render() {
32
- return (h(Host, { key: '61e095027d4b933ff2d2cc17a5a9d8a6d1add51e' }, h("nylas-form-card", { key: '0aa8cfa9d92db31b33e30879f1baeda834a0b2f0' }, h("h1", { key: '1f8cb65c3b5b821d7f59b06a4ee338e2fd6bcc5b', slot: "header-title", class: "nylas-event-info__title" }, "Event information"), h("h3", { key: '40698f86b92127532457ece61c931eabced1ec25', slot: "header-subtitle", class: "nylas-event-info__subtitle" }, "Enter all event information."), h("div", { key: '724866551790e31b39fa016f6b88629573639cd6', slot: "content", class: "nylas-event-info__content" }, h("slot", { key: 'ef0cd2dd50b7f160d2806d4e4b04f9fd39d1bf83', name: "inputs" })))));
32
+ return (h(Host, { key: 'c558409607a64f0b043b5d4877d52a9bbcc8e451' }, h("nylas-form-card", { key: '9ac2943ec1364a07a7597115a516a301b645f105' }, h("h1", { key: '49647e71b13b778ef37ae197aff7b8885520d0d9', slot: "header-title", class: "nylas-event-info__title" }, "Event information"), h("h3", { key: 'a4378d75f03a8b4ab6902d8f8ef4870b9377e367', slot: "header-subtitle", class: "nylas-event-info__subtitle" }, "Enter all event information."), h("div", { key: '3fcfd8cde128d1afaa038f801ee0be0a74068cac', slot: "content", class: "nylas-event-info__content" }, h("slot", { key: 'e4e986148a526fa0ec2bc89f451403031f8d2c51', name: "inputs" })))));
33
33
  }
34
34
  static get is() { return "nylas-event-info"; }
35
35
  static get encapsulation() { return "shadow"; }
@@ -29,7 +29,7 @@ export class NylasEventLimits {
29
29
  debug('nylas-event-limits', 'disconnectedCallback');
30
30
  }
31
31
  render() {
32
- return (h(Host, { key: '5a2ad0ec53b85623d821f78858c3cff8b5e1a251' }, h("nylas-form-card", { key: '047025e1b53e4b92d4c5add386bae10702a493a0' }, h("h1", { key: '6e4f9438417a7a7037dda67b1b3ebdd09306f748', slot: "header-title", class: "nylas-event-limits__title" }, "Set event limits"), h("h3", { key: '6b2c72590cf35181cba99fdf7ce58a5d55eae153', slot: "header-subtitle", class: "nylas-event-limits__subtitle" }, "Customize event limits for the event."), h("div", { key: 'ed1adf0a9eee51c73b86d78430d77b51db60d9a4', slot: "content", class: "nylas-event-limits__content" }, h("slot", { key: 'b9a4299a7edfc2673afaab690ff610d449f8cd57', name: "inputs" })))));
32
+ return (h(Host, { key: '41a6e89d00846f05f1540b0f1f3b6b8e1ee4e179' }, h("nylas-form-card", { key: 'b68ba99fa9cbb92fba4133b327ce8f4e11ea7d55' }, h("h1", { key: '36fac220420d7bc3ae15a10ce1da95fc2a7ea1d0', slot: "header-title", class: "nylas-event-limits__title" }, "Set event limits"), h("h3", { key: 'bd316f146a23e1e95bd4e691d1ee888ba779b927', slot: "header-subtitle", class: "nylas-event-limits__subtitle" }, "Customize event limits for the event."), h("div", { key: '8eb05024799a6b9dfbbbe4d42ced5ee9e8ded026', slot: "content", class: "nylas-event-limits__content" }, h("slot", { key: 'e8554afe460136b431349042c70946dc2eadf93e', name: "inputs" })))));
33
33
  }
34
34
  static get is() { return "nylas-event-limits"; }
35
35
  static get encapsulation() { return "shadow"; }
@@ -29,7 +29,7 @@ export class NylasFormCard {
29
29
  debug('nylas-event-card', 'disconnectedCallback');
30
30
  }
31
31
  render() {
32
- return (h(Host, { key: 'a25e6cf278893d8152895bedc42fa83584b26ed1' }, h("div", { key: 'ca83bf28168fe3cfff4e910dc80536574c33e55b', class: "nylas-form-card" }, h("div", { key: '0bc4aa5cfc27ed26f301a29b45ab7bafd80f507f', class: "nylas-form-card__header" }, h("slot", { key: '1df96d905cf7c3e563eaf36f9825bb67f190795a', name: "header-title" }), h("slot", { key: 'd62a004ea3fb7a282a986b749a8b5998827cf498', name: "header-subtitle" })), h("div", { key: '6f2f1576516dee66795f3c423fd23725978891b0', class: "nylas-form-card__content" }, h("slot", { key: 'af397af820898e806cf64a7528563a31ce821fd3', name: "content" })))));
32
+ return (h(Host, { key: '81fa6a1951100e90fcf60cf4efaa8b8a3dc92729' }, h("div", { key: '9f813106becb938ea7ef27207c1e1f83e0743b53', class: "nylas-form-card" }, h("div", { key: '157e236b69a61cb4512a8a7affb5d552e0167623', class: "nylas-form-card__header" }, h("slot", { key: '9dd035b05c0e6d6b591b8077dde95586ff0361e8', name: "header-title" }), h("slot", { key: '4e6e6422388ddf05a2ad41f47a5547315ea21507', name: "header-subtitle" })), h("div", { key: '52b8baced8af16d5c2eb96ee038e798a8f7643a2', class: "nylas-form-card__content" }, h("slot", { key: 'af22784e0343f4bcb4dc3689e719162077890c91', name: "content" })))));
33
33
  }
34
34
  static get is() { return "nylas-form-card"; }
35
35
  static get encapsulation() { return "shadow"; }
@@ -79,7 +79,7 @@ export class NylasLimitFutureBookings {
79
79
  }
80
80
  }
81
81
  render() {
82
- return (h(Host, { key: '8057320077aad1ea65297b4cac79fe11f69ab161' }, h("div", { key: '991d810bee6817a1ec26482807fece9d884b7844', class: "nylas-limit-future-bookings", part: "nlfb" }, h("label", { key: 'caf0946d5a7cb202dc02cd596a7721e52278cb55' }, "Limit future bookings", h("span", { key: 'fff09830bc407f7ce1fecf7e6809f2a030ce9a3e', class: "label-icon" }, h("tooltip-component", { key: '8c9cd31ae211d1d3a7f017032d7c1abb3f1c7df6' }, h("info-icon", { key: '43f8b14a4b28effd21e9b5a87b20f63b6bf0061d', slot: "tooltip-icon" }), h("span", { key: 'bdfebd15750111829926da4dc0820f562c4fd9aa', slot: "tooltip-content" }, "Set a limit on how far in the future bookings can be made.")))), h("time-period-selector", { key: 'de949c9c3aa9234102159bdec61efc061ac49408', id: "limit-future-bookings", timePeriods: ['day', 'week', 'month'], exportparts: "tps__number-dropdown: nlfb__number-dropdown, tps__number-dropdown-button: nlfb__number-dropdown-button, tps__number-dropdown-content: nlfb__number-dropdown-content, tps__period-dropdown: nlfb__period-dropdown, tps__period-dropdown-button: nlfb__period-dropdown-button, tps__period-dropdown-content: nlfb__period-dropdown-content", defaultSelectedNumber: this.selectedNumber, defaultSelectedPeriod: this.selectedPeriod }))));
82
+ return (h(Host, { key: '51c0c8da5fd7f5dde898fd72e450f7d964c424c6' }, h("div", { key: '0cca0db28b809eec38f93bb25ad8e7ec281836f0', class: "nylas-limit-future-bookings", part: "nlfb" }, h("label", { key: 'feb8cd912af491a1f26a5e32ec2a7cf6d34309da' }, "Limit future bookings", h("span", { key: 'c1e61e9137428534f80db3222fa0c71b220fe333', class: "label-icon" }, h("tooltip-component", { key: 'b1f429be3c382dfe5b1cf6bfd98f71dd9a3d4b81' }, h("info-icon", { key: 'e52cdd714fa99b9e8ff1b995a15a44474bf7dbdd', slot: "tooltip-icon" }), h("span", { key: '8fc34d1fd12b92312d6e5c380a0aba8a2605285d', slot: "tooltip-content" }, "Set a limit on how far in the future bookings can be made.")))), h("time-period-selector", { key: '3edfddf9214f8729e6d36f4b5aca4fb771829cea', id: "limit-future-bookings", timePeriods: ['day', 'week', 'month'], exportparts: "tps__number-dropdown: nlfb__number-dropdown, tps__number-dropdown-button: nlfb__number-dropdown-button, tps__number-dropdown-content: nlfb__number-dropdown-content, tps__period-dropdown: nlfb__period-dropdown, tps__period-dropdown-button: nlfb__period-dropdown-button, tps__period-dropdown-content: nlfb__period-dropdown-content", defaultSelectedNumber: this.selectedNumber, defaultSelectedPeriod: this.selectedPeriod }))));
83
83
  }
84
84
  static get is() { return "nylas-limit-future-bookings"; }
85
85
  static get encapsulation() { return "shadow"; }
@@ -0,0 +1,105 @@
1
+ :host {
2
+ display: block;
3
+ --nylas-primary: #2563eb;
4
+ --nylas-error: #cc4841;
5
+ --nylas-error-pressed: #992222;
6
+ --nylas-wraning: #f06c00;
7
+ --nylas-success: #16a392;
8
+ --nylas-info: #2b8fc2;
9
+ --nylas-base-0: #ffffff;
10
+ --nylas-base-25: #fcfcfd;
11
+ --nylas-base-50: #f8f9fc;
12
+ --nylas-base-100: #eaecf5;
13
+ --nylas-base-200: #d5d9eb;
14
+ --nylas-base-300: #b3b8d8;
15
+ --nylas-base-400: #717bbc;
16
+ --nylas-base-500: #4e5ba6;
17
+ --nylas-base-600: #3e4784;
18
+ --nylas-base-700: #263f72;
19
+ --nylas-base-800: #293056;
20
+ --nylas-base-900: #101323;
21
+ --nylas-base-950: #0e101b;
22
+ --nylas-border-radius: 0.25rem;
23
+ --nylas-border-radius-2x: 0.5rem;
24
+ --nylas-border-radius-3x: 0.75rem;
25
+ --nylas-font-family: "Inter", sans-serif;
26
+ }
27
+
28
+ .header {
29
+ display: flex;
30
+ align-items: center;
31
+ justify-content: space-between;
32
+ margin-bottom: 1rem;
33
+ }
34
+ .header h2 {
35
+ margin: 0;
36
+ font-size: 1.25rem;
37
+ color: var(--nylas-base-900);
38
+ }
39
+ .header p {
40
+ margin: 0;
41
+ font-size: 1rem;
42
+ color: var(--nylas-base-700);
43
+ }
44
+ .header .actions {
45
+ justify-self: end;
46
+ }
47
+
48
+ .configurations {
49
+ border: 1px solid var(--nylas-base-200);
50
+ border-radius: var(--nylas-border-radius-2x);
51
+ }
52
+ .configurations table {
53
+ width: 100%;
54
+ border-spacing: 0;
55
+ border-collapse: collapse;
56
+ }
57
+ .configurations table tr {
58
+ border-bottom: 1px solid var(--nylas-base-200);
59
+ }
60
+ .configurations table tr:last-of-type {
61
+ border-bottom: 0;
62
+ }
63
+ .configurations table tr.no-configurations td > div {
64
+ display: flex;
65
+ height: 100%;
66
+ justify-content: center;
67
+ align-items: center;
68
+ flex-direction: column;
69
+ padding: var(--nylas-border-radius-3x);
70
+ }
71
+ .configurations table tr.no-configurations td > div h3 {
72
+ margin: 0 0 1rem 0;
73
+ color: var(--nylas-base-700);
74
+ }
75
+ .configurations table tr.no-configurations td > div p {
76
+ margin: 0 0 1rem 0;
77
+ color: var(--nylas-base-600);
78
+ }
79
+ .configurations table tr.no-configurations td > div calendar-icon {
80
+ margin-bottom: 1rem;
81
+ color: var(--nylas-base-200);
82
+ }
83
+ .configurations table th,
84
+ .configurations table td {
85
+ text-align: left;
86
+ padding: 1rem;
87
+ }
88
+ .configurations table .actions {
89
+ text-align: right;
90
+ }
91
+ .configurations table .actions {
92
+ display: flex;
93
+ justify-content: flex-end;
94
+ gap: 1rem;
95
+ }
96
+ .configurations table .title {
97
+ display: flex;
98
+ flex-direction: column;
99
+ }
100
+ .configurations table .title .config-event-title {
101
+ font-weight: 600;
102
+ }
103
+ .configurations table .title .config-event-description {
104
+ font-size: 0.75rem;
105
+ }