@nylas/web-elements 1.0.2-canary.2 → 1.1.0-canary.3

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 (1005) hide show
  1. package/dist/cjs/add-circle-icon.cjs.entry.js +2 -2
  2. package/dist/cjs/{add-circle-icon_18.cjs.entry.js → add-circle-icon_22.cjs.entry.js} +425 -97
  3. package/dist/cjs/add-circle-icon_22.cjs.entry.js.map +1 -0
  4. package/dist/cjs/archive-icon.cjs.entry.js +2 -2
  5. package/dist/cjs/archive-icon_7.cjs.entry.js +8 -8
  6. package/dist/cjs/arrow-icon.cjs.entry.js +2 -2
  7. package/dist/cjs/bold-icon.cjs.entry.js +2 -2
  8. package/dist/cjs/bold-icon_3.cjs.entry.js +4 -4
  9. package/dist/cjs/button-component.cjs.entry.js +30 -0
  10. package/dist/cjs/button-component.cjs.entry.js.map +1 -0
  11. package/dist/cjs/calendar-cancel-icon.cjs.entry.js +2 -2
  12. package/dist/cjs/calendar-check-icon.cjs.entry.js +2 -2
  13. package/dist/cjs/calendar-check-icon_2.cjs.entry.js +3 -3
  14. package/dist/cjs/calendar-icon.cjs.entry.js +2 -2
  15. package/dist/cjs/calendar-info-icon.cjs.entry.js +2 -2
  16. package/dist/cjs/calendar-patterns-icon.cjs.entry.js +2 -2
  17. package/dist/cjs/checkmark-circle-icon.cjs.entry.js +2 -2
  18. package/dist/cjs/chevron-icon.cjs.entry.js +2 -2
  19. package/dist/cjs/chevron-icon_3.cjs.entry.js +23 -6
  20. package/dist/cjs/chevron-icon_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/close-icon.cjs.entry.js +2 -2
  22. package/dist/cjs/{constants-9e39ba68.js → constants-0fba94a4.js} +2 -1
  23. package/dist/cjs/{constants-9e39ba68.js.map → constants-0fba94a4.js.map} +1 -1
  24. package/dist/cjs/{constants-c48567b9.js → constants-6baf1f1d.js} +2 -1
  25. package/dist/cjs/{constants-c48567b9.js.map → constants-6baf1f1d.js.map} +1 -1
  26. package/dist/cjs/document-refresh-icon.cjs.entry.js +2 -2
  27. package/dist/cjs/flow-icon.cjs.entry.js +2 -2
  28. package/dist/cjs/folder-icon.cjs.entry.js +2 -2
  29. package/dist/cjs/forward-icon.cjs.entry.js +2 -2
  30. package/dist/cjs/forward-icon_6.cjs.entry.js +9 -9
  31. package/dist/cjs/globe-icon.cjs.entry.js +2 -2
  32. package/dist/cjs/google-logo-icon.cjs.entry.js +23 -0
  33. package/dist/cjs/google-logo-icon.cjs.entry.js.map +1 -0
  34. package/dist/cjs/google-logo-icon_3.cjs.entry.js +302 -0
  35. package/dist/cjs/google-logo-icon_3.cjs.entry.js.map +1 -0
  36. package/dist/cjs/inbox-icon.cjs.entry.js +2 -2
  37. package/dist/cjs/{index-ecd19640.js → index-5ba61c57.js} +2 -2
  38. package/dist/cjs/{index-ecd19640.js.map → index-5ba61c57.js.map} +1 -1
  39. package/dist/cjs/{index-37045c7b.js → index-7af03e3f.js} +482 -21
  40. package/dist/cjs/index-7af03e3f.js.map +1 -0
  41. package/dist/cjs/{index-ec8e2a4d.js → index-c14ea8f5.js} +34 -6
  42. package/dist/cjs/index-c14ea8f5.js.map +1 -0
  43. package/dist/cjs/{index-f969795f.js → index-e31dc92c.js} +2 -2
  44. package/dist/cjs/{index-f969795f.js.map → index-e31dc92c.js.map} +1 -1
  45. package/dist/cjs/index.cjs.js +4 -2
  46. package/dist/cjs/index.cjs.js.map +1 -1
  47. package/dist/cjs/{index.es-9122f5a3.js → index.es-447c5aca.js} +7 -2
  48. package/dist/cjs/index.es-447c5aca.js.map +1 -0
  49. package/dist/cjs/{index.es-3c12ec8c.js → index.es-68425511.js} +7 -2
  50. package/dist/cjs/index.es-68425511.js.map +1 -0
  51. package/dist/cjs/info-icon.cjs.entry.js +2 -2
  52. package/dist/cjs/info-icon_2.cjs.entry.js +3 -3
  53. package/dist/cjs/italic-icon.cjs.entry.js +2 -2
  54. package/dist/cjs/loader.cjs.js +2 -2
  55. package/dist/cjs/loading-icon.cjs.entry.js +2 -2
  56. package/dist/cjs/location-icon.cjs.entry.js +2 -2
  57. package/dist/cjs/location-off-icon.cjs.entry.js +2 -2
  58. package/dist/cjs/{mailbox-store-37622628.js → mailbox-store-556bc7b6.js} +81 -3
  59. package/dist/cjs/mailbox-store-556bc7b6.js.map +1 -0
  60. package/dist/cjs/{mailbox-store-5cd5e485.js → mailbox-store-aacd75ff.js} +81 -3
  61. package/dist/cjs/mailbox-store-aacd75ff.js.map +1 -0
  62. package/dist/cjs/microsoft-logo-icon.cjs.entry.js +23 -0
  63. package/dist/cjs/microsoft-logo-icon.cjs.entry.js.map +1 -0
  64. package/dist/cjs/multi-select-dropdown.cjs.entry.js +3 -3
  65. package/dist/cjs/nylas-additional-participants.cjs.entry.js +6 -6
  66. package/dist/cjs/nylas-additional-participants.cjs.entry.js.map +1 -1
  67. package/dist/cjs/nylas-api-request-8ec3a89c.js +39 -0
  68. package/dist/cjs/nylas-api-request-8ec3a89c.js.map +1 -0
  69. package/dist/cjs/nylas-api-request-ab24150d.js +37 -0
  70. package/dist/cjs/nylas-api-request-ab24150d.js.map +1 -0
  71. package/dist/cjs/nylas-availability-picker.cjs.entry.js +9 -9
  72. package/dist/cjs/nylas-availability-picker.cjs.entry.js.map +1 -1
  73. package/dist/cjs/nylas-booked-event-card.cjs.entry.js +4 -4
  74. package/dist/cjs/nylas-booked-event-card.cjs.entry.js.map +1 -1
  75. package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js +14 -14
  76. package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js.map +1 -1
  77. package/dist/cjs/nylas-booking-calendar-picker.cjs.entry.js +4 -4
  78. package/dist/cjs/nylas-booking-calendar-picker.cjs.entry.js.map +1 -1
  79. package/dist/cjs/nylas-booking-form.cjs.entry.js +3 -3
  80. package/dist/cjs/nylas-booking-form.cjs.entry.js.map +1 -1
  81. package/dist/cjs/nylas-buffer-time.cjs.entry.js +5 -5
  82. package/dist/cjs/nylas-buffer-time.cjs.entry.js.map +1 -1
  83. package/dist/cjs/nylas-calendar-picker.cjs.entry.js +4 -4
  84. package/dist/cjs/nylas-calendar-picker.cjs.entry.js.map +1 -1
  85. package/dist/cjs/nylas-cancel-booking-form.cjs.entry.js +4 -4
  86. package/dist/cjs/nylas-cancel-booking-form.cjs.entry.js.map +1 -1
  87. package/dist/cjs/nylas-cancelled-event-card.cjs.entry.js +3 -3
  88. package/dist/cjs/nylas-composer.cjs.entry.js +2 -2
  89. package/dist/cjs/nylas-custom-booking-flow.cjs.entry.js +3 -3
  90. package/dist/cjs/nylas-custom-booking-flow.cjs.entry.js.map +1 -1
  91. package/dist/cjs/nylas-date-picker.cjs.entry.js +3 -3
  92. package/dist/cjs/nylas-date-picker.cjs.entry.js.map +1 -1
  93. package/dist/cjs/nylas-editor-tabs.cjs.entry.js +100 -48
  94. package/dist/cjs/nylas-editor-tabs.cjs.entry.js.map +1 -1
  95. package/dist/cjs/nylas-event-description.cjs.entry.js +3 -3
  96. package/dist/cjs/nylas-event-description.cjs.entry.js.map +1 -1
  97. package/dist/cjs/nylas-event-duration.cjs.entry.js +4 -4
  98. package/dist/cjs/nylas-event-duration.cjs.entry.js.map +1 -1
  99. package/dist/cjs/nylas-event-info.cjs.entry.js +4 -4
  100. package/dist/cjs/nylas-event-info.cjs.entry.js.map +1 -1
  101. package/dist/cjs/nylas-event-limits.cjs.entry.js +68 -0
  102. package/dist/cjs/nylas-event-limits.cjs.entry.js.map +1 -0
  103. package/dist/cjs/nylas-event-title.cjs.entry.js +4 -4
  104. package/dist/cjs/nylas-event-title.cjs.entry.js.map +1 -1
  105. package/dist/cjs/nylas-form-card.cjs.entry.js +4 -4
  106. package/dist/cjs/nylas-form-card.cjs.entry.js.map +1 -1
  107. package/dist/cjs/nylas-if-state.cjs.entry.js +2 -2
  108. package/dist/cjs/nylas-limit-future-bookings.cjs.entry.js +122 -0
  109. package/dist/cjs/nylas-limit-future-bookings.cjs.entry.js.map +1 -0
  110. package/dist/cjs/nylas-list-folders.cjs.entry.js +3 -3
  111. package/dist/cjs/nylas-list-threads.cjs.entry.js +3 -3
  112. package/dist/cjs/nylas-locale-switch.cjs.entry.js +4 -4
  113. package/dist/cjs/nylas-locale-switch.cjs.entry.js.map +1 -1
  114. package/dist/cjs/nylas-location-component.cjs.entry.js +5 -5
  115. package/dist/cjs/nylas-location-component.cjs.entry.js.map +1 -1
  116. package/dist/cjs/nylas-login.cjs.entry.js +3 -3
  117. package/dist/cjs/nylas-logo.cjs.entry.js +2 -2
  118. package/dist/cjs/nylas-mailbox-pagination.cjs.entry.js +2 -2
  119. package/dist/cjs/nylas-mailbox-toolbar-button.cjs.entry.js +3 -3
  120. package/dist/cjs/nylas-mailbox.cjs.entry.js +12 -13
  121. package/dist/cjs/nylas-mailbox.cjs.entry.js.map +1 -1
  122. package/dist/cjs/nylas-min-cancellation-notice.cjs.entry.js +145 -0
  123. package/dist/cjs/nylas-min-cancellation-notice.cjs.entry.js.map +1 -0
  124. package/dist/cjs/nylas-notification.cjs.entry.js +2 -2
  125. package/dist/cjs/nylas-provider.cjs.entry.js +9 -21
  126. package/dist/cjs/nylas-provider.cjs.entry.js.map +1 -1
  127. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js +7257 -74
  128. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js.map +1 -1
  129. package/dist/cjs/nylas-scheduling.cjs.entry.js +17 -13
  130. package/dist/cjs/nylas-scheduling.cjs.entry.js.map +1 -1
  131. package/dist/cjs/nylas-selected-event-card.cjs.entry.js +4 -4
  132. package/dist/cjs/nylas-selected-event-card.cjs.entry.js.map +1 -1
  133. package/dist/cjs/nylas-summarize-message-button.cjs.entry.js +4 -4
  134. package/dist/cjs/nylas-threads-refresh.cjs.entry.js +4 -4
  135. package/dist/cjs/nylas-threads-search.cjs.entry.js +3 -3
  136. package/dist/cjs/nylas-time-window-picker.cjs.entry.js +4 -4
  137. package/dist/cjs/nylas-time-window-picker.cjs.entry.js.map +1 -1
  138. package/dist/cjs/nylas-timeslot-picker.cjs.entry.js +3 -3
  139. package/dist/cjs/nylas-timeslot-picker.cjs.entry.js.map +1 -1
  140. package/dist/cjs/nylas-view-email.cjs.entry.js +2 -2
  141. package/dist/cjs/nylas-view-thread.cjs.entry.js +3 -3
  142. package/dist/cjs/nylas-web-elements.cjs.js +2 -2
  143. package/dist/cjs/people-icon.cjs.entry.js +2 -2
  144. package/dist/cjs/play-icon.cjs.entry.js +2 -2
  145. package/dist/cjs/play-icon_2.cjs.entry.js +3 -3
  146. package/dist/cjs/refresh-icon.cjs.entry.js +2 -2
  147. package/dist/cjs/{register-component-cc1cf810.js → register-component-d729f3f7.js} +2 -2
  148. package/dist/cjs/{register-component-cc1cf810.js.map → register-component-d729f3f7.js.map} +1 -1
  149. package/dist/cjs/{register-component-dfbd5404.js → register-component-f1ebc65d.js} +2 -2
  150. package/dist/cjs/{register-component-dfbd5404.js.map → register-component-f1ebc65d.js.map} +1 -1
  151. package/dist/cjs/reply-all-icon.cjs.entry.js +2 -2
  152. package/dist/cjs/reply-icon.cjs.entry.js +2 -2
  153. package/dist/cjs/scheduler-config-store-31b83ad3.js +19 -0
  154. package/dist/cjs/scheduler-config-store-31b83ad3.js.map +1 -0
  155. package/dist/cjs/scheduler-config-store-9c2cc421.js +19 -0
  156. package/dist/cjs/scheduler-config-store-9c2cc421.js.map +1 -0
  157. package/dist/cjs/{scheduler-store-65f0fbe5.js → scheduler-store-4cb46b3c.js} +3 -2
  158. package/dist/cjs/scheduler-store-4cb46b3c.js.map +1 -0
  159. package/dist/cjs/{scheduler-store-41b6d179.js → scheduler-store-7320f5d0.js} +3 -2
  160. package/dist/cjs/scheduler-store-7320f5d0.js.map +1 -0
  161. package/dist/cjs/search-icon.cjs.entry.js +2 -2
  162. package/dist/cjs/select-dropdown.cjs.entry.js +21 -4
  163. package/dist/cjs/select-dropdown.cjs.entry.js.map +1 -1
  164. package/dist/cjs/sent-icon.cjs.entry.js +2 -2
  165. package/dist/cjs/spam-icon.cjs.entry.js +2 -2
  166. package/dist/cjs/star-icon.cjs.entry.js +2 -2
  167. package/dist/cjs/stop-icon.cjs.entry.js +2 -2
  168. package/dist/cjs/time-period-selector.cjs.entry.js +104 -0
  169. package/dist/cjs/time-period-selector.cjs.entry.js.map +1 -0
  170. package/dist/cjs/tooltip-component.cjs.entry.js +2 -2
  171. package/dist/cjs/translate-icon.cjs.entry.js +2 -2
  172. package/dist/cjs/trash-icon.cjs.entry.js +2 -2
  173. package/dist/cjs/underline-icon.cjs.entry.js +2 -2
  174. package/dist/cjs/warning-icon.cjs.entry.js +2 -2
  175. package/dist/collection/collection-manifest.json +7 -0
  176. package/dist/collection/common/constants.js +1 -0
  177. package/dist/collection/common/constants.js.map +1 -1
  178. package/dist/collection/common/icons/add-circle.js +1 -1
  179. package/dist/collection/common/icons/archive.js +1 -1
  180. package/dist/collection/common/icons/arrow.js +1 -1
  181. package/dist/collection/common/icons/bold.js +1 -1
  182. package/dist/collection/common/icons/calendar-cancel.js +1 -1
  183. package/dist/collection/common/icons/calendar-check.js +1 -1
  184. package/dist/collection/common/icons/calendar-info.js +1 -1
  185. package/dist/collection/common/icons/calendar-patterns.js +1 -1
  186. package/dist/collection/common/icons/calendar.js +1 -1
  187. package/dist/collection/common/icons/checkmark-circle.js +1 -1
  188. package/dist/collection/common/icons/chevron.js +1 -1
  189. package/dist/collection/common/icons/close.js +1 -1
  190. package/dist/collection/common/icons/document-refresh.js +1 -1
  191. package/dist/collection/common/icons/flow.js +1 -1
  192. package/dist/collection/common/icons/folder.js +1 -1
  193. package/dist/collection/common/icons/forward.js +1 -1
  194. package/dist/collection/common/icons/globe.js +1 -1
  195. package/dist/collection/common/icons/google-logo.js +63 -0
  196. package/dist/collection/common/icons/google-logo.js.map +1 -0
  197. package/dist/collection/common/icons/inbox.js +1 -1
  198. package/dist/collection/common/icons/info.js +1 -1
  199. package/dist/collection/common/icons/italic.js +1 -1
  200. package/dist/collection/common/icons/loading.js +1 -1
  201. package/dist/collection/common/icons/location-off.js +1 -1
  202. package/dist/collection/common/icons/location.js +1 -1
  203. package/dist/collection/common/icons/microsoft-logo.js +63 -0
  204. package/dist/collection/common/icons/microsoft-logo.js.map +1 -0
  205. package/dist/collection/common/icons/nylas-logo.js +1 -1
  206. package/dist/collection/common/icons/people.js +1 -1
  207. package/dist/collection/common/icons/play.js +1 -1
  208. package/dist/collection/common/icons/refresh.js +1 -1
  209. package/dist/collection/common/icons/reply-all.js +1 -1
  210. package/dist/collection/common/icons/reply.js +1 -1
  211. package/dist/collection/common/icons/search.js +1 -1
  212. package/dist/collection/common/icons/sent.js +1 -1
  213. package/dist/collection/common/icons/spam.js +1 -1
  214. package/dist/collection/common/icons/star.js +1 -1
  215. package/dist/collection/common/icons/stop.js +1 -1
  216. package/dist/collection/common/icons/translate.js +1 -1
  217. package/dist/collection/common/icons/trash.js +1 -1
  218. package/dist/collection/common/icons/underline.js +1 -1
  219. package/dist/collection/common/icons/warning.js +1 -1
  220. package/dist/collection/common/nylas-api-request.js +34 -0
  221. package/dist/collection/common/nylas-api-request.js.map +1 -0
  222. package/dist/collection/components/design-system/button-component/button-component.css +73 -0
  223. package/dist/collection/components/design-system/button-component/button-component.js +193 -0
  224. package/dist/collection/components/design-system/button-component/button-component.js.map +1 -0
  225. package/dist/collection/components/design-system/multi-select-dropdown/multi-select-dropdown.js +2 -2
  226. package/dist/collection/components/design-system/select-dropdown/select-dropdown.css +6 -4
  227. package/dist/collection/components/design-system/select-dropdown/select-dropdown.js +42 -2
  228. package/dist/collection/components/design-system/select-dropdown/select-dropdown.js.map +1 -1
  229. package/dist/collection/components/design-system/time-period-selector/time-period-selector.css +22 -0
  230. package/dist/collection/components/design-system/time-period-selector/time-period-selector.js +200 -0
  231. package/dist/collection/components/design-system/time-period-selector/time-period-selector.js.map +1 -0
  232. package/dist/collection/components/design-system/tooltip-component/toolitp-component.js +1 -1
  233. package/dist/collection/components/mailbox/nylas-composer/nylas-composer.js +1 -1
  234. package/dist/collection/components/mailbox/nylas-list-folders/nylas-list-folders.js +1 -1
  235. package/dist/collection/components/mailbox/nylas-list-threads/nylas-list-threads.js +1 -1
  236. package/dist/collection/components/mailbox/nylas-mailbox/nylas-mailbox.js +1 -1
  237. package/dist/collection/components/mailbox/nylas-mailbox-toolbar-button/nylas-mailbox-toolbar-button.js +2 -2
  238. package/dist/collection/components/mailbox/nylas-summarize-message-button/nylas-summarize-message-button.js +2 -2
  239. package/dist/collection/components/mailbox/nylas-threads-refresh/nylas-threads-refresh.js +2 -2
  240. package/dist/collection/components/mailbox/nylas-threads-search/nylas-threads-search.js +1 -1
  241. package/dist/collection/components/mailbox/nylas-view-email/nylas-view-email.js +1 -1
  242. package/dist/collection/components/mailbox/nylas-view-thread/nylas-view-thread.js +1 -1
  243. package/dist/collection/components/nylas-login/nylas-login.js +1 -1
  244. package/dist/collection/components/nylas-provider/nylas-provider.js +1 -1
  245. package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.css +4 -3
  246. package/dist/collection/components/scheduler/nylas-booking-form/nylas-booking-form.css +4 -0
  247. package/dist/collection/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.css +1 -0
  248. package/dist/collection/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.js +1 -1
  249. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js +1 -1
  250. package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.css +20 -10
  251. package/dist/collection/components/scheduler/nylas-locale-switch/nylas-locale-switch.css +6 -1
  252. package/dist/collection/components/scheduler/nylas-locale-switch/test/nylas-locale-switch.spec.js +3 -3
  253. package/dist/collection/components/scheduler/nylas-locale-switch/test/nylas-locale-switch.spec.js.map +1 -1
  254. package/dist/collection/components/scheduler/nylas-notification/nylas-notification.js +1 -1
  255. package/dist/collection/components/scheduler/nylas-scheduler/nylas-scheduling.css +7 -8
  256. package/dist/collection/components/scheduler/nylas-scheduler/nylas-scheduling.js +27 -6
  257. package/dist/collection/components/scheduler/nylas-scheduler/nylas-scheduling.js.map +1 -1
  258. package/dist/collection/components/scheduler/nylas-scheduler/scheduler-view.js +2 -1
  259. package/dist/collection/components/scheduler/nylas-scheduler/scheduler-view.js.map +1 -1
  260. package/dist/collection/components/scheduler/nylas-scheduler/test/nylas-scheduling.spec.js +9 -0
  261. package/dist/collection/components/scheduler/nylas-scheduler/test/nylas-scheduling.spec.js.map +1 -1
  262. package/dist/collection/components/scheduler/nylas-selected-event-card/nylas-selected-event-card.css +12 -2
  263. package/dist/collection/components/scheduler/nylas-timeslot-picker/nylas-timeslot-picker.css +1 -1
  264. package/dist/collection/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.css +5 -16
  265. package/dist/collection/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.js +3 -3
  266. package/dist/collection/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.js.map +1 -1
  267. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.css +49 -3
  268. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js +5 -5
  269. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js.map +1 -1
  270. package/dist/collection/components/scheduler-editor/nylas-availability-picker/test/nylas-availability-picker.spec.js +1 -1
  271. package/dist/collection/components/scheduler-editor/nylas-availability-picker/test/nylas-availability-picker.spec.js.map +1 -1
  272. package/dist/collection/components/scheduler-editor/nylas-booking-calendar-picker/nylas-booking-calendar-picker.css +6 -0
  273. package/dist/collection/components/scheduler-editor/nylas-booking-calendar-picker/nylas-booking-calendar-picker.js +1 -1
  274. package/dist/collection/components/scheduler-editor/nylas-booking-calendar-picker/nylas-booking-calendar-picker.js.map +1 -1
  275. package/dist/collection/components/scheduler-editor/nylas-buffer-time/nylas-buffer-time.js +3 -3
  276. package/dist/collection/components/scheduler-editor/nylas-buffer-time/nylas-buffer-time.js.map +1 -1
  277. package/dist/collection/components/scheduler-editor/nylas-calendar-picker/nylas-calendar-picker.css +6 -0
  278. package/dist/collection/components/scheduler-editor/nylas-calendar-picker/nylas-calendar-picker.js +1 -1
  279. package/dist/collection/components/scheduler-editor/nylas-calendar-picker/nylas-calendar-picker.js.map +1 -1
  280. package/dist/collection/components/scheduler-editor/nylas-custom-booking-flow/nylas-custom-booking-flow.js +1 -1
  281. package/dist/collection/components/scheduler-editor/nylas-custom-booking-flow/nylas-custom-booking-flow.js.map +1 -1
  282. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.css +2 -2
  283. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js +90 -52
  284. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js.map +1 -1
  285. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js +22 -0
  286. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js.map +1 -0
  287. package/dist/collection/components/scheduler-editor/nylas-event-description/nylas-event-description.js +1 -1
  288. package/dist/collection/components/scheduler-editor/nylas-event-description/nylas-event-description.js.map +1 -1
  289. package/dist/collection/components/scheduler-editor/nylas-event-duration/nylas-event-duration.js +2 -2
  290. package/dist/collection/components/scheduler-editor/nylas-event-duration/nylas-event-duration.js.map +1 -1
  291. package/dist/collection/components/scheduler-editor/nylas-event-info/nylas-event-info.css +2 -2
  292. package/dist/collection/components/scheduler-editor/nylas-event-info/nylas-event-info.js +1 -1
  293. package/dist/collection/components/scheduler-editor/nylas-event-limits/nylas-event-limits.css +60 -0
  294. package/dist/collection/components/scheduler-editor/nylas-event-limits/nylas-event-limits.js +59 -0
  295. package/dist/collection/components/scheduler-editor/nylas-event-limits/nylas-event-limits.js.map +1 -0
  296. package/dist/collection/components/scheduler-editor/nylas-event-title/nylas-event-title.js +1 -1
  297. package/dist/collection/components/scheduler-editor/nylas-event-title/nylas-event-title.js.map +1 -1
  298. package/dist/collection/components/scheduler-editor/nylas-form-card/nylas-form-card.css +2 -2
  299. package/dist/collection/components/scheduler-editor/nylas-form-card/nylas-form-card.js +1 -1
  300. package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.css +46 -0
  301. package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.js +191 -0
  302. package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.js.map +1 -0
  303. package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/test/nylas-limit-future-bookings.spec.js +41 -0
  304. package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/test/nylas-limit-future-bookings.spec.js.map +1 -0
  305. package/dist/collection/components/scheduler-editor/nylas-location-component/nylas-location-component.js +3 -3
  306. package/dist/collection/components/scheduler-editor/nylas-location-component/nylas-location-component.js.map +1 -1
  307. package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.css +46 -0
  308. package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.js +214 -0
  309. package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.js.map +1 -0
  310. package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/test/nylas-min-cancellation-notice.spec.js +41 -0
  311. package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/test/nylas-min-cancellation-notice.spec.js.map +1 -0
  312. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.css +73 -1
  313. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js +177 -66
  314. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js.map +1 -1
  315. package/dist/collection/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.css +10 -2
  316. package/dist/collection/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.js +2 -2
  317. package/dist/collection/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.js.map +1 -1
  318. package/dist/collection/connector/connector-interface.js.map +1 -1
  319. package/dist/collection/connector/nylas-connector/index.js +0 -12
  320. package/dist/collection/connector/nylas-connector/index.js.map +1 -1
  321. package/dist/collection/connector/nylas-scheduler-config-connector/index.js +3 -24
  322. package/dist/collection/connector/nylas-scheduler-config-connector/index.js.map +1 -1
  323. package/dist/collection/connector/shared/api/scheduler-config.js +79 -10
  324. package/dist/collection/connector/shared/api/scheduler-config.js.map +1 -1
  325. package/dist/collection/index.js +1 -0
  326. package/dist/collection/index.js.map +1 -1
  327. package/dist/collection/stores/auth-session-store.js +18 -0
  328. package/dist/collection/stores/auth-session-store.js.map +1 -0
  329. package/dist/collection/stores/scheduler-config-store.js +2 -0
  330. package/dist/collection/stores/scheduler-config-store.js.map +1 -1
  331. package/dist/collection/stores/scheduler-store.js +1 -0
  332. package/dist/collection/stores/scheduler-store.js.map +1 -1
  333. package/dist/components/add-circle.js +1 -1
  334. package/dist/components/archive.js +1 -1
  335. package/dist/components/arrow.js +1 -1
  336. package/dist/components/bold.js +1 -1
  337. package/dist/components/button-component.d.ts +11 -0
  338. package/dist/components/button-component.js +8 -0
  339. package/dist/components/button-component.js.map +1 -0
  340. package/dist/components/button-component2.js +50 -0
  341. package/dist/components/button-component2.js.map +1 -0
  342. package/dist/components/calendar-cancel.js +1 -1
  343. package/dist/components/calendar-check.js +1 -1
  344. package/dist/components/calendar-info.js +1 -1
  345. package/dist/components/calendar-patterns.js +1 -1
  346. package/dist/components/calendar.js +1 -1
  347. package/dist/components/checkmark-circle.js +1 -1
  348. package/dist/components/chevron.js +1 -1
  349. package/dist/components/close.js +1 -1
  350. package/dist/components/constants.js +1 -0
  351. package/dist/components/constants.js.map +1 -1
  352. package/dist/components/document-refresh-icon.js +1 -1
  353. package/dist/components/flow.js +1 -1
  354. package/dist/components/folder.js +1 -1
  355. package/dist/components/forward.js +1 -1
  356. package/dist/components/globe.js +1 -1
  357. package/dist/components/google-logo-icon.d.ts +11 -0
  358. package/dist/components/google-logo-icon.js +8 -0
  359. package/dist/components/google-logo-icon.js.map +1 -0
  360. package/dist/components/google-logo.js +37 -0
  361. package/dist/components/google-logo.js.map +1 -0
  362. package/dist/components/inbox.js +1 -1
  363. package/dist/components/index.es.js +6 -2
  364. package/dist/components/index.es.js.map +1 -1
  365. package/dist/components/index.js +1 -0
  366. package/dist/components/index.js.map +1 -1
  367. package/dist/components/info.js +1 -1
  368. package/dist/components/italic.js +1 -1
  369. package/dist/components/loading.js +1 -1
  370. package/dist/components/location-off.js +1 -1
  371. package/dist/components/location.js +1 -1
  372. package/dist/components/mailbox-store.js +78 -2
  373. package/dist/components/mailbox-store.js.map +1 -1
  374. package/dist/components/microsoft-logo-icon.d.ts +11 -0
  375. package/dist/components/microsoft-logo-icon.js +8 -0
  376. package/dist/components/microsoft-logo-icon.js.map +1 -0
  377. package/dist/components/microsoft-logo.js +37 -0
  378. package/dist/components/microsoft-logo.js.map +1 -0
  379. package/dist/components/multi-select-dropdown2.js +2 -2
  380. package/dist/components/nylas-additional-participants.js +4 -4
  381. package/dist/components/nylas-additional-participants.js.map +1 -1
  382. package/dist/components/nylas-api-request.js +37 -0
  383. package/dist/components/nylas-api-request.js.map +1 -0
  384. package/dist/components/nylas-availability-picker2.js +6 -6
  385. package/dist/components/nylas-availability-picker2.js.map +1 -1
  386. package/dist/components/nylas-booked-event-card2.js +1 -1
  387. package/dist/components/nylas-booked-event-card2.js.map +1 -1
  388. package/dist/components/nylas-booking-calendar-picker2.js +2 -2
  389. package/dist/components/nylas-booking-calendar-picker2.js.map +1 -1
  390. package/dist/components/nylas-booking-form2.js +1 -1
  391. package/dist/components/nylas-booking-form2.js.map +1 -1
  392. package/dist/components/nylas-buffer-time2.js +3 -3
  393. package/dist/components/nylas-buffer-time2.js.map +1 -1
  394. package/dist/components/nylas-calendar-picker2.js +2 -2
  395. package/dist/components/nylas-calendar-picker2.js.map +1 -1
  396. package/dist/components/nylas-cancel-booking-form2.js +2 -2
  397. package/dist/components/nylas-cancel-booking-form2.js.map +1 -1
  398. package/dist/components/nylas-cancelled-event-card2.js +1 -1
  399. package/dist/components/nylas-composer2.js +1 -1
  400. package/dist/components/nylas-custom-booking-flow2.js +1 -1
  401. package/dist/components/nylas-custom-booking-flow2.js.map +1 -1
  402. package/dist/components/nylas-date-picker2.js +1 -1
  403. package/dist/components/nylas-date-picker2.js.map +1 -1
  404. package/dist/components/nylas-editor-tabs2.js +184 -101
  405. package/dist/components/nylas-editor-tabs2.js.map +1 -1
  406. package/dist/components/nylas-event-description2.js +1 -1
  407. package/dist/components/nylas-event-description2.js.map +1 -1
  408. package/dist/components/nylas-event-duration2.js +2 -2
  409. package/dist/components/nylas-event-duration2.js.map +1 -1
  410. package/dist/components/nylas-event-info2.js +2 -2
  411. package/dist/components/nylas-event-info2.js.map +1 -1
  412. package/dist/components/nylas-event-limits.d.ts +11 -0
  413. package/dist/components/nylas-event-limits.js +8 -0
  414. package/dist/components/nylas-event-limits.js.map +1 -0
  415. package/dist/components/nylas-event-limits2.js +79 -0
  416. package/dist/components/nylas-event-limits2.js.map +1 -0
  417. package/dist/components/nylas-event-title2.js +1 -1
  418. package/dist/components/nylas-event-title2.js.map +1 -1
  419. package/dist/components/nylas-form-card2.js +2 -2
  420. package/dist/components/nylas-form-card2.js.map +1 -1
  421. package/dist/components/nylas-limit-future-bookings.d.ts +11 -0
  422. package/dist/components/nylas-limit-future-bookings.js +8 -0
  423. package/dist/components/nylas-limit-future-bookings.js.map +1 -0
  424. package/dist/components/nylas-limit-future-bookings2.js +171 -0
  425. package/dist/components/nylas-limit-future-bookings2.js.map +1 -0
  426. package/dist/components/nylas-list-folders.js +1 -1
  427. package/dist/components/nylas-list-threads.js +1 -1
  428. package/dist/components/nylas-locale-switch2.js +1 -1
  429. package/dist/components/nylas-locale-switch2.js.map +1 -1
  430. package/dist/components/nylas-location-component2.js +3 -3
  431. package/dist/components/nylas-location-component2.js.map +1 -1
  432. package/dist/components/nylas-login.js +1 -1
  433. package/dist/components/nylas-logo2.js +1 -1
  434. package/dist/components/nylas-mailbox-toolbar-button.js +1 -1
  435. package/dist/components/nylas-mailbox.js +2 -3
  436. package/dist/components/nylas-mailbox.js.map +1 -1
  437. package/dist/components/nylas-min-cancellation-notice.d.ts +11 -0
  438. package/dist/components/nylas-min-cancellation-notice.js +8 -0
  439. package/dist/components/nylas-min-cancellation-notice.js.map +1 -0
  440. package/dist/components/nylas-min-cancellation-notice2.js +194 -0
  441. package/dist/components/nylas-min-cancellation-notice2.js.map +1 -0
  442. package/dist/components/nylas-notification2.js +1 -1
  443. package/dist/components/nylas-provider.js +3 -15
  444. package/dist/components/nylas-provider.js.map +1 -1
  445. package/dist/components/nylas-scheduler-editor.js +7362 -132
  446. package/dist/components/nylas-scheduler-editor.js.map +1 -1
  447. package/dist/components/nylas-scheduling.js +14 -9
  448. package/dist/components/nylas-scheduling.js.map +1 -1
  449. package/dist/components/nylas-selected-event-card2.js +1 -1
  450. package/dist/components/nylas-selected-event-card2.js.map +1 -1
  451. package/dist/components/nylas-summarize-message-button2.js +2 -2
  452. package/dist/components/nylas-threads-refresh.js +2 -2
  453. package/dist/components/nylas-threads-search.js +1 -1
  454. package/dist/components/nylas-time-window-picker2.js +3 -3
  455. package/dist/components/nylas-time-window-picker2.js.map +1 -1
  456. package/dist/components/nylas-timeslot-picker2.js +1 -1
  457. package/dist/components/nylas-timeslot-picker2.js.map +1 -1
  458. package/dist/components/nylas-view-email2.js +1 -1
  459. package/dist/components/nylas-view-thread.js +1 -1
  460. package/dist/components/people-icon.js +1 -1
  461. package/dist/components/play.js +1 -1
  462. package/dist/components/refresh.js +1 -1
  463. package/dist/components/reply-all.js +1 -1
  464. package/dist/components/reply.js +1 -1
  465. package/dist/components/scheduler-config-store.js +3 -30
  466. package/dist/components/scheduler-config-store.js.map +1 -1
  467. package/dist/components/scheduler-store.js +1 -0
  468. package/dist/components/scheduler-store.js.map +1 -1
  469. package/dist/components/search.js +1 -1
  470. package/dist/components/select-dropdown2.js +25 -4
  471. package/dist/components/select-dropdown2.js.map +1 -1
  472. package/dist/components/sent.js +1 -1
  473. package/dist/components/spam.js +1 -1
  474. package/dist/components/star.js +1 -1
  475. package/dist/components/stop.js +1 -1
  476. package/dist/components/time-period-selector.d.ts +11 -0
  477. package/dist/components/time-period-selector.js +8 -0
  478. package/dist/components/time-period-selector.js.map +1 -0
  479. package/dist/components/time-period-selector2.js +144 -0
  480. package/dist/components/time-period-selector2.js.map +1 -0
  481. package/dist/components/toolitp-component.js +1 -1
  482. package/dist/components/translate.js +1 -1
  483. package/dist/components/trash.js +1 -1
  484. package/dist/components/underline.js +1 -1
  485. package/dist/components/warning.js +1 -1
  486. package/dist/esm/add-circle-icon.entry.js +2 -2
  487. package/dist/esm/{add-circle-icon_18.entry.js → add-circle-icon_22.entry.js} +423 -99
  488. package/dist/esm/add-circle-icon_22.entry.js.map +1 -0
  489. package/dist/esm/archive-icon.entry.js +2 -2
  490. package/dist/esm/archive-icon_7.entry.js +8 -8
  491. package/dist/esm/arrow-icon.entry.js +2 -2
  492. package/dist/esm/bold-icon.entry.js +2 -2
  493. package/dist/esm/bold-icon_3.entry.js +4 -4
  494. package/dist/esm/button-component.entry.js +26 -0
  495. package/dist/esm/button-component.entry.js.map +1 -0
  496. package/dist/esm/calendar-cancel-icon.entry.js +2 -2
  497. package/dist/esm/calendar-check-icon.entry.js +2 -2
  498. package/dist/esm/calendar-check-icon_2.entry.js +3 -3
  499. package/dist/esm/calendar-icon.entry.js +2 -2
  500. package/dist/esm/calendar-info-icon.entry.js +2 -2
  501. package/dist/esm/calendar-patterns-icon.entry.js +2 -2
  502. package/dist/esm/checkmark-circle-icon.entry.js +2 -2
  503. package/dist/esm/chevron-icon.entry.js +2 -2
  504. package/dist/esm/chevron-icon_3.entry.js +23 -6
  505. package/dist/esm/chevron-icon_3.entry.js.map +1 -1
  506. package/dist/esm/close-icon.entry.js +2 -2
  507. package/dist/{nylas-web-elements/constants-56fee505.js → esm/constants-335dffcf.js} +2 -1
  508. package/dist/{nylas-web-elements/constants-56fee505.js.map → esm/constants-335dffcf.js.map} +1 -1
  509. package/dist/esm/{constants-b6bf6671.js → constants-6ee60d6d.js} +2 -1
  510. package/dist/esm/{constants-b6bf6671.js.map → constants-6ee60d6d.js.map} +1 -1
  511. package/dist/esm/document-refresh-icon.entry.js +2 -2
  512. package/dist/esm/flow-icon.entry.js +2 -2
  513. package/dist/esm/folder-icon.entry.js +2 -2
  514. package/dist/esm/forward-icon.entry.js +2 -2
  515. package/dist/esm/forward-icon_6.entry.js +10 -10
  516. package/dist/esm/globe-icon.entry.js +2 -2
  517. package/dist/esm/google-logo-icon.entry.js +19 -0
  518. package/dist/esm/google-logo-icon.entry.js.map +1 -0
  519. package/dist/esm/google-logo-icon_3.entry.js +296 -0
  520. package/dist/esm/google-logo-icon_3.entry.js.map +1 -0
  521. package/dist/esm/inbox-icon.entry.js +2 -2
  522. package/dist/{nylas-web-elements/index-7b27868b.js → esm/index-11d12497.js} +2 -2
  523. package/dist/esm/{index-7b27868b.js.map → index-11d12497.js.map} +1 -1
  524. package/dist/esm/{index-10914bc1.js → index-628f294a.js} +2 -2
  525. package/dist/esm/{index-10914bc1.js.map → index-628f294a.js.map} +1 -1
  526. package/dist/esm/{index-0583f8a8.js → index-7cb0dd3d.js} +482 -21
  527. package/dist/esm/index-7cb0dd3d.js.map +1 -0
  528. package/dist/esm/{index-bda1cba1.js → index-8362ce5c.js} +34 -6
  529. package/dist/esm/index-8362ce5c.js.map +1 -0
  530. package/dist/esm/{index.es-0a5de5bf.js → index.es-2578c6a5.js} +8 -4
  531. package/dist/esm/index.es-2578c6a5.js.map +1 -0
  532. package/dist/{nylas-web-elements/index.es-a9f78dad.js → esm/index.es-bd511719.js} +7 -3
  533. package/dist/esm/index.es-bd511719.js.map +1 -0
  534. package/dist/esm/index.js +3 -2
  535. package/dist/esm/index.js.map +1 -1
  536. package/dist/esm/info-icon.entry.js +2 -2
  537. package/dist/esm/info-icon_2.entry.js +3 -3
  538. package/dist/esm/italic-icon.entry.js +2 -2
  539. package/dist/esm/loader.js +3 -3
  540. package/dist/esm/loading-icon.entry.js +2 -2
  541. package/dist/esm/location-icon.entry.js +2 -2
  542. package/dist/esm/location-off-icon.entry.js +2 -2
  543. package/dist/{nylas-web-elements/mailbox-store-8a1c2d32.js → esm/mailbox-store-150cc456.js} +80 -4
  544. package/dist/esm/mailbox-store-150cc456.js.map +1 -0
  545. package/dist/esm/{mailbox-store-e721b17c.js → mailbox-store-bb21512c.js} +81 -5
  546. package/dist/esm/mailbox-store-bb21512c.js.map +1 -0
  547. package/dist/esm/microsoft-logo-icon.entry.js +19 -0
  548. package/dist/esm/microsoft-logo-icon.entry.js.map +1 -0
  549. package/dist/esm/multi-select-dropdown.entry.js +3 -3
  550. package/dist/esm/nylas-additional-participants.entry.js +6 -6
  551. package/dist/esm/nylas-additional-participants.entry.js.map +1 -1
  552. package/dist/esm/nylas-api-request-55446aba.js +37 -0
  553. package/dist/esm/nylas-api-request-55446aba.js.map +1 -0
  554. package/dist/esm/nylas-api-request-c97a0153.js +35 -0
  555. package/dist/esm/nylas-api-request-c97a0153.js.map +1 -0
  556. package/dist/esm/nylas-availability-picker.entry.js +9 -9
  557. package/dist/esm/nylas-availability-picker.entry.js.map +1 -1
  558. package/dist/esm/nylas-booked-event-card.entry.js +4 -4
  559. package/dist/esm/nylas-booked-event-card.entry.js.map +1 -1
  560. package/dist/esm/nylas-booked-event-card_10.entry.js +15 -15
  561. package/dist/esm/nylas-booked-event-card_10.entry.js.map +1 -1
  562. package/dist/esm/nylas-booking-calendar-picker.entry.js +4 -4
  563. package/dist/esm/nylas-booking-calendar-picker.entry.js.map +1 -1
  564. package/dist/esm/nylas-booking-form.entry.js +3 -3
  565. package/dist/esm/nylas-booking-form.entry.js.map +1 -1
  566. package/dist/esm/nylas-buffer-time.entry.js +5 -5
  567. package/dist/esm/nylas-buffer-time.entry.js.map +1 -1
  568. package/dist/esm/nylas-calendar-picker.entry.js +4 -4
  569. package/dist/esm/nylas-calendar-picker.entry.js.map +1 -1
  570. package/dist/esm/nylas-cancel-booking-form.entry.js +4 -4
  571. package/dist/esm/nylas-cancel-booking-form.entry.js.map +1 -1
  572. package/dist/esm/nylas-cancelled-event-card.entry.js +3 -3
  573. package/dist/esm/nylas-composer.entry.js +2 -2
  574. package/dist/esm/nylas-custom-booking-flow.entry.js +3 -3
  575. package/dist/esm/nylas-custom-booking-flow.entry.js.map +1 -1
  576. package/dist/esm/nylas-date-picker.entry.js +3 -3
  577. package/dist/esm/nylas-date-picker.entry.js.map +1 -1
  578. package/dist/esm/nylas-editor-tabs.entry.js +100 -48
  579. package/dist/esm/nylas-editor-tabs.entry.js.map +1 -1
  580. package/dist/esm/nylas-event-description.entry.js +3 -3
  581. package/dist/esm/nylas-event-description.entry.js.map +1 -1
  582. package/dist/esm/nylas-event-duration.entry.js +4 -4
  583. package/dist/esm/nylas-event-duration.entry.js.map +1 -1
  584. package/dist/esm/nylas-event-info.entry.js +4 -4
  585. package/dist/esm/nylas-event-info.entry.js.map +1 -1
  586. package/dist/esm/nylas-event-limits.entry.js +64 -0
  587. package/dist/esm/nylas-event-limits.entry.js.map +1 -0
  588. package/dist/esm/nylas-event-title.entry.js +4 -4
  589. package/dist/esm/nylas-event-title.entry.js.map +1 -1
  590. package/dist/esm/nylas-form-card.entry.js +4 -4
  591. package/dist/esm/nylas-form-card.entry.js.map +1 -1
  592. package/dist/esm/nylas-if-state.entry.js +2 -2
  593. package/dist/esm/nylas-limit-future-bookings.entry.js +118 -0
  594. package/dist/esm/nylas-limit-future-bookings.entry.js.map +1 -0
  595. package/dist/esm/nylas-list-folders.entry.js +3 -3
  596. package/dist/esm/nylas-list-threads.entry.js +3 -3
  597. package/dist/esm/nylas-locale-switch.entry.js +4 -4
  598. package/dist/esm/nylas-locale-switch.entry.js.map +1 -1
  599. package/dist/esm/nylas-location-component.entry.js +5 -5
  600. package/dist/esm/nylas-location-component.entry.js.map +1 -1
  601. package/dist/esm/nylas-login.entry.js +3 -3
  602. package/dist/esm/nylas-logo.entry.js +2 -2
  603. package/dist/esm/nylas-mailbox-pagination.entry.js +2 -2
  604. package/dist/esm/nylas-mailbox-toolbar-button.entry.js +3 -3
  605. package/dist/esm/nylas-mailbox.entry.js +5 -6
  606. package/dist/esm/nylas-mailbox.entry.js.map +1 -1
  607. package/dist/esm/nylas-min-cancellation-notice.entry.js +141 -0
  608. package/dist/esm/nylas-min-cancellation-notice.entry.js.map +1 -0
  609. package/dist/esm/nylas-notification.entry.js +2 -2
  610. package/dist/esm/nylas-provider.entry.js +7 -19
  611. package/dist/esm/nylas-provider.entry.js.map +1 -1
  612. package/dist/esm/nylas-scheduler-editor.entry.js +7257 -74
  613. package/dist/esm/nylas-scheduler-editor.entry.js.map +1 -1
  614. package/dist/esm/nylas-scheduling.entry.js +17 -13
  615. package/dist/esm/nylas-scheduling.entry.js.map +1 -1
  616. package/dist/esm/nylas-selected-event-card.entry.js +4 -4
  617. package/dist/esm/nylas-selected-event-card.entry.js.map +1 -1
  618. package/dist/esm/nylas-summarize-message-button.entry.js +4 -4
  619. package/dist/esm/nylas-threads-refresh.entry.js +4 -4
  620. package/dist/esm/nylas-threads-search.entry.js +3 -3
  621. package/dist/esm/nylas-time-window-picker.entry.js +4 -4
  622. package/dist/esm/nylas-time-window-picker.entry.js.map +1 -1
  623. package/dist/esm/nylas-timeslot-picker.entry.js +3 -3
  624. package/dist/esm/nylas-timeslot-picker.entry.js.map +1 -1
  625. package/dist/esm/nylas-view-email.entry.js +2 -2
  626. package/dist/esm/nylas-view-thread.entry.js +3 -3
  627. package/dist/esm/nylas-web-elements.js +3 -3
  628. package/dist/esm/people-icon.entry.js +2 -2
  629. package/dist/esm/play-icon.entry.js +2 -2
  630. package/dist/esm/play-icon_2.entry.js +3 -3
  631. package/dist/esm/refresh-icon.entry.js +2 -2
  632. package/dist/{nylas-web-elements/register-component-93f9bcf5.js → esm/register-component-0645dce0.js} +2 -2
  633. package/dist/esm/{register-component-93f9bcf5.js.map → register-component-0645dce0.js.map} +1 -1
  634. package/dist/esm/{register-component-d056a880.js → register-component-dc659dc3.js} +3 -3
  635. package/dist/esm/{register-component-d056a880.js.map → register-component-dc659dc3.js.map} +1 -1
  636. package/dist/esm/reply-all-icon.entry.js +2 -2
  637. package/dist/esm/reply-icon.entry.js +2 -2
  638. package/dist/esm/scheduler-config-store-51ee4f42.js +17 -0
  639. package/dist/esm/scheduler-config-store-51ee4f42.js.map +1 -0
  640. package/dist/esm/scheduler-config-store-bc59545b.js +17 -0
  641. package/dist/esm/scheduler-config-store-bc59545b.js.map +1 -0
  642. package/dist/esm/{scheduler-store-f2e72da4.js → scheduler-store-4d0a4f8a.js} +3 -2
  643. package/dist/esm/scheduler-store-4d0a4f8a.js.map +1 -0
  644. package/dist/esm/{scheduler-store-0fbe642c.js → scheduler-store-72116723.js} +4 -3
  645. package/dist/esm/scheduler-store-72116723.js.map +1 -0
  646. package/dist/esm/search-icon.entry.js +2 -2
  647. package/dist/esm/select-dropdown.entry.js +21 -4
  648. package/dist/esm/select-dropdown.entry.js.map +1 -1
  649. package/dist/esm/sent-icon.entry.js +2 -2
  650. package/dist/esm/spam-icon.entry.js +2 -2
  651. package/dist/esm/star-icon.entry.js +2 -2
  652. package/dist/esm/stop-icon.entry.js +2 -2
  653. package/dist/esm/time-period-selector.entry.js +100 -0
  654. package/dist/esm/time-period-selector.entry.js.map +1 -0
  655. package/dist/esm/tooltip-component.entry.js +2 -2
  656. package/dist/esm/translate-icon.entry.js +2 -2
  657. package/dist/esm/trash-icon.entry.js +2 -2
  658. package/dist/esm/underline-icon.entry.js +2 -2
  659. package/dist/esm/{utils-0cd66d04.js → utils-c00bdc3c.js} +2 -2
  660. package/dist/esm/{utils-0cd66d04.js.map → utils-c00bdc3c.js.map} +1 -1
  661. package/dist/esm/warning-icon.entry.js +2 -2
  662. package/dist/nylas-web-elements/add-circle-icon.entry.js +2 -2
  663. package/dist/nylas-web-elements/archive-icon.entry.js +2 -2
  664. package/dist/nylas-web-elements/arrow-icon.entry.js +2 -2
  665. package/dist/nylas-web-elements/bold-icon.entry.js +2 -2
  666. package/dist/nylas-web-elements/button-component.entry.js +26 -0
  667. package/dist/nylas-web-elements/button-component.entry.js.map +1 -0
  668. package/dist/nylas-web-elements/calendar-cancel-icon.entry.js +2 -2
  669. package/dist/nylas-web-elements/calendar-check-icon.entry.js +2 -2
  670. package/dist/nylas-web-elements/calendar-icon.entry.js +2 -2
  671. package/dist/nylas-web-elements/calendar-info-icon.entry.js +2 -2
  672. package/dist/nylas-web-elements/calendar-patterns-icon.entry.js +2 -2
  673. package/dist/nylas-web-elements/checkmark-circle-icon.entry.js +2 -2
  674. package/dist/nylas-web-elements/chevron-icon.entry.js +2 -2
  675. package/dist/nylas-web-elements/close-icon.entry.js +2 -2
  676. package/dist/{esm/constants-56fee505.js → nylas-web-elements/constants-335dffcf.js} +2 -1
  677. package/dist/{esm/constants-56fee505.js.map → nylas-web-elements/constants-335dffcf.js.map} +1 -1
  678. package/dist/nylas-web-elements/document-refresh-icon.entry.js +2 -2
  679. package/dist/nylas-web-elements/flow-icon.entry.js +2 -2
  680. package/dist/nylas-web-elements/folder-icon.entry.js +2 -2
  681. package/dist/nylas-web-elements/forward-icon.entry.js +2 -2
  682. package/dist/nylas-web-elements/globe-icon.entry.js +2 -2
  683. package/dist/nylas-web-elements/google-logo-icon.entry.js +19 -0
  684. package/dist/nylas-web-elements/google-logo-icon.entry.js.map +1 -0
  685. package/dist/nylas-web-elements/inbox-icon.entry.js +2 -2
  686. package/dist/{esm/index-7b27868b.js → nylas-web-elements/index-11d12497.js} +2 -2
  687. package/dist/nylas-web-elements/{index-7b27868b.js.map → index-11d12497.js.map} +1 -1
  688. package/dist/nylas-web-elements/{index-bda1cba1.js → index-8362ce5c.js} +2 -2
  689. package/dist/nylas-web-elements/index-8362ce5c.js.map +1 -0
  690. package/dist/{esm/index.es-a9f78dad.js → nylas-web-elements/index.es-bd511719.js} +7 -3
  691. package/dist/nylas-web-elements/index.es-bd511719.js.map +1 -0
  692. package/dist/nylas-web-elements/index.esm.js +3 -2
  693. package/dist/nylas-web-elements/index.esm.js.map +1 -1
  694. package/dist/nylas-web-elements/info-icon.entry.js +2 -2
  695. package/dist/nylas-web-elements/italic-icon.entry.js +2 -2
  696. package/dist/nylas-web-elements/loading-icon.entry.js +2 -2
  697. package/dist/nylas-web-elements/location-icon.entry.js +2 -2
  698. package/dist/nylas-web-elements/location-off-icon.entry.js +2 -2
  699. package/dist/{esm/mailbox-store-8a1c2d32.js → nylas-web-elements/mailbox-store-150cc456.js} +80 -4
  700. package/dist/nylas-web-elements/mailbox-store-150cc456.js.map +1 -0
  701. package/dist/nylas-web-elements/microsoft-logo-icon.entry.js +19 -0
  702. package/dist/nylas-web-elements/microsoft-logo-icon.entry.js.map +1 -0
  703. package/dist/nylas-web-elements/multi-select-dropdown.entry.js +3 -3
  704. package/dist/nylas-web-elements/nylas-additional-participants.entry.js +6 -6
  705. package/dist/nylas-web-elements/nylas-additional-participants.entry.js.map +1 -1
  706. package/dist/nylas-web-elements/nylas-api-request-55446aba.js +37 -0
  707. package/dist/nylas-web-elements/nylas-api-request-55446aba.js.map +1 -0
  708. package/dist/nylas-web-elements/nylas-availability-picker.entry.js +9 -9
  709. package/dist/nylas-web-elements/nylas-availability-picker.entry.js.map +1 -1
  710. package/dist/nylas-web-elements/nylas-booked-event-card.entry.js +4 -4
  711. package/dist/nylas-web-elements/nylas-booked-event-card.entry.js.map +1 -1
  712. package/dist/nylas-web-elements/nylas-booking-calendar-picker.entry.js +4 -4
  713. package/dist/nylas-web-elements/nylas-booking-calendar-picker.entry.js.map +1 -1
  714. package/dist/nylas-web-elements/nylas-booking-form.entry.js +3 -3
  715. package/dist/nylas-web-elements/nylas-booking-form.entry.js.map +1 -1
  716. package/dist/nylas-web-elements/nylas-buffer-time.entry.js +5 -5
  717. package/dist/nylas-web-elements/nylas-buffer-time.entry.js.map +1 -1
  718. package/dist/nylas-web-elements/nylas-calendar-picker.entry.js +4 -4
  719. package/dist/nylas-web-elements/nylas-calendar-picker.entry.js.map +1 -1
  720. package/dist/nylas-web-elements/nylas-cancel-booking-form.entry.js +4 -4
  721. package/dist/nylas-web-elements/nylas-cancel-booking-form.entry.js.map +1 -1
  722. package/dist/nylas-web-elements/nylas-cancelled-event-card.entry.js +3 -3
  723. package/dist/nylas-web-elements/nylas-composer.entry.js +2 -2
  724. package/dist/nylas-web-elements/nylas-custom-booking-flow.entry.js +3 -3
  725. package/dist/nylas-web-elements/nylas-custom-booking-flow.entry.js.map +1 -1
  726. package/dist/nylas-web-elements/nylas-date-picker.entry.js +3 -3
  727. package/dist/nylas-web-elements/nylas-date-picker.entry.js.map +1 -1
  728. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js +100 -48
  729. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js.map +1 -1
  730. package/dist/nylas-web-elements/nylas-event-description.entry.js +3 -3
  731. package/dist/nylas-web-elements/nylas-event-description.entry.js.map +1 -1
  732. package/dist/nylas-web-elements/nylas-event-duration.entry.js +4 -4
  733. package/dist/nylas-web-elements/nylas-event-duration.entry.js.map +1 -1
  734. package/dist/nylas-web-elements/nylas-event-info.entry.js +4 -4
  735. package/dist/nylas-web-elements/nylas-event-info.entry.js.map +1 -1
  736. package/dist/nylas-web-elements/nylas-event-limits.entry.js +64 -0
  737. package/dist/nylas-web-elements/nylas-event-limits.entry.js.map +1 -0
  738. package/dist/nylas-web-elements/nylas-event-title.entry.js +4 -4
  739. package/dist/nylas-web-elements/nylas-event-title.entry.js.map +1 -1
  740. package/dist/nylas-web-elements/nylas-form-card.entry.js +4 -4
  741. package/dist/nylas-web-elements/nylas-form-card.entry.js.map +1 -1
  742. package/dist/nylas-web-elements/nylas-if-state.entry.js +2 -2
  743. package/dist/nylas-web-elements/nylas-limit-future-bookings.entry.js +118 -0
  744. package/dist/nylas-web-elements/nylas-limit-future-bookings.entry.js.map +1 -0
  745. package/dist/nylas-web-elements/nylas-list-folders.entry.js +3 -3
  746. package/dist/nylas-web-elements/nylas-list-threads.entry.js +3 -3
  747. package/dist/nylas-web-elements/nylas-locale-switch.entry.js +4 -4
  748. package/dist/nylas-web-elements/nylas-locale-switch.entry.js.map +1 -1
  749. package/dist/nylas-web-elements/nylas-location-component.entry.js +5 -5
  750. package/dist/nylas-web-elements/nylas-location-component.entry.js.map +1 -1
  751. package/dist/nylas-web-elements/nylas-login.entry.js +3 -3
  752. package/dist/nylas-web-elements/nylas-logo.entry.js +2 -2
  753. package/dist/nylas-web-elements/nylas-mailbox-pagination.entry.js +2 -2
  754. package/dist/nylas-web-elements/nylas-mailbox-toolbar-button.entry.js +3 -3
  755. package/dist/nylas-web-elements/nylas-mailbox.entry.js +5 -6
  756. package/dist/nylas-web-elements/nylas-mailbox.entry.js.map +1 -1
  757. package/dist/nylas-web-elements/nylas-min-cancellation-notice.entry.js +141 -0
  758. package/dist/nylas-web-elements/nylas-min-cancellation-notice.entry.js.map +1 -0
  759. package/dist/nylas-web-elements/nylas-notification.entry.js +2 -2
  760. package/dist/nylas-web-elements/nylas-provider.entry.js +7 -19
  761. package/dist/nylas-web-elements/nylas-provider.entry.js.map +1 -1
  762. package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js +7257 -74
  763. package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js.map +1 -1
  764. package/dist/nylas-web-elements/nylas-scheduling.entry.js +17 -13
  765. package/dist/nylas-web-elements/nylas-scheduling.entry.js.map +1 -1
  766. package/dist/nylas-web-elements/nylas-selected-event-card.entry.js +4 -4
  767. package/dist/nylas-web-elements/nylas-selected-event-card.entry.js.map +1 -1
  768. package/dist/nylas-web-elements/nylas-summarize-message-button.entry.js +4 -4
  769. package/dist/nylas-web-elements/nylas-threads-refresh.entry.js +4 -4
  770. package/dist/nylas-web-elements/nylas-threads-search.entry.js +3 -3
  771. package/dist/nylas-web-elements/nylas-time-window-picker.entry.js +4 -4
  772. package/dist/nylas-web-elements/nylas-time-window-picker.entry.js.map +1 -1
  773. package/dist/nylas-web-elements/nylas-timeslot-picker.entry.js +3 -3
  774. package/dist/nylas-web-elements/nylas-timeslot-picker.entry.js.map +1 -1
  775. package/dist/nylas-web-elements/nylas-view-email.entry.js +2 -2
  776. package/dist/nylas-web-elements/nylas-view-thread.entry.js +3 -3
  777. package/dist/nylas-web-elements/nylas-web-elements.esm.js +3 -3
  778. package/dist/nylas-web-elements/p-006ab406.entry.js +2 -0
  779. package/dist/nylas-web-elements/p-006ab406.entry.js.map +1 -0
  780. package/dist/nylas-web-elements/p-01bf65c2.entry.js +2 -0
  781. package/dist/nylas-web-elements/{p-bf2887bd.js → p-1819b3d7.js} +2 -2
  782. package/dist/nylas-web-elements/{p-bf2887bd.js.map → p-1819b3d7.js.map} +1 -1
  783. package/dist/nylas-web-elements/{p-26b75895.entry.js → p-2523c292.entry.js} +2 -2
  784. package/dist/nylas-web-elements/p-2c5d5953.entry.js +2 -0
  785. package/dist/nylas-web-elements/p-2c5d5953.entry.js.map +1 -0
  786. package/dist/nylas-web-elements/p-3631e6e5.entry.js +2 -0
  787. package/dist/nylas-web-elements/p-3631e6e5.entry.js.map +1 -0
  788. package/dist/nylas-web-elements/p-374527e6.entry.js +2 -0
  789. package/dist/nylas-web-elements/p-374527e6.entry.js.map +1 -0
  790. package/dist/nylas-web-elements/{p-0195d832.entry.js → p-395f49eb.entry.js} +2 -2
  791. package/dist/nylas-web-elements/p-39b280e2.entry.js +2 -0
  792. package/dist/nylas-web-elements/p-39b280e2.entry.js.map +1 -0
  793. package/dist/nylas-web-elements/p-3da66838.entry.js +2 -0
  794. package/dist/nylas-web-elements/p-3da66838.entry.js.map +1 -0
  795. package/dist/nylas-web-elements/{p-9955e9b6.js → p-408dda49.js} +2 -2
  796. package/dist/nylas-web-elements/{p-31f12f3f.entry.js → p-409d4410.entry.js} +2 -2
  797. package/dist/nylas-web-elements/{p-3105fc0a.entry.js → p-40ed7eab.entry.js} +2 -2
  798. package/dist/nylas-web-elements/{p-412215d1.entry.js → p-41c1654e.entry.js} +2 -2
  799. package/dist/nylas-web-elements/{p-a959a080.entry.js → p-42a4c2fd.entry.js} +2 -2
  800. package/dist/nylas-web-elements/{p-68f47a72.entry.js → p-4d9fceeb.entry.js} +2 -2
  801. package/dist/nylas-web-elements/p-59b6ae90.entry.js +2 -0
  802. package/dist/nylas-web-elements/p-59b6ae90.entry.js.map +1 -0
  803. package/dist/nylas-web-elements/p-5a3809a7.entry.js +2 -0
  804. package/dist/nylas-web-elements/p-5a3809a7.entry.js.map +1 -0
  805. package/dist/nylas-web-elements/{p-c0fac9fc.entry.js → p-64364434.entry.js} +2 -2
  806. package/dist/nylas-web-elements/p-65fdfb60.js +2 -0
  807. package/dist/nylas-web-elements/p-65fdfb60.js.map +1 -0
  808. package/dist/nylas-web-elements/p-68c2fadf.js +3 -0
  809. package/dist/nylas-web-elements/{p-e4b9d6af.js.map → p-68c2fadf.js.map} +1 -1
  810. package/dist/nylas-web-elements/{p-67f20520.entry.js → p-7b1bb792.entry.js} +3 -3
  811. package/dist/nylas-web-elements/{p-facc84f3.js → p-901f9612.js} +2 -2
  812. package/dist/nylas-web-elements/{p-e324add5.entry.js → p-9dac153b.entry.js} +2 -2
  813. package/dist/nylas-web-elements/p-9f168ff0.js +2 -0
  814. package/dist/nylas-web-elements/{p-ce89d941.js.map → p-9f168ff0.js.map} +1 -1
  815. package/dist/nylas-web-elements/p-a0c2ce03.entry.js +2 -0
  816. package/dist/nylas-web-elements/{p-f8e59935.entry.js → p-a1e27dc5.entry.js} +2 -2
  817. package/dist/nylas-web-elements/p-a3d5a1dd.entry.js +2 -0
  818. package/dist/nylas-web-elements/p-ad9c3cab.entry.js +2 -0
  819. package/dist/nylas-web-elements/p-ad9c3cab.entry.js.map +1 -0
  820. package/dist/nylas-web-elements/{p-5d875283.entry.js → p-ae01e1cb.entry.js} +2 -2
  821. package/dist/nylas-web-elements/p-af22da60.entry.js +17 -0
  822. package/dist/nylas-web-elements/p-af22da60.entry.js.map +1 -0
  823. package/dist/nylas-web-elements/{p-b54b575a.entry.js → p-b2208193.entry.js} +2 -2
  824. package/dist/nylas-web-elements/{p-02435888.entry.js → p-ba3d383f.entry.js} +2 -2
  825. package/dist/nylas-web-elements/{p-f826c690.entry.js → p-baa620b4.entry.js} +2 -2
  826. package/dist/nylas-web-elements/p-bfdc148c.entry.js +2 -0
  827. package/dist/nylas-web-elements/{p-65b275df.js → p-cabb2e68.js} +2 -2
  828. package/dist/nylas-web-elements/p-cadc9052.js +2 -0
  829. package/dist/nylas-web-elements/p-cadc9052.js.map +1 -0
  830. package/dist/nylas-web-elements/p-d224c7af.entry.js +2 -0
  831. package/dist/nylas-web-elements/p-d224c7af.entry.js.map +1 -0
  832. package/dist/nylas-web-elements/p-d67d1c72.js +2 -0
  833. package/dist/nylas-web-elements/p-d67d1c72.js.map +1 -0
  834. package/dist/nylas-web-elements/p-d85eecf4.entry.js +2 -0
  835. package/dist/nylas-web-elements/p-d85eecf4.entry.js.map +1 -0
  836. package/dist/nylas-web-elements/p-d92a0405.entry.js +2 -0
  837. package/dist/nylas-web-elements/p-dc1cee56.entry.js +2 -0
  838. package/dist/nylas-web-elements/p-dc1cee56.entry.js.map +1 -0
  839. package/dist/nylas-web-elements/p-de63bc35.entry.js +2 -0
  840. package/dist/nylas-web-elements/{p-22c0a883.entry.js → p-deafc6bc.entry.js} +2 -2
  841. package/dist/nylas-web-elements/{p-64be0bab.js → p-df5e9aaf.js} +2 -2
  842. package/dist/nylas-web-elements/p-df5e9aaf.js.map +1 -0
  843. package/dist/nylas-web-elements/p-f48d0571.entry.js +2 -0
  844. package/dist/nylas-web-elements/p-fbbca7a6.entry.js +2 -0
  845. package/dist/nylas-web-elements/people-icon.entry.js +2 -2
  846. package/dist/nylas-web-elements/play-icon.entry.js +2 -2
  847. package/dist/nylas-web-elements/refresh-icon.entry.js +2 -2
  848. package/dist/{esm/register-component-93f9bcf5.js → nylas-web-elements/register-component-0645dce0.js} +2 -2
  849. package/dist/nylas-web-elements/{register-component-93f9bcf5.js.map → register-component-0645dce0.js.map} +1 -1
  850. package/dist/nylas-web-elements/reply-all-icon.entry.js +2 -2
  851. package/dist/nylas-web-elements/reply-icon.entry.js +2 -2
  852. package/dist/nylas-web-elements/scheduler-config-store-bc59545b.js +17 -0
  853. package/dist/nylas-web-elements/scheduler-config-store-bc59545b.js.map +1 -0
  854. package/dist/nylas-web-elements/{scheduler-store-f2e72da4.js → scheduler-store-4d0a4f8a.js} +3 -2
  855. package/dist/nylas-web-elements/scheduler-store-4d0a4f8a.js.map +1 -0
  856. package/dist/nylas-web-elements/search-icon.entry.js +2 -2
  857. package/dist/nylas-web-elements/select-dropdown.entry.js +21 -4
  858. package/dist/nylas-web-elements/select-dropdown.entry.js.map +1 -1
  859. package/dist/nylas-web-elements/sent-icon.entry.js +2 -2
  860. package/dist/nylas-web-elements/spam-icon.entry.js +2 -2
  861. package/dist/nylas-web-elements/star-icon.entry.js +2 -2
  862. package/dist/nylas-web-elements/stop-icon.entry.js +2 -2
  863. package/dist/nylas-web-elements/time-period-selector.entry.js +100 -0
  864. package/dist/nylas-web-elements/time-period-selector.entry.js.map +1 -0
  865. package/dist/nylas-web-elements/tooltip-component.entry.js +2 -2
  866. package/dist/nylas-web-elements/translate-icon.entry.js +2 -2
  867. package/dist/nylas-web-elements/trash-icon.entry.js +2 -2
  868. package/dist/nylas-web-elements/underline-icon.entry.js +2 -2
  869. package/dist/nylas-web-elements/warning-icon.entry.js +2 -2
  870. package/dist/types/common/icons/google-logo.d.ts +5 -0
  871. package/dist/types/common/icons/microsoft-logo.d.ts +5 -0
  872. package/dist/types/common/nylas-api-request.d.ts +35 -0
  873. package/dist/types/components/design-system/button-component/button-component.d.ts +13 -0
  874. package/dist/types/components/design-system/select-dropdown/select-dropdown.d.ts +3 -0
  875. package/dist/types/components/design-system/time-period-selector/time-period-selector.d.ts +31 -0
  876. package/dist/types/components/scheduler/nylas-scheduler/nylas-scheduling.d.ts +1 -0
  877. package/dist/types/components/scheduler/nylas-scheduler/scheduler-view.d.ts +1 -0
  878. package/dist/types/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.d.ts +21 -28
  879. package/dist/types/components/scheduler-editor/nylas-editor-tabs/tab-contents.d.ts +7 -0
  880. package/dist/types/components/scheduler-editor/nylas-event-limits/nylas-event-limits.d.ts +8 -0
  881. package/dist/types/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.d.ts +28 -0
  882. package/dist/types/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.d.ts +25 -0
  883. package/dist/types/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.d.ts +12 -10
  884. package/dist/types/components.d.ts +314 -19
  885. package/dist/types/connector/connector-interface.d.ts +1 -1
  886. package/dist/types/connector/nylas-connector/index.d.ts +1 -4
  887. package/dist/types/connector/nylas-scheduler-config-connector/index.d.ts +5 -32
  888. package/dist/types/connector/shared/api/scheduler-config.d.ts +12 -11
  889. package/dist/types/index.d.ts +2 -0
  890. package/dist/types/stores/auth-session-store.d.ts +9 -0
  891. package/dist/types/stores/scheduler-config-store.d.ts +5 -2
  892. package/dist/types/stores/scheduler-store.d.ts +1 -0
  893. package/package.json +10 -7
  894. package/dist/cjs/add-circle-icon_18.cjs.entry.js.map +0 -1
  895. package/dist/cjs/auth-store-78906da5.js +0 -85
  896. package/dist/cjs/auth-store-78906da5.js.map +0 -1
  897. package/dist/cjs/auth-store-be4bbe89.js +0 -85
  898. package/dist/cjs/auth-store-be4bbe89.js.map +0 -1
  899. package/dist/cjs/index-37045c7b.js.map +0 -1
  900. package/dist/cjs/index-ec8e2a4d.js.map +0 -1
  901. package/dist/cjs/index.es-3c12ec8c.js.map +0 -1
  902. package/dist/cjs/index.es-9122f5a3.js.map +0 -1
  903. package/dist/cjs/mailbox-store-37622628.js.map +0 -1
  904. package/dist/cjs/mailbox-store-5cd5e485.js.map +0 -1
  905. package/dist/cjs/nylas-if-state_3.cjs.entry.js +0 -411
  906. package/dist/cjs/nylas-if-state_3.cjs.entry.js.map +0 -1
  907. package/dist/cjs/scheduler-config-store-03b22a70.js +0 -47
  908. package/dist/cjs/scheduler-config-store-03b22a70.js.map +0 -1
  909. package/dist/cjs/scheduler-config-store-9577e499.js +0 -47
  910. package/dist/cjs/scheduler-config-store-9577e499.js.map +0 -1
  911. package/dist/cjs/scheduler-store-41b6d179.js.map +0 -1
  912. package/dist/cjs/scheduler-store-65f0fbe5.js.map +0 -1
  913. package/dist/components/auth-store.js +0 -82
  914. package/dist/components/auth-store.js.map +0 -1
  915. package/dist/esm/add-circle-icon_18.entry.js.map +0 -1
  916. package/dist/esm/auth-store-69ac49c7.js +0 -82
  917. package/dist/esm/auth-store-69ac49c7.js.map +0 -1
  918. package/dist/esm/auth-store-f46d9222.js +0 -82
  919. package/dist/esm/auth-store-f46d9222.js.map +0 -1
  920. package/dist/esm/index-0583f8a8.js.map +0 -1
  921. package/dist/esm/index-bda1cba1.js.map +0 -1
  922. package/dist/esm/index.es-0a5de5bf.js.map +0 -1
  923. package/dist/esm/index.es-a9f78dad.js.map +0 -1
  924. package/dist/esm/mailbox-store-8a1c2d32.js.map +0 -1
  925. package/dist/esm/mailbox-store-e721b17c.js.map +0 -1
  926. package/dist/esm/nylas-if-state_3.entry.js +0 -405
  927. package/dist/esm/nylas-if-state_3.entry.js.map +0 -1
  928. package/dist/esm/scheduler-config-store-4d035001.js +0 -44
  929. package/dist/esm/scheduler-config-store-4d035001.js.map +0 -1
  930. package/dist/esm/scheduler-config-store-8f162729.js +0 -44
  931. package/dist/esm/scheduler-config-store-8f162729.js.map +0 -1
  932. package/dist/esm/scheduler-store-0fbe642c.js.map +0 -1
  933. package/dist/esm/scheduler-store-f2e72da4.js.map +0 -1
  934. package/dist/nylas-web-elements/auth-store-f46d9222.js +0 -82
  935. package/dist/nylas-web-elements/auth-store-f46d9222.js.map +0 -1
  936. package/dist/nylas-web-elements/index-bda1cba1.js.map +0 -1
  937. package/dist/nylas-web-elements/index.es-a9f78dad.js.map +0 -1
  938. package/dist/nylas-web-elements/mailbox-store-8a1c2d32.js.map +0 -1
  939. package/dist/nylas-web-elements/p-18c6ddfa.entry.js +0 -2
  940. package/dist/nylas-web-elements/p-1af51c6b.js +0 -2
  941. package/dist/nylas-web-elements/p-1af51c6b.js.map +0 -1
  942. package/dist/nylas-web-elements/p-1c3b651f.entry.js +0 -2
  943. package/dist/nylas-web-elements/p-1c3b651f.entry.js.map +0 -1
  944. package/dist/nylas-web-elements/p-558faafb.entry.js +0 -2
  945. package/dist/nylas-web-elements/p-558faafb.entry.js.map +0 -1
  946. package/dist/nylas-web-elements/p-5642190a.entry.js +0 -2
  947. package/dist/nylas-web-elements/p-5642190a.entry.js.map +0 -1
  948. package/dist/nylas-web-elements/p-577ecdd4.entry.js +0 -2
  949. package/dist/nylas-web-elements/p-577ecdd4.entry.js.map +0 -1
  950. package/dist/nylas-web-elements/p-578f4029.js +0 -2
  951. package/dist/nylas-web-elements/p-578f4029.js.map +0 -1
  952. package/dist/nylas-web-elements/p-5c72d9a4.js +0 -2
  953. package/dist/nylas-web-elements/p-5c72d9a4.js.map +0 -1
  954. package/dist/nylas-web-elements/p-5fd0eb1d.entry.js +0 -2
  955. package/dist/nylas-web-elements/p-64be0bab.js.map +0 -1
  956. package/dist/nylas-web-elements/p-6aa84fd8.entry.js +0 -2
  957. package/dist/nylas-web-elements/p-6c84f99e.entry.js +0 -2
  958. package/dist/nylas-web-elements/p-6c84f99e.entry.js.map +0 -1
  959. package/dist/nylas-web-elements/p-80079122.entry.js +0 -2
  960. package/dist/nylas-web-elements/p-a30e3755.entry.js +0 -2
  961. package/dist/nylas-web-elements/p-afdac062.entry.js +0 -2
  962. package/dist/nylas-web-elements/p-afdac062.entry.js.map +0 -1
  963. package/dist/nylas-web-elements/p-be3b6e3a.entry.js +0 -2
  964. package/dist/nylas-web-elements/p-be3b6e3a.entry.js.map +0 -1
  965. package/dist/nylas-web-elements/p-cc6721a7.entry.js +0 -2
  966. package/dist/nylas-web-elements/p-ce89d941.js +0 -2
  967. package/dist/nylas-web-elements/p-e4b9d6af.js +0 -3
  968. package/dist/nylas-web-elements/p-e4ec4651.entry.js +0 -2
  969. package/dist/nylas-web-elements/p-e4ec4651.entry.js.map +0 -1
  970. package/dist/nylas-web-elements/p-f442a2f9.entry.js +0 -2
  971. package/dist/nylas-web-elements/p-f78abda8.entry.js +0 -2
  972. package/dist/nylas-web-elements/p-f78abda8.entry.js.map +0 -1
  973. package/dist/nylas-web-elements/p-f8056365.entry.js +0 -2
  974. package/dist/nylas-web-elements/p-fbe6262b.entry.js +0 -2
  975. package/dist/nylas-web-elements/p-fbe6262b.entry.js.map +0 -1
  976. package/dist/nylas-web-elements/scheduler-config-store-8f162729.js +0 -44
  977. package/dist/nylas-web-elements/scheduler-config-store-8f162729.js.map +0 -1
  978. package/dist/nylas-web-elements/scheduler-store-f2e72da4.js.map +0 -1
  979. /package/dist/nylas-web-elements/{p-5fd0eb1d.entry.js.map → p-01bf65c2.entry.js.map} +0 -0
  980. /package/dist/nylas-web-elements/{p-26b75895.entry.js.map → p-2523c292.entry.js.map} +0 -0
  981. /package/dist/nylas-web-elements/{p-0195d832.entry.js.map → p-395f49eb.entry.js.map} +0 -0
  982. /package/dist/nylas-web-elements/{p-9955e9b6.js.map → p-408dda49.js.map} +0 -0
  983. /package/dist/nylas-web-elements/{p-31f12f3f.entry.js.map → p-409d4410.entry.js.map} +0 -0
  984. /package/dist/nylas-web-elements/{p-3105fc0a.entry.js.map → p-40ed7eab.entry.js.map} +0 -0
  985. /package/dist/nylas-web-elements/{p-412215d1.entry.js.map → p-41c1654e.entry.js.map} +0 -0
  986. /package/dist/nylas-web-elements/{p-a959a080.entry.js.map → p-42a4c2fd.entry.js.map} +0 -0
  987. /package/dist/nylas-web-elements/{p-68f47a72.entry.js.map → p-4d9fceeb.entry.js.map} +0 -0
  988. /package/dist/nylas-web-elements/{p-c0fac9fc.entry.js.map → p-64364434.entry.js.map} +0 -0
  989. /package/dist/nylas-web-elements/{p-67f20520.entry.js.map → p-7b1bb792.entry.js.map} +0 -0
  990. /package/dist/nylas-web-elements/{p-facc84f3.js.map → p-901f9612.js.map} +0 -0
  991. /package/dist/nylas-web-elements/{p-e324add5.entry.js.map → p-9dac153b.entry.js.map} +0 -0
  992. /package/dist/nylas-web-elements/{p-6aa84fd8.entry.js.map → p-a0c2ce03.entry.js.map} +0 -0
  993. /package/dist/nylas-web-elements/{p-f8e59935.entry.js.map → p-a1e27dc5.entry.js.map} +0 -0
  994. /package/dist/nylas-web-elements/{p-18c6ddfa.entry.js.map → p-a3d5a1dd.entry.js.map} +0 -0
  995. /package/dist/nylas-web-elements/{p-5d875283.entry.js.map → p-ae01e1cb.entry.js.map} +0 -0
  996. /package/dist/nylas-web-elements/{p-b54b575a.entry.js.map → p-b2208193.entry.js.map} +0 -0
  997. /package/dist/nylas-web-elements/{p-02435888.entry.js.map → p-ba3d383f.entry.js.map} +0 -0
  998. /package/dist/nylas-web-elements/{p-f826c690.entry.js.map → p-baa620b4.entry.js.map} +0 -0
  999. /package/dist/nylas-web-elements/{p-f8056365.entry.js.map → p-bfdc148c.entry.js.map} +0 -0
  1000. /package/dist/nylas-web-elements/{p-65b275df.js.map → p-cabb2e68.js.map} +0 -0
  1001. /package/dist/nylas-web-elements/{p-cc6721a7.entry.js.map → p-d92a0405.entry.js.map} +0 -0
  1002. /package/dist/nylas-web-elements/{p-a30e3755.entry.js.map → p-de63bc35.entry.js.map} +0 -0
  1003. /package/dist/nylas-web-elements/{p-22c0a883.entry.js.map → p-deafc6bc.entry.js.map} +0 -0
  1004. /package/dist/nylas-web-elements/{p-f442a2f9.entry.js.map → p-f48d0571.entry.js.map} +0 -0
  1005. /package/dist/nylas-web-elements/{p-80079122.entry.js.map → p-fbbca7a6.entry.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"file":"mailbox-store-bb21512c.js","mappings":";;;;MAGa,kBAAkB;IAI7B,YAAY,SAAwB,EAAE,cAAkC;QACtE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;KACtC;IAQM,MAAM,eAAe;QAC1B,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxD,IAAI,CAAC,eAAe,EAAE;YAEpB,IAAI,CAAC,MAAM,EAAE,CAAC;SACf;aAAM;YAEL,IAAI,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;YACpD,IAAI,SAAS,EAAE;gBAEb,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;gBACtC,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;gBAE3D,IAAI,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,UAAU,GAAG,oBAAoB,GAAG,eAAe,EAAE;oBACzF,KAAK,CAAC,mDAAmD,CAAC,CAAC;oBAC3D,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC;oBACtD,IAAI,CAAC,SAAS,EAAE;wBACd,KAAK,CAAC,qFAAqF,CAAC,CAAC;wBAC7F,IAAI,CAAC,MAAM,EAAE,CAAC;wBACd,OAAO;qBACR;iBACF;gBAED,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;aACjD;SACF;QACD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,GAAG,eAAe,CAAC;KAC7D;IAMM,MAAM,eAAe;QAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;KACzC;IAMM,MAAM,YAAY;QACvB,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;KACtC;IAMM,MAAM,kBAAkB;QAC7B,OAAO,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC;KAC5C;IAMM,MAAM,MAAM;QACjB,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;KAC/B;IASM,MAAM,wBAAwB,CAAC,MAAiB,EAAE,KAAc,EAAE,QAAiB;QACxF,OAAO,IAAI,CAAC,SAAS,CAAC,wBAAwB,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;KACzE;IAOM,MAAM,4BAA4B,CAAC,UAAkB;QAC1D,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAE1C,IAAI,IAAI,EAAE;YACR,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC;YAC1E,IAAI,SAAS,EAAE;gBACb,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;gBAChD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC;gBACjD,OAAO,SAAS,CAAC;aAClB;SACF;QAED,OAAO,IAAI,CAAC;KACb;;;MC1GU,sBAAsB;IAKjC,YAAY,SAAwB,EAAE,cAAkC,EAAE,iBAAwC;QAChH,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;KAC5C;IAMM,MAAM,WAAW;QACtB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,EAAE;YAC9C,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;QAGD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,EAAE;YACpE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;SACpD;QAGD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC;QAG/C,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,iBAAiB,CAAC;QAGnE,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE;YAC7B,MAAM,KAAK,GAAG,WAAW,CAAC,GAA+B,CAAC,EAAE,QAAQ,EAAE,CAAC;YACvE,IAAI,KAAK,EAAE;gBACT,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;aAC3B;SACF;QAGD,MAAM,IAAI,GAAG,0BAA0B,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;QAG3D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAA2B,IAAI,CAAC,CAAC;QACtF,IAAIA,EAAoB,CAAC,QAAQ,CAAC,EAAE;YAClC,MAAM,IAAIC,EAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SACzC;QAGD,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC/B,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAGjD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC;QAE7C,OAAO,QAAQ,CAAC;KACjB;IAQM,MAAM,iBAAiB,CAAC,QAAgB;QAC7C,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,EAAE;YAC9C,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;QAGD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,EAAE;YACpE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;SACpD;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAA2B,oCAAoC,QAAQ,yBAAyB,CAAC,CAAC;QACvJ,IAAID,EAAoB,CAAC,QAAQ,CAAC,EAAE;YAClC,MAAM,IAAIC,EAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SACzC;QAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC/B,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEjD,OAAO,QAAQ,CAAC;KACjB;IAOM,0BAA0B,CAAC,OAAgB;QAChD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,EAAE;YAC9C,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;QAGD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,EAAE;YACpE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;SACpD;QAGD,MAAM,YAAY,GAAoB,EAAE,CAAC;QACzC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;QAC9C,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;YACpC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,wBAAwB,CAAC,6BAA6B,UAAU,CAAC,EAAE,eAAe,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5H,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,YAAY,CAAC;KACrB;IAOM,MAAM,aAAa,CAAC,IAAY;QACrC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,EAAE;YAC9C,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;QAGD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,EAAE;YACpE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;SACpD;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CACnD,iCAAiC,EACjC,MAAM,EACN;YACE,OAAO,EAAE;gBACP,IAAI,EAAE,IAAI;aACX;SACF,EACD,IAAI,EACJ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,CACrC,CAAC;QAEF,IAAID,EAAoB,CAAC,QAAQ,CAAC,EAAE;YAClC,MAAM,IAAIC,EAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SACzC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;KAC9B;IAOM,MAAM,YAAY,CAAC,IAAY,EAAE,eAAiC;QACvE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,EAAE;YAC9C,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;QAGD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,EAAE;YACpE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;SACpD;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,eAAe,CACnC,2BAA2B,EAC3B,MAAM,EACN;YACE,IAAI;SACL,EACD,KAAK,EACL,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,EACpC;YACE,IAAI,eAAe,GAAG,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;SAChE,CACF,CAAC;KACH;;;MC3KU,qBAAqB;IAMhC,YAAY,SAAwB,EAAE,cAAkC,EAAE,iBAAwC,EAAE,MAAuB;QACzI,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;KACtB;IAUM,MAAM,UAAU,CACrB,mBAAoD,EACpD,eAAmD,WAAW,EAC9D,cAAuB,IAAI;QAE3B,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,EAAE;YAC9C,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;QAGD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,EAAE;YACpE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;SACnD;QAGD,IAAI,WAAW,EAAE;YACf,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC;SAChD;QAGD,MAAM,WAAW,GAAG,mBAAmB,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,kBAAkB,CAAC;QAC3F,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE;YAC7B,MAAM,KAAK,GAAG,WAAW,CAAC,GAA+B,CAAC,EAAE,QAAQ,EAAE,CAAC;YACvE,IAAI,OAAO,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,IAAI,EAAE;gBAClD,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;aAC3B;SACF;QAGD,IAAI,WAAW,CAAC,mBAAmB,EAAE;YACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,WAAW,CAAC,mBAAmB,EAAE,EAAE,IAAI,CAAC,CAAC;SAC1E;aAAM,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,kBAAkB,CAAC,mBAAmB,IAAI,CAAC,WAAW,CAAC,mBAAmB,EAAE;YAClH,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;SACjC;QAGD,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;YAC3B,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC;SAC5D;QAED,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,kBAAkB,GAAG,WAAW,CAAC;QAG9D,MAAM,IAAI,GAAG,yBAAyB,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC1D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAA0B,IAAI,CAAC,CAAC;QACrF,IAAID,EAAoB,CAAC,QAAQ,CAAC,EAAE;YAClC,MAAM,IAAIC,EAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SACzC;QAGD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC9B,QAAQ,YAAY;YAClB,KAAK,SAAS;gBACZ,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,GAAG,OAAO,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC7F,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC;gBAC7F,MAAM;YACR,KAAK,WAAW,CAAC;YACjB;gBACE,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;gBAC/C,MAAM;SACT;QAGD,IAAI,QAAQ,CAAC,WAAW,EAAE;YACxB,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,mBAAmB,GAAG,QAAQ,CAAC,WAAW,CAAC;SACzE;aAAM;YACL,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAC;SACzD;QAGD,IAAI,WAAW,EAAE;YACf,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC;SAC9C;QAED,OAAO,OAAO,CAAC;KAChB;IAEM,MAAM,SAAS,CAAC,QAAgB;QACrC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,EAAE;YAC9C,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;QAGD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,EAAE;YACpE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;SACnD;QAGD,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;QACtF,IAAI,WAAW,EAAE;YACf,OAAO,WAAW,CAAC;SACpB;QAGD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC;QAG/C,MAAM,IAAI,GAAG,yBAAyB,QAAQ,EAAE,CAAC;QACjD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAAwB,IAAI,CAAC,CAAC;QACnF,IAAID,EAAoB,CAAC,QAAQ,CAAC,EAAE;YAClC,MAAM,IAAIC,EAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SACzC;QAGD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC7B,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC/E,IAAI,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,EAAE;gBACtB,OAAO,MAAM,CAAC;aACf;YACD,OAAO,CAAC,CAAC;SACV,CAAC,CAAC;QAGH,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC;QAE7C,OAAO,MAAM,CAAC;KACf;IAQM,MAAM,cAAc,CAAC,eAAmD,WAAW,EAAE,qBAA8B,IAAI;QAC5H,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,mBAAmB,EAAE;YACrD,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;SACvC;QAGD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,wBAAwB,GAAG,KAAK,CAAC,IAAI,CAChE,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,wBAAwB,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,kBAAkB,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CACxI,CAAC;QAGF,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,mBAAmB,CAAC;QAEvE,OAAO,IAAI,CAAC,UAAU,CACpB;YACE,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,kBAAkB;YAClD,UAAU,EAAE,aAAa;SAC1B,EACD,YAAY,EACZ,kBAAkB,CACnB,CAAC;KACH;IAQM,MAAM,kBAAkB,CAAC,gBAAoD,WAAW,EAAE,qBAA8B,IAAI;QACjI,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,wBAAwB,CAAC,MAAM,EAAE;YACjE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;SAC3C;QAGD,MAAM,wBAAwB,GAAG,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC5F,MAAM,SAAS,GAAG,wBAAwB,CAAC,GAAG,EAAE,CAAC;QAGjD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;QAEjF,OAAO,IAAI,CAAC,UAAU,CACpB;YACE,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,kBAAkB;YAClD,UAAU,EAAE,SAAS,IAAI,SAAS;SACnC,EACD,aAAa,EACb,kBAAkB,CACnB,CAAC;KACH;IAOM,uBAAuB,CAAC,MAAsC;QACnE,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,kBAAkB,GAAG;YAChD,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,kBAAkB;YAClD,GAAG,MAAM;SACV,CAAC;KACH;IAKM,IAAI;QACT,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;KACpD;IAKM,cAAc;QACnB,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;KACpD;IAOM,MAAM,YAAY,CAAC,MAAc;QACtC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,GAAG,MAAM,CAAC;QAGrD,IAAI,MAAM,CAAC,MAAM,EAAE;YACjB,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK;gBACvC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;aAC9C,CAAC,CAAC;SACJ;KACF;IAOM,MAAM,gBAAgB,CAAC,MAAc;QAC1C,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;KACrD;IAOM,MAAM,YAAY,CAAC,MAAc,EAAE,YAA6B;QAErE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,EAAE;YAC9C,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;QAGD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE;YACrD,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAChD;QAGD,MAAM,IAAI,GAAG,yBAAyB,MAAM,CAAC,EAAE,EAAE,CAAC;QAClD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAAwB,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;QACxG,IAAID,EAAoB,CAAC,QAAQ,CAAC,EAAE;YAClC,MAAM,IAAIC,EAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SACzC;QAGD,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC;QACpC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC/E,IAAI,CAAC,CAAC,EAAE,KAAK,aAAa,CAAC,EAAE,EAAE;gBAC7B,OAAO,aAAa,CAAC;aACtB;YACD,OAAO,CAAC,CAAC;SACV,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,GAAG,aAAa,CAAC;QAE5D,OAAO,aAAa,CAAC;KACtB;;;MChSU,qBAAqB;IAKhC,YAAY,SAAwB,EAAE,cAAkC,EAAE,iBAAwC;QAChH,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;KAC5C;IAKM,MAAM,UAAU;QACrB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,EAAE;YAC9C,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;QAGD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,EAAE;YACpE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;SACnD;QAGD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC;QAG/C,MAAM,IAAI,GAAG,uBAAuB,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAA0B,IAAI,CAAC,CAAC;QACrF,IAAID,EAAoB,CAAC,QAAQ,CAAC,EAAE;YAClC,MAAM,IAAIC,EAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SACzC;QAGD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC9B,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;QAG/C,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC;QAE7C,OAAO,OAAO,CAAC;KAChB;IAEM,MAAM,YAAY,CAAC,MAAc;QACtC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,kBAAkB,GAAG;YAChD,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,kBAAkB,IAAI,EAAE,CAAC;SAC3D,CAAC;KACH;;;MCjDU,uBAAwB,SAAQ,KAAK;IAIhD,YAAY,IAAY,EAAE,aAAkC;QAC1D,KAAK,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;KACpC;CACF;MAEY,UAAU;IAGrB;QAFQ,yBAAoB,GAA6C,EAAE,CAAC;QAG1E,KAAK,CAAC,wBAAwB,CAAC,CAAC;KACjC;IAGM,OAAO;QACZ,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC5B,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;KACzE;IAGM,IAAI;QACT,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACzB,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAGrE,IAAI,OAAO,eAAe,KAAK,WAAW,EAAE;YAC1C,MAAM,KAAK,GAAoB,IAAI,eAAe,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC/G,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;SAC3B;aAAM;YACL,MAAM,KAAK,GAAU,IAAI,uBAAuB,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7G,IAAI,CAAC,aAAa,CAAC,KAAwB,CAAC,CAAC;SAC9C;KACF;IAEM,sBAAsB,CAAyB,KAAW,EAAE,QAA6B;QAC9F,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAC3C,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;KACnD;IAEM,QAAQ,CAAC,KAAa,EAAE,OAAgB;QAC7C,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAG7B,IAAI,OAAO,EAAE;YACX,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,KAAK,EAAE,CAAC,CAAC;SACxD;QAED,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC;KAC9B;IAEM,QAAQ,CAAC,KAAa;QAC3B,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC7B,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC;KAC9B;IAGM,UAAU,CAAC,KAAa,EAAE,IAAY;QAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAGlC,KAAK,CAAC,+BAA+B,KAAK,SAAS,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;QACtF,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE;YAC/C,OAAO,IAAI,CAAC;SACb;QAED,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM,EAAE;YAC1C,OAAO,KAAK,CAAC;SACd;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC1C,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAChC,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;gBAC7B,SAAS;aACV;YACD,IAAI,SAAS,KAAK,QAAQ,EAAE;gBAC1B,OAAO,KAAK,CAAC;aACd;SACF;QAED,OAAO,IAAI,CAAC;KACb;IAGM,cAAc,CAAyB,KAAW;QACvD,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACnC,MAAM,WAAW,GAAsB,EAAuB,CAAC;QAC/D,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpC,MAAM,gBAAgB,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzD,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,KAAK;YAClC,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;gBAC7B,MAAM,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAA4B,CAAC;gBAC9D,WAAW,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAA+C,CAAC;aAC1F;SACF,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;KACpB;IAEM,kBAAkB,CAAC,KAAa,EAAE,WAAgC;QACvE,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACvC,IAAI,eAAe,GAAG,KAAK,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,GAAG;YAClC,eAAe,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,GAAG,EAAE,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;SACxE,CAAC,CAAC;QACH,OAAO,eAAe,CAAC;KACxB;IAEM,QAAQ;QACb,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC7B,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;KAC7B;IAEM,aAAa,CAAC,KAAsB;QACzC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC;YACxD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3G,KAAK,CAAC,kCAAkC,KAAK,SAAS,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACzE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE;gBACjC,KAAK,CAAC,kCAAkC,KAAK,SAAS,IAAI,iBAAiB,CAAC,CAAC;gBAC7E,OAAO;aACR;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAA2B,CAAC;YACzE,MAAM,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;SAC1C,CAAC,CAAC;KACJ;IAEM,WAAW;QAChB,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAChC,OAAO,EAAE,CAAC;KACX;;;SC7Ha,oBAAoB,CAAC,eAA6C,EAAE;IAClF,MAAM,sBAAsB,GAAwB;QAClD,eAAe,EAAE,KAAK;QACtB,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,OAAO;QACd,GAAG,YAAY;KAChB,CAAC;IACF,MAAM,KAAK,GAAG,WAAW,CAAsB,sBAAsB,CAAC,CAAC;IAOvE,KAAK,CAAC,KAAK,GAAG;QACZ,KAAK,MAAM,GAAG,IAAI,sBAAsB,EAAE;YACxC,MAAM,KAAK,GAAG,sBAAsB,CAAC,GAA0C,CAAC,CAAC;YACjF,KAAK,CAAC,GAAG,CAAC,GAAU,EAAE,KAAK,CAAC,CAAC;SAC9B;KACF,CAAC;IAEF,OAAO,KAAK,CAAC;AACf;;SCXgB,uBAAuB,CAAC,eAAgD,EAAE;IACxF,MAAM,sBAAsB,GAA2B;QACrD,KAAK,EAAE,OAAO;QAEd,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,EAAE;QACX,OAAO,EAAE,EAAE;QACX,cAAc,EAAE,IAAI;QACpB,mBAAmB,EAAE,IAAI;QACzB,wBAAwB,EAAE,EAAE;QAC5B,WAAW,EAAE,EAAE;QAEf,iBAAiB,EAAE,KAAK;QACxB,qBAAqB,EAAE,KAAK;QAE5B,cAAc,EAAE,OAAO;QAEvB,kBAAkB,EAAE;YAClB,EAAE,EAAE,OAAO;SACZ;QACD,iBAAiB,EAAE;YACjB,MAAM,EAAE,iBAAiB;SAC1B;QACD,GAAG,YAAY;KAChB,CAAC;IAEF,MAAM,KAAK,GAAG,WAAW,CAAyB,EAAE,GAAG,sBAAsB,EAAE,CAAC,CAAC;IAGjF,KAAK,CAAC,QAAQ,CAAC,qBAAqB,EAAE,mBAAmB;QACvD,KAAK,CAAC,GAAG,CAAC,mBAAmB,EAAE,mBAAmB,KAAK,IAAI,CAAC,CAAC;KAC9D,CAAC,CAAC;IAEH,KAAK,CAAC,QAAQ,CAAC,0BAA0B,EAAE,wBAAwB;QACjE,KAAK,CAAC,GAAG,CAAC,uBAAuB,EAAE,wBAAwB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;KACzE,CAAC,CAAC;IAGH,KAAK,CAAC,QAAQ,CAAC,oBAAoB,EAAE,kBAAkB;QAErD,KAAK,CAAC,GAAG,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,EAAE,IAAI,OAAO,CAAC,CAAC;QAE9D,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,kBAAkB,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;KACxE,CAAC,CAAC;IAEH,KAAK,CAAC,KAAK,GAAG;QACZ,KAAK,MAAM,GAAG,IAAI,sBAAsB,EAAE;YACxC,MAAM,KAAK,GAAG,sBAAsB,CAAC,GAA0C,CAAC,CAAC;YACjF,KAAK,CAAC,GAAG,CAAC,GAAU,EAAE,KAAK,CAAC,CAAC;SAC9B;KACF,CAAC;IAEF,OAAO,KAAK,CAAC;AACf;;;;","names":["isNylasErrorResponse","NylasAPIError"],"sources":["src/connector/shared/api/auth.ts","src/connector/shared/api/messages.ts","src/connector/shared/api/threads.ts","src/connector/shared/api/folders.ts","src/routers/hash-router.ts","src/stores/auth-store.ts","src/stores/mailbox-store.ts"],"sourcesContent":["import { debug } from '@/utils/utils';\nimport { NylasAuthStoreType, NylasAuthType, TokenInfo } from '../../..';\n\nexport class NylasAuthConnector {\n private nylasAuth: NylasAuthType;\n private nylasAuthStore: NylasAuthStoreType;\n\n constructor(nylasAuth: NylasAuthType, nylasAuthStore: NylasAuthStoreType) {\n this.nylasAuth = nylasAuth;\n this.nylasAuthStore = nylasAuthStore;\n }\n\n /**\n * Validates the current session and updates the store with the token info\n * if the user is authenticated.\n * If the user is not authenticated, the store is reset.\n * @returns {Promise<void>}\n */\n public async validateSession(): Promise<void> {\n const isAuthenticated = await this.isAccessTokenValid();\n if (!isAuthenticated) {\n // Reset the store if the access token is not valid\n this.logout();\n } else {\n // If the user is authenticated, update the store with the token info\n let tokenInfo = await this.nylasAuth.getTokenInfo();\n if (tokenInfo) {\n // If token is expired or about to expire (in 5 minutes), refresh it\n const expireTimeCheck = 5 * 60 * 1000; // 5 minutes\n const currentTimeInSeconds = Math.floor(Date.now() / 1000);\n\n if (tokenInfo.expires_in && tokenInfo.expires_in - currentTimeInSeconds < expireTimeCheck) {\n debug('[NylasAuthConnectorMixin] Refreshing access token');\n tokenInfo = await this.nylasAuth.refreshAccessToken();\n if (!tokenInfo) {\n debug('[NylasAuthConnectorMixin] Token is expired and could not be refreshed. Logging out.');\n this.logout();\n return;\n }\n }\n\n this.nylasAuthStore.state.tokenInfo = tokenInfo;\n }\n }\n this.nylasAuthStore.state.isAuthenticated = isAuthenticated;\n }\n\n /**\n * Returns true if the user is authenticated.\n * @returns {Promise<boolean>}\n */\n public async isAuthenticated(): Promise<boolean> {\n return this.nylasAuth.isAuthenticated();\n }\n\n /**\n * Returns the token info if the user is authenticated.\n * @returns {Promise<TokenInfo>}\n */\n public async getTokenInfo(): Promise<TokenInfo | null> {\n return this.nylasAuth.getTokenInfo();\n }\n\n /**\n * Returns true if the access token is valid.\n * @returns {Promise<boolean>}\n */\n public async isAccessTokenValid(): Promise<boolean> {\n return this.nylasAuth.isAccessTokenValid();\n }\n\n /**\n * Removes the token info from the store and logs the user out.\n * @returns {Promise<void>}\n */\n public async logout(): Promise<void> {\n await this.nylasAuth.logout();\n }\n\n /**\n * Returns the URL to redirect the user to for authentication.\n * @param scopes An array of scopes to request from the user.\n * @param email The email address of the user to authenticate.\n * @param provider The provider to use for authentication.\n * @returns {Promise<string>}\n */\n public async getHostedAuthRedirectURL(scopes?: string[], email?: string, provider?: string): Promise<string> {\n return this.nylasAuth.getHostedAuthRedirectURL(scopes, email, provider);\n }\n\n /**\n * Exchanges the auth code for a token info and updates the store.\n * @param currentUrl The current URL of the page.\n * @returns {Promise<TokenInfo | null>}\n */\n public async manageHostedAuthCodeExchange(currentUrl: string): Promise<TokenInfo | null> {\n const url = new URL(currentUrl);\n const code = url.searchParams.get('code');\n\n if (code) {\n const tokenInfo = await this.nylasAuth.exchangeAuthCodeForTokenInfo(code);\n if (tokenInfo) {\n this.nylasAuthStore.state.tokenInfo = tokenInfo;\n this.nylasAuthStore.state.isAuthenticated = true;\n return tokenInfo;\n }\n }\n\n return null;\n }\n}\n","import { Message, NylasAPIError, NylasAuthType, NylasResponse, isNylasErrorResponse } from '@nylas/core';\nimport { NylasAuthStoreType, NylasMailboxStoreType } from '../../../components';\n\nexport class NylasMessagesConnector {\n private nylasAuth: NylasAuthType;\n private nylasAuthStore: NylasAuthStoreType;\n private nylasMailboxStore: NylasMailboxStoreType;\n\n constructor(nylasAuth: NylasAuthType, nylasAuthStore: NylasAuthStoreType, nylasMailboxStore: NylasMailboxStoreType) {\n this.nylasAuth = nylasAuth;\n this.nylasAuthStore = nylasAuthStore;\n this.nylasMailboxStore = nylasMailboxStore;\n }\n\n /**\n * Returns the list of messages.\n * @returns {Promise<Message[]>}\n */\n public async getMessages(): Promise<Message[]> {\n if (!this.nylasAuthStore.state.isAuthenticated) {\n throw new Error('Not authenticated');\n }\n\n // Now make sure we have a read-only or modify scopes\n if (!this.nylasAuth.hasScopeByType('email', ['read-only', 'modify'])) {\n throw new Error('Missing message:read-only scope');\n }\n\n // Set the state to loading.\n this.nylasMailboxStore.state.state = 'loading';\n\n // Get the message query parameters from the store.\n const queryParams = this.nylasMailboxStore.state.messgeQueryParams;\n\n // Build the URLSearchParams object.\n const params = new URLSearchParams();\n for (const key in queryParams) {\n const value = queryParams[key as keyof typeof queryParams]?.toString();\n if (value) {\n params.append(key, value);\n }\n }\n\n // Build the URL with the query parameters\n const path = `/v3/grants/me/messages?${params.toString()}`;\n\n // Make the API request.\n const response = await this.nylasAuth.nylasAPIRequest<NylasResponse<Message[]>>(path);\n if (isNylasErrorResponse(response)) {\n throw new NylasAPIError(response.error);\n }\n\n // Set the messages in the store.\n const messages = response.data;\n this.nylasMailboxStore.state.messages = messages;\n\n // Set the state to ready.\n this.nylasMailboxStore.state.state = 'ready';\n\n return messages;\n }\n\n /**\n * Returns the list of messages for a given thread.\n * @param {string} threadId The thread ID.\n * @returns {Promise<Message[]>}\n * @throws {NylasAPIError}\n */\n public async getThreadMessages(threadId: string): Promise<Message[]> {\n if (!this.nylasAuthStore.state.isAuthenticated) {\n throw new Error('Not authenticated');\n }\n\n // Now make sure we have a read-only or modify scopes\n if (!this.nylasAuth.hasScopeByType('email', ['read-only', 'modify'])) {\n throw new Error('Missing message:read-only scope');\n }\n\n const response = await this.nylasAuth.nylasAPIRequest<NylasResponse<Message[]>>(`/v3/grants/me/messages?thread_id=${threadId}&fields=include_headers`);\n if (isNylasErrorResponse(response)) {\n throw new NylasAPIError(response.error);\n }\n\n const messages = response.data;\n this.nylasMailboxStore.state.messages = messages;\n\n return messages;\n }\n\n /**\n * Downloads the attachments for a given message.\n * @param message The message to download attachments for.\n * @returns {Promise<Blob>[]} An array of promises that will resolve to a Blob.\n */\n public downloadMessageAttachments(message: Message): Promise<Blob>[] {\n if (!this.nylasAuthStore.state.isAuthenticated) {\n throw new Error('Not authenticated');\n }\n\n // Now make sure we have a read-only or modify scopes\n if (!this.nylasAuth.hasScopeByType('email', ['read-only', 'modify'])) {\n throw new Error('Missing message:read-only scope');\n }\n\n // We'll go through each attachment and download it.\n const blobPromises: Promise<Blob>[] = [];\n const attachments = message.attachments || [];\n for (const attachment of attachments) {\n const blob = this.nylasAuth.nylasDownloadFileRequest(`/v3/grants/me/attachments/${attachment.id}?message_id=${message.id}`);\n blobPromises.push(blob);\n }\n\n return blobPromises;\n }\n\n /**\n * Returns a summarized version of the given text.\n * @param text The non-HTML text to summarize.\n * @returns {Promise<string>} The summarized text.\n */\n public async summarizeText(text: string): Promise<string> {\n if (!this.nylasAuthStore.state.isAuthenticated) {\n throw new Error('Not authenticated');\n }\n\n // Now make sure we have a read-only or modify scopes\n if (!this.nylasAuth.hasScopeByType('email', ['read-only', 'modify'])) {\n throw new Error('Missing message:read-only scope');\n }\n\n const response = await this.nylasAuth.nylasAPIRequest<NylasResponse<{ summary: string }>>(\n `/v3/grants/me/mailbox/summarize`,\n 'POST',\n {\n message: {\n body: text,\n },\n },\n true,\n this.nylasAuth.config.elementsApiUri,\n );\n\n if (isNylasErrorResponse(response)) {\n throw new NylasAPIError(response.error);\n }\n\n return response.data.summary;\n }\n\n /**\n * Returns a summarized version of the given message.\n * @param message The message to summarize.\n * @returns {Promise<ReadableStream<Uint8Array> | null>} Returns a Fetch API response.\n */\n public async textToSpeech(text: string, abortController?: AbortController): Promise<ReadableStream<Uint8Array> | null> {\n if (!this.nylasAuthStore.state.isAuthenticated) {\n throw new Error('Not authenticated');\n }\n\n // Now make sure we have a read-only or modify scopes\n if (!this.nylasAuth.hasScopeByType('email', ['read-only', 'modify'])) {\n throw new Error('Missing message:read-only scope');\n }\n\n return this.nylasAuth.nylasAPIRequest(\n `/v3/grants/me/mailbox/tts`,\n 'POST',\n {\n text,\n },\n false,\n this.nylasAuth.config.elementsApiUri,\n {\n ...(abortController ? { signal: abortController?.signal } : {}),\n },\n );\n }\n}\n","import { debug } from '@/utils/utils';\nimport { NylasAPIError, NylasAuthType, NylasResponse, Thread, ThreadQueryParameters, isNylasErrorResponse } from '@nylas/core';\nimport { NylasAuthStoreType, NylasMailboxStoreType } from '../../../components';\nimport { RouterInterface } from '@/routers/router-interface';\n\nexport class NylasThreadsConnector {\n private nylasAuth: NylasAuthType;\n private nylasAuthStore: NylasAuthStoreType;\n private nylasMailboxStore: NylasMailboxStoreType;\n private router: RouterInterface;\n\n constructor(nylasAuth: NylasAuthType, nylasAuthStore: NylasAuthStoreType, nylasMailboxStore: NylasMailboxStoreType, router: RouterInterface) {\n this.nylasAuth = nylasAuth;\n this.nylasAuthStore = nylasAuthStore;\n this.nylasMailboxStore = nylasMailboxStore;\n this.router = router;\n }\n\n /**\n * Returns the list of threads.\n * @todo Re-think how we handle pagination (previous/next page tokens) - there is a separation of logic here that might be confusing.\n * @param {Partial<ThreadQueryParameters> | undefined} overrideQueryParams The query parameters to override from the store.\n * @param {'prepend' | 'append' | 'overwrite'} updateMethod How to update the store with the threads (default: overwrite).\n * @param {boolean} updateState Whether to update the state or not (default: true).\n * @returns {Promise<Thread[]>}\n */\n public async getThreads(\n overrideQueryParams?: Partial<ThreadQueryParameters>,\n updateMethod: 'prepend' | 'append' | 'overwrite' = 'overwrite',\n updateState: boolean = true,\n ): Promise<Thread[]> {\n if (!this.nylasAuthStore.state.isAuthenticated) {\n throw new Error('Not authenticated');\n }\n\n // Now make sure we have a read-only or modify scopes\n if (!this.nylasAuth.hasScopeByType('email', ['read-only', 'modify'])) {\n throw new Error('Missing thread:read-only scope');\n }\n\n // Set the state to loading.\n if (updateState) {\n this.nylasMailboxStore.state.state = 'loading';\n }\n\n // Build the URL with the query parameters\n const queryParams = overrideQueryParams || this.nylasMailboxStore.state.threadsQueryParams;\n const params = new URLSearchParams();\n for (const key in queryParams) {\n const value = queryParams[key as keyof typeof queryParams]?.toString();\n if (typeof value !== 'undefined' && value !== null) {\n params.append(key, value);\n }\n }\n\n // TODO: Re-think how to update the router, this seems wrong\n if (queryParams.search_query_native) {\n this.router.navigate(`/?query=${queryParams.search_query_native}`, true);\n } else if (this.nylasMailboxStore.state.threadsQueryParams.search_query_native && !queryParams.search_query_native) {\n this.router.navigate('/', true);\n }\n\n // If page_token is not set, reset the previous page tokens.\n if (!queryParams.page_token) {\n this.nylasMailboxStore.state.previousThreadPageTokens = [];\n }\n\n this.nylasMailboxStore.state.threadsQueryParams = queryParams;\n\n // Make the API request.\n const path = `/v3/grants/me/threads?${params.toString()}`;\n const response = await this.nylasAuth.nylasAPIRequest<NylasResponse<Thread[]>>(path);\n if (isNylasErrorResponse(response)) {\n throw new NylasAPIError(response.error);\n }\n\n // Set the threads in the store.\n const threads = response.data;\n switch (updateMethod) {\n case 'prepend':\n this.nylasMailboxStore.state.threads = [...threads, ...this.nylasMailboxStore.state.threads];\n break;\n case 'append':\n this.nylasMailboxStore.state.threads = [...this.nylasMailboxStore.state.threads, ...threads];\n break;\n case 'overwrite':\n default:\n this.nylasMailboxStore.state.threads = threads;\n break;\n }\n\n // If we have a next cursor, set it in the store.\n if (response.next_cursor) {\n this.nylasMailboxStore.state.nextThreadPageToken = response.next_cursor;\n } else {\n this.nylasMailboxStore.state.nextThreadPageToken = null;\n }\n\n // Set the state to ready.\n if (updateState) {\n this.nylasMailboxStore.state.state = 'ready';\n }\n\n return threads;\n }\n\n public async getThread(threadId: string): Promise<Thread> {\n if (!this.nylasAuthStore.state.isAuthenticated) {\n throw new Error('Not authenticated');\n }\n\n // Now make sure we have a read-only or modify scopes\n if (!this.nylasAuth.hasScopeByType('email', ['read-only', 'modify'])) {\n throw new Error('Missing thread:read-only scope');\n }\n\n // Check if we have the thread in the store already.\n const storeThread = this.nylasMailboxStore.state.threads.find(t => t.id === threadId);\n if (storeThread) {\n return storeThread;\n }\n\n // Set the state to loading.\n this.nylasMailboxStore.state.state = 'loading';\n\n // Make the API request.\n const path = `/v3/grants/me/threads/${threadId}`;\n const response = await this.nylasAuth.nylasAPIRequest<NylasResponse<Thread>>(path);\n if (isNylasErrorResponse(response)) {\n throw new NylasAPIError(response.error);\n }\n\n // Set the threads in the store.\n const thread = response.data;\n this.nylasMailboxStore.state.threads = this.nylasMailboxStore.state.threads.map(t => {\n if (t.id === thread.id) {\n return thread;\n }\n return t;\n });\n\n // Set the state to ready.\n this.nylasMailboxStore.state.state = 'ready';\n\n return thread;\n }\n\n /**\n * Returns the next page of threads.\n * @param {'prepend' | 'append' | 'overwrite'} updateMethod How to update the store with the threads (default: overwrite).\n * @param {boolean} updateLoadingState Whether to update the loading state or not.\n * @returns {Promise<Thread[]>} The previous page of threads.\n */\n public async nextThreadPage(updateMethod: 'prepend' | 'append' | 'overwrite' = 'overwrite', updateLoadingState: boolean = true): Promise<Thread[]> {\n if (!this.nylasMailboxStore.state.nextThreadPageToken) {\n throw new Error('No next page token');\n }\n\n // If we have a next page token, add it to the previous page tokens.\n this.nylasMailboxStore.state.previousThreadPageTokens = Array.from(\n new Set([...this.nylasMailboxStore.state.previousThreadPageTokens, this.nylasMailboxStore.state.threadsQueryParams.page_token ?? null]),\n );\n\n // Get the last next page token.\n const nextPageToken = this.nylasMailboxStore.state.nextThreadPageToken;\n\n return this.getThreads(\n {\n ...this.nylasMailboxStore.state.threadsQueryParams,\n page_token: nextPageToken,\n },\n updateMethod,\n updateLoadingState,\n );\n }\n\n /**\n * Returns the previous page of threads.\n * @param {'prepend' | 'append' | 'overwrite'} updateMethod How to update the store with the threads (default: overwrite).\n * @param {boolean} updateLoadingState Whether to update the loading state or not.\n * @returns {Promise<Thread[]>} The previous page of threads.\n */\n public async previousThreadPage(aupdateMethod: 'prepend' | 'append' | 'overwrite' = 'overwrite', updateLoadingState: boolean = true): Promise<Thread[]> {\n if (!this.nylasMailboxStore.state.previousThreadPageTokens.length) {\n throw new Error('No previous page token');\n }\n\n // Remove the the last two next page tokens.\n const previousThreadPageTokens = [...this.nylasMailboxStore.state.previousThreadPageTokens];\n const pageToken = previousThreadPageTokens.pop();\n\n // Update the store.\n this.nylasMailboxStore.state.previousThreadPageTokens = previousThreadPageTokens;\n\n return this.getThreads(\n {\n ...this.nylasMailboxStore.state.threadsQueryParams,\n page_token: pageToken ?? undefined,\n },\n aupdateMethod,\n updateLoadingState,\n );\n }\n\n /**\n * Updates the thread query parameters in the store.\n * @param params Partial<ThreadQueryParameters>\n * @returns {void}\n */\n public updateThreadQueryParams(params: Partial<ThreadQueryParameters>): void {\n this.nylasMailboxStore.state.threadsQueryParams = {\n ...this.nylasMailboxStore.state.threadsQueryParams,\n ...params,\n };\n }\n\n /**\n * Back to the mailbox.\n */\n public back(): void {\n this.router.navigate('/', true);\n this.nylasMailboxStore.state.selectedThread = null;\n }\n\n /**\n * Unselects a thread.\n */\n public unSelectThread(): void {\n this.nylasMailboxStore.state.selectedThread = null;\n }\n\n /**\n * Selects a thread.\n * @param {Thread} thread The thread to select.\n * @returns {Promise<void>}\n */\n public async selectThread(thread: Thread): Promise<void> {\n this.router.navigate(`/thread/${thread.id}`, true);\n this.nylasMailboxStore.state.selectedThread = thread;\n\n // Mark the thread as read (async) if it is unread.\n if (thread.unread) {\n this.markThreadAsRead(thread).catch(error => {\n debug('Error marking thread as read', error);\n });\n }\n }\n\n /**\n * Marks a thread as read.\n * @param thread\n * @returns {Promise<Thread>}\n */\n public async markThreadAsRead(thread: Thread): Promise<Thread> {\n return this.updateThread(thread, { unread: false });\n }\n\n /**\n * Updates a thread.\n * @param thread The thread to update.\n * @returns {Promise<Thread>}\n */\n public async updateThread(thread: Thread, updateThread: Partial<Thread>): Promise<Thread> {\n // Make sure we have an authenticated user.\n if (!this.nylasAuthStore.state.isAuthenticated) {\n throw new Error('Not authenticated');\n }\n\n // Now make sure we have a modify scope at least.\n if (!this.nylasAuth.hasScopeByType('email', 'modify')) {\n throw new Error('Missing thread:modify scope');\n }\n\n // Make the API request.\n const path = `/v3/grants/me/threads/${thread.id}`;\n const response = await this.nylasAuth.nylasAPIRequest<NylasResponse<Thread>>(path, 'PUT', updateThread);\n if (isNylasErrorResponse(response)) {\n throw new NylasAPIError(response.error);\n }\n\n // Update the thread in the store.\n const updatedThread = response.data;\n this.nylasMailboxStore.state.threads = this.nylasMailboxStore.state.threads.map(t => {\n if (t.id === updatedThread.id) {\n return updatedThread;\n }\n return t;\n });\n this.nylasMailboxStore.state.selectedThread = updatedThread;\n\n return updatedThread;\n }\n}\n","import { Folder, NylasAPIError, NylasAuthType, NylasResponse, isNylasErrorResponse } from '@nylas/core';\nimport { NylasAuthStoreType, NylasMailboxStoreType } from '../../../components';\n\nexport class NylasFoldersConnector {\n private nylasAuth: NylasAuthType;\n private nylasAuthStore: NylasAuthStoreType;\n private nylasMailboxStore: NylasMailboxStoreType;\n\n constructor(nylasAuth: NylasAuthType, nylasAuthStore: NylasAuthStoreType, nylasMailboxStore: NylasMailboxStoreType) {\n this.nylasAuth = nylasAuth;\n this.nylasAuthStore = nylasAuthStore;\n this.nylasMailboxStore = nylasMailboxStore;\n }\n\n /**\n * Returns the list of folders.\n */\n public async getFolders(): Promise<Folder[]> {\n if (!this.nylasAuthStore.state.isAuthenticated) {\n throw new Error('Not authenticated');\n }\n\n // Now make sure we have a read-only or modify scopes\n if (!this.nylasAuth.hasScopeByType('email', ['read-only', 'modify'])) {\n throw new Error('Missing thread:read-only scope');\n }\n\n // Set the state to loading.\n this.nylasMailboxStore.state.state = 'loading';\n\n // Make the API request.\n const path = `/v3/grants/me/folders`;\n const response = await this.nylasAuth.nylasAPIRequest<NylasResponse<Folder[]>>(path);\n if (isNylasErrorResponse(response)) {\n throw new NylasAPIError(response.error);\n }\n\n // Set the threads in the store.\n const folders = response.data;\n this.nylasMailboxStore.state.folders = folders;\n\n // Set the state to ready.\n this.nylasMailboxStore.state.state = 'ready';\n\n return folders;\n }\n\n public async selectFolder(folder: Folder) {\n this.nylasMailboxStore.state.threadsQueryParams = {\n in: folder.id,\n ...(this.nylasMailboxStore.state.threadsQueryParams || {}),\n };\n }\n}\n","import { debug } from '@/utils/utils';\nimport { RouteListener, RouteParams, RoutePath, RouterInterface } from './router-interface';\n\nexport class PolyFillHashChangeEvent extends Event {\n oldURL?: string;\n newURL?: string;\n\n constructor(type: string, eventInitDict: HashChangeEventInit) {\n super(type, eventInitDict);\n this.oldURL = eventInitDict.oldURL;\n this.newURL = eventInitDict.newURL;\n }\n}\n\nexport class HashRouter implements RouterInterface {\n private routeChangeListeners: [route: RoutePath, RouteListener<any>][] = [];\n\n constructor() {\n debug('HashRouter constructor');\n }\n\n // Destroy the router\n public destroy(): void {\n debug('HashRouter destroy');\n window.removeEventListener('hashchange', this.onRouteChange.bind(this));\n }\n\n // Initialize the router\n public init(): void {\n debug('HashRouter init');\n window.addEventListener('hashchange', this.onRouteChange.bind(this));\n\n // Trigger the initial route change\n if (typeof HashChangeEvent !== 'undefined') {\n const event: HashChangeEvent = new HashChangeEvent('hashchange', { oldURL: '', newURL: window.location.href });\n this.onRouteChange(event);\n } else {\n const event: Event = new PolyFillHashChangeEvent('hashchange', { oldURL: '', newURL: window.location.href });\n this.onRouteChange(event as HashChangeEvent);\n }\n }\n\n public addRouteChangeListener<Path extends RoutePath>(route: Path, listener: RouteListener<Path>): void {\n debug('HashRouter addRouteChangeListener');\n this.routeChangeListeners.push([route, listener]);\n }\n\n public navigate(route: string, shallow: boolean): void {\n debug('HashRouter navigate');\n\n // If we're navigating shallow, don't add a new history entry\n if (shallow) {\n return window.history.pushState(null, '', `#${route}`);\n }\n\n window.location.hash = route;\n }\n\n public setRoute(route: string): void {\n debug('HashRouter setRoute');\n window.location.hash = route;\n }\n\n // Matches a route and executes the callback\n public matchRoute(route: string, path: string): boolean {\n const routeParts = route.split('/');\n const pathParts = path.split('/');\n\n // If the route is `/` an the hash is empty, match the route\n debug(`HashRouter matchRoute route=${route} path=${path}`, { routeParts, pathParts });\n if (routeParts[1] === '' && pathParts[0] === '') {\n return true;\n }\n\n if (routeParts.length !== pathParts.length) {\n return false;\n }\n\n for (let i = 0; i < routeParts.length; i++) {\n const routePart = routeParts[i];\n const pathPart = pathParts[i];\n if (routePart.startsWith(':')) {\n continue;\n }\n if (routePart !== pathPart) {\n return false;\n }\n }\n\n return true;\n }\n\n // Parse the route and return the route params\n public getRouteParams<Path extends RoutePath>(route: Path): RouteParams<Path> {\n debug('HashRouter getRouteParams');\n const routeParams: RouteParams<Path> = {} as RouteParams<Path>;\n const routeParts = route.split('/');\n const routeConfigParts = window.location.hash.split('/');\n routeParts.forEach((routePart, index) => {\n if (routePart.startsWith(':')) {\n const key = routePart.substring(1) as keyof RouteParams<Path>;\n routeParams[key] = routeConfigParts[index] as RouteParams<Path>[keyof RouteParams<Path>]; // Cast the value to string\n }\n });\n return routeParams;\n }\n\n public getRouteWithParams(route: string, routeParams: Record<string, any>): string {\n debug('HashRouter getRouteWithParams');\n let routeWithParams = route;\n Object.keys(routeParams).forEach(key => {\n routeWithParams = routeWithParams.replace(`:${key}`, routeParams[key]);\n });\n return routeWithParams;\n }\n\n public getRoute(): string {\n debug('HashRouter getRoute');\n return window.location.hash;\n }\n\n public onRouteChange(event: HashChangeEvent): void {\n this.routeChangeListeners.forEach(async ([route, listener]) => {\n const path = event.newURL.indexOf('#') === -1 ? '' : event.newURL.substring(event.newURL.indexOf('#') + 1);\n debug(`HashRouter onRouteChange route=${route} path=${path}`, { event });\n if (!this.matchRoute(route, path)) {\n debug(`HashRouter onRouteChange route=${route} path=${path} does not match`);\n return;\n }\n const routeParams = this.getRouteParams(route) as RouteParams<RoutePath>;\n await listener(route, path, routeParams);\n });\n }\n\n public getBasePath(): string {\n debug('HashRouter getBasePath');\n return '';\n }\n}\n","import { TokenInfo } from '@nylas/core/dist/auth';\nimport { createStore } from '@stencil/store';\nimport { DataState } from '..';\n\nexport interface NylasAuthStoreState {\n isAuthenticated: boolean;\n tokenInfo: TokenInfo | null;\n state: DataState;\n}\n\nexport type NylasAuthStoreType = ReturnType<typeof CreateNylasAuthStore>;\n\nexport function CreateNylasAuthStore(defaultState: Partial<NylasAuthStoreState> = {}) {\n const defaultNylasStoreState: NylasAuthStoreState = {\n isAuthenticated: false,\n tokenInfo: null,\n state: 'ready',\n ...defaultState,\n };\n const store = createStore<NylasAuthStoreState>(defaultNylasStoreState);\n\n /**\n * Reset the Nylas store to its default state.\n * There is something wrong with the stencil/store reset method,\n * so we have to do it via this hack.\n */\n store.reset = () => {\n for (const key in defaultNylasStoreState) {\n const value = defaultNylasStoreState[key as keyof typeof defaultNylasStoreState];\n store.set(key as any, value);\n }\n };\n\n return store;\n}\n","import type { Folder, Message, MessageQueryParameters, Thread, ThreadQueryParameters } from '@nylas/core';\nimport { createStore } from '@stencil/store';\nimport { DataState } from '../components';\n\nexport interface NylasMailboxStoreState {\n state: DataState;\n messages: Message[];\n threads: Thread[];\n folders: Folder[];\n selectedThread: Thread | null;\n selectedFolder: string;\n searchQuery: string;\n\n nextThreadPageToken: string | null;\n previousThreadPageTokens: (string | null)[];\n hasNextThreadPage: boolean;\n hasPreviousThreadPage: boolean;\n threadsQueryParams: Partial<ThreadQueryParameters>;\n messgeQueryParams: Partial<MessageQueryParameters>;\n}\n\nexport type NylasMailboxStoreType = ReturnType<typeof CreateNylasMailboxStore>;\n\nexport function CreateNylasMailboxStore(defaultState: Partial<NylasMailboxStoreState> = {}) {\n const defaultNylasStoreState: NylasMailboxStoreState = {\n state: 'ready',\n\n messages: [],\n threads: [],\n folders: [],\n selectedThread: null,\n nextThreadPageToken: null,\n previousThreadPageTokens: [],\n searchQuery: '',\n\n hasNextThreadPage: false,\n hasPreviousThreadPage: false,\n\n selectedFolder: 'inbox',\n\n threadsQueryParams: {\n in: 'inbox',\n },\n messgeQueryParams: {\n fields: 'include_headers',\n },\n ...defaultState,\n };\n\n const store = createStore<NylasMailboxStoreState>({ ...defaultNylasStoreState });\n\n // Set our hasNextThreadPage if nextThreadPageToken is not null.\n store.onChange('nextThreadPageToken', nextThreadPageToken => {\n store.set('hasNextThreadPage', nextThreadPageToken !== null);\n });\n // Set our hasPreviousThreadPage if previousThreadPageTokens is not empty.\n store.onChange('previousThreadPageTokens', previousThreadPageTokens => {\n store.set('hasPreviousThreadPage', previousThreadPageTokens.length > 0);\n });\n\n // When threadsQueryParams changes...\n store.onChange('threadsQueryParams', threadsQueryParams => {\n // set our selectedFolder to the in param.\n store.set('selectedFolder', threadsQueryParams.in || 'inbox');\n // set our searchQuery to the search_query_native param.\n store.set('searchQuery', threadsQueryParams.search_query_native || '');\n });\n\n store.reset = () => {\n for (const key in defaultNylasStoreState) {\n const value = defaultNylasStoreState[key as keyof typeof defaultNylasStoreState];\n store.set(key as any, value);\n }\n };\n\n return store;\n}\n"],"version":3}
@@ -0,0 +1,19 @@
1
+ import { r as registerInstance, h } from './index-8362ce5c.js';
2
+
3
+ const iconCss = ".sc-microsoft-logo-icon-h{display:flex}";
4
+
5
+ const MicrosoftLogoIcon = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.width = '22';
9
+ this.height = '22';
10
+ }
11
+ render() {
12
+ return (h("svg", { key: '9c6a5f616c9e25067b87916d304b0cd32b00f083', width: this.width, height: this.height, viewBox: "0 0 22 22", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'bbe87ce62235b96d327cc0dd4dabc78f5273c034', d: "M0.043457 0.043457H10.4782V10.4782H0.043457V0.043457Z", fill: "#F35325" }), h("path", { key: 'de6dd97b42e8103d81cad275c722b36e5b5233b5', d: "M11.5217 0.043457H21.9565V10.4782H11.5217V0.043457Z", fill: "#81BC06" }), h("path", { key: 'b13b204df603dd53a9f4aba4af8a502a224ff580', d: "M0.043457 11.5217H10.4782V21.9565H0.043457V11.5217Z", fill: "#05A6F0" }), h("path", { key: '372e3c35aae7f712309a0d97c54f5e92741f6eb7', d: "M11.5217 11.5217H21.9565V21.9565H11.5217V11.5217Z", fill: "#FFBA08" })));
13
+ }
14
+ };
15
+ MicrosoftLogoIcon.style = iconCss;
16
+
17
+ export { MicrosoftLogoIcon as microsoft_logo_icon };
18
+
19
+ //# sourceMappingURL=microsoft-logo-icon.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"microsoft-logo-icon.entry.js","mappings":";;AAAA,MAAM,OAAO,GAAG,yCAAyC;;MCO5C,iBAAiB;;;qBACJ,IAAI;sBACH,IAAI;;IAE7B,MAAM;QAEJ,QACE,4DAAK,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B,IAC7G,6DAAM,CAAC,EAAC,uDAAuD,EAAC,IAAI,EAAC,SAAS,GAAG,EACjF,6DAAM,CAAC,EAAC,qDAAqD,EAAC,IAAI,EAAC,SAAS,GAAG,EAC/E,6DAAM,CAAC,EAAC,qDAAqD,EAAC,IAAI,EAAC,SAAS,GAAG,EAC/E,6DAAM,CAAC,EAAC,mDAAmD,EAAC,IAAI,EAAC,SAAS,GAAG,CACzE,EACN;KACH;;;;;;","names":[],"sources":["src/common/icons/icon.css?tag=microsoft-logo-icon&encapsulation=scoped","src/common/icons/microsoft-logo.tsx"],"sourcesContent":[":host {\n display: flex;\n}\n","import { Component, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'microsoft-logo-icon',\n styleUrl: 'icon.css',\n scoped: true,\n})\nexport class MicrosoftLogoIcon {\n @Prop() width: string = '22';\n @Prop() height: string = '22';\n\n render() {\n // Spam icon svg\n return (\n <svg width={this.width} height={this.height} viewBox=\"0 0 22 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M0.043457 0.043457H10.4782V10.4782H0.043457V0.043457Z\" fill=\"#F35325\" />\n <path d=\"M11.5217 0.043457H21.9565V10.4782H11.5217V0.043457Z\" fill=\"#81BC06\" />\n <path d=\"M0.043457 11.5217H10.4782V21.9565H0.043457V11.5217Z\" fill=\"#05A6F0\" />\n <path d=\"M11.5217 11.5217H21.9565V21.9565H11.5217V11.5217Z\" fill=\"#FFBA08\" />\n </svg>\n );\n }\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, i as createEvent, h, a as Host, e as getElement } from './index-bda1cba1.js';
1
+ import { r as registerInstance, i as createEvent, h, a as Host, e as getElement } from './index-8362ce5c.js';
2
2
  import { d as debug } from './utils-3a8d433a.js';
3
3
  import './_commonjsHelpers-7c16df4a.js';
4
4
 
@@ -124,9 +124,9 @@ const MultiSelectDropdown = class {
124
124
  }, class: { selected: !!option.selected } }, h("label", { htmlFor: option.value }, h("input", { "aria-hidden": "true", id: option.value, type: "checkbox", checked: option.selected }), h("span", null, option.label))));
125
125
  }
126
126
  render() {
127
- return (h(Host, { key: 'ff71916f4c5b0904c1c88acc24092685bb1a8c56' }, h("div", { key: 'e9ff8065a2c85506b433bd5d9a58227f92486187', class: "dropdown", part: "msd_dropdown" }, h("label", { key: '10b60608219600df241af49b91ab63d1c70394a5', class: "dropdown-label" }, this.label, h("slot", { key: '9a9ceafb10875657f758a4f315dbe88c7184ef15', name: "label-icon", "aria-hidden": "true" })), h("button", { key: '4d004314767768524db8ab302e602e6a28929558', part: "msd_dropdown-button", class: { dropbtn: true, open: this.isOpen }, onClick: () => this.toggleDropdown(), "aria-haspopup": "listbox", "aria-expanded": this.isOpen ? 'true' : 'false', "aria-label": this.name, onKeyDown: e => this.handleSelectButtonKeyDown(e) }, h("slot", { key: '2556aed7a1ff5a5428d5a334d80aa408a26b836a', name: "select-icon", "aria-hidden": "true" }), h("span", { key: 'e237a06138def9e1279231715c933c0d27f7b5ea', class: "selected-option", part: "msd_dropdown-button-selected-label" }, this.getSelectedOptions().length > 1
127
+ return (h(Host, { key: '1cd6593ab9c3fba5bd85b4c6c3b72b5c02d56a06' }, h("div", { key: '4824791de73b31be01c7801569564c8444e14d25', class: "dropdown", part: "msd_dropdown" }, h("label", { key: '9cfb0b87aa5f514d2030ddb0b7f3a53d49ed623a', class: "dropdown-label" }, this.label, h("slot", { key: 'e3e3db4816a4599b82ad9802b50540e4d5029ffe', name: "label-icon", "aria-hidden": "true" })), h("button", { key: 'b00feb7b276c455987f5e9d957eecb88ba3bc65e', part: "msd_dropdown-button", class: { dropbtn: true, open: this.isOpen }, onClick: () => this.toggleDropdown(), "aria-haspopup": "listbox", "aria-expanded": this.isOpen ? 'true' : 'false', "aria-label": this.name, onKeyDown: e => this.handleSelectButtonKeyDown(e) }, h("slot", { key: 'e0abc205d785aaada5884a21e0b94f02828ba09c', name: "select-icon", "aria-hidden": "true" }), h("span", { key: '9c69fcf904171f8cd7129dcf65d00e4ac2e72c4a', class: "selected-option", part: "msd_dropdown-button-selected-label" }, this.getSelectedOptions().length > 1
128
128
  ? `Multiple ${this.name}s selected`
129
- : this.availableOptions.filter(o => o.selected)[0]?.label ?? this.availableOptions[0]?.label), h("span", { key: '0ff8048547586614e1b14dca82e271c3e3bb49c7', class: this.isOpen ? 'open' : 'closed', "aria-hidden": "true" }, h("chevron-icon", { key: 'aab301fdd0e369aede69e378649d2b294b049d88', width: "16", height: "16" }))), this.isOpen ? null : (h("div", { class: 'selected-options' }, this.getSelectedOptions().map(option => (h("span", { class: "selected-option" }, option.label, h("button", { key: option.label, onClick: () => this.selectOption(option) }, h("close-icon", null))))))), this.isOpen ? (h("div", { class: "dropdown-content", part: "msd_dropdown-content" }, h("ul", { tabindex: "-1", role: "listbox", "aria-label": this.name, "aria-multiselectable": true, "aria-activedescendant": this.ariaActivedescendant, onKeyDown: e => this.handleListboxKeydown(e) }, this.availableOptions.map(option => this.renderOption(option))))) : null)));
129
+ : this.availableOptions.filter(o => o.selected)[0]?.label ?? this.availableOptions[0]?.label), h("span", { key: '71f33e2a554531bb2cb498f857157bdaa28facea', class: this.isOpen ? 'open' : 'closed', "aria-hidden": "true" }, h("chevron-icon", { key: '0f418f723c61306bfa1efb8a5934957d211f3fce', width: "16", height: "16" }))), this.isOpen ? null : (h("div", { class: 'selected-options' }, this.getSelectedOptions().map(option => (h("span", { class: "selected-option" }, option.label, h("button", { key: option.label, onClick: () => this.selectOption(option) }, h("close-icon", null))))))), this.isOpen ? (h("div", { class: "dropdown-content", part: "msd_dropdown-content" }, h("ul", { tabindex: "-1", role: "listbox", "aria-label": this.name, "aria-multiselectable": true, "aria-activedescendant": this.ariaActivedescendant, onKeyDown: e => this.handleListboxKeydown(e) }, this.availableOptions.map(option => this.renderOption(option))))) : null)));
130
130
  }
131
131
  get el() { return getElement(this); }
132
132
  };
@@ -1,9 +1,9 @@
1
- import { r as registerInstance, h, a as Host, e as getElement } from './index-bda1cba1.js';
2
- import { R as RegisterComponent } from './register-component-93f9bcf5.js';
1
+ import { r as registerInstance, h, a as Host, e as getElement } from './index-8362ce5c.js';
2
+ import { R as RegisterComponent } from './register-component-0645dce0.js';
3
3
  import { d as debug } from './utils-3a8d433a.js';
4
4
  import './_commonjsHelpers-7c16df4a.js';
5
5
 
6
- const nylasAdditionalParticipantsCss = ":host{display:block;margin:1rem;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif}.nylas-additional-participants__title{color:var(--nylas-base-nylas-base-900-aaa, #101323);font-size:16px;font-style:normal;font-weight:600;line-height:20px;margin:0;text-align:left}.nylas-additional-participants__subtitle{color:var(--nylas-base-nylas-base-600-aaa, #3e4784);font-size:14px;font-style:normal;font-weight:400;line-height:20px;margin:0.25rem 0px 0px;text-align:left}.nylas-additional-participants__content{padding:1rem;display:flex;flex-direction:column;gap:1rem}.nylas-additional-participants__block{display:flex;justify-content:space-between;gap:0.5rem}.nylas-additional-participants__input_group{padding-top:8px;display:flex;flex-direction:column;gap:4px}.nylas-additional-participants__input_group label{display:flex;align-items:center;color:var(--nylas-base-nylas-base-800);font-size:14px;font-style:normal;font-weight:400;line-height:150%}.nylas-additional-participants__input_wrapper{display:flex;border-width:1;border-radius:8px;border:1px solid var(--Nylas-base-Nylas-base-300, #b3b8d8)}.nylas-additional-participants__input_wrapper button{padding:12px;border:none;background:none;cursor:pointer}.nylas-additional-participants__input_wrapper button:hover,.nylas-additional-participants__input_wrapper button:active{color:var(--nylas-primary)}.nylas-additional-participants__input_wrapper_organizer{background:var(--Nylas-base-Nylas-base-50, #f8f9fc)}.nylas-additional-participants__input{flex:1;padding:12px 16px;border-right:1px solid var(--Nylas-base-Nylas-base-300, #b3b8d8)}.nylas-additional-participants__input input{border:none;outline:none;background:none;width:100%}.nylas-additional-participants__input_wrapper_invalid{border:1px solid var(--nylas-error, #cc4841);color:var(--Nylas-base-Nylas-base-400, #717bbc)}.nylas-additional-participants__add{padding:12px;display:flex;align-items:center;border:none;background:none;cursor:pointer}.nylas-additional-participants__add span{padding:0 8px;font-size:16px;font-style:normal;font-weight:500}.nylas-additional-participants__add:hover,.nylas-additional-participants__add:active{color:var(--nylas-primary)}";
6
+ const nylasAdditionalParticipantsCss = ":host{display:block;margin:1rem;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif}.nylas-additional-participants__title{color:var(--nylas-base-nylas-base-900-aaa, #101323);font-size:16px;font-style:normal;font-weight:600;line-height:20px;margin:0;text-align:left}.nylas-additional-participants__subtitle{color:var(--nylas-base-600);font-size:14px;font-style:normal;font-weight:400;line-height:20px;margin:0.25rem 0px 0px;text-align:left}.nylas-additional-participants__content{padding:1rem;display:flex;flex-direction:column;gap:1rem}.nylas-additional-participants__input_group{padding-top:8px;display:flex;flex-direction:column;gap:4px}.nylas-additional-participants__input_group label{display:flex;align-items:center;color:var(--nylas-base-800);font-size:14px;font-style:normal;font-weight:400;line-height:150%}.nylas-additional-participants__input_wrapper{display:flex;border-width:1;border-radius:8px;border:1px solid var(--nylas-base-300)}.nylas-additional-participants__input_wrapper button{padding:12px;border:none;background:none;cursor:pointer}.nylas-additional-participants__input_wrapper button:hover,.nylas-additional-participants__input_wrapper button:active{color:var(--nylas-primary)}.nylas-additional-participants__input_wrapper_organizer{background:var(--nylas-base-50)}.nylas-additional-participants__input{flex:1;padding:12px 16px;border-right:1px solid var(--nylas-base-300)}.nylas-additional-participants__input input{border:none;outline:none;background:none;width:100%}.nylas-additional-participants__add{padding:12px;display:flex;align-items:center;border:none;background:none;cursor:pointer}.nylas-additional-participants__add span{padding:0 8px;font-size:16px;font-style:normal;font-weight:500}.nylas-additional-participants__add:hover,.nylas-additional-participants__add:active{color:var(--nylas-primary)}";
7
7
 
8
8
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
9
9
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -75,10 +75,10 @@ const NylasAdditionalParticipants = class {
75
75
  this.internals.setFormValue(JSON.stringify(this.participants), 'participants');
76
76
  }
77
77
  render() {
78
- return (h(Host, { key: 'f7e9e11d09521eaaca5a7c0f617bb89d2d63b1c4' }, h("nylas-form-card", { key: '58e42cf68f3e5dc8d76a5c29be28332506c4ac02' }, h("h3", { key: 'df04fd60229abedc20d18611012b3b4d119ec17a', slot: "header-title", class: "nylas-additional-participants__title" }, "Additional participants"), h("p", { key: '794d5d650ee886a3d985f87b3ea46527dcae8e6a', slot: "header-subtitle", class: "nylas-additional-participants__subtitle" }, "Add anyone else who would be joining for this event."), h("div", { key: 'acf2f231f0c18f8389c7618e7b301d94aa819c2e', slot: "content", class: "nylas-additional-participants__content" }, h("div", { key: 'ed87166cfc0f33f515c780412a71a6b7dccbd61b' }, this.participants.map((participant, index) => {
79
- return (h("div", { class: 'nylas-additional-participants__input_group' }, h("label", null, participant.is_organizer ? 'Organizer' : `Participant ${index}`), h("div", { class: `nylas-additional-participants__input_wrapper ${participant.is_organizer && 'nylas-additional-participants__input_wrapper_organizer'} ${participant.is_valid === false && 'nylas-additional-participants__input_wrapper_invalid'}` }, h("div", { class: "nylas-additional-participants__input" }, h("input", { type: "text", value: participant.email, onInput: e => {
78
+ return (h(Host, { key: 'cc6d22c88c41ea406313ab95ec7f90a38704fc5b' }, h("nylas-form-card", { key: '033b0b3497b62ee3a17ee8f480a332d6103f143e' }, h("h3", { key: 'e88c9a1e05adda093bb0b1a1a85f7c3f36d69684', slot: "header-title", class: "nylas-additional-participants__title", part: "nap__title" }, "Additional participants"), h("p", { key: 'aab3da584eecd3437e7d93fc726d1e8718bd066c', slot: "header-subtitle", class: "nylas-additional-participants__subtitle", part: "nap__subtitle" }, "Add anyone else who would be joining for this event."), h("div", { key: '0a4d920d8ea788eca41e2fb46b532df4614925b6', slot: "content", class: "nylas-additional-participants__content" }, h("div", { key: '9aa1c1e851de4e73b97c022f7eed52c91b8c826f' }, this.participants.map((participant, index) => {
79
+ return (h("div", { class: 'nylas-additional-participants__input_group', part: "nap__input_group" }, h("label", null, participant.is_organizer ? 'Organizer' : `Participant ${index}`), h("div", { part: "nap__input_wrapper", class: `nylas-additional-participants__input_wrapper ${participant.is_organizer && 'nylas-additional-participants__input_wrapper_organizer'} ${participant.is_valid === false && 'nylas-additional-participants__input_wrapper_invalid'}` }, h("div", { class: "nylas-additional-participants__input", part: "nap__input" }, h("input", { type: "text", value: participant.email, onInput: e => {
80
80
  this.onParticipantChange(e, index);
81
- }, readOnly: participant.is_organizer, onBlur: () => this.validate(participant.email, index) })), !participant.is_organizer && (h("button", { onClick: () => this.removeParticipant(participant.email) }, h("close-icon", null))))));
81
+ }, readOnly: participant.is_organizer, onBlur: () => this.validate(participant.email, index) })), !participant.is_organizer && (h("button", { onClick: () => this.removeParticipant(participant.email), part: "nap__remove-participant" }, h("close-icon", null))))));
82
82
  }))))));
83
83
  }
84
84
  static get formAssociated() { return true; }
@@ -1 +1 @@
1
- {"file":"nylas-additional-participants.entry.js","mappings":"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","names":[],"sources":["src/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.scss?tag=nylas-additional-participants&encapsulation=shadow","src/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n\n:host {\n display: block;\n margin: 1rem;\n @include default-css-variables;\n}\n\n.nylas-additional-participants__title {\n color: var(--nylas-base-nylas-base-900-aaa, #101323);\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px; /* 125% */\n margin: 0;\n text-align: left;\n}\n.nylas-additional-participants__subtitle {\n color: var(--nylas-base-nylas-base-600-aaa, #3e4784);\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px; /* 142.857% */\n margin: 0.25rem 0px 0px;\n text-align: left;\n}\n.nylas-additional-participants__content {\n padding: 1rem;\n display: flex;\n flex-direction: column;\n gap: 1rem;\n}\n\n.nylas-additional-participants__block {\n display: flex;\n justify-content: space-between;\n gap: 0.5rem;\n}\n\n.nylas-additional-participants__input_group {\n padding-top: 8px;\n display: flex;\n flex-direction: column;\n gap: 4px;\n label {\n display: flex;\n align-items: center;\n color: var(--nylas-base-nylas-base-800);\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 150%;\n }\n}\n.nylas-additional-participants__input_wrapper {\n display: flex;\n border-width: 1;\n border-radius: 8px;\n border: 1px solid var(--Nylas-base-Nylas-base-300, #b3b8d8);\n button {\n padding: 12px;\n border: none;\n background: none;\n cursor: pointer;\n &:hover,\n &:active {\n color: var(--nylas-primary);\n }\n }\n}\n.nylas-additional-participants__input_wrapper_organizer {\n background: var(--Nylas-base-Nylas-base-50, #f8f9fc);\n}\n\n.nylas-additional-participants__input {\n flex: 1;\n padding: 12px 16px;\n border-right: 1px solid var(--Nylas-base-Nylas-base-300, #b3b8d8);\n input {\n border: none;\n outline: none;\n background: none;\n width: 100%;\n }\n}\n.nylas-additional-participants__input_wrapper_invalid {\n border: 1px solid var(--nylas-error, #cc4841);\n color: var(--Nylas-base-Nylas-base-400, #717bbc);\n}\n\n.nylas-additional-participants__add {\n padding: 12px;\n display: flex;\n align-items: center;\n border: none;\n background: none;\n cursor: pointer;\n span {\n padding: 0 8px;\n font-size: 16px;\n font-style: normal;\n font-weight: 500;\n }\n &:hover,\n &:active {\n color: var(--nylas-primary);\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { AttachInternals, Component, Host, Prop, State, Watch, h, Element } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\n\ntype Participant = {\n name?: string;\n email: string;\n is_valid?: boolean;\n is_organizer: boolean;\n availability?: Availability;\n booking?: Booking;\n};\ntype Availability = {\n calendar_ids: string[];\n};\ntype Booking = {\n calendar_id: string;\n};\n\n/**\n * The `nylas-additional-participants` component is a form input for adding additional participants to an event.\n */\n@Component({\n tag: 'nylas-additional-participants',\n styleUrl: 'nylas-additional-participants.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasAdditionalParticipants {\n @Element() host!: HTMLNylasAdditionalParticipantsElement;\n @Prop() name: string = 'participants';\n @Prop() eventParticipants?: Participant[];\n @AttachInternals() internals!: ElementInternals;\n\n /**\n * When a name prop is passed, stencil does not automatically set the name attribute on the host element.\n * Since this component is form-associated, the name attribute is required for form submission.\n * This is a workaround to ensure that the name attribute is set on the host element.\n */\n @Watch('name')\n elementNameChangedHandler(newValue: string) {\n debug('nylas-additional-participants', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @State() participants: Participant[] = this.eventParticipants ?? [];\n @State() participantsValid: boolean = true;\n connectedCallback() {\n debug('nylas-additional-participants', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-additional-participants', 'componentWillLoad');\n this.host.setAttribute('name', this.name);\n }\n\n componentDidLoad() {\n debug('nylas-additional-participants', 'componentDidLoad');\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n\n disconnectedCallback() {\n debug('nylas-additional-participants', 'disconnectedCallback');\n }\n onParticipantChange(event, index) {\n debug('nylas-additional-participants', 'onParticipantChange');\n this.participants[index].email = event.target.value;\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n addParticipant() {\n debug('nylas-additional-participants', 'addParticipant');\n this.participants = [...this.participants, { email: '', is_organizer: false, availability: { calendar_ids: ['primary'] } }];\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n removeParticipant(email: string) {\n debug('nylas-additional-participants', 'addParticipant');\n this.participants = this.participants.filter(p => p.email !== email);\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n validate(email, index) {\n debug('nylas-additional-participants', 'validate');\n const regex = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n const valid = regex.test(String(email).toLowerCase());\n this.participants[index].is_valid = valid;\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n\n @RegisterComponent<NylasAdditionalParticipants, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-additional-participants',\n eventToProps: {},\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <nylas-form-card>\n <h3 slot=\"header-title\" class=\"nylas-additional-participants__title\">\n Additional participants\n </h3>\n <p slot=\"header-subtitle\" class=\"nylas-additional-participants__subtitle\">\n Add anyone else who would be joining for this event.\n </p>\n <div slot=\"content\" class=\"nylas-additional-participants__content\">\n <div>\n {this.participants.map((participant, index) => {\n return (\n <div class={'nylas-additional-participants__input_group'}>\n <label>{participant.is_organizer ? 'Organizer' : `Participant ${index}`}</label>\n <div\n class={`nylas-additional-participants__input_wrapper ${participant.is_organizer && 'nylas-additional-participants__input_wrapper_organizer'} ${participant.is_valid === false && 'nylas-additional-participants__input_wrapper_invalid'}`}\n >\n <div class=\"nylas-additional-participants__input\">\n <input\n type=\"text\"\n value={participant.email}\n onInput={e => {\n this.onParticipantChange(e, index);\n }}\n readOnly={participant.is_organizer}\n onBlur={() => this.validate(participant.email, index)}\n />\n </div>\n {!participant.is_organizer && (\n <button onClick={() => this.removeParticipant(participant.email)}>\n <close-icon />\n </button>\n )}\n </div>\n </div>\n );\n })}\n </div>\n {/* <button class=\"nylas-additional-participants__add\" onClick={() => this.addParticipant()}>\n <add-circle-icon /> <span>Add a participant</span>\n </button> */}\n </div>\n </nylas-form-card>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nylas-additional-participants.entry.js","mappings":"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","names":[],"sources":["src/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.scss?tag=nylas-additional-participants&encapsulation=shadow","src/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n\n:host {\n display: block;\n margin: 1rem;\n @include default-css-variables;\n}\n\n.nylas-additional-participants__title {\n color: var(--nylas-base-nylas-base-900-aaa, #101323);\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px; /* 125% */\n margin: 0;\n text-align: left;\n}\n.nylas-additional-participants__subtitle {\n color: var(--nylas-base-600);\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px; /* 142.857% */\n margin: 0.25rem 0px 0px;\n text-align: left;\n}\n.nylas-additional-participants__content {\n padding: 1rem;\n display: flex;\n flex-direction: column;\n gap: 1rem;\n}\n\n.nylas-additional-participants__input_group {\n padding-top: 8px;\n display: flex;\n flex-direction: column;\n gap: 4px;\n label {\n display: flex;\n align-items: center;\n color: var(--nylas-base-800);\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 150%;\n }\n}\n.nylas-additional-participants__input_wrapper {\n display: flex;\n border-width: 1;\n border-radius: 8px;\n border: 1px solid var(--nylas-base-300);\n button {\n padding: 12px;\n border: none;\n background: none;\n cursor: pointer;\n &:hover,\n &:active {\n color: var(--nylas-primary);\n }\n }\n}\n.nylas-additional-participants__input_wrapper_organizer {\n background: var(--nylas-base-50);\n}\n\n.nylas-additional-participants__input {\n flex: 1;\n padding: 12px 16px;\n border-right: 1px solid var(--nylas-base-300);\n input {\n border: none;\n outline: none;\n background: none;\n width: 100%;\n }\n}\n\n.nylas-additional-participants__add {\n padding: 12px;\n display: flex;\n align-items: center;\n border: none;\n background: none;\n cursor: pointer;\n span {\n padding: 0 8px;\n font-size: 16px;\n font-style: normal;\n font-weight: 500;\n }\n &:hover,\n &:active {\n color: var(--nylas-primary);\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { AttachInternals, Component, Host, Prop, State, Watch, h, Element } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\n\ntype Participant = {\n name?: string;\n email: string;\n is_valid?: boolean;\n is_organizer: boolean;\n availability?: Availability;\n booking?: Booking;\n};\ntype Availability = {\n calendar_ids: string[];\n};\ntype Booking = {\n calendar_id: string;\n};\n\n/**\n * The `nylas-additional-participants` component is a form input for adding additional participants to an event.\n * @part nap__title - The title of the component.\n * @part nap__subtitle - The subtitle of the component.\n * @part nap__content - The content of the component.\n * @part nap__input_group - The input group of the component.\n * @part nap__input_wrapper - The input wrapper of the component.\n * @part nap__input - The input of the component.\n * @part nap__remove-participant - The remove participant button of the component.\n * @part nap__add-participant - The add participant button of the component.\n *\n */\n@Component({\n tag: 'nylas-additional-participants',\n styleUrl: 'nylas-additional-participants.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasAdditionalParticipants {\n @Element() host!: HTMLNylasAdditionalParticipantsElement;\n @Prop() name: string = 'participants';\n @Prop() eventParticipants?: Participant[];\n @AttachInternals() internals!: ElementInternals;\n\n /**\n * When a name prop is passed, stencil does not automatically set the name attribute on the host element.\n * Since this component is form-associated, the name attribute is required for form submission.\n * This is a workaround to ensure that the name attribute is set on the host element.\n */\n @Watch('name')\n elementNameChangedHandler(newValue: string) {\n debug('nylas-additional-participants', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @State() participants: Participant[] = this.eventParticipants ?? [];\n @State() participantsValid: boolean = true;\n connectedCallback() {\n debug('nylas-additional-participants', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-additional-participants', 'componentWillLoad');\n this.host.setAttribute('name', this.name);\n }\n\n componentDidLoad() {\n debug('nylas-additional-participants', 'componentDidLoad');\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n\n disconnectedCallback() {\n debug('nylas-additional-participants', 'disconnectedCallback');\n }\n onParticipantChange(event, index) {\n debug('nylas-additional-participants', 'onParticipantChange');\n this.participants[index].email = event.target.value;\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n addParticipant() {\n debug('nylas-additional-participants', 'addParticipant');\n this.participants = [...this.participants, { email: '', is_organizer: false, availability: { calendar_ids: ['primary'] } }];\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n removeParticipant(email: string) {\n debug('nylas-additional-participants', 'addParticipant');\n this.participants = this.participants.filter(p => p.email !== email);\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n validate(email, index) {\n debug('nylas-additional-participants', 'validate');\n const regex = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n const valid = regex.test(String(email).toLowerCase());\n this.participants[index].is_valid = valid;\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n\n @RegisterComponent<NylasAdditionalParticipants, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-additional-participants',\n eventToProps: {},\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <nylas-form-card>\n <h3 slot=\"header-title\" class=\"nylas-additional-participants__title\" part=\"nap__title\">\n Additional participants\n </h3>\n <p slot=\"header-subtitle\" class=\"nylas-additional-participants__subtitle\" part=\"nap__subtitle\">\n Add anyone else who would be joining for this event.\n </p>\n <div slot=\"content\" class=\"nylas-additional-participants__content\">\n <div>\n {this.participants.map((participant, index) => {\n return (\n <div class={'nylas-additional-participants__input_group'} part=\"nap__input_group\">\n <label>{participant.is_organizer ? 'Organizer' : `Participant ${index}`}</label>\n <div\n part=\"nap__input_wrapper\"\n class={`nylas-additional-participants__input_wrapper ${participant.is_organizer && 'nylas-additional-participants__input_wrapper_organizer'} ${participant.is_valid === false && 'nylas-additional-participants__input_wrapper_invalid'}`}\n >\n <div class=\"nylas-additional-participants__input\" part=\"nap__input\">\n <input\n type=\"text\"\n value={participant.email}\n onInput={e => {\n this.onParticipantChange(e, index);\n }}\n readOnly={participant.is_organizer}\n onBlur={() => this.validate(participant.email, index)}\n />\n </div>\n {!participant.is_organizer && (\n <button onClick={() => this.removeParticipant(participant.email)} part=\"nap__remove-participant\">\n <close-icon />\n </button>\n )}\n </div>\n </div>\n );\n })}\n </div>\n {/* <button class=\"nylas-additional-participants__add\" part=\"nap__add-participant\" onClick={() => this.addParticipant()}>\n <add-circle-icon /> <span>Add a participant</span>\n </button> */}\n </div>\n </nylas-form-card>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,37 @@
1
+ class NylasApiRequest {
2
+ }
3
+ class NylasIdentityRequestWrapper {
4
+ constructor(session) {
5
+ this.session = session;
6
+ }
7
+ setActiveGrantId(grantId) {
8
+ this.activeGrantId = grantId;
9
+ }
10
+ async request({ method, path, body, headers }) {
11
+ return this.session.fetch(`grants/me/${path}`, {
12
+ method,
13
+ headers: headers ? new Headers(headers) : undefined,
14
+ body,
15
+ ...(this.session.isMultiAccount() && this.activeGrantId ? { grant_id: this.activeGrantId } : {}),
16
+ });
17
+ }
18
+ async currentUser() {
19
+ const grantId = this.session.isMultiAccount() ? this.activeGrantId : undefined;
20
+ const idToken = await this.session.getProfile(grantId);
21
+ if (!idToken) {
22
+ return null;
23
+ }
24
+ return {
25
+ id: idToken.sub,
26
+ email: idToken.email,
27
+ name: idToken.name,
28
+ };
29
+ }
30
+ async authenticationUrl(authArgs) {
31
+ return this.session.auth(authArgs || {});
32
+ }
33
+ }
34
+
35
+ export { NylasIdentityRequestWrapper as N };
36
+
37
+ //# sourceMappingURL=nylas-api-request-55446aba.js.map
@@ -0,0 +1 @@
1
+ {"file":"nylas-api-request-55446aba.js","mappings":"MAyCsB,eAAe;CAcpC;MAOY,2BAA2B;IAYtC,YAAY,OAAsB;QAChC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;KACxB;IAQD,gBAAgB,CAAC,OAAe;QAC9B,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;KAC9B;IAWD,MAAM,OAAO,CAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAoB;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,IAAI,EAAE,EAAE;YAC7C,MAAM;YACN,OAAO,EAAE,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,SAAS;YACnD,IAAI;YACJ,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,IAAI,CAAC,aAAa,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC;SACjG,CAAe,CAAC;KAClB;IAOD,MAAM,WAAW;QACf,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAC/E,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,IAAI,CAAC;SACb;QAED,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,GAAG;YACf,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,CAAC;KACH;IAOD,MAAM,iBAAiB,CAAC,QAAmB;QACzC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;KAC1C;;;;;","names":[],"sources":["src/common/nylas-api-request.ts"],"sourcesContent":["import type { NylasSessions } from '@nylas/identity';\n\n/**\n * Arguments for making a request to the Nylas API.\n */\nexport type NylasRequestArgs = {\n method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';\n path: string;\n body?: any;\n headers?: Record<string, string>;\n};\n\n/**\n * A model representing a user in the Nylas Identity system.\n */\nexport type User = {\n id: string;\n email: string;\n name?: string;\n};\n\n/**\n * Arguments for authenticating a user with the Nylas Identity system.\n */\nexport type AuthArgs = {\n provider?: string;\n scope?: Array<string>;\n loginHint?: string;\n includeGrantScopes?: boolean;\n prompt?: string;\n metadata?: string;\n state?: string;\n};\n\n/**\n * Interface for making requests to the Nylas API.\n *\n * This is an abstract class that is meant to be implemented by customers to provide their own\n * implementation of making requests to the Nylas API. This allows customers to use their own\n * authentication mechanism, or to use a different HTTP client library.\n */\nexport abstract class NylasApiRequest {\n /**\n * This method should make an authenticated request to the Nylas API.\n * @param args NylasRequestArgs\n */\n abstract request<T>(args: NylasRequestArgs): Promise<T>;\n /**\n * This method should return the current user's information.\n */\n abstract currentUser(): Promise<User | null>;\n /**\n * This method should return the URL to redirect the user to for authentication.\n */\n abstract authenticationUrl(authArgs?: AuthArgs): Promise<string | undefined>;\n}\n\n/**\n * A wrapper around the Nylas Identity session that implements the NylasApiRequest interface.\n * This class is used by the Nylas Web Elements to make requests to the Nylas API if no custom\n * implementation of NylasApiRequest is provided.\n */\nexport class NylasIdentityRequestWrapper implements NylasApiRequest {\n /**\n * The Nylas Identity session instance.\n */\n private session: NylasSessions;\n\n /**\n * The grant_id to use for requests, if there is multi-account support\n * enabled in the Nylas Identity settings.\n */\n private activeGrantId?: string;\n\n constructor(session: NylasSessions) {\n this.session = session;\n }\n\n /**\n * This method sets the grant_id to use for requests.\n * This is used when there is multi-account support enabled in the Nylas Identity settings.\n *\n * @param grantId\n */\n setActiveGrantId(grantId: string) {\n this.activeGrantId = grantId;\n }\n\n /**\n * This method makes a request to the Nylas API, using the Nylas Identity's fetch method.\n *\n * The `grants/me/` prefix is added because all requests made from the browser to the Nylas API\n * must be made on behalf of the currently logged in user with a valid access token.\n *\n * @param NylasRequestArgs\n * @returns Promise<T>\n */\n async request<T>({ method, path, body, headers }: NylasRequestArgs): Promise<T> {\n return this.session.fetch(`grants/me/${path}`, {\n method,\n headers: headers ? new Headers(headers) : undefined,\n body,\n ...(this.session.isMultiAccount() && this.activeGrantId ? { grant_id: this.activeGrantId } : {}),\n }) as Promise<T>;\n }\n\n /**\n * This method returns the current (logged in) user's information.\n * If the user is not logged in, it returns null.\n * @returns Promise<User | null>\n */\n async currentUser(): Promise<User | null> {\n const grantId = this.session.isMultiAccount() ? this.activeGrantId : undefined;\n const idToken = await this.session.getProfile(grantId);\n if (!idToken) {\n return null;\n }\n\n return {\n id: idToken.sub,\n email: idToken.email,\n name: idToken.name,\n };\n }\n\n /**\n * This method returns the URL to redirect the user to for authentication.\n * @param authConfig authArgs\n * @returns Promise<string | undefined>\n */\n async authenticationUrl(authArgs?: AuthArgs): Promise<string | undefined> {\n return this.session.auth(authArgs || {});\n }\n}\n"],"version":3}
@@ -0,0 +1,35 @@
1
+ class NylasIdentityRequestWrapper {
2
+ constructor(session) {
3
+ this.session = session;
4
+ }
5
+ setActiveGrantId(grantId) {
6
+ this.activeGrantId = grantId;
7
+ }
8
+ async request({ method, path, body, headers }) {
9
+ return this.session.fetch(`grants/me/${path}`, {
10
+ method,
11
+ headers: headers ? new Headers(headers) : undefined,
12
+ body,
13
+ ...(this.session.isMultiAccount() && this.activeGrantId ? { grant_id: this.activeGrantId } : {}),
14
+ });
15
+ }
16
+ async currentUser() {
17
+ const grantId = this.session.isMultiAccount() ? this.activeGrantId : undefined;
18
+ const idToken = await this.session.getProfile(grantId);
19
+ if (!idToken) {
20
+ return null;
21
+ }
22
+ return {
23
+ id: idToken.sub,
24
+ email: idToken.email,
25
+ name: idToken.name,
26
+ };
27
+ }
28
+ async authenticationUrl(authArgs) {
29
+ return this.session.auth(authArgs || {});
30
+ }
31
+ }
32
+
33
+ export { NylasIdentityRequestWrapper as N };
34
+
35
+ //# sourceMappingURL=nylas-api-request-c97a0153.js.map
@@ -0,0 +1 @@
1
+ {"file":"nylas-api-request-c97a0153.js","mappings":"MA8Da,2BAA2B;IAYtC,YAAY,OAAsB;QAChC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;KACxB;IAQD,gBAAgB,CAAC,OAAe;QAC9B,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;KAC9B;IAWD,MAAM,OAAO,CAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAoB;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,IAAI,EAAE,EAAE;YAC7C,MAAM;YACN,OAAO,EAAE,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,SAAS;YACnD,IAAI;YACJ,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,IAAI,CAAC,aAAa,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC;SACjG,CAAe,CAAC;KAClB;IAOD,MAAM,WAAW;QACf,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAC/E,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,IAAI,CAAC;SACb;QAED,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,GAAG;YACf,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,CAAC;KACH;IAOD,MAAM,iBAAiB,CAAC,QAAmB;QACzC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;KAC1C;;;;;","names":[],"sources":["src/common/nylas-api-request.ts"],"sourcesContent":["import type { NylasSessions } from '@nylas/identity';\n\n/**\n * Arguments for making a request to the Nylas API.\n */\nexport type NylasRequestArgs = {\n method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';\n path: string;\n body?: any;\n headers?: Record<string, string>;\n};\n\n/**\n * A model representing a user in the Nylas Identity system.\n */\nexport type User = {\n id: string;\n email: string;\n name?: string;\n};\n\n/**\n * Arguments for authenticating a user with the Nylas Identity system.\n */\nexport type AuthArgs = {\n provider?: string;\n scope?: Array<string>;\n loginHint?: string;\n includeGrantScopes?: boolean;\n prompt?: string;\n metadata?: string;\n state?: string;\n};\n\n/**\n * Interface for making requests to the Nylas API.\n *\n * This is an abstract class that is meant to be implemented by customers to provide their own\n * implementation of making requests to the Nylas API. This allows customers to use their own\n * authentication mechanism, or to use a different HTTP client library.\n */\nexport abstract class NylasApiRequest {\n /**\n * This method should make an authenticated request to the Nylas API.\n * @param args NylasRequestArgs\n */\n abstract request<T>(args: NylasRequestArgs): Promise<T>;\n /**\n * This method should return the current user's information.\n */\n abstract currentUser(): Promise<User | null>;\n /**\n * This method should return the URL to redirect the user to for authentication.\n */\n abstract authenticationUrl(authArgs?: AuthArgs): Promise<string | undefined>;\n}\n\n/**\n * A wrapper around the Nylas Identity session that implements the NylasApiRequest interface.\n * This class is used by the Nylas Web Elements to make requests to the Nylas API if no custom\n * implementation of NylasApiRequest is provided.\n */\nexport class NylasIdentityRequestWrapper implements NylasApiRequest {\n /**\n * The Nylas Identity session instance.\n */\n private session: NylasSessions;\n\n /**\n * The grant_id to use for requests, if there is multi-account support\n * enabled in the Nylas Identity settings.\n */\n private activeGrantId?: string;\n\n constructor(session: NylasSessions) {\n this.session = session;\n }\n\n /**\n * This method sets the grant_id to use for requests.\n * This is used when there is multi-account support enabled in the Nylas Identity settings.\n *\n * @param grantId\n */\n setActiveGrantId(grantId: string) {\n this.activeGrantId = grantId;\n }\n\n /**\n * This method makes a request to the Nylas API, using the Nylas Identity's fetch method.\n *\n * The `grants/me/` prefix is added because all requests made from the browser to the Nylas API\n * must be made on behalf of the currently logged in user with a valid access token.\n *\n * @param NylasRequestArgs\n * @returns Promise<T>\n */\n async request<T>({ method, path, body, headers }: NylasRequestArgs): Promise<T> {\n return this.session.fetch(`grants/me/${path}`, {\n method,\n headers: headers ? new Headers(headers) : undefined,\n body,\n ...(this.session.isMultiAccount() && this.activeGrantId ? { grant_id: this.activeGrantId } : {}),\n }) as Promise<T>;\n }\n\n /**\n * This method returns the current (logged in) user's information.\n * If the user is not logged in, it returns null.\n * @returns Promise<User | null>\n */\n async currentUser(): Promise<User | null> {\n const grantId = this.session.isMultiAccount() ? this.activeGrantId : undefined;\n const idToken = await this.session.getProfile(grantId);\n if (!idToken) {\n return null;\n }\n\n return {\n id: idToken.sub,\n email: idToken.email,\n name: idToken.name,\n };\n }\n\n /**\n * This method returns the URL to redirect the user to for authentication.\n * @param authConfig authArgs\n * @returns Promise<string | undefined>\n */\n async authenticationUrl(authArgs?: AuthArgs): Promise<string | undefined> {\n return this.session.auth(authArgs || {});\n }\n}\n"],"version":3}
@@ -1,10 +1,10 @@
1
- import { r as registerInstance, i as createEvent, h, a as Host, e as getElement } from './index-bda1cba1.js';
2
- import { R as RegisterComponent } from './register-component-93f9bcf5.js';
1
+ import { r as registerInstance, i as createEvent, h, a as Host, e as getElement } from './index-8362ce5c.js';
2
+ import { R as RegisterComponent } from './register-component-0645dce0.js';
3
3
  import { d as debug, q as timeToMinutes, r as convertTo12HourFormat, s as minutesToTime, v as convertTo24HourFormat } from './utils-3a8d433a.js';
4
- import { T as TIMEZONE_MAP } from './constants-56fee505.js';
4
+ import { T as TIMEZONE_MAP } from './constants-335dffcf.js';
5
5
  import './_commonjsHelpers-7c16df4a.js';
6
6
 
7
- const nylasAvailabilityPickerCss = ":host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif;width:inherit}.nylas-availability-picker{width:inherit;display:flex;flex-direction:column;margin:1rem;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-200)}.nylas-availability-picker .header{padding:1rem;border-bottom:1px solid var(--nylas-base-200)}.nylas-availability-picker .header h3{margin:0;font-size:1rem;font-weight:600;line-height:20px;color:var(--nylas-base-900);text-align:left}.nylas-availability-picker .header p{margin:0.25rem 0 0 0;font-size:0.875rem;font-weight:400;line-height:20px;color:var(--nylas-base-600);text-align:left}.nylas-availability-picker .content{padding:1rem;color:var(--nylas-base-900)}.nylas-availability-picker .content .select-timezone{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--nylas-base-200);padding-bottom:1rem}.nylas-availability-picker .content .select-timezone h4{display:flex;gap:0.5rem;align-items:center;margin:0;font-size:1rem;font-weight:500;line-height:20px}.nylas-availability-picker .content .select-timezone select-dropdown{border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x)}.nylas-availability-picker .content .availability{display:flex;flex-direction:column;gap:1rem;padding:0 0.5rem;margin:1rem 0}.nylas-availability-picker .content .availability .availability-day{display:grid;grid-template-columns:minmax(auto, 65px) 1fr minmax(auto, 40px);gap:1rem;align-items:baseline}@media screen and (max-width: 768px){.nylas-availability-picker .content .availability .availability-day{grid-template-columns:auto}}.nylas-availability-picker .content .availability .availability-day .day{display:flex;gap:0.5rem;align-items:center}.nylas-availability-picker .content .availability .availability-day .time-ranges span.unavailable{height:48px;display:flex;align-items:center}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range{display:flex;gap:1.5rem;justify-content:space-between;align-items:baseline}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range .pickers{display:flex;gap:1rem}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range .pickers span{margin-top:0.75rem}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range:not(:last-of-type){margin-bottom:1rem}.nylas-availability-picker .content .availability .availability-day .time-ranges p.error{color:var(--nylas-error)}.nylas-availability-picker .content .availability .availability-day button{border:none;background:transparent;height:40px;cursor:pointer;color:var(--nylas-base-800)}.nylas-availability-picker .content .availability .availability-day button:hover,.nylas-availability-picker .content .availability .availability-day button:active{color:var(--nylas-primary)}";
7
+ const nylasAvailabilityPickerCss = ":host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif;width:inherit}.nylas-availability-picker{width:inherit;display:flex;flex-direction:column;margin:1rem;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-200)}.nylas-availability-picker .header{padding:1rem;border-bottom:1px solid var(--nylas-base-200)}.nylas-availability-picker .header h3{margin:0;font-size:16px;font-weight:600;line-height:20px;color:var(--nylas-base-900);text-align:left}.nylas-availability-picker .header p{margin:0.25rem 0 0 0;font-size:0.875rem;font-weight:400;line-height:20px;color:var(--nylas-base-600);text-align:left}.nylas-availability-picker .content{padding:1rem;color:var(--nylas-base-900);font-size:16px;font-family:var(--nylas-font-family)}@media screen and (max-width: 504px){.nylas-availability-picker .content{font-size:15px}}.nylas-availability-picker .content .select-timezone{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--nylas-base-200);padding-bottom:1rem;gap:1rem}.nylas-availability-picker .content .select-timezone h4{display:flex;gap:0.5rem;align-items:center;margin:0;font-size:16px;font-weight:500;line-height:20px}@media screen and (max-width: 504px){.nylas-availability-picker .content .select-timezone h4{font-size:15px}}.nylas-availability-picker .content .select-timezone select-dropdown{border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x)}.nylas-availability-picker .content .availability{display:flex;flex-direction:column;gap:1rem;padding:0 0.5rem;margin:1rem 0}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability{gap:0.5rem;padding:0}}.nylas-availability-picker .content .availability .availability-day{display:grid;grid-template-columns:minmax(auto, 65px) 1fr minmax(auto, 40px);gap:1rem;align-items:baseline}@media screen and (max-width: 768px){.nylas-availability-picker .content .availability .availability-day{grid-template-columns:78px 1fr auto}}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day{display:inline-grid;gap:8px;grid-template-columns:60px 1fr auto}}.nylas-availability-picker .content .availability .availability-day .day{display:flex;gap:0.5rem;align-items:center}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day .day{gap:0.25rem}}.nylas-availability-picker .content .availability .availability-day .day input[type=checkbox]{transform:scale(1.3)}.nylas-availability-picker .content .availability .availability-day .time-ranges span.unavailable{height:48px;display:flex;align-items:center;justify-content:center}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range{display:flex;gap:1.5rem;justify-content:space-between;align-items:baseline}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range{justify-content:unset;gap:0.5rem}}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range .pickers{display:flex;gap:1rem}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range .pickers{gap:0.5rem}}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range .pickers span{margin-top:0.75rem}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range:not(:last-of-type){margin-bottom:1rem}.nylas-availability-picker .content .availability .availability-day .time-ranges p.error{color:var(--nylas-error)}.nylas-availability-picker .content .availability .availability-day button{border:none;background:transparent;height:40px;cursor:pointer;color:var(--nylas-base-800)}.nylas-availability-picker .content .availability .availability-day button:hover,.nylas-availability-picker .content .availability .availability-day button:active{color:var(--nylas-primary)}";
8
8
 
9
9
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
10
10
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -281,10 +281,10 @@ const NylasAvailabilityPicker = class {
281
281
  label: TIMEZONE_MAP[key],
282
282
  value: key,
283
283
  }));
284
- return (h(Host, { key: '212096aa82e4abcfb7ab34a0a0921e541c4570af' }, h("div", { key: '83a12b281dd08f77e2a184941f47f69c29d804ba', class: "nylas-availability-picker" }, h("div", { key: '82f32b28ac7e9e13c1aa01a0cc99bd2ea68f2400', class: "header", part: "ncp__header" }, h("h3", { key: 'c47f420a6c0226b2d3352d178f8c739978554195' }, "General availability"), h("p", { key: 'badf2c5553670dc99da06815fc418dba59772f7a' }, "Set your availability for scheduling meetings.")), h("div", { key: '32d90f90f5c98ec4afb71286d5963e4431b65932', class: "content" }, h("div", { key: 'f29ed9e09dd1c480b1cc93f6adebf0af6d7a17f9', class: "select-timezone" }, h("h4", { key: '82f68bd68a4c775afb5c16641ce7c42769850722', class: "sub-header" }, "Select timezone", h("span", { key: '3f6113c3d9703096321389d4f7ac6daa259f13f5', class: "icon" }, h("tooltip-component", { key: 'c2c8212ae124d05ccc150c14a3efd1a16e027970' }, h("info-icon", { key: 'f80669ec0e2200c94351a98ce3a7ba710f154df4', slot: "tooltip-icon" }), h("span", { key: '25f33c0424a8bcb48b5e09a9e1297877834f9ff2', slot: "tooltip-content" }, "Select your timezone for displaying availability.")))), h("select-dropdown", { key: 'fa2b1fbb694ac302e94e8b75740a26b3ec841fdc', name: "timezone", options: timezoneOptions, defaultSelectedOption: timezoneOptions.find(i => i.value === this.defaultTimezone) }, h("span", { key: 'a8795a7bbf57c96e54ed30a8bf53884119f5a051', slot: "select-icon" }, h("globe-icon", { key: 'f041371f0d5be498ee7c474296f97d8995bcd9e4', width: "20", height: "20" })))), h("div", { key: 'caa143f02b423a5bee811b944246fff8746e2229', class: "availability" }, Object.keys(this.schedule).map(key => {
284
+ return (h(Host, { key: '440dc2f314a9c47eb8186f4ed965ed3052301ddf' }, h("div", { key: '2d31ef10ae53275fc065f4e9f68c32f42b60d829', class: "nylas-availability-picker" }, h("div", { key: 'aa6695b6054b81ece7ede5f5e089545a041800f6', class: "header", part: "nap__header" }, h("h3", { key: '86e0d18ca7b70d74159c5cead0d6f5a17a145fa7' }, "General availability"), h("p", { key: '05da67e03befbe936793af5ee98f801b512d28e7' }, "Set your availability for scheduling meetings.")), h("div", { key: '84c6bf714ccea4aff07d6e660d8ca3f96ce9a8cc', class: "content" }, h("div", { key: '16edf74e06bed5440df5f5ea73e90cfa83d08b29', class: "select-timezone", part: "nap__select-timezone" }, h("h4", { key: '1025677efcaf114cb86ce57324c299eeea79b37e', class: "sub-header" }, "Select timezone", h("span", { key: '6d65a6457da202c5a3d5c5cd4e185903a12cec7f', class: "icon" }, h("tooltip-component", { key: '61a40ea06c06f1d306a8b352d9ae883d09768249' }, h("info-icon", { key: '2d447cc2e6a619ee7b1cf1fd3e2b6424fcd6db5b', slot: "tooltip-icon" }), h("span", { key: '35742354ba0841bc1c17170094bab09d536208e6', slot: "tooltip-content" }, "Select your timezone for displaying availability.")))), h("select-dropdown", { key: '3532c95b077fc701cdbf89cd13668acc675cf0e4', name: "timezone", exportparts: "sd_dropdown: nap__timezone-container, sd_dropdown-button: nap__timezone-button, sd_dropdown-content: nap__timezone-dropdown-content", options: timezoneOptions, defaultSelectedOption: timezoneOptions.find(i => i.value === this.defaultTimezone) }, h("span", { key: 'c1e870c593966e29d72c3f519f3309f84e4b9a9a', slot: "select-icon" }, h("globe-icon", { key: 'df23e31168778926b6118651cd636ab801f062f1', width: "20", height: "20" })))), h("div", { key: '5ad8cf7078dc104d1258f77e1c69bebf8c82d8dd', class: "availability", part: "nap__availability" }, Object.keys(this.schedule).map(key => {
285
285
  const day = key;
286
286
  const timeRanges = this.schedule[key];
287
- return (h("div", { class: "availability-day" }, h("div", { class: "day", part: "ndp__day" }, h("input", { type: "checkbox", name: day, id: day, checked: timeRanges.length > 0, onClick: () => {
287
+ return (h("div", { class: "availability-day" }, h("div", { class: "day", part: "nap__day" }, h("input", { type: "checkbox", name: day, id: day, checked: timeRanges.length > 0, onClick: () => {
288
288
  if (timeRanges.length > 0) {
289
289
  this.schedule[day] = [];
290
290
  }
@@ -292,12 +292,12 @@ const NylasAvailabilityPicker = class {
292
292
  this.schedule[day] = [{ start: '09:00am', end: '05:00pm' }];
293
293
  }
294
294
  this.schedule = { ...this.schedule };
295
- } }), h("label", { htmlFor: day, "aria-label": "Select day" }, day)), h("div", { class: "time-ranges" }, timeRanges.length ? null : h("span", { class: "unavailable" }, "Unavailable"), timeRanges.length > 0 &&
295
+ } }), h("label", { htmlFor: day, "aria-label": "Select day" }, day)), h("div", { class: "time-ranges", part: "nap__time-ranges" }, timeRanges.length ? null : h("span", { class: "unavailable" }, "Unavailable"), timeRanges.length > 0 &&
296
296
  timeRanges.map((timeRange, timeRangeIndex) => {
297
297
  const startKey = `${key}:${timeRangeIndex}_start`;
298
298
  const endKey = `${key}:${timeRangeIndex}_end`;
299
- return (h("div", { class: "time-range" }, h("div", { class: "pickers" }, h("nylas-time-window-picker", { id: startKey, hasError: this.overlapDays[day]?.includes(timeRangeIndex), time: timeRange.start, name: startKey, key: startKey, setTime: (event, additionalData) => this.setTime(startKey, event, additionalData), setFormError: (event, additionalData) => this.setFormError(startKey, event, additionalData) }), h("span", null, " - "), h("nylas-time-window-picker", { id: endKey, hasError: this.overlapDays[day]?.includes(timeRangeIndex), time: timeRange.end, name: endKey, key: endKey, minimumStartTime: timeRange.start, setTime: (event, additionalData) => this.setTime(endKey, event, additionalData), setFormError: (event, additionalData) => this.setFormError(endKey, event, additionalData) })), h("button", { onClick: () => this.removeTimeRange(day, timeRangeIndex) }, h("close-icon", null))));
300
- }), h("p", { class: "error" }, this.overlapDays[day] ? 'Overlapping time ranges' : '')), h("div", null, timeRanges.length > 0 ? (h("button", { onClick: () => this.addTimeRange(day) }, h("add-circle-icon", null))) : null)));
299
+ return (h("div", { class: "time-range", part: "nap__time-range" }, h("div", { class: "pickers" }, h("nylas-time-window-picker", { id: startKey, hasError: this.overlapDays[day]?.includes(timeRangeIndex), time: timeRange.start, name: startKey, key: startKey, exportparts: "time-picker: nap__time-picker-container, time-input: nap__time-picker-input, times: nap__time-picker-times", setTime: (event, additionalData) => this.setTime(startKey, event, additionalData), setFormError: (event, additionalData) => this.setFormError(startKey, event, additionalData) }), h("span", null, " - "), h("nylas-time-window-picker", { id: endKey, hasError: this.overlapDays[day]?.includes(timeRangeIndex), time: timeRange.end, name: endKey, key: endKey, minimumStartTime: timeRange.start, exportparts: "time-picker: nap__time-picker-container, time-input: nap__time-picker-input, times: nap__time-picker-times", setTime: (event, additionalData) => this.setTime(endKey, event, additionalData), setFormError: (event, additionalData) => this.setFormError(endKey, event, additionalData) })), h("button", { onClick: () => this.removeTimeRange(day, timeRangeIndex) }, h("close-icon", null))));
300
+ }), h("p", { class: "error" }, this.overlapDays[day] ? 'Overlapping time ranges' : '')), h("div", null, timeRanges.length > 0 ? (h("button", { onClick: () => this.addTimeRange(day), part: "nap__add-time-range" }, h("add-circle-icon", null))) : null)));
301
301
  }))))));
302
302
  }
303
303
  static get formAssociated() { return true; }