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

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 (734) hide show
  1. package/dist/cjs/add-circle-icon.cjs.entry.js +1 -1
  2. package/dist/cjs/add-circle-icon_22.cjs.entry.js +222 -92
  3. package/dist/cjs/add-circle-icon_22.cjs.entry.js.map +1 -1
  4. package/dist/cjs/archive-icon.cjs.entry.js +1 -1
  5. package/dist/cjs/archive-icon_7.cjs.entry.js +7 -7
  6. package/dist/cjs/arrow-icon.cjs.entry.js +1 -1
  7. package/dist/cjs/bold-icon.cjs.entry.js +1 -1
  8. package/dist/cjs/bold-icon_3.cjs.entry.js +3 -3
  9. package/dist/cjs/button-component.cjs.entry.js +2 -2
  10. package/dist/cjs/button-component.cjs.entry.js.map +1 -1
  11. package/dist/cjs/calendar-cancel-icon.cjs.entry.js +1 -1
  12. package/dist/cjs/calendar-check-icon.cjs.entry.js +1 -1
  13. package/dist/cjs/calendar-check-icon_2.cjs.entry.js +2 -2
  14. package/dist/cjs/calendar-icon.cjs.entry.js +1 -1
  15. package/dist/cjs/calendar-info-icon.cjs.entry.js +1 -1
  16. package/dist/cjs/calendar-patterns-icon.cjs.entry.js +1 -1
  17. package/dist/cjs/checkmark-circle-icon.cjs.entry.js +1 -1
  18. package/dist/cjs/chevron-icon.cjs.entry.js +1 -1
  19. package/dist/cjs/chevron-icon_3.cjs.entry.js +4 -4
  20. package/dist/cjs/close-icon.cjs.entry.js +1 -1
  21. package/dist/cjs/{constants-6baf1f1d.js → constants-3e962931.js} +11 -1
  22. package/dist/cjs/{constants-6baf1f1d.js.map → constants-3e962931.js.map} +1 -1
  23. package/dist/cjs/{constants-0fba94a4.js → constants-d590922e.js} +11 -1
  24. package/dist/cjs/{constants-0fba94a4.js.map → constants-d590922e.js.map} +1 -1
  25. package/dist/cjs/document-refresh-icon.cjs.entry.js +1 -1
  26. package/dist/cjs/flow-icon.cjs.entry.js +1 -1
  27. package/dist/cjs/folder-icon.cjs.entry.js +1 -1
  28. package/dist/cjs/forward-icon.cjs.entry.js +1 -1
  29. package/dist/cjs/forward-icon_6.cjs.entry.js +7 -7
  30. package/dist/cjs/globe-icon.cjs.entry.js +1 -1
  31. package/dist/cjs/google-logo-icon.cjs.entry.js +1 -1
  32. package/dist/cjs/google-logo-icon_4.cjs.entry.js +93 -49
  33. package/dist/cjs/google-logo-icon_4.cjs.entry.js.map +1 -1
  34. package/dist/cjs/inbox-icon.cjs.entry.js +1 -1
  35. package/dist/cjs/index-7af03e3f.js +1 -158
  36. package/dist/cjs/index-c14ea8f5.js +1 -362
  37. package/dist/cjs/index.cjs.js +1 -1
  38. package/dist/cjs/info-icon.cjs.entry.js +1 -1
  39. package/dist/cjs/info-icon_2.cjs.entry.js +2 -2
  40. package/dist/cjs/italic-icon.cjs.entry.js +1 -1
  41. package/dist/cjs/loader.cjs.js +1 -1
  42. package/dist/cjs/loading-icon.cjs.entry.js +1 -1
  43. package/dist/cjs/location-icon.cjs.entry.js +1 -1
  44. package/dist/cjs/location-off-icon.cjs.entry.js +1 -1
  45. package/dist/cjs/microsoft-logo-icon.cjs.entry.js +1 -1
  46. package/dist/cjs/multi-select-dropdown.cjs.entry.js +2 -2
  47. package/dist/cjs/nylas-additional-participants.cjs.entry.js +1 -1
  48. package/dist/cjs/{nylas-api-request-2a0e7022.js → nylas-api-request-27c25287.js} +13 -2
  49. package/dist/cjs/nylas-api-request-27c25287.js.map +1 -0
  50. package/dist/cjs/{nylas-api-request-55923233.js → nylas-api-request-abdb8dd8.js} +13 -2
  51. package/dist/cjs/nylas-api-request-abdb8dd8.js.map +1 -0
  52. package/dist/cjs/nylas-availability-picker.cjs.entry.js +31 -14
  53. package/dist/cjs/nylas-availability-picker.cjs.entry.js.map +1 -1
  54. package/dist/cjs/nylas-booked-event-card.cjs.entry.js +1 -1
  55. package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js +5 -5
  56. package/dist/cjs/nylas-booking-calendar-picker.cjs.entry.js +10 -4
  57. package/dist/cjs/nylas-booking-calendar-picker.cjs.entry.js.map +1 -1
  58. package/dist/cjs/nylas-calendar-picker.cjs.entry.js +11 -6
  59. package/dist/cjs/nylas-calendar-picker.cjs.entry.js.map +1 -1
  60. package/dist/cjs/nylas-cancel-booking-form.cjs.entry.js +1 -1
  61. package/dist/cjs/nylas-cancelled-event-card.cjs.entry.js +1 -1
  62. package/dist/cjs/nylas-composer.cjs.entry.js +1 -1
  63. package/dist/cjs/nylas-custom-booking-flow.cjs.entry.js +19 -10
  64. package/dist/cjs/nylas-custom-booking-flow.cjs.entry.js.map +1 -1
  65. package/dist/cjs/nylas-editor-tabs.cjs.entry.js +67 -38
  66. package/dist/cjs/nylas-editor-tabs.cjs.entry.js.map +1 -1
  67. package/dist/cjs/nylas-event-description.cjs.entry.js +13 -4
  68. package/dist/cjs/nylas-event-description.cjs.entry.js.map +1 -1
  69. package/dist/cjs/nylas-event-duration.cjs.entry.js +13 -8
  70. package/dist/cjs/nylas-event-duration.cjs.entry.js.map +1 -1
  71. package/dist/cjs/nylas-event-info.cjs.entry.js +1 -1
  72. package/dist/cjs/nylas-event-limits.cjs.entry.js +1 -1
  73. package/dist/cjs/nylas-event-title.cjs.entry.js +50 -10
  74. package/dist/cjs/nylas-event-title.cjs.entry.js.map +1 -1
  75. package/dist/cjs/nylas-form-card.cjs.entry.js +1 -1
  76. package/dist/cjs/nylas-limit-future-bookings.cjs.entry.js +22 -9
  77. package/dist/cjs/nylas-limit-future-bookings.cjs.entry.js.map +1 -1
  78. package/dist/cjs/nylas-list-configurations.cjs.entry.js +24 -9
  79. package/dist/cjs/nylas-list-configurations.cjs.entry.js.map +1 -1
  80. package/dist/cjs/nylas-list-folders.cjs.entry.js +1 -1
  81. package/dist/cjs/nylas-list-threads.cjs.entry.js +1 -1
  82. package/dist/cjs/nylas-locale-switch.cjs.entry.js +1 -1
  83. package/dist/cjs/nylas-location-component.cjs.entry.js +15 -4
  84. package/dist/cjs/nylas-location-component.cjs.entry.js.map +1 -1
  85. package/dist/cjs/nylas-login.cjs.entry.js +1 -1
  86. package/dist/cjs/nylas-logo.cjs.entry.js +1 -1
  87. package/dist/cjs/nylas-mailbox-toolbar-button.cjs.entry.js +1 -1
  88. package/dist/cjs/nylas-mailbox.cjs.entry.js +1 -1
  89. package/dist/cjs/nylas-min-cancellation-notice.cjs.entry.js +26 -11
  90. package/dist/cjs/nylas-min-cancellation-notice.cjs.entry.js.map +1 -1
  91. package/dist/cjs/nylas-notification.cjs.entry.js +1 -1
  92. package/dist/cjs/nylas-provider.cjs.entry.js +3 -3
  93. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js +16 -16
  94. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js.map +1 -1
  95. package/dist/cjs/nylas-scheduling.cjs.entry.js +1 -1
  96. package/dist/cjs/nylas-selected-event-card.cjs.entry.js +1 -1
  97. package/dist/cjs/nylas-summarize-message-button.cjs.entry.js +2 -2
  98. package/dist/cjs/nylas-threads-refresh.cjs.entry.js +2 -2
  99. package/dist/cjs/nylas-threads-search.cjs.entry.js +1 -1
  100. package/dist/cjs/nylas-time-window-picker.cjs.entry.js +1 -1
  101. package/dist/cjs/nylas-view-email.cjs.entry.js +1 -1
  102. package/dist/cjs/nylas-view-thread.cjs.entry.js +1 -1
  103. package/dist/cjs/nylas-web-elements.cjs.js +1 -1
  104. package/dist/cjs/people-icon.cjs.entry.js +1 -1
  105. package/dist/cjs/play-icon.cjs.entry.js +1 -1
  106. package/dist/cjs/play-icon_2.cjs.entry.js +2 -2
  107. package/dist/cjs/refresh-icon.cjs.entry.js +1 -1
  108. package/dist/cjs/reply-all-icon.cjs.entry.js +1 -1
  109. package/dist/cjs/reply-icon.cjs.entry.js +1 -1
  110. package/dist/cjs/{scheduler-config-store-4d93a9b7.js → scheduler-config-store-37690bf0.js} +10 -4
  111. package/dist/cjs/scheduler-config-store-37690bf0.js.map +1 -0
  112. package/dist/cjs/{scheduler-config-store-a0e08cab.js → scheduler-config-store-529c8d7e.js} +10 -4
  113. package/dist/cjs/scheduler-config-store-529c8d7e.js.map +1 -0
  114. package/dist/cjs/{scheduler-store-a492526c.js → scheduler-store-0081970d.js} +15 -2
  115. package/dist/cjs/scheduler-store-0081970d.js.map +1 -0
  116. package/dist/cjs/{scheduler-store-e148a4cc.js → scheduler-store-67dc1986.js} +15 -2
  117. package/dist/cjs/scheduler-store-67dc1986.js.map +1 -0
  118. package/dist/cjs/search-icon.cjs.entry.js +1 -1
  119. package/dist/cjs/select-dropdown.cjs.entry.js +2 -2
  120. package/dist/cjs/sent-icon.cjs.entry.js +1 -1
  121. package/dist/cjs/spam-icon.cjs.entry.js +1 -1
  122. package/dist/cjs/star-icon.cjs.entry.js +1 -1
  123. package/dist/cjs/stop-icon.cjs.entry.js +1 -1
  124. package/dist/cjs/time-period-selector.cjs.entry.js +1 -1
  125. package/dist/cjs/tooltip-component.cjs.entry.js +1 -1
  126. package/dist/cjs/translate-icon.cjs.entry.js +1 -1
  127. package/dist/cjs/trash-icon.cjs.entry.js +1 -1
  128. package/dist/cjs/underline-icon.cjs.entry.js +1 -1
  129. package/dist/cjs/warning-icon.cjs.entry.js +1 -1
  130. package/dist/collection/common/constants.js +9 -0
  131. package/dist/collection/common/constants.js.map +1 -1
  132. package/dist/collection/common/icons/add-circle.js +1 -1
  133. package/dist/collection/common/icons/archive.js +1 -1
  134. package/dist/collection/common/icons/arrow.js +1 -1
  135. package/dist/collection/common/icons/bold.js +1 -1
  136. package/dist/collection/common/icons/calendar-cancel.js +1 -1
  137. package/dist/collection/common/icons/calendar-check.js +1 -1
  138. package/dist/collection/common/icons/calendar-info.js +1 -1
  139. package/dist/collection/common/icons/calendar-patterns.js +1 -1
  140. package/dist/collection/common/icons/calendar.js +1 -1
  141. package/dist/collection/common/icons/checkmark-circle.js +1 -1
  142. package/dist/collection/common/icons/chevron.js +1 -1
  143. package/dist/collection/common/icons/close.js +1 -1
  144. package/dist/collection/common/icons/document-refresh.js +1 -1
  145. package/dist/collection/common/icons/flow.js +1 -1
  146. package/dist/collection/common/icons/folder.js +1 -1
  147. package/dist/collection/common/icons/forward.js +1 -1
  148. package/dist/collection/common/icons/globe.js +1 -1
  149. package/dist/collection/common/icons/google-logo.js +1 -1
  150. package/dist/collection/common/icons/inbox.js +1 -1
  151. package/dist/collection/common/icons/info.js +1 -1
  152. package/dist/collection/common/icons/italic.js +1 -1
  153. package/dist/collection/common/icons/loading.js +1 -1
  154. package/dist/collection/common/icons/location-off.js +1 -1
  155. package/dist/collection/common/icons/location.js +1 -1
  156. package/dist/collection/common/icons/microsoft-logo.js +1 -1
  157. package/dist/collection/common/icons/nylas-logo.js +1 -1
  158. package/dist/collection/common/icons/people.js +1 -1
  159. package/dist/collection/common/icons/play.js +1 -1
  160. package/dist/collection/common/icons/refresh.js +1 -1
  161. package/dist/collection/common/icons/reply-all.js +1 -1
  162. package/dist/collection/common/icons/reply.js +1 -1
  163. package/dist/collection/common/icons/search.js +1 -1
  164. package/dist/collection/common/icons/sent.js +1 -1
  165. package/dist/collection/common/icons/spam.js +1 -1
  166. package/dist/collection/common/icons/star.js +1 -1
  167. package/dist/collection/common/icons/stop.js +1 -1
  168. package/dist/collection/common/icons/translate.js +1 -1
  169. package/dist/collection/common/icons/trash.js +1 -1
  170. package/dist/collection/common/icons/underline.js +1 -1
  171. package/dist/collection/common/icons/warning.js +1 -1
  172. package/dist/collection/common/nylas-api-request.js +12 -1
  173. package/dist/collection/common/nylas-api-request.js.map +1 -1
  174. package/dist/collection/components/design-system/button-component/button-component.css +5 -0
  175. package/dist/collection/components/design-system/button-component/button-component.js +1 -1
  176. package/dist/collection/components/design-system/multi-select-dropdown/multi-select-dropdown.js +2 -2
  177. package/dist/collection/components/design-system/select-dropdown/select-dropdown.js +2 -2
  178. package/dist/collection/components/design-system/time-period-selector/time-period-selector.js +1 -1
  179. package/dist/collection/components/design-system/tooltip-component/toolitp-component.js +1 -1
  180. package/dist/collection/components/mailbox/nylas-composer/nylas-composer.js +1 -1
  181. package/dist/collection/components/mailbox/nylas-list-folders/nylas-list-folders.js +1 -1
  182. package/dist/collection/components/mailbox/nylas-list-threads/nylas-list-threads.js +1 -1
  183. package/dist/collection/components/mailbox/nylas-mailbox/nylas-mailbox.js +1 -1
  184. package/dist/collection/components/mailbox/nylas-mailbox-toolbar-button/nylas-mailbox-toolbar-button.js +1 -1
  185. package/dist/collection/components/mailbox/nylas-summarize-message-button/nylas-summarize-message-button.js +2 -2
  186. package/dist/collection/components/mailbox/nylas-threads-refresh/nylas-threads-refresh.js +2 -2
  187. package/dist/collection/components/mailbox/nylas-threads-search/nylas-threads-search.js +1 -1
  188. package/dist/collection/components/mailbox/nylas-view-email/nylas-view-email.js +1 -1
  189. package/dist/collection/components/mailbox/nylas-view-thread/nylas-view-thread.js +1 -1
  190. package/dist/collection/components/nylas-login/nylas-login.js +1 -1
  191. package/dist/collection/components/nylas-provider/nylas-provider.js +2 -2
  192. package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.js.map +1 -1
  193. package/dist/collection/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.js +1 -1
  194. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js +1 -1
  195. package/dist/collection/components/scheduler/nylas-notification/nylas-notification.js +1 -1
  196. package/dist/collection/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.js +1 -1
  197. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js +55 -15
  198. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js.map +1 -1
  199. package/dist/collection/components/scheduler-editor/nylas-booking-calendar-picker/nylas-booking-calendar-picker.js +32 -5
  200. package/dist/collection/components/scheduler-editor/nylas-booking-calendar-picker/nylas-booking-calendar-picker.js.map +1 -1
  201. package/dist/collection/components/scheduler-editor/nylas-calendar-picker/nylas-calendar-picker.js +23 -14
  202. package/dist/collection/components/scheduler-editor/nylas-calendar-picker/nylas-calendar-picker.js.map +1 -1
  203. package/dist/collection/components/scheduler-editor/nylas-custom-booking-flow/nylas-custom-booking-flow.js +41 -9
  204. package/dist/collection/components/scheduler-editor/nylas-custom-booking-flow/nylas-custom-booking-flow.js.map +1 -1
  205. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.css +35 -3
  206. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js +99 -36
  207. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js.map +1 -1
  208. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js +4 -4
  209. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js.map +1 -1
  210. package/dist/collection/components/scheduler-editor/nylas-event-description/nylas-event-description.css +1 -1
  211. package/dist/collection/components/scheduler-editor/nylas-event-description/nylas-event-description.js +34 -2
  212. package/dist/collection/components/scheduler-editor/nylas-event-description/nylas-event-description.js.map +1 -1
  213. package/dist/collection/components/scheduler-editor/nylas-event-duration/nylas-event-duration.css +1 -1
  214. package/dist/collection/components/scheduler-editor/nylas-event-duration/nylas-event-duration.js +35 -7
  215. package/dist/collection/components/scheduler-editor/nylas-event-duration/nylas-event-duration.js.map +1 -1
  216. package/dist/collection/components/scheduler-editor/nylas-event-info/nylas-event-info.js +1 -1
  217. package/dist/collection/components/scheduler-editor/nylas-event-limits/nylas-event-limits.js +1 -1
  218. package/dist/collection/components/scheduler-editor/nylas-event-title/nylas-event-title.css +8 -1
  219. package/dist/collection/components/scheduler-editor/nylas-event-title/nylas-event-title.js +83 -9
  220. package/dist/collection/components/scheduler-editor/nylas-event-title/nylas-event-title.js.map +1 -1
  221. package/dist/collection/components/scheduler-editor/nylas-form-card/nylas-form-card.js +1 -1
  222. package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.js +45 -9
  223. package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.js.map +1 -1
  224. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.css +39 -2
  225. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.js +46 -9
  226. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.js.map +1 -1
  227. package/dist/collection/components/scheduler-editor/nylas-location-component/nylas-location-component.css +2 -2
  228. package/dist/collection/components/scheduler-editor/nylas-location-component/nylas-location-component.js +37 -3
  229. package/dist/collection/components/scheduler-editor/nylas-location-component/nylas-location-component.js.map +1 -1
  230. package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.js +49 -11
  231. package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.js.map +1 -1
  232. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.css +6 -0
  233. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js +36 -16
  234. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js.map +1 -1
  235. package/dist/collection/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.js +1 -1
  236. package/dist/collection/connector/nylas-scheduler-connector/errors/index.js +8 -0
  237. package/dist/collection/connector/nylas-scheduler-connector/errors/index.js.map +1 -1
  238. package/dist/collection/connector/shared/api/scheduler-config.js +6 -6
  239. package/dist/collection/connector/shared/api/scheduler-config.js.map +1 -1
  240. package/dist/collection/connector/shared/api/scheduler.js +6 -1
  241. package/dist/collection/connector/shared/api/scheduler.js.map +1 -1
  242. package/dist/collection/index.js +0 -1
  243. package/dist/collection/index.js.map +1 -1
  244. package/dist/collection/stores/scheduler-config-store.js +9 -3
  245. package/dist/collection/stores/scheduler-config-store.js.map +1 -1
  246. package/dist/components/add-circle.js +1 -1
  247. package/dist/components/archive.js +1 -1
  248. package/dist/components/arrow.js +1 -1
  249. package/dist/components/bold.js +1 -1
  250. package/dist/components/button-component2.js +2 -2
  251. package/dist/components/button-component2.js.map +1 -1
  252. package/dist/components/calendar-cancel.js +1 -1
  253. package/dist/components/calendar-check.js +1 -1
  254. package/dist/components/calendar-info.js +1 -1
  255. package/dist/components/calendar-patterns.js +1 -1
  256. package/dist/components/calendar.js +1 -1
  257. package/dist/components/checkmark-circle.js +1 -1
  258. package/dist/components/chevron.js +1 -1
  259. package/dist/components/close.js +1 -1
  260. package/dist/components/constants.js +11 -2
  261. package/dist/components/constants.js.map +1 -1
  262. package/dist/components/document-refresh-icon.js +1 -1
  263. package/dist/components/flow.js +1 -1
  264. package/dist/components/focus-visible.js +1 -1
  265. package/dist/components/folder.js +1 -1
  266. package/dist/components/forward.js +1 -1
  267. package/dist/components/globe.js +1 -1
  268. package/dist/components/google-logo.js +1 -1
  269. package/dist/components/inbox.js +1 -1
  270. package/dist/components/index.d.ts +0 -179
  271. package/dist/components/index.es.js +2 -194
  272. package/dist/components/index.es.js.map +1 -1
  273. package/dist/components/index.js +2 -89
  274. package/dist/components/index.js.map +1 -1
  275. package/dist/components/index2.js +196 -0
  276. package/dist/components/index2.js.map +1 -0
  277. package/dist/components/info.js +1 -1
  278. package/dist/components/italic.js +1 -1
  279. package/dist/components/loading.js +1 -1
  280. package/dist/components/location-off.js +1 -1
  281. package/dist/components/location.js +1 -1
  282. package/dist/components/mailbox-store.js +3 -2
  283. package/dist/components/mailbox-store.js.map +1 -1
  284. package/dist/components/microsoft-logo.js +1 -1
  285. package/dist/components/multi-select-dropdown2.js +3 -3
  286. package/dist/components/nylas-additional-participants.js +2 -2
  287. package/dist/components/nylas-api-request.js +58 -0
  288. package/dist/components/nylas-api-request.js.map +1 -0
  289. package/dist/components/nylas-availability-picker2.js +33 -14
  290. package/dist/components/nylas-availability-picker2.js.map +1 -1
  291. package/dist/components/nylas-booked-event-card2.js +1 -1
  292. package/dist/components/nylas-booking-calendar-picker2.js +12 -5
  293. package/dist/components/nylas-booking-calendar-picker2.js.map +1 -1
  294. package/dist/components/nylas-booking-form2.js +1 -1
  295. package/dist/components/nylas-buffer-time2.js +1 -1
  296. package/dist/components/nylas-calendar-picker2.js +13 -8
  297. package/dist/components/nylas-calendar-picker2.js.map +1 -1
  298. package/dist/components/nylas-cancel-booking-form2.js +2 -2
  299. package/dist/components/nylas-cancelled-event-card2.js +2 -2
  300. package/dist/components/nylas-composer2.js +2 -2
  301. package/dist/components/nylas-custom-booking-flow2.js +23 -12
  302. package/dist/components/nylas-custom-booking-flow2.js.map +1 -1
  303. package/dist/components/nylas-date-picker2.js +1 -1
  304. package/dist/components/nylas-editor-tabs2.js +74 -43
  305. package/dist/components/nylas-editor-tabs2.js.map +1 -1
  306. package/dist/components/nylas-event-description2.js +17 -6
  307. package/dist/components/nylas-event-description2.js.map +1 -1
  308. package/dist/components/nylas-event-duration2.js +16 -9
  309. package/dist/components/nylas-event-duration2.js.map +1 -1
  310. package/dist/components/nylas-event-info2.js +2 -2
  311. package/dist/components/nylas-event-limits2.js +2 -2
  312. package/dist/components/nylas-event-title2.js +56 -13
  313. package/dist/components/nylas-event-title2.js.map +1 -1
  314. package/dist/components/nylas-form-card2.js +2 -2
  315. package/dist/components/nylas-if-state.js +1 -1
  316. package/dist/components/nylas-limit-future-bookings2.js +25 -10
  317. package/dist/components/nylas-limit-future-bookings2.js.map +1 -1
  318. package/dist/components/nylas-list-configurations2.js +28 -11
  319. package/dist/components/nylas-list-configurations2.js.map +1 -1
  320. package/dist/components/nylas-list-folders.js +2 -2
  321. package/dist/components/nylas-list-threads.js +2 -2
  322. package/dist/components/nylas-location-component2.js +18 -5
  323. package/dist/components/nylas-location-component2.js.map +1 -1
  324. package/dist/components/nylas-login.js +1 -1
  325. package/dist/components/nylas-logo2.js +1 -1
  326. package/dist/components/nylas-mailbox-pagination.js +1 -1
  327. package/dist/components/nylas-mailbox-toolbar-button.js +2 -2
  328. package/dist/components/nylas-mailbox.js +2 -2
  329. package/dist/components/nylas-min-cancellation-notice2.js +29 -12
  330. package/dist/components/nylas-min-cancellation-notice2.js.map +1 -1
  331. package/dist/components/nylas-notification2.js +2 -2
  332. package/dist/components/nylas-provider.js +2 -2
  333. package/dist/components/nylas-scheduler-editor.js +18 -58
  334. package/dist/components/nylas-scheduler-editor.js.map +1 -1
  335. package/dist/components/nylas-scheduling.js +1 -1
  336. package/dist/components/nylas-selected-event-card2.js +1 -1
  337. package/dist/components/nylas-summarize-message-button2.js +3 -3
  338. package/dist/components/nylas-threads-refresh.js +3 -3
  339. package/dist/components/nylas-threads-search.js +2 -2
  340. package/dist/components/nylas-time-window-picker2.js +2 -2
  341. package/dist/components/nylas-timeslot-picker2.js +1 -1
  342. package/dist/components/nylas-view-email2.js +2 -2
  343. package/dist/components/nylas-view-thread.js +2 -2
  344. package/dist/components/people-icon.js +1 -1
  345. package/dist/components/play.js +1 -1
  346. package/dist/components/refresh.js +1 -1
  347. package/dist/components/register-component.js +1 -1
  348. package/dist/components/reply-all.js +1 -1
  349. package/dist/components/reply.js +1 -1
  350. package/dist/components/scheduler-config-store.js +10 -4
  351. package/dist/components/scheduler-config-store.js.map +1 -1
  352. package/dist/components/scheduler-store.js +16 -3
  353. package/dist/components/scheduler-store.js.map +1 -1
  354. package/dist/components/search.js +1 -1
  355. package/dist/components/select-dropdown2.js +2 -2
  356. package/dist/components/sent.js +1 -1
  357. package/dist/components/spam.js +1 -1
  358. package/dist/components/star.js +1 -1
  359. package/dist/components/stop.js +1 -1
  360. package/dist/components/time-period-selector2.js +2 -2
  361. package/dist/components/toolitp-component.js +1 -1
  362. package/dist/components/translate.js +1 -1
  363. package/dist/components/trash.js +1 -1
  364. package/dist/components/underline.js +1 -1
  365. package/dist/components/utils.js +1 -1
  366. package/dist/components/warning.js +1 -1
  367. package/dist/esm/add-circle-icon.entry.js +1 -1
  368. package/dist/esm/add-circle-icon_22.entry.js +222 -92
  369. package/dist/esm/add-circle-icon_22.entry.js.map +1 -1
  370. package/dist/esm/archive-icon.entry.js +1 -1
  371. package/dist/esm/archive-icon_7.entry.js +7 -7
  372. package/dist/esm/arrow-icon.entry.js +1 -1
  373. package/dist/esm/bold-icon.entry.js +1 -1
  374. package/dist/esm/bold-icon_3.entry.js +3 -3
  375. package/dist/esm/button-component.entry.js +2 -2
  376. package/dist/esm/button-component.entry.js.map +1 -1
  377. package/dist/esm/calendar-cancel-icon.entry.js +1 -1
  378. package/dist/esm/calendar-check-icon.entry.js +1 -1
  379. package/dist/esm/calendar-check-icon_2.entry.js +2 -2
  380. package/dist/esm/calendar-icon.entry.js +1 -1
  381. package/dist/esm/calendar-info-icon.entry.js +1 -1
  382. package/dist/esm/calendar-patterns-icon.entry.js +1 -1
  383. package/dist/esm/checkmark-circle-icon.entry.js +1 -1
  384. package/dist/esm/chevron-icon.entry.js +1 -1
  385. package/dist/esm/chevron-icon_3.entry.js +4 -4
  386. package/dist/esm/close-icon.entry.js +1 -1
  387. package/dist/esm/{constants-335dffcf.js → constants-bf39e913.js} +11 -2
  388. package/dist/esm/{constants-335dffcf.js.map → constants-bf39e913.js.map} +1 -1
  389. package/dist/esm/{constants-6ee60d6d.js → constants-f34b9c6e.js} +11 -2
  390. package/dist/esm/{constants-6ee60d6d.js.map → constants-f34b9c6e.js.map} +1 -1
  391. package/dist/esm/document-refresh-icon.entry.js +1 -1
  392. package/dist/esm/flow-icon.entry.js +1 -1
  393. package/dist/esm/folder-icon.entry.js +1 -1
  394. package/dist/esm/forward-icon.entry.js +1 -1
  395. package/dist/esm/forward-icon_6.entry.js +7 -7
  396. package/dist/esm/globe-icon.entry.js +1 -1
  397. package/dist/esm/google-logo-icon.entry.js +1 -1
  398. package/dist/esm/google-logo-icon_4.entry.js +93 -49
  399. package/dist/esm/google-logo-icon_4.entry.js.map +1 -1
  400. package/dist/esm/inbox-icon.entry.js +1 -1
  401. package/dist/esm/index-7cb0dd3d.js +1 -158
  402. package/dist/esm/index-8362ce5c.js +1 -362
  403. package/dist/esm/index.js +1 -1
  404. package/dist/esm/info-icon.entry.js +1 -1
  405. package/dist/esm/info-icon_2.entry.js +2 -2
  406. package/dist/esm/italic-icon.entry.js +1 -1
  407. package/dist/esm/loader.js +1 -1
  408. package/dist/esm/loading-icon.entry.js +1 -1
  409. package/dist/esm/location-icon.entry.js +1 -1
  410. package/dist/esm/location-off-icon.entry.js +1 -1
  411. package/dist/esm/microsoft-logo-icon.entry.js +1 -1
  412. package/dist/esm/multi-select-dropdown.entry.js +2 -2
  413. package/dist/esm/nylas-additional-participants.entry.js +1 -1
  414. package/dist/esm/{nylas-api-request-3120d9ac.js → nylas-api-request-8932547a.js} +13 -2
  415. package/dist/esm/nylas-api-request-8932547a.js.map +1 -0
  416. package/dist/{nylas-web-elements/nylas-api-request-4f3dbb72.js → esm/nylas-api-request-b085294d.js} +13 -2
  417. package/dist/esm/nylas-api-request-b085294d.js.map +1 -0
  418. package/dist/esm/nylas-availability-picker.entry.js +31 -14
  419. package/dist/esm/nylas-availability-picker.entry.js.map +1 -1
  420. package/dist/esm/nylas-booked-event-card.entry.js +1 -1
  421. package/dist/esm/nylas-booked-event-card_10.entry.js +5 -5
  422. package/dist/esm/nylas-booking-calendar-picker.entry.js +10 -4
  423. package/dist/esm/nylas-booking-calendar-picker.entry.js.map +1 -1
  424. package/dist/esm/nylas-calendar-picker.entry.js +11 -6
  425. package/dist/esm/nylas-calendar-picker.entry.js.map +1 -1
  426. package/dist/esm/nylas-cancel-booking-form.entry.js +1 -1
  427. package/dist/esm/nylas-cancelled-event-card.entry.js +1 -1
  428. package/dist/esm/nylas-composer.entry.js +1 -1
  429. package/dist/esm/nylas-custom-booking-flow.entry.js +19 -10
  430. package/dist/esm/nylas-custom-booking-flow.entry.js.map +1 -1
  431. package/dist/esm/nylas-editor-tabs.entry.js +67 -38
  432. package/dist/esm/nylas-editor-tabs.entry.js.map +1 -1
  433. package/dist/esm/nylas-event-description.entry.js +13 -4
  434. package/dist/esm/nylas-event-description.entry.js.map +1 -1
  435. package/dist/esm/nylas-event-duration.entry.js +13 -8
  436. package/dist/esm/nylas-event-duration.entry.js.map +1 -1
  437. package/dist/esm/nylas-event-info.entry.js +1 -1
  438. package/dist/esm/nylas-event-limits.entry.js +1 -1
  439. package/dist/esm/nylas-event-title.entry.js +50 -10
  440. package/dist/esm/nylas-event-title.entry.js.map +1 -1
  441. package/dist/esm/nylas-form-card.entry.js +1 -1
  442. package/dist/esm/nylas-limit-future-bookings.entry.js +22 -9
  443. package/dist/esm/nylas-limit-future-bookings.entry.js.map +1 -1
  444. package/dist/esm/nylas-list-configurations.entry.js +24 -9
  445. package/dist/esm/nylas-list-configurations.entry.js.map +1 -1
  446. package/dist/esm/nylas-list-folders.entry.js +1 -1
  447. package/dist/esm/nylas-list-threads.entry.js +1 -1
  448. package/dist/esm/nylas-locale-switch.entry.js +1 -1
  449. package/dist/esm/nylas-location-component.entry.js +15 -4
  450. package/dist/esm/nylas-location-component.entry.js.map +1 -1
  451. package/dist/esm/nylas-login.entry.js +1 -1
  452. package/dist/esm/nylas-logo.entry.js +1 -1
  453. package/dist/esm/nylas-mailbox-toolbar-button.entry.js +1 -1
  454. package/dist/esm/nylas-mailbox.entry.js +1 -1
  455. package/dist/esm/nylas-min-cancellation-notice.entry.js +26 -11
  456. package/dist/esm/nylas-min-cancellation-notice.entry.js.map +1 -1
  457. package/dist/esm/nylas-notification.entry.js +1 -1
  458. package/dist/esm/nylas-provider.entry.js +3 -3
  459. package/dist/esm/nylas-scheduler-editor.entry.js +16 -16
  460. package/dist/esm/nylas-scheduler-editor.entry.js.map +1 -1
  461. package/dist/esm/nylas-scheduling.entry.js +1 -1
  462. package/dist/esm/nylas-selected-event-card.entry.js +1 -1
  463. package/dist/esm/nylas-summarize-message-button.entry.js +2 -2
  464. package/dist/esm/nylas-threads-refresh.entry.js +2 -2
  465. package/dist/esm/nylas-threads-search.entry.js +1 -1
  466. package/dist/esm/nylas-time-window-picker.entry.js +1 -1
  467. package/dist/esm/nylas-view-email.entry.js +1 -1
  468. package/dist/esm/nylas-view-thread.entry.js +1 -1
  469. package/dist/esm/nylas-web-elements.js +1 -1
  470. package/dist/esm/people-icon.entry.js +1 -1
  471. package/dist/esm/play-icon.entry.js +1 -1
  472. package/dist/esm/play-icon_2.entry.js +2 -2
  473. package/dist/esm/refresh-icon.entry.js +1 -1
  474. package/dist/esm/reply-all-icon.entry.js +1 -1
  475. package/dist/esm/reply-icon.entry.js +1 -1
  476. package/dist/esm/{scheduler-config-store-6222c0ed.js → scheduler-config-store-07d98279.js} +10 -4
  477. package/dist/esm/scheduler-config-store-07d98279.js.map +1 -0
  478. package/dist/esm/{scheduler-config-store-0efc3519.js → scheduler-config-store-8f2e658e.js} +10 -4
  479. package/dist/esm/scheduler-config-store-8f2e658e.js.map +1 -0
  480. package/dist/{nylas-web-elements/scheduler-store-8ddcc496.js → esm/scheduler-store-66c2168c.js} +15 -2
  481. package/dist/esm/scheduler-store-66c2168c.js.map +1 -0
  482. package/dist/esm/{scheduler-store-39d37291.js → scheduler-store-a175fc3e.js} +15 -2
  483. package/dist/esm/scheduler-store-a175fc3e.js.map +1 -0
  484. package/dist/esm/search-icon.entry.js +1 -1
  485. package/dist/esm/select-dropdown.entry.js +2 -2
  486. package/dist/esm/sent-icon.entry.js +1 -1
  487. package/dist/esm/spam-icon.entry.js +1 -1
  488. package/dist/esm/star-icon.entry.js +1 -1
  489. package/dist/esm/stop-icon.entry.js +1 -1
  490. package/dist/esm/time-period-selector.entry.js +1 -1
  491. package/dist/esm/tooltip-component.entry.js +1 -1
  492. package/dist/esm/translate-icon.entry.js +1 -1
  493. package/dist/esm/trash-icon.entry.js +1 -1
  494. package/dist/esm/underline-icon.entry.js +1 -1
  495. package/dist/esm/warning-icon.entry.js +1 -1
  496. package/dist/nylas-web-elements/add-circle-icon.entry.js +1 -1
  497. package/dist/nylas-web-elements/archive-icon.entry.js +1 -1
  498. package/dist/nylas-web-elements/arrow-icon.entry.js +1 -1
  499. package/dist/nylas-web-elements/bold-icon.entry.js +1 -1
  500. package/dist/nylas-web-elements/button-component.entry.js +2 -2
  501. package/dist/nylas-web-elements/button-component.entry.js.map +1 -1
  502. package/dist/nylas-web-elements/calendar-cancel-icon.entry.js +1 -1
  503. package/dist/nylas-web-elements/calendar-check-icon.entry.js +1 -1
  504. package/dist/nylas-web-elements/calendar-icon.entry.js +1 -1
  505. package/dist/nylas-web-elements/calendar-info-icon.entry.js +1 -1
  506. package/dist/nylas-web-elements/calendar-patterns-icon.entry.js +1 -1
  507. package/dist/nylas-web-elements/checkmark-circle-icon.entry.js +1 -1
  508. package/dist/nylas-web-elements/chevron-icon.entry.js +1 -1
  509. package/dist/nylas-web-elements/close-icon.entry.js +1 -1
  510. package/dist/nylas-web-elements/{constants-335dffcf.js → constants-bf39e913.js} +11 -2
  511. package/dist/nylas-web-elements/{constants-335dffcf.js.map → constants-bf39e913.js.map} +1 -1
  512. package/dist/nylas-web-elements/document-refresh-icon.entry.js +1 -1
  513. package/dist/nylas-web-elements/flow-icon.entry.js +1 -1
  514. package/dist/nylas-web-elements/folder-icon.entry.js +1 -1
  515. package/dist/nylas-web-elements/forward-icon.entry.js +1 -1
  516. package/dist/nylas-web-elements/globe-icon.entry.js +1 -1
  517. package/dist/nylas-web-elements/google-logo-icon.entry.js +1 -1
  518. package/dist/nylas-web-elements/inbox-icon.entry.js +1 -1
  519. package/dist/nylas-web-elements/index.esm.js +1 -1
  520. package/dist/nylas-web-elements/info-icon.entry.js +1 -1
  521. package/dist/nylas-web-elements/italic-icon.entry.js +1 -1
  522. package/dist/nylas-web-elements/loading-icon.entry.js +1 -1
  523. package/dist/nylas-web-elements/location-icon.entry.js +1 -1
  524. package/dist/nylas-web-elements/location-off-icon.entry.js +1 -1
  525. package/dist/nylas-web-elements/microsoft-logo-icon.entry.js +1 -1
  526. package/dist/nylas-web-elements/multi-select-dropdown.entry.js +2 -2
  527. package/dist/nylas-web-elements/nylas-additional-participants.entry.js +1 -1
  528. package/dist/{esm/nylas-api-request-4f3dbb72.js → nylas-web-elements/nylas-api-request-b085294d.js} +13 -2
  529. package/dist/nylas-web-elements/nylas-api-request-b085294d.js.map +1 -0
  530. package/dist/nylas-web-elements/nylas-availability-picker.entry.js +31 -14
  531. package/dist/nylas-web-elements/nylas-availability-picker.entry.js.map +1 -1
  532. package/dist/nylas-web-elements/nylas-booked-event-card.entry.js +1 -1
  533. package/dist/nylas-web-elements/nylas-booking-calendar-picker.entry.js +10 -4
  534. package/dist/nylas-web-elements/nylas-booking-calendar-picker.entry.js.map +1 -1
  535. package/dist/nylas-web-elements/nylas-calendar-picker.entry.js +11 -6
  536. package/dist/nylas-web-elements/nylas-calendar-picker.entry.js.map +1 -1
  537. package/dist/nylas-web-elements/nylas-cancel-booking-form.entry.js +1 -1
  538. package/dist/nylas-web-elements/nylas-cancelled-event-card.entry.js +1 -1
  539. package/dist/nylas-web-elements/nylas-composer.entry.js +1 -1
  540. package/dist/nylas-web-elements/nylas-custom-booking-flow.entry.js +19 -10
  541. package/dist/nylas-web-elements/nylas-custom-booking-flow.entry.js.map +1 -1
  542. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js +67 -38
  543. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js.map +1 -1
  544. package/dist/nylas-web-elements/nylas-event-description.entry.js +13 -4
  545. package/dist/nylas-web-elements/nylas-event-description.entry.js.map +1 -1
  546. package/dist/nylas-web-elements/nylas-event-duration.entry.js +13 -8
  547. package/dist/nylas-web-elements/nylas-event-duration.entry.js.map +1 -1
  548. package/dist/nylas-web-elements/nylas-event-info.entry.js +1 -1
  549. package/dist/nylas-web-elements/nylas-event-limits.entry.js +1 -1
  550. package/dist/nylas-web-elements/nylas-event-title.entry.js +50 -10
  551. package/dist/nylas-web-elements/nylas-event-title.entry.js.map +1 -1
  552. package/dist/nylas-web-elements/nylas-form-card.entry.js +1 -1
  553. package/dist/nylas-web-elements/nylas-limit-future-bookings.entry.js +22 -9
  554. package/dist/nylas-web-elements/nylas-limit-future-bookings.entry.js.map +1 -1
  555. package/dist/nylas-web-elements/nylas-list-configurations.entry.js +24 -9
  556. package/dist/nylas-web-elements/nylas-list-configurations.entry.js.map +1 -1
  557. package/dist/nylas-web-elements/nylas-list-folders.entry.js +1 -1
  558. package/dist/nylas-web-elements/nylas-list-threads.entry.js +1 -1
  559. package/dist/nylas-web-elements/nylas-locale-switch.entry.js +1 -1
  560. package/dist/nylas-web-elements/nylas-location-component.entry.js +15 -4
  561. package/dist/nylas-web-elements/nylas-location-component.entry.js.map +1 -1
  562. package/dist/nylas-web-elements/nylas-login.entry.js +1 -1
  563. package/dist/nylas-web-elements/nylas-logo.entry.js +1 -1
  564. package/dist/nylas-web-elements/nylas-mailbox-toolbar-button.entry.js +1 -1
  565. package/dist/nylas-web-elements/nylas-mailbox.entry.js +1 -1
  566. package/dist/nylas-web-elements/nylas-min-cancellation-notice.entry.js +26 -11
  567. package/dist/nylas-web-elements/nylas-min-cancellation-notice.entry.js.map +1 -1
  568. package/dist/nylas-web-elements/nylas-notification.entry.js +1 -1
  569. package/dist/nylas-web-elements/nylas-provider.entry.js +3 -3
  570. package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js +16 -16
  571. package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js.map +1 -1
  572. package/dist/nylas-web-elements/nylas-scheduling.entry.js +1 -1
  573. package/dist/nylas-web-elements/nylas-selected-event-card.entry.js +1 -1
  574. package/dist/nylas-web-elements/nylas-summarize-message-button.entry.js +2 -2
  575. package/dist/nylas-web-elements/nylas-threads-refresh.entry.js +2 -2
  576. package/dist/nylas-web-elements/nylas-threads-search.entry.js +1 -1
  577. package/dist/nylas-web-elements/nylas-time-window-picker.entry.js +1 -1
  578. package/dist/nylas-web-elements/nylas-view-email.entry.js +1 -1
  579. package/dist/nylas-web-elements/nylas-view-thread.entry.js +1 -1
  580. package/dist/nylas-web-elements/nylas-web-elements.esm.js +1 -1
  581. package/dist/nylas-web-elements/p-00a9efc1.entry.js +2 -0
  582. package/dist/nylas-web-elements/p-1a91cce5.entry.js +2 -0
  583. package/dist/nylas-web-elements/p-1a91cce5.entry.js.map +1 -0
  584. package/dist/nylas-web-elements/{p-fe3b8e66.entry.js → p-1d25ca06.entry.js} +2 -2
  585. package/dist/nylas-web-elements/p-1e445e86.entry.js +2 -0
  586. package/dist/nylas-web-elements/{p-7692056f.entry.js → p-2081b475.entry.js} +2 -2
  587. package/dist/nylas-web-elements/p-22e5436c.js +2 -0
  588. package/dist/nylas-web-elements/p-22e5436c.js.map +1 -0
  589. package/dist/nylas-web-elements/p-2b636359.entry.js +2 -0
  590. package/dist/nylas-web-elements/p-2b636359.entry.js.map +1 -0
  591. package/dist/nylas-web-elements/{p-618b94cd.entry.js → p-30784693.entry.js} +2 -2
  592. package/dist/nylas-web-elements/{p-1260ac06.entry.js → p-33b940fb.entry.js} +2 -2
  593. package/dist/nylas-web-elements/p-343a02e1.entry.js +2 -0
  594. package/dist/nylas-web-elements/{p-674b6d5d.entry.js → p-343b8684.entry.js} +2 -2
  595. package/dist/nylas-web-elements/{p-1c94940d.entry.js → p-3909ec3f.entry.js} +2 -2
  596. package/dist/nylas-web-elements/{p-9c399019.entry.js → p-3b281401.entry.js} +2 -2
  597. package/dist/nylas-web-elements/{p-55368bc0.entry.js → p-42791515.entry.js} +2 -2
  598. package/dist/nylas-web-elements/p-44a9ce77.entry.js +2 -0
  599. package/dist/nylas-web-elements/{p-1819b3d7.js → p-49f716ed.js} +4 -4
  600. package/dist/nylas-web-elements/p-49f716ed.js.map +1 -0
  601. package/dist/nylas-web-elements/{p-1ab25f04.entry.js → p-50b4a80f.entry.js} +2 -2
  602. package/dist/nylas-web-elements/{p-266f9995.entry.js → p-571472d4.entry.js} +2 -2
  603. package/dist/nylas-web-elements/{p-57b753c6.entry.js → p-607b547b.entry.js} +2 -2
  604. package/dist/nylas-web-elements/{p-424f4d9a.entry.js → p-6110351b.entry.js} +2 -2
  605. package/dist/nylas-web-elements/{p-1655dec3.entry.js → p-665ef10b.entry.js} +4 -4
  606. package/dist/nylas-web-elements/p-665ef10b.entry.js.map +1 -0
  607. package/dist/nylas-web-elements/{p-945caf14.entry.js → p-694b511a.entry.js} +2 -2
  608. package/dist/nylas-web-elements/{p-18a936a3.entry.js → p-73c062f8.entry.js} +2 -2
  609. package/dist/nylas-web-elements/{p-c451c9e1.entry.js → p-75a8d077.entry.js} +2 -2
  610. package/dist/nylas-web-elements/{p-c199d203.entry.js → p-80d6175c.entry.js} +2 -2
  611. package/dist/nylas-web-elements/p-939db546.entry.js +2 -0
  612. package/dist/nylas-web-elements/{p-858f0aad.entry.js → p-95a3094a.entry.js} +2 -2
  613. package/dist/nylas-web-elements/p-a628eaeb.js +2 -0
  614. package/dist/nylas-web-elements/p-a628eaeb.js.map +1 -0
  615. package/dist/nylas-web-elements/{p-04e3a98e.entry.js → p-ad64c2b8.entry.js} +2 -2
  616. package/dist/nylas-web-elements/{p-8b1a6e27.entry.js → p-b25821e1.entry.js} +2 -2
  617. package/dist/nylas-web-elements/{p-572bf8c2.entry.js → p-b53062f7.entry.js} +2 -2
  618. package/dist/nylas-web-elements/{p-3f6155de.entry.js → p-bbf9aff2.entry.js} +2 -2
  619. package/dist/nylas-web-elements/p-c20ab972.entry.js +2 -0
  620. package/dist/nylas-web-elements/{p-ae893050.entry.js → p-cc674b3b.entry.js} +3 -3
  621. package/dist/nylas-web-elements/{p-9d4bffbb.entry.js → p-d8f09631.entry.js} +2 -2
  622. package/dist/nylas-web-elements/p-db15d382.js +2 -0
  623. package/dist/nylas-web-elements/p-db15d382.js.map +1 -0
  624. package/dist/nylas-web-elements/{p-81ea7310.entry.js → p-df6d54c7.entry.js} +2 -2
  625. package/dist/nylas-web-elements/{p-370cdcca.entry.js → p-f154a362.entry.js} +2 -2
  626. package/dist/nylas-web-elements/{p-9b195811.entry.js → p-f1f8f745.entry.js} +2 -2
  627. package/dist/nylas-web-elements/people-icon.entry.js +1 -1
  628. package/dist/nylas-web-elements/play-icon.entry.js +1 -1
  629. package/dist/nylas-web-elements/refresh-icon.entry.js +1 -1
  630. package/dist/nylas-web-elements/reply-all-icon.entry.js +1 -1
  631. package/dist/nylas-web-elements/reply-icon.entry.js +1 -1
  632. package/dist/nylas-web-elements/{scheduler-config-store-0efc3519.js → scheduler-config-store-8f2e658e.js} +10 -4
  633. package/dist/nylas-web-elements/scheduler-config-store-8f2e658e.js.map +1 -0
  634. package/dist/{esm/scheduler-store-8ddcc496.js → nylas-web-elements/scheduler-store-66c2168c.js} +15 -2
  635. package/dist/nylas-web-elements/scheduler-store-66c2168c.js.map +1 -0
  636. package/dist/nylas-web-elements/search-icon.entry.js +1 -1
  637. package/dist/nylas-web-elements/select-dropdown.entry.js +2 -2
  638. package/dist/nylas-web-elements/sent-icon.entry.js +1 -1
  639. package/dist/nylas-web-elements/spam-icon.entry.js +1 -1
  640. package/dist/nylas-web-elements/star-icon.entry.js +1 -1
  641. package/dist/nylas-web-elements/stop-icon.entry.js +1 -1
  642. package/dist/nylas-web-elements/time-period-selector.entry.js +1 -1
  643. package/dist/nylas-web-elements/tooltip-component.entry.js +1 -1
  644. package/dist/nylas-web-elements/translate-icon.entry.js +1 -1
  645. package/dist/nylas-web-elements/trash-icon.entry.js +1 -1
  646. package/dist/nylas-web-elements/underline-icon.entry.js +1 -1
  647. package/dist/nylas-web-elements/warning-icon.entry.js +1 -1
  648. package/dist/types/common/constants.d.ts +2 -0
  649. package/dist/types/common/nylas-api-request.d.ts +3 -0
  650. package/dist/types/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.d.ts +10 -4
  651. package/dist/types/components/scheduler-editor/nylas-booking-calendar-picker/nylas-booking-calendar-picker.d.ts +2 -0
  652. package/dist/types/components/scheduler-editor/nylas-calendar-picker/nylas-calendar-picker.d.ts +3 -2
  653. package/dist/types/components/scheduler-editor/nylas-custom-booking-flow/nylas-custom-booking-flow.d.ts +4 -1
  654. package/dist/types/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.d.ts +35 -5
  655. package/dist/types/components/scheduler-editor/nylas-event-description/nylas-event-description.d.ts +3 -0
  656. package/dist/types/components/scheduler-editor/nylas-event-duration/nylas-event-duration.d.ts +3 -0
  657. package/dist/types/components/scheduler-editor/nylas-event-title/nylas-event-title.d.ts +6 -1
  658. package/dist/types/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.d.ts +6 -6
  659. package/dist/types/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.d.ts +2 -0
  660. package/dist/types/components/scheduler-editor/nylas-location-component/nylas-location-component.d.ts +3 -0
  661. package/dist/types/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.d.ts +4 -1
  662. package/dist/types/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.d.ts +3 -2
  663. package/dist/types/components.d.ts +110 -22
  664. package/dist/types/connector/nylas-connector/index.d.ts +1 -1
  665. package/dist/types/connector/nylas-scheduler-config-connector/index.d.ts +1 -1
  666. package/dist/types/connector/nylas-scheduler-connector/errors/index.d.ts +1 -0
  667. package/dist/types/index.d.ts +1 -1
  668. package/dist/types/stores/scheduler-config-store.d.ts +6 -2
  669. package/package.json +4 -2
  670. package/dist/cjs/nylas-api-request-2a0e7022.js.map +0 -1
  671. package/dist/cjs/nylas-api-request-55923233.js.map +0 -1
  672. package/dist/cjs/scheduler-config-store-4d93a9b7.js.map +0 -1
  673. package/dist/cjs/scheduler-config-store-a0e08cab.js.map +0 -1
  674. package/dist/cjs/scheduler-store-a492526c.js.map +0 -1
  675. package/dist/cjs/scheduler-store-e148a4cc.js.map +0 -1
  676. package/dist/esm/nylas-api-request-3120d9ac.js.map +0 -1
  677. package/dist/esm/nylas-api-request-4f3dbb72.js.map +0 -1
  678. package/dist/esm/scheduler-config-store-0efc3519.js.map +0 -1
  679. package/dist/esm/scheduler-config-store-6222c0ed.js.map +0 -1
  680. package/dist/esm/scheduler-store-39d37291.js.map +0 -1
  681. package/dist/esm/scheduler-store-8ddcc496.js.map +0 -1
  682. package/dist/nylas-web-elements/nylas-api-request-4f3dbb72.js.map +0 -1
  683. package/dist/nylas-web-elements/p-0edb3b69.entry.js +0 -2
  684. package/dist/nylas-web-elements/p-1655dec3.entry.js.map +0 -1
  685. package/dist/nylas-web-elements/p-1819b3d7.js.map +0 -1
  686. package/dist/nylas-web-elements/p-1aa7b357.js +0 -2
  687. package/dist/nylas-web-elements/p-1aa7b357.js.map +0 -1
  688. package/dist/nylas-web-elements/p-1f843391.js +0 -2
  689. package/dist/nylas-web-elements/p-1f843391.js.map +0 -1
  690. package/dist/nylas-web-elements/p-3116f5cc.js +0 -2
  691. package/dist/nylas-web-elements/p-3116f5cc.js.map +0 -1
  692. package/dist/nylas-web-elements/p-47180df9.entry.js +0 -2
  693. package/dist/nylas-web-elements/p-605142a9.entry.js +0 -2
  694. package/dist/nylas-web-elements/p-6dcc9411.entry.js +0 -2
  695. package/dist/nylas-web-elements/p-6dcc9411.entry.js.map +0 -1
  696. package/dist/nylas-web-elements/p-9d0c0340.entry.js +0 -2
  697. package/dist/nylas-web-elements/p-9d75bcb2.entry.js +0 -2
  698. package/dist/nylas-web-elements/p-9d75bcb2.entry.js.map +0 -1
  699. package/dist/nylas-web-elements/p-be7124f0.entry.js +0 -2
  700. package/dist/nylas-web-elements/p-c45ac7c6.entry.js +0 -2
  701. package/dist/nylas-web-elements/scheduler-config-store-0efc3519.js.map +0 -1
  702. package/dist/nylas-web-elements/scheduler-store-8ddcc496.js.map +0 -1
  703. /package/dist/nylas-web-elements/{p-c45ac7c6.entry.js.map → p-00a9efc1.entry.js.map} +0 -0
  704. /package/dist/nylas-web-elements/{p-fe3b8e66.entry.js.map → p-1d25ca06.entry.js.map} +0 -0
  705. /package/dist/nylas-web-elements/{p-47180df9.entry.js.map → p-1e445e86.entry.js.map} +0 -0
  706. /package/dist/nylas-web-elements/{p-7692056f.entry.js.map → p-2081b475.entry.js.map} +0 -0
  707. /package/dist/nylas-web-elements/{p-618b94cd.entry.js.map → p-30784693.entry.js.map} +0 -0
  708. /package/dist/nylas-web-elements/{p-1260ac06.entry.js.map → p-33b940fb.entry.js.map} +0 -0
  709. /package/dist/nylas-web-elements/{p-be7124f0.entry.js.map → p-343a02e1.entry.js.map} +0 -0
  710. /package/dist/nylas-web-elements/{p-674b6d5d.entry.js.map → p-343b8684.entry.js.map} +0 -0
  711. /package/dist/nylas-web-elements/{p-1c94940d.entry.js.map → p-3909ec3f.entry.js.map} +0 -0
  712. /package/dist/nylas-web-elements/{p-9c399019.entry.js.map → p-3b281401.entry.js.map} +0 -0
  713. /package/dist/nylas-web-elements/{p-55368bc0.entry.js.map → p-42791515.entry.js.map} +0 -0
  714. /package/dist/nylas-web-elements/{p-605142a9.entry.js.map → p-44a9ce77.entry.js.map} +0 -0
  715. /package/dist/nylas-web-elements/{p-1ab25f04.entry.js.map → p-50b4a80f.entry.js.map} +0 -0
  716. /package/dist/nylas-web-elements/{p-266f9995.entry.js.map → p-571472d4.entry.js.map} +0 -0
  717. /package/dist/nylas-web-elements/{p-57b753c6.entry.js.map → p-607b547b.entry.js.map} +0 -0
  718. /package/dist/nylas-web-elements/{p-424f4d9a.entry.js.map → p-6110351b.entry.js.map} +0 -0
  719. /package/dist/nylas-web-elements/{p-945caf14.entry.js.map → p-694b511a.entry.js.map} +0 -0
  720. /package/dist/nylas-web-elements/{p-18a936a3.entry.js.map → p-73c062f8.entry.js.map} +0 -0
  721. /package/dist/nylas-web-elements/{p-c451c9e1.entry.js.map → p-75a8d077.entry.js.map} +0 -0
  722. /package/dist/nylas-web-elements/{p-c199d203.entry.js.map → p-80d6175c.entry.js.map} +0 -0
  723. /package/dist/nylas-web-elements/{p-9d0c0340.entry.js.map → p-939db546.entry.js.map} +0 -0
  724. /package/dist/nylas-web-elements/{p-858f0aad.entry.js.map → p-95a3094a.entry.js.map} +0 -0
  725. /package/dist/nylas-web-elements/{p-04e3a98e.entry.js.map → p-ad64c2b8.entry.js.map} +0 -0
  726. /package/dist/nylas-web-elements/{p-8b1a6e27.entry.js.map → p-b25821e1.entry.js.map} +0 -0
  727. /package/dist/nylas-web-elements/{p-572bf8c2.entry.js.map → p-b53062f7.entry.js.map} +0 -0
  728. /package/dist/nylas-web-elements/{p-3f6155de.entry.js.map → p-bbf9aff2.entry.js.map} +0 -0
  729. /package/dist/nylas-web-elements/{p-0edb3b69.entry.js.map → p-c20ab972.entry.js.map} +0 -0
  730. /package/dist/nylas-web-elements/{p-ae893050.entry.js.map → p-cc674b3b.entry.js.map} +0 -0
  731. /package/dist/nylas-web-elements/{p-9d4bffbb.entry.js.map → p-d8f09631.entry.js.map} +0 -0
  732. /package/dist/nylas-web-elements/{p-81ea7310.entry.js.map → p-df6d54c7.entry.js.map} +0 -0
  733. /package/dist/nylas-web-elements/{p-370cdcca.entry.js.map → p-f154a362.entry.js.map} +0 -0
  734. /package/dist/nylas-web-elements/{p-9b195811.entry.js.map → p-f1f8f745.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/connector/nylas-scheduler-connector/errors/index.ts"],"names":[],"mappings":"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","sourcesContent":["export enum ErrorCategory {\n Component = 'component',\n Api = 'api',\n Auth = 'auth',\n}\n\nexport interface ErrorDetails {\n title: string;\n message: string;\n category: ErrorCategory;\n}\n\nexport enum ComponentErrorType {\n endtime_not_in_future = 'endtime_not_in_future',\n no_booking_info = 'no_booking_info',\n no_timeslot_selected = 'no_timeslot_selected',\n no_booking_id = 'no_booking_id',\n invalid_start_time = 'invalid_start_time',\n invalid_end_time = 'invalid_end_time',\n invalid_timezone = 'invalid_timezone',\n}\n\nexport enum APIErrorType {\n invalid_session = 'invalid_session',\n general_error = 'general_error',\n internal_error = 'internal_error',\n invalid_request_error = 'invalid_request_error',\n timeslot_not_available = 'timeslot_not_available',\n}\n\nexport class Errors {\n component = (_title: string): Record<ComponentErrorType, (message?: string) => ErrorDetails> => {\n const category = ErrorCategory.Component;\n const title = `${_title} error`;\n return {\n endtime_not_in_future: (message: string = '\"endtime\" can not be in the future') => {\n return {\n title,\n message,\n category,\n };\n },\n no_booking_info: (message: string = 'No booking info provided') => {\n return {\n title,\n message,\n category,\n };\n },\n no_timeslot_selected: (message: string = 'No timeslot selected') => {\n return {\n title,\n message,\n category,\n };\n },\n no_booking_id: (message: string = 'No booking id provided') => {\n return {\n title,\n message,\n category,\n };\n },\n invalid_start_time: (message: string = 'Invalid start time') => {\n return {\n title,\n message,\n category,\n };\n },\n invalid_end_time: (message: string = 'Invalid end time') => {\n return {\n title,\n message,\n category,\n };\n },\n invalid_timezone: (message: string = 'Invalid timezone') => {\n return {\n title,\n message,\n category,\n };\n },\n };\n };\n\n api = (_title: string): Record<APIErrorType, (message: string) => ErrorDetails> => {\n const category = ErrorCategory.Api;\n const title = `${_title} error`;\n\n return {\n invalid_session: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n general_error: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n internal_error: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n invalid_request_error: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n timeslot_not_available: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n };\n };\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/connector/nylas-scheduler-connector/errors/index.ts"],"names":[],"mappings":"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","sourcesContent":["export enum ErrorCategory {\n Component = 'component',\n Api = 'api',\n Auth = 'auth',\n}\n\nexport interface ErrorDetails {\n title: string;\n message: string;\n category: ErrorCategory;\n}\n\nexport enum ComponentErrorType {\n endtime_not_in_future = 'endtime_not_in_future',\n no_booking_info = 'no_booking_info',\n no_timeslot_selected = 'no_timeslot_selected',\n no_timezone_selected = 'no_timezone_selected',\n no_booking_id = 'no_booking_id',\n invalid_start_time = 'invalid_start_time',\n invalid_end_time = 'invalid_end_time',\n invalid_timezone = 'invalid_timezone',\n}\n\nexport enum APIErrorType {\n invalid_session = 'invalid_session',\n general_error = 'general_error',\n internal_error = 'internal_error',\n invalid_request_error = 'invalid_request_error',\n timeslot_not_available = 'timeslot_not_available',\n}\n\nexport class Errors {\n component = (_title: string): Record<ComponentErrorType, (message?: string) => ErrorDetails> => {\n const category = ErrorCategory.Component;\n const title = `${_title} error`;\n return {\n endtime_not_in_future: (message: string = '\"endtime\" can not be in the future') => {\n return {\n title,\n message,\n category,\n };\n },\n no_booking_info: (message: string = 'No booking info provided') => {\n return {\n title,\n message,\n category,\n };\n },\n no_timeslot_selected: (message: string = 'No timeslot selected') => {\n return {\n title,\n message,\n category,\n };\n },\n no_timezone_selected: (message: string = 'No timezone selected') => {\n return {\n title,\n message,\n category,\n };\n },\n no_booking_id: (message: string = 'No booking id provided') => {\n return {\n title,\n message,\n category,\n };\n },\n invalid_start_time: (message: string = 'Invalid start time') => {\n return {\n title,\n message,\n category,\n };\n },\n invalid_end_time: (message: string = 'Invalid end time') => {\n return {\n title,\n message,\n category,\n };\n },\n invalid_timezone: (message: string = 'Invalid timezone') => {\n return {\n title,\n message,\n category,\n };\n },\n };\n };\n\n api = (_title: string): Record<APIErrorType, (message: string) => ErrorDetails> => {\n const category = ErrorCategory.Api;\n const title = `${_title} error`;\n\n return {\n invalid_session: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n general_error: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n internal_error: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n invalid_request_error: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n timeslot_not_available: (message: string) => {\n return {\n title,\n message,\n category,\n };\n },\n };\n };\n}\n"]}
@@ -46,7 +46,7 @@ export class NylasSchedulerConfigAPIConnector {
46
46
  if (!forceFetch) {
47
47
  const existingConfig = this.nylasSchedulerConfigStore.state.configurations.find(c => c.id === configurationId);
48
48
  if (existingConfig) {
49
- this.nylasSchedulerConfigStore.state.config = existingConfig;
49
+ this.nylasSchedulerConfigStore.state.selectedConfiguration = existingConfig;
50
50
  return dataResponse(existingConfig);
51
51
  }
52
52
  }
@@ -64,7 +64,7 @@ export class NylasSchedulerConfigAPIConnector {
64
64
  message: 'Error fetching configuration: ' + response.error?.message,
65
65
  });
66
66
  }
67
- this.nylasSchedulerConfigStore.state.config = response.data;
67
+ this.nylasSchedulerConfigStore.state.selectedConfiguration = response.data;
68
68
  if (this.nylasSchedulerConfigStore.state.configurations.find(c => c.id === configurationId)) {
69
69
  this.nylasSchedulerConfigStore.state.configurations = this.nylasSchedulerConfigStore.state.configurations.map(c => (c.id === configurationId ? response.data : c));
70
70
  }
@@ -120,7 +120,7 @@ export class NylasSchedulerConfigAPIConnector {
120
120
  message: 'Error creating configuration: ' + response.error?.message,
121
121
  });
122
122
  }
123
- this.nylasSchedulerConfigStore.state.config = response.data;
123
+ this.nylasSchedulerConfigStore.state.selectedConfiguration = response.data;
124
124
  this.nylasSchedulerConfigStore.state.configurations = [...this.nylasSchedulerConfigStore.state.configurations, response.data];
125
125
  return dataResponse(response.data);
126
126
  }
@@ -146,7 +146,7 @@ export class NylasSchedulerConfigAPIConnector {
146
146
  message: 'Error updating configuration: ' + response.error?.message,
147
147
  });
148
148
  }
149
- this.nylasSchedulerConfigStore.state.config = response.data;
149
+ this.nylasSchedulerConfigStore.state.selectedConfiguration = response.data;
150
150
  if (this.nylasSchedulerConfigStore.state.configurations.find(c => c.id === configuration.id)) {
151
151
  this.nylasSchedulerConfigStore.state.configurations = this.nylasSchedulerConfigStore.state.configurations.map(c => (c.id === configuration.id ? response.data : c));
152
152
  }
@@ -177,8 +177,8 @@ export class NylasSchedulerConfigAPIConnector {
177
177
  });
178
178
  }
179
179
  this.nylasSchedulerConfigStore.state.configurations = this.nylasSchedulerConfigStore.state.configurations.filter(c => c.id !== configurationId);
180
- if (this.nylasSchedulerConfigStore.state.config?.id === configurationId) {
181
- this.nylasSchedulerConfigStore.state.config = {};
180
+ if (this.nylasSchedulerConfigStore.state.selectedConfiguration?.id === configurationId) {
181
+ this.nylasSchedulerConfigStore.resetSelectedConfiguration();
182
182
  }
183
183
  return dataResponse(response.data);
184
184
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scheduler-config.js","sourceRoot":"","sources":["../../../../src/connector/shared/api/scheduler-config.ts"],"names":[],"mappings":"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","sourcesContent":["import { NylasApiRequest } from '@/common/nylas-api-request';\nimport { NylasSchedulerConfigStoreType } from '@/stores/scheduler-config-store';\nimport { dataResponse } from '@/utils/utils';\nimport { Calendar, Configuration, NylasResponse, isNylasErrorResponse } from '@nylas/core';\n\ntype NylasSchedulerConfigAPIConnectorOptions = {\n nylasApiRequest?: NylasApiRequest;\n nylasSchedulerConfigStore: NylasSchedulerConfigStoreType;\n};\n\n/**\n * Nylas Scheduler Config API Connector\n * This class is responsible for making API requests to the Nylas API for Scheduler Configurations.\n */\nexport class NylasSchedulerConfigAPIConnector {\n private nylasApiRequest?: NylasApiRequest;\n private nylasSchedulerConfigStore: NylasSchedulerConfigStoreType;\n\n constructor({ nylasApiRequest, nylasSchedulerConfigStore }: NylasSchedulerConfigAPIConnectorOptions) {\n this.nylasApiRequest = nylasApiRequest;\n this.nylasSchedulerConfigStore = nylasSchedulerConfigStore;\n }\n\n /**\n * Get the current user.\n * @returns The current user or null if the request is not initialized.\n */\n public async currentUser() {\n if (!this.nylasApiRequest) {\n console.warn('Nylas API Request is not initialized');\n return null;\n }\n\n return this.nylasApiRequest.currentUser();\n }\n\n /**\n * Get the current user's calendars.\n * @returns The current user's calendars or an error if the request is not initialized.\n */\n public async getCalendars() {\n if (!this.nylasApiRequest) {\n console.warn('Nylas API Request is not initialized');\n return dataResponse(null, {\n message: 'Error fetching calendars: Nylas API Request is not initialized',\n });\n }\n\n const [response, error] = await this.nylasApiRequest.request<NylasResponse<Calendar[]>>({\n method: 'GET',\n path: `calendars`,\n });\n\n if (error) {\n return dataResponse(null, {\n message: 'Error fetching calendars: ' + error.message,\n });\n }\n\n if (isNylasErrorResponse(response)) {\n return dataResponse(null, {\n message: 'Error fetching calendars: ' + response.error?.message,\n });\n }\n\n // Set the new calendars as the current calendars\n this.nylasSchedulerConfigStore.state.calendars = response.data;\n\n return dataResponse(response.data);\n }\n\n /**\n * Get a configuration by its ID.\n * @param configurationId The ID of the configuration to fetch.\n */\n public async getConfigurationById(configurationId: string, forceFetch: boolean = false) {\n if (!this.nylasApiRequest) {\n console.warn('Nylas API Request is not initialized');\n return dataResponse(null, {\n message: 'Error fetching configuration: Nylas API Request is not initialized',\n });\n }\n\n // If the configuration is already in the store, return it\n if (!forceFetch) {\n const existingConfig = this.nylasSchedulerConfigStore.state.configurations.find(c => c.id === configurationId);\n if (existingConfig) {\n this.nylasSchedulerConfigStore.state.config = existingConfig;\n return dataResponse(existingConfig);\n }\n }\n\n const [response, error] = await this.nylasApiRequest.request<NylasResponse<Configuration>>({\n method: 'GET',\n path: `scheduling/configurations/${configurationId}`,\n });\n\n if (error) {\n return dataResponse(null, {\n message: 'Error fetching configuration: ' + error.message,\n });\n }\n\n if (isNylasErrorResponse(response)) {\n return dataResponse(null, {\n message: 'Error fetching configuration: ' + response.error?.message,\n });\n }\n\n // Set the new configuration as the current configuration\n this.nylasSchedulerConfigStore.state.config = response.data;\n\n // If the configuration was updated, update the list of configurations\n // If it doesn't exist, add it to the list\n if (this.nylasSchedulerConfigStore.state.configurations.find(c => c.id === configurationId)) {\n this.nylasSchedulerConfigStore.state.configurations = this.nylasSchedulerConfigStore.state.configurations.map(c => (c.id === configurationId ? response.data : c));\n } else {\n this.nylasSchedulerConfigStore.state.configurations = [...this.nylasSchedulerConfigStore.state.configurations, response.data];\n }\n\n return dataResponse(response.data);\n }\n\n /**\n * Get all configurations.\n * @returns The list of configurations or an error if the request is not initialized.\n */\n public async getConfigurations() {\n if (!this.nylasApiRequest) {\n console.warn('Nylas API Request is not initialized');\n return dataResponse(null, {\n message: 'Error fetching configurations: Nylas API Request is not initialized',\n });\n }\n\n const [response, error] = await this.nylasApiRequest.request<NylasResponse<Configuration[]>>({\n method: 'GET',\n path: `scheduling/configurations`,\n });\n\n if (error) {\n return dataResponse(null, {\n message: 'Error fetching configurations: ' + error.message,\n });\n }\n\n if (isNylasErrorResponse(response)) {\n return dataResponse(null, {\n message: 'Error fetching configurations: ' + response.error?.message,\n });\n }\n\n // Set the new configuration as the current configuration\n this.nylasSchedulerConfigStore.state.configurations = response.data;\n\n return dataResponse(response.data);\n }\n\n /**\n * Create a new configuration.\n * @param configuration The configuration to create.\n * @returns The new configuration or an error if the request is not initialized.\n */\n public async createConfiguration(configuration: Omit<Partial<Configuration>, 'id'>) {\n if (!this.nylasApiRequest) {\n console.warn('Nylas API Request is not initialized');\n return dataResponse(null, {\n message: 'Error creating configuration: Nylas API Request is not initialized',\n });\n }\n\n // Set the default require_session_auth based on the state value\n configuration.requires_session_auth = this.nylasSchedulerConfigStore.state.defaultRequiresSessionAuth;\n\n const [response, error] = await this.nylasApiRequest.request<NylasResponse<Configuration>>({\n method: 'POST',\n path: `scheduling/configurations`,\n body: configuration,\n });\n\n if (error) {\n return dataResponse(null, {\n message: 'Error creating configuration: ' + error.message,\n });\n }\n\n if (isNylasErrorResponse(response)) {\n return dataResponse(null, {\n message: 'Error creating configuration: ' + response.error?.message,\n });\n }\n\n // Set the new configuration as the current configuration\n this.nylasSchedulerConfigStore.state.config = response.data;\n\n // Add the new configuration to the list of configurations\n this.nylasSchedulerConfigStore.state.configurations = [...this.nylasSchedulerConfigStore.state.configurations, response.data];\n\n return dataResponse(response.data);\n }\n\n /**\n * Update an existing configuration.\n * @param configuration The configuration to update.\n * @returns The updated configuration or an error if the request is not initialized.\n */\n public async updateConfiguration(configuration: Partial<Configuration>) {\n if (!this.nylasApiRequest) {\n console.warn('Nylas API Request is not initialized');\n return dataResponse(null, {\n message: 'Error updating configuration: Nylas API Request is not initialized',\n });\n }\n\n const [response, error] = await this.nylasApiRequest.request<NylasResponse<Configuration>>({\n method: 'PUT',\n path: `scheduling/configurations/${configuration.id}`,\n body: configuration,\n });\n\n if (error) {\n return dataResponse(null, {\n message: 'Error updating configuration: ' + error.message,\n });\n }\n\n if (isNylasErrorResponse(response)) {\n return dataResponse(null, {\n message: 'Error updating configuration: ' + response.error?.message,\n });\n }\n\n // Set the new configuration as the current configuration\n this.nylasSchedulerConfigStore.state.config = response.data;\n\n // If the configuration was updated, update the list of configurations\n // If it doesn't exist, add it to the list\n if (this.nylasSchedulerConfigStore.state.configurations.find(c => c.id === configuration.id)) {\n this.nylasSchedulerConfigStore.state.configurations = this.nylasSchedulerConfigStore.state.configurations.map(c => (c.id === configuration.id ? response.data : c));\n } else {\n this.nylasSchedulerConfigStore.state.configurations = [...this.nylasSchedulerConfigStore.state.configurations, response.data];\n }\n\n return dataResponse(response.data);\n }\n\n /**\n * Delete a configuration by its ID.\n * @param configurationId The ID of the configuration to delete.\n * @returns The deleted configuration or an error if the request is not initialized.\n */\n public async deleteConfiguration(configurationId: string) {\n if (!this.nylasApiRequest) {\n console.warn('Nylas API Request is not initialized');\n return dataResponse(null, {\n message: 'Error deleting configuration: Nylas API Request is not initialized',\n });\n }\n\n const [response, error] = await this.nylasApiRequest.request<NylasResponse<Configuration>>({\n method: 'DELETE',\n path: `scheduling/configurations/${configurationId}`,\n });\n\n if (error) {\n return dataResponse(null, {\n message: 'Error deleting configuration: ' + error.message,\n });\n }\n\n if (isNylasErrorResponse(response)) {\n return dataResponse(null, {\n message: 'Error deleting configuration: ' + response.error?.message,\n });\n }\n\n // Remove the configuration from the list\n this.nylasSchedulerConfigStore.state.configurations = this.nylasSchedulerConfigStore.state.configurations.filter(c => c.id !== configurationId);\n\n // If the deleted configuration was the current configuration, reset it\n if (this.nylasSchedulerConfigStore.state.config?.id === configurationId) {\n this.nylasSchedulerConfigStore.state.config = {};\n }\n\n return dataResponse(response.data);\n }\n}\n"]}
1
+ {"version":3,"file":"scheduler-config.js","sourceRoot":"","sources":["../../../../src/connector/shared/api/scheduler-config.ts"],"names":[],"mappings":"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","sourcesContent":["import { NylasApiRequest } from '@/common/nylas-api-request';\nimport { NylasSchedulerConfigStoreType } from '@/stores/scheduler-config-store';\nimport { dataResponse } from '@/utils/utils';\nimport { Calendar, Configuration, NylasResponse, isNylasErrorResponse } from '@nylas/core';\n\ntype NylasSchedulerConfigAPIConnectorOptions = {\n nylasApiRequest?: NylasApiRequest;\n nylasSchedulerConfigStore: NylasSchedulerConfigStoreType;\n};\n\n/**\n * Nylas Scheduler Config API Connector\n * This class is responsible for making API requests to the Nylas API for Scheduler Configurations.\n */\nexport class NylasSchedulerConfigAPIConnector {\n private nylasApiRequest?: NylasApiRequest;\n private nylasSchedulerConfigStore: NylasSchedulerConfigStoreType;\n\n constructor({ nylasApiRequest, nylasSchedulerConfigStore }: NylasSchedulerConfigAPIConnectorOptions) {\n this.nylasApiRequest = nylasApiRequest;\n this.nylasSchedulerConfigStore = nylasSchedulerConfigStore;\n }\n\n /**\n * Get the current user.\n * @returns The current user or null if the request is not initialized.\n */\n public async currentUser() {\n if (!this.nylasApiRequest) {\n console.warn('Nylas API Request is not initialized');\n return null;\n }\n\n return this.nylasApiRequest.currentUser();\n }\n\n /**\n * Get the current user's calendars.\n * @returns The current user's calendars or an error if the request is not initialized.\n */\n public async getCalendars() {\n if (!this.nylasApiRequest) {\n console.warn('Nylas API Request is not initialized');\n return dataResponse(null, {\n message: 'Error fetching calendars: Nylas API Request is not initialized',\n });\n }\n\n const [response, error] = await this.nylasApiRequest.request<NylasResponse<Calendar[]>>({\n method: 'GET',\n path: `calendars`,\n });\n\n if (error) {\n return dataResponse(null, {\n message: 'Error fetching calendars: ' + error.message,\n });\n }\n\n if (isNylasErrorResponse(response)) {\n return dataResponse(null, {\n message: 'Error fetching calendars: ' + response.error?.message,\n });\n }\n\n // Set the new calendars as the current calendars\n this.nylasSchedulerConfigStore.state.calendars = response.data;\n\n return dataResponse(response.data);\n }\n\n /**\n * Get a configuration by its ID.\n * @param configurationId The ID of the configuration to fetch.\n */\n public async getConfigurationById(configurationId: string, forceFetch: boolean = false) {\n if (!this.nylasApiRequest) {\n console.warn('Nylas API Request is not initialized');\n return dataResponse(null, {\n message: 'Error fetching configuration: Nylas API Request is not initialized',\n });\n }\n\n // If the configuration is already in the store, return it\n if (!forceFetch) {\n const existingConfig = this.nylasSchedulerConfigStore.state.configurations.find(c => c.id === configurationId);\n if (existingConfig) {\n this.nylasSchedulerConfigStore.state.selectedConfiguration = existingConfig;\n return dataResponse(existingConfig);\n }\n }\n\n const [response, error] = await this.nylasApiRequest.request<NylasResponse<Configuration>>({\n method: 'GET',\n path: `scheduling/configurations/${configurationId}`,\n });\n\n if (error) {\n return dataResponse(null, {\n message: 'Error fetching configuration: ' + error.message,\n });\n }\n\n if (isNylasErrorResponse(response)) {\n return dataResponse(null, {\n message: 'Error fetching configuration: ' + response.error?.message,\n });\n }\n\n // Set the new configuration as the current configuration\n this.nylasSchedulerConfigStore.state.selectedConfiguration = response.data;\n\n // If the configuration was updated, update the list of configurations\n // If it doesn't exist, add it to the list\n if (this.nylasSchedulerConfigStore.state.configurations.find(c => c.id === configurationId)) {\n this.nylasSchedulerConfigStore.state.configurations = this.nylasSchedulerConfigStore.state.configurations.map(c => (c.id === configurationId ? response.data : c));\n } else {\n this.nylasSchedulerConfigStore.state.configurations = [...this.nylasSchedulerConfigStore.state.configurations, response.data];\n }\n\n return dataResponse(response.data);\n }\n\n /**\n * Get all configurations.\n * @returns The list of configurations or an error if the request is not initialized.\n */\n public async getConfigurations() {\n if (!this.nylasApiRequest) {\n console.warn('Nylas API Request is not initialized');\n return dataResponse(null, {\n message: 'Error fetching configurations: Nylas API Request is not initialized',\n });\n }\n\n const [response, error] = await this.nylasApiRequest.request<NylasResponse<Configuration[]>>({\n method: 'GET',\n path: `scheduling/configurations`,\n });\n\n if (error) {\n return dataResponse(null, {\n message: 'Error fetching configurations: ' + error.message,\n });\n }\n\n if (isNylasErrorResponse(response)) {\n return dataResponse(null, {\n message: 'Error fetching configurations: ' + response.error?.message,\n });\n }\n\n // Set the new configuration as the current configuration\n this.nylasSchedulerConfigStore.state.configurations = response.data;\n\n return dataResponse(response.data);\n }\n\n /**\n * Create a new configuration.\n * @param configuration The configuration to create.\n * @returns The new configuration or an error if the request is not initialized.\n */\n public async createConfiguration(configuration: Omit<Partial<Configuration>, 'id'>) {\n if (!this.nylasApiRequest) {\n console.warn('Nylas API Request is not initialized');\n return dataResponse(null, {\n message: 'Error creating configuration: Nylas API Request is not initialized',\n });\n }\n\n // Set the default require_session_auth based on the state value\n configuration.requires_session_auth = this.nylasSchedulerConfigStore.state.defaultRequiresSessionAuth;\n\n const [response, error] = await this.nylasApiRequest.request<NylasResponse<Configuration>>({\n method: 'POST',\n path: `scheduling/configurations`,\n body: configuration,\n });\n\n if (error) {\n return dataResponse(null, {\n message: 'Error creating configuration: ' + error.message,\n });\n }\n\n if (isNylasErrorResponse(response)) {\n return dataResponse(null, {\n message: 'Error creating configuration: ' + response.error?.message,\n });\n }\n\n // Set the new configuration as the current configuration\n this.nylasSchedulerConfigStore.state.selectedConfiguration = response.data;\n\n // Add the new configuration to the list of configurations\n this.nylasSchedulerConfigStore.state.configurations = [...this.nylasSchedulerConfigStore.state.configurations, response.data];\n\n return dataResponse(response.data);\n }\n\n /**\n * Update an existing configuration.\n * @param configuration The configuration to update.\n * @returns The updated configuration or an error if the request is not initialized.\n */\n public async updateConfiguration(configuration: Partial<Configuration>) {\n if (!this.nylasApiRequest) {\n console.warn('Nylas API Request is not initialized');\n return dataResponse(null, {\n message: 'Error updating configuration: Nylas API Request is not initialized',\n });\n }\n\n const [response, error] = await this.nylasApiRequest.request<NylasResponse<Configuration>>({\n method: 'PUT',\n path: `scheduling/configurations/${configuration.id}`,\n body: configuration,\n });\n\n if (error) {\n return dataResponse(null, {\n message: 'Error updating configuration: ' + error.message,\n });\n }\n\n if (isNylasErrorResponse(response)) {\n return dataResponse(null, {\n message: 'Error updating configuration: ' + response.error?.message,\n });\n }\n\n // Set the new configuration as the current configuration\n this.nylasSchedulerConfigStore.state.selectedConfiguration = response.data;\n\n // If the configuration was updated, update the list of configurations\n // If it doesn't exist, add it to the list\n if (this.nylasSchedulerConfigStore.state.configurations.find(c => c.id === configuration.id)) {\n this.nylasSchedulerConfigStore.state.configurations = this.nylasSchedulerConfigStore.state.configurations.map(c => (c.id === configuration.id ? response.data : c));\n } else {\n this.nylasSchedulerConfigStore.state.configurations = [...this.nylasSchedulerConfigStore.state.configurations, response.data];\n }\n\n return dataResponse(response.data);\n }\n\n /**\n * Delete a configuration by its ID.\n * @param configurationId The ID of the configuration to delete.\n * @returns The deleted configuration or an error if the request is not initialized.\n */\n public async deleteConfiguration(configurationId: string) {\n if (!this.nylasApiRequest) {\n console.warn('Nylas API Request is not initialized');\n return dataResponse(null, {\n message: 'Error deleting configuration: Nylas API Request is not initialized',\n });\n }\n\n const [response, error] = await this.nylasApiRequest.request<NylasResponse<Configuration>>({\n method: 'DELETE',\n path: `scheduling/configurations/${configurationId}`,\n });\n\n if (error) {\n return dataResponse(null, {\n message: 'Error deleting configuration: ' + error.message,\n });\n }\n\n if (isNylasErrorResponse(response)) {\n return dataResponse(null, {\n message: 'Error deleting configuration: ' + response.error?.message,\n });\n }\n\n // Remove the configuration from the list\n this.nylasSchedulerConfigStore.state.configurations = this.nylasSchedulerConfigStore.state.configurations.filter(c => c.id !== configurationId);\n\n // If the deleted configuration was the current configuration, reset it\n if (this.nylasSchedulerConfigStore.state.selectedConfiguration?.id === configurationId) {\n this.nylasSchedulerConfigStore.resetSelectedConfiguration();\n }\n\n return dataResponse(response.data);\n }\n}\n"]}
@@ -94,7 +94,7 @@ export class NylaSchedulerAPIConnector {
94
94
  }
95
95
  async bookTimeslot(data) {
96
96
  this.schedulerStore.set('isLoading', true);
97
- const { selectedTimeslot, bookingInfo } = this.schedulerStore.state;
97
+ const { selectedTimeslot, selectedTimezone, bookingInfo } = this.schedulerStore.state;
98
98
  if (!data && !bookingInfo) {
99
99
  return { error: this.errors.component('Booking').no_booking_info() };
100
100
  }
@@ -102,6 +102,10 @@ export class NylaSchedulerAPIConnector {
102
102
  if (!timeslot) {
103
103
  return { error: this.errors.component('Create Booking').no_timeslot_selected() };
104
104
  }
105
+ const timezone = data && data?.timezone ? data?.timezone : selectedTimezone;
106
+ if (!timezone) {
107
+ return { error: this.errors.component('Create Booking').no_timezone_selected() };
108
+ }
105
109
  const primaryParticipant = data ? data?.primaryParticipant : bookingInfo?.primaryParticipant;
106
110
  const guests = data ? data?.guests || [] : bookingInfo?.guests || [];
107
111
  const additional_fields = data ? { ...data?.additionalFields, guests } : { ...bookingInfo?.additionalFields, guests };
@@ -113,6 +117,7 @@ export class NylaSchedulerAPIConnector {
113
117
  guest: { ...primaryParticipant },
114
118
  start_time: timeslot.start_time.getTime() / 1000,
115
119
  end_time: timeslot.end_time.getTime() / 1000,
120
+ timezone: timezone,
116
121
  }), headers);
117
122
  if ('error' in response) {
118
123
  this.schedulerStore.set('isLoading', false);
@@ -1 +1 @@
1
- {"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../../../src/connector/shared/api/scheduler.ts"],"names":[],"mappings":"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","sourcesContent":["import { AvailabilityResponse, NylasEvent } from '@/common/types';\nimport { NylasSchedulerStoreType } from '../../../components';\nimport type { NylasErrorResponse, NylasResponse, NylasSchedulerBookingData, NylasSchedulerResponse, Timeslot } from '@nylas/core';\nimport { APIErrorType, Errors } from '@/connector/nylas-scheduler-connector/errors';\n\ntype NylasSchedulerAPIConnectorOptions = {\n schedulerAPIURL: string;\n schedulerStore: NylasSchedulerStoreType;\n sessionId?: string;\n configId?: string;\n};\n\n/**\n * NylaSchedulerConnector\n * This class is used to make API requests to the scheduler.\n */\nexport class NylaSchedulerAPIConnector {\n private schedulerStore: NylasSchedulerStoreType;\n private schedulerAPIURL: string;\n private sessionId: string | undefined;\n private configId: string | undefined;\n private errors = new Errors();\n\n constructor({ schedulerAPIURL, schedulerStore, sessionId, configId }: NylasSchedulerAPIConnectorOptions) {\n this.schedulerStore = schedulerStore;\n this.schedulerAPIURL = schedulerAPIURL;\n this.sessionId = sessionId;\n this.configId = configId;\n }\n\n private getHeaders() {\n return !this.configId\n ? {\n Authorization: `Bearer ${this.sessionId}`,\n }\n : {};\n }\n\n /**\n * Makes an API request to the scheduler.\n * @param path The path to the API endpoint.\n * @param method The HTTP method.\n * @param body The request body (if any).\n * @returns {Promise<T>}\n */\n public async makeAPIRequest<T>(path: string, method: string, body: string | undefined, headers = {}): Promise<NylasResponse<T>> {\n try {\n const schedulerURL = new URL(this.schedulerAPIURL);\n schedulerURL.pathname = path;\n const response = await fetch(decodeURIComponent(schedulerURL.toString()), {\n method,\n headers: {\n 'Content-Type': 'application/json',\n ...headers,\n },\n body,\n });\n // The server returns a json object for errors: eg.\n // {\n // \"request_id\": \"<request_id>\",\n // \"error\": {\n // \"type\": \"not_found_error\",\n // \"message\": \"Session not found\"\n // }\n // }\n const data = await response.json();\n return data as NylasResponse<T>;\n } catch (error: any) {\n // NOTE: current server implementation doesn't return a JSON object for errors on some endpoints\n // handle this case by returning the error response as a string to be handled downstream\n return {\n error: {\n message: error.message,\n title: 'API request failed',\n type: 'api',\n },\n } as NylasErrorResponse;\n }\n }\n\n /**\n * Selects a date in the scheduler.\n */\n public selectDate(date: Date) {\n this.schedulerStore.set('selectedDate', date);\n this.schedulerStore.set('selectedTimeslot', null);\n }\n\n /**\n * Selects a time in the scheduler.\n */\n public selectTime(time: Timeslot) {\n this.schedulerStore.set('selectedTimeslot', time);\n }\n\n /**\n * Sets the timezone in the scheduler.\n */\n public selectTimezone(timezone: string) {\n this.schedulerStore.set('selectedTimezone', timezone);\n }\n\n /**\n * Toggles showBookingForm\n * @param value boolean\n */\n public toggleAdditionalData(value: boolean) {\n this.schedulerStore.set('showBookingForm', value);\n }\n\n /**\n * Set/update the name of the participant booking the event.\n */\n public setParticipantName(name: string) {\n const { bookingInfo } = this.schedulerStore.state;\n this.schedulerStore.set('bookingInfo', {\n ...bookingInfo,\n primaryParticipant: {\n ...(bookingInfo?.primaryParticipant as NylasSchedulerBookingData['primaryParticipant']),\n name,\n },\n });\n }\n\n /**\n * Set/update the email of the participant booking the event.\n */\n public setParticipantEmail(email: string) {\n const { bookingInfo } = this.schedulerStore.state;\n this.schedulerStore.set('bookingInfo', {\n ...bookingInfo,\n primaryParticipant: {\n ...(bookingInfo?.primaryParticipant as NylasSchedulerBookingData['primaryParticipant']),\n email,\n },\n });\n }\n\n /**\n * Set reschedule booking id\n */\n public async setReschedule(bookingID: string) {\n const today = new Date();\n // Set reschedule booking id\n this.schedulerStore.set('rescheduleBookingId', bookingID);\n // Reset store state\n this.schedulerStore.set('selectedTimeslot', null);\n this.schedulerStore.set('eventInfo', null);\n this.schedulerStore.set('showBookingForm', false);\n // Refetch availability\n const startTime = new Date(today.getFullYear(), today.getMonth(), 1).getTime() / 1000;\n const endTime = new Date(today.getFullYear(), today.getMonth() + 1, 1).getTime() / 1000;\n const result = await this.getAvailability(startTime, endTime);\n // Set selected date to first available date\n const firstAvailableDate = this.schedulerStore.get('availability').find((timeslot: any) => new Date(timeslot.start_time) > new Date());\n let _selectedDate = today;\n if (firstAvailableDate) {\n _selectedDate = firstAvailableDate.start_time;\n }\n this.schedulerStore.set('selectedDate', _selectedDate);\n return result;\n }\n\n /**\n * Set cancel booking id\n */\n public async setCancel(bookingID: string) {\n this.schedulerStore.set('cancelBookingId', bookingID);\n }\n\n /**\n * Book the selected timeslot.\n * @param data The booking info.\n * @returns {Promise<NylasResponse<NylasEvent>>}\n */\n public async bookTimeslot(data?: NylasSchedulerBookingData & { timeslot?: Timeslot }): Promise<NylasSchedulerResponse<NylasEvent>> {\n this.schedulerStore.set('isLoading', true);\n const { selectedTimeslot, bookingInfo } = this.schedulerStore.state;\n if (!data && !bookingInfo) {\n return { error: this.errors.component('Booking').no_booking_info() };\n }\n\n const timeslot = data?.timeslot || selectedTimeslot;\n if (!timeslot) {\n return { error: this.errors.component('Create Booking').no_timeslot_selected() };\n }\n\n const primaryParticipant = data ? data?.primaryParticipant : bookingInfo?.primaryParticipant;\n const guests = data ? data?.guests || [] : bookingInfo?.guests || [];\n const additional_fields = data ? { ...data?.additionalFields, guests } : { ...bookingInfo?.additionalFields, guests };\n\n const headers = this.getHeaders();\n const configIdParam = this.configId ? `?configuration_id=${this.configId}` : '';\n const url = `/v3/scheduling/bookings${configIdParam}`;\n\n const response = await this.makeAPIRequest<NylasEvent>(\n decodeURIComponent(url),\n 'POST',\n JSON.stringify({\n additional_fields,\n guest: { ...primaryParticipant },\n start_time: timeslot.start_time.getTime() / 1000,\n end_time: timeslot.end_time.getTime() / 1000,\n }),\n headers,\n );\n\n if ('error' in response) {\n this.schedulerStore.set('isLoading', false);\n const errorType = response.error?.type;\n let error = response.error;\n if (errorType && errorType in this.errors.api('Create Booking')) {\n error = this.errors.api('Create Booking')[errorType as APIErrorType](error?.message || error?.title || 'Something went wrong');\n }\n return { error };\n }\n\n if ('data' in response) {\n this.schedulerStore.set('eventInfo', response?.data);\n }\n\n this.schedulerStore.set('isLoading', false);\n return response;\n }\n\n /**\n * Gets the availability for a page.\n * @param startTime The start time.\n * @param endTime The end time.\n * @returns {Promise<AvailabilityResponse>}\n */\n public async getAvailability(startTime: number = 0, endTime: number = 0): Promise<NylasSchedulerResponse<AvailabilityResponse>> {\n this.schedulerStore.set('isLoading', true);\n const params = new URLSearchParams();\n const now = new Date();\n const nowTime = now.getTime();\n\n if (endTime && endTime < nowTime / 1000) {\n this.schedulerStore.set('isLoading', false);\n const error = this.errors.component('Get Availability').endtime_not_in_future();\n return { error };\n }\n\n // Calculate the start of the current month if startTime is not provided\n if (!startTime) {\n const startOfMonth = new Date(now.getFullYear(), now.getMonth(), 1);\n startTime = Math.floor(startOfMonth.getTime() / 1000); // Convert to UNIX timestamp in seconds\n }\n\n // Calculate the end of the current month if endTime is not provided\n if (!endTime) {\n const endOfMonth = new Date(now.getFullYear(), now.getMonth() + 1, 0); // Setting day to 0 gets the last day of the previous month, so in this case, the last day of the current month\n endTime = Math.floor(endOfMonth.getTime() / 1000); // Convert to UNIX timestamp in seconds\n }\n\n params.append('start_time', encodeURIComponent(startTime.toString()));\n params.append('end_time', encodeURIComponent(endTime.toString()));\n if (this.configId) {\n params.append('configuration_id', encodeURIComponent(this.configId));\n }\n const queryString = params.toString();\n const url = `/v3/scheduling/availability${queryString ? `?${queryString}` : ''}`;\n const headers = this.getHeaders();\n const response = await this.makeAPIRequest<AvailabilityResponse>(decodeURIComponent(url), 'GET', undefined, headers);\n\n if ('error' in response) {\n this.schedulerStore.set('availability', []);\n this.schedulerStore.set('isLoading', false);\n const errorType = response.error?.type;\n let error = response.error;\n if (errorType && errorType in this.errors.api('Get Availability')) {\n error = this.errors.api('Get Availability')[errorType as APIErrorType](error?.message || error?.title || 'Something went wrong');\n }\n return { error };\n }\n\n if ('data' in response) {\n const availability =\n response.data?.time_slots?.map(timeslot => {\n return {\n ...timeslot,\n start_time: new Date(timeslot.start_time * 1000),\n end_time: new Date(timeslot.end_time * 1000),\n };\n }) || [];\n\n // Filter out timeslots that are in the past\n const availabilityTimeslotsFiltered = availability.filter(timeslot => timeslot.start_time.getTime() > nowTime);\n this.schedulerStore.set('availability', availabilityTimeslotsFiltered);\n }\n\n this.schedulerStore.set('isLoading', false);\n return response;\n }\n\n /**\n * Cancels a booking.\n * @param bookingId The booking ID.\n */\n public async cancelBooking(bookingId: string): Promise<NylasSchedulerResponse<Partial<NylasEvent>>> {\n this.schedulerStore.set('isLoading', true);\n if (!bookingId) {\n return { error: this.errors.component('Cancel Booking').no_booking_id() };\n }\n const configIdParam = this.configId ? `?configuration_id=${this.configId}` : '';\n const url = `/v3/scheduling/bookings/${bookingId}${configIdParam}`;\n const headers = this.getHeaders();\n const response = await this.makeAPIRequest<Partial<NylasEvent>>(\n decodeURIComponent(url),\n 'DELETE',\n JSON.stringify({\n action: 'cancel',\n }),\n headers,\n );\n\n if ('error' in response) {\n this.schedulerStore.set('isLoading', false);\n const errorType = response.error?.type;\n let error = response.error;\n if (errorType && errorType in this.errors.api('Cancel Booking')) {\n error = this.errors.api('Cancel Booking')[errorType as APIErrorType](error?.message || error?.title || 'Something went wrong');\n }\n return { error };\n }\n\n this.schedulerStore.set('cancelledEventInfo', {\n booking_id: bookingId,\n });\n\n this.schedulerStore.set('isLoading', false);\n return response;\n }\n\n /**\n * Reschedules a booking.\n * @param bookingId The booking ID.\n * @param data The booking info.\n * @returns {Promise<NylasResponse<NylasEvent>>}\n */\n public async rescheduleBooking(bookingId: string, data: NylasSchedulerBookingData): Promise<NylasSchedulerResponse<NylasEvent>> {\n this.schedulerStore.set('isLoading', true);\n if (!bookingId) {\n return { error: this.errors.component('Reschedule Booking').no_booking_id() };\n }\n const apiErrors = this.errors.api('Reschedule Booking');\n const componentErrors = this.errors.component('Reschedule Booking');\n const { bookingInfo, selectedTimeslot, selectedTimezone } = this.schedulerStore.state;\n // Validate data\n const { startTime, endTime, timezone } = data;\n const start_time = startTime || selectedTimeslot?.start_time;\n\n if (!start_time) {\n return { error: componentErrors.invalid_start_time('Please pass \"startTime\" in data or set \"selectedTimeslot\" in the defaultSchedulerState.') };\n }\n const end_time = endTime || selectedTimeslot?.end_time;\n if (!end_time) {\n return { error: componentErrors.invalid_end_time('Please pass \"endTime\" in data or set \"selectedTimeslot\" in the defaultSchedulerState.') };\n }\n const time_zone = timezone || selectedTimezone;\n if (!time_zone) {\n return { error: componentErrors.invalid_timezone('Please pass \"timezone\" in data or set \"selectedTimezone\" in the defaultSchedulerState.') };\n }\n\n const primaryParticipant = data ? data?.primaryParticipant : bookingInfo?.primaryParticipant;\n const guests = data ? data?.guests || [] : bookingInfo?.guests || [];\n const additional_fields = data ? { ...data?.additionalFields, guests } : { ...bookingInfo?.additionalFields, guests };\n\n const configIdParam = this.configId ? `?configuration_id=${this.configId}` : '';\n const url = `/v3/scheduling/bookings/${bookingId}${configIdParam}`;\n const headers = this.getHeaders();\n const response = await this.makeAPIRequest<NylasEvent>(\n decodeURIComponent(url),\n 'PATCH',\n JSON.stringify({\n start_time: start_time.getTime() / 1000,\n end_time: end_time.getTime() / 1000,\n time_zone,\n additional_fields,\n guest: { ...primaryParticipant },\n }),\n headers,\n );\n\n if ('error' in response) {\n this.schedulerStore.set('isLoading', false);\n const errorType = response.error?.type;\n let error = response.error;\n if (errorType && errorType in apiErrors) {\n error = apiErrors[errorType as APIErrorType](error?.message || error?.title || 'Something went wrong');\n }\n }\n\n if ('data' in response) this.schedulerStore.set('eventInfo', response?.data);\n\n this.schedulerStore.set('isLoading', false);\n return response;\n }\n}\n"]}
1
+ {"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../../../src/connector/shared/api/scheduler.ts"],"names":[],"mappings":"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","sourcesContent":["import { AvailabilityResponse, NylasEvent } from '@/common/types';\nimport { NylasSchedulerStoreType } from '../../../components';\nimport type { NylasErrorResponse, NylasResponse, NylasSchedulerBookingData, NylasSchedulerResponse, Timeslot } from '@nylas/core';\nimport { APIErrorType, Errors } from '@/connector/nylas-scheduler-connector/errors';\n\ntype NylasSchedulerAPIConnectorOptions = {\n schedulerAPIURL: string;\n schedulerStore: NylasSchedulerStoreType;\n sessionId?: string;\n configId?: string;\n};\n\n/**\n * NylaSchedulerConnector\n * This class is used to make API requests to the scheduler.\n */\nexport class NylaSchedulerAPIConnector {\n private schedulerStore: NylasSchedulerStoreType;\n private schedulerAPIURL: string;\n private sessionId: string | undefined;\n private configId: string | undefined;\n private errors = new Errors();\n\n constructor({ schedulerAPIURL, schedulerStore, sessionId, configId }: NylasSchedulerAPIConnectorOptions) {\n this.schedulerStore = schedulerStore;\n this.schedulerAPIURL = schedulerAPIURL;\n this.sessionId = sessionId;\n this.configId = configId;\n }\n\n private getHeaders() {\n return !this.configId\n ? {\n Authorization: `Bearer ${this.sessionId}`,\n }\n : {};\n }\n\n /**\n * Makes an API request to the scheduler.\n * @param path The path to the API endpoint.\n * @param method The HTTP method.\n * @param body The request body (if any).\n * @returns {Promise<T>}\n */\n public async makeAPIRequest<T>(path: string, method: string, body: string | undefined, headers = {}): Promise<NylasResponse<T>> {\n try {\n const schedulerURL = new URL(this.schedulerAPIURL);\n schedulerURL.pathname = path;\n const response = await fetch(decodeURIComponent(schedulerURL.toString()), {\n method,\n headers: {\n 'Content-Type': 'application/json',\n ...headers,\n },\n body,\n });\n // The server returns a json object for errors: eg.\n // {\n // \"request_id\": \"<request_id>\",\n // \"error\": {\n // \"type\": \"not_found_error\",\n // \"message\": \"Session not found\"\n // }\n // }\n const data = await response.json();\n return data as NylasResponse<T>;\n } catch (error: any) {\n // NOTE: current server implementation doesn't return a JSON object for errors on some endpoints\n // handle this case by returning the error response as a string to be handled downstream\n return {\n error: {\n message: error.message,\n title: 'API request failed',\n type: 'api',\n },\n } as NylasErrorResponse;\n }\n }\n\n /**\n * Selects a date in the scheduler.\n */\n public selectDate(date: Date) {\n this.schedulerStore.set('selectedDate', date);\n this.schedulerStore.set('selectedTimeslot', null);\n }\n\n /**\n * Selects a time in the scheduler.\n */\n public selectTime(time: Timeslot) {\n this.schedulerStore.set('selectedTimeslot', time);\n }\n\n /**\n * Sets the timezone in the scheduler.\n */\n public selectTimezone(timezone: string) {\n this.schedulerStore.set('selectedTimezone', timezone);\n }\n\n /**\n * Toggles showBookingForm\n * @param value boolean\n */\n public toggleAdditionalData(value: boolean) {\n this.schedulerStore.set('showBookingForm', value);\n }\n\n /**\n * Set/update the name of the participant booking the event.\n */\n public setParticipantName(name: string) {\n const { bookingInfo } = this.schedulerStore.state;\n this.schedulerStore.set('bookingInfo', {\n ...bookingInfo,\n primaryParticipant: {\n ...(bookingInfo?.primaryParticipant as NylasSchedulerBookingData['primaryParticipant']),\n name,\n },\n });\n }\n\n /**\n * Set/update the email of the participant booking the event.\n */\n public setParticipantEmail(email: string) {\n const { bookingInfo } = this.schedulerStore.state;\n this.schedulerStore.set('bookingInfo', {\n ...bookingInfo,\n primaryParticipant: {\n ...(bookingInfo?.primaryParticipant as NylasSchedulerBookingData['primaryParticipant']),\n email,\n },\n });\n }\n\n /**\n * Set reschedule booking id\n */\n public async setReschedule(bookingID: string) {\n const today = new Date();\n // Set reschedule booking id\n this.schedulerStore.set('rescheduleBookingId', bookingID);\n // Reset store state\n this.schedulerStore.set('selectedTimeslot', null);\n this.schedulerStore.set('eventInfo', null);\n this.schedulerStore.set('showBookingForm', false);\n // Refetch availability\n const startTime = new Date(today.getFullYear(), today.getMonth(), 1).getTime() / 1000;\n const endTime = new Date(today.getFullYear(), today.getMonth() + 1, 1).getTime() / 1000;\n const result = await this.getAvailability(startTime, endTime);\n // Set selected date to first available date\n const firstAvailableDate = this.schedulerStore.get('availability').find((timeslot: any) => new Date(timeslot.start_time) > new Date());\n let _selectedDate = today;\n if (firstAvailableDate) {\n _selectedDate = firstAvailableDate.start_time;\n }\n this.schedulerStore.set('selectedDate', _selectedDate);\n return result;\n }\n\n /**\n * Set cancel booking id\n */\n public async setCancel(bookingID: string) {\n this.schedulerStore.set('cancelBookingId', bookingID);\n }\n\n /**\n * Book the selected timeslot.\n * @param data The booking info.\n * @returns {Promise<NylasResponse<NylasEvent>>}\n */\n public async bookTimeslot(data?: NylasSchedulerBookingData & { timeslot?: Timeslot }): Promise<NylasSchedulerResponse<NylasEvent>> {\n this.schedulerStore.set('isLoading', true);\n const { selectedTimeslot, selectedTimezone, bookingInfo } = this.schedulerStore.state;\n if (!data && !bookingInfo) {\n return { error: this.errors.component('Booking').no_booking_info() };\n }\n\n const timeslot = data?.timeslot || selectedTimeslot;\n if (!timeslot) {\n return { error: this.errors.component('Create Booking').no_timeslot_selected() };\n }\n\n const timezone = data && data?.timezone ? data?.timezone : selectedTimezone;\n\n if (!timezone) {\n return { error: this.errors.component('Create Booking').no_timezone_selected() };\n }\n\n const primaryParticipant = data ? data?.primaryParticipant : bookingInfo?.primaryParticipant;\n const guests = data ? data?.guests || [] : bookingInfo?.guests || [];\n const additional_fields = data ? { ...data?.additionalFields, guests } : { ...bookingInfo?.additionalFields, guests };\n\n const headers = this.getHeaders();\n const configIdParam = this.configId ? `?configuration_id=${this.configId}` : '';\n const url = `/v3/scheduling/bookings${configIdParam}`;\n\n const response = await this.makeAPIRequest<NylasEvent>(\n decodeURIComponent(url),\n 'POST',\n JSON.stringify({\n additional_fields,\n guest: { ...primaryParticipant },\n start_time: timeslot.start_time.getTime() / 1000,\n end_time: timeslot.end_time.getTime() / 1000,\n timezone: timezone,\n }),\n headers,\n );\n\n if ('error' in response) {\n this.schedulerStore.set('isLoading', false);\n const errorType = response.error?.type;\n let error = response.error;\n if (errorType && errorType in this.errors.api('Create Booking')) {\n error = this.errors.api('Create Booking')[errorType as APIErrorType](error?.message || error?.title || 'Something went wrong');\n }\n return { error };\n }\n\n if ('data' in response) {\n this.schedulerStore.set('eventInfo', response?.data);\n }\n\n this.schedulerStore.set('isLoading', false);\n return response;\n }\n\n /**\n * Gets the availability for a page.\n * @param startTime The start time.\n * @param endTime The end time.\n * @returns {Promise<AvailabilityResponse>}\n */\n public async getAvailability(startTime: number = 0, endTime: number = 0): Promise<NylasSchedulerResponse<AvailabilityResponse>> {\n this.schedulerStore.set('isLoading', true);\n const params = new URLSearchParams();\n const now = new Date();\n const nowTime = now.getTime();\n\n if (endTime && endTime < nowTime / 1000) {\n this.schedulerStore.set('isLoading', false);\n const error = this.errors.component('Get Availability').endtime_not_in_future();\n return { error };\n }\n\n // Calculate the start of the current month if startTime is not provided\n if (!startTime) {\n const startOfMonth = new Date(now.getFullYear(), now.getMonth(), 1);\n startTime = Math.floor(startOfMonth.getTime() / 1000); // Convert to UNIX timestamp in seconds\n }\n\n // Calculate the end of the current month if endTime is not provided\n if (!endTime) {\n const endOfMonth = new Date(now.getFullYear(), now.getMonth() + 1, 0); // Setting day to 0 gets the last day of the previous month, so in this case, the last day of the current month\n endTime = Math.floor(endOfMonth.getTime() / 1000); // Convert to UNIX timestamp in seconds\n }\n\n params.append('start_time', encodeURIComponent(startTime.toString()));\n params.append('end_time', encodeURIComponent(endTime.toString()));\n if (this.configId) {\n params.append('configuration_id', encodeURIComponent(this.configId));\n }\n const queryString = params.toString();\n const url = `/v3/scheduling/availability${queryString ? `?${queryString}` : ''}`;\n const headers = this.getHeaders();\n const response = await this.makeAPIRequest<AvailabilityResponse>(decodeURIComponent(url), 'GET', undefined, headers);\n\n if ('error' in response) {\n this.schedulerStore.set('availability', []);\n this.schedulerStore.set('isLoading', false);\n const errorType = response.error?.type;\n let error = response.error;\n if (errorType && errorType in this.errors.api('Get Availability')) {\n error = this.errors.api('Get Availability')[errorType as APIErrorType](error?.message || error?.title || 'Something went wrong');\n }\n return { error };\n }\n\n if ('data' in response) {\n const availability =\n response.data?.time_slots?.map(timeslot => {\n return {\n ...timeslot,\n start_time: new Date(timeslot.start_time * 1000),\n end_time: new Date(timeslot.end_time * 1000),\n };\n }) || [];\n\n // Filter out timeslots that are in the past\n const availabilityTimeslotsFiltered = availability.filter(timeslot => timeslot.start_time.getTime() > nowTime);\n this.schedulerStore.set('availability', availabilityTimeslotsFiltered);\n }\n\n this.schedulerStore.set('isLoading', false);\n return response;\n }\n\n /**\n * Cancels a booking.\n * @param bookingId The booking ID.\n */\n public async cancelBooking(bookingId: string): Promise<NylasSchedulerResponse<Partial<NylasEvent>>> {\n this.schedulerStore.set('isLoading', true);\n if (!bookingId) {\n return { error: this.errors.component('Cancel Booking').no_booking_id() };\n }\n const configIdParam = this.configId ? `?configuration_id=${this.configId}` : '';\n const url = `/v3/scheduling/bookings/${bookingId}${configIdParam}`;\n const headers = this.getHeaders();\n const response = await this.makeAPIRequest<Partial<NylasEvent>>(\n decodeURIComponent(url),\n 'DELETE',\n JSON.stringify({\n action: 'cancel',\n }),\n headers,\n );\n\n if ('error' in response) {\n this.schedulerStore.set('isLoading', false);\n const errorType = response.error?.type;\n let error = response.error;\n if (errorType && errorType in this.errors.api('Cancel Booking')) {\n error = this.errors.api('Cancel Booking')[errorType as APIErrorType](error?.message || error?.title || 'Something went wrong');\n }\n return { error };\n }\n\n this.schedulerStore.set('cancelledEventInfo', {\n booking_id: bookingId,\n });\n\n this.schedulerStore.set('isLoading', false);\n return response;\n }\n\n /**\n * Reschedules a booking.\n * @param bookingId The booking ID.\n * @param data The booking info.\n * @returns {Promise<NylasResponse<NylasEvent>>}\n */\n public async rescheduleBooking(bookingId: string, data: NylasSchedulerBookingData): Promise<NylasSchedulerResponse<NylasEvent>> {\n this.schedulerStore.set('isLoading', true);\n if (!bookingId) {\n return { error: this.errors.component('Reschedule Booking').no_booking_id() };\n }\n const apiErrors = this.errors.api('Reschedule Booking');\n const componentErrors = this.errors.component('Reschedule Booking');\n const { bookingInfo, selectedTimeslot, selectedTimezone } = this.schedulerStore.state;\n // Validate data\n const { startTime, endTime, timezone } = data;\n const start_time = startTime || selectedTimeslot?.start_time;\n\n if (!start_time) {\n return { error: componentErrors.invalid_start_time('Please pass \"startTime\" in data or set \"selectedTimeslot\" in the defaultSchedulerState.') };\n }\n const end_time = endTime || selectedTimeslot?.end_time;\n if (!end_time) {\n return { error: componentErrors.invalid_end_time('Please pass \"endTime\" in data or set \"selectedTimeslot\" in the defaultSchedulerState.') };\n }\n const time_zone = timezone || selectedTimezone;\n if (!time_zone) {\n return { error: componentErrors.invalid_timezone('Please pass \"timezone\" in data or set \"selectedTimezone\" in the defaultSchedulerState.') };\n }\n\n const primaryParticipant = data ? data?.primaryParticipant : bookingInfo?.primaryParticipant;\n const guests = data ? data?.guests || [] : bookingInfo?.guests || [];\n const additional_fields = data ? { ...data?.additionalFields, guests } : { ...bookingInfo?.additionalFields, guests };\n\n const configIdParam = this.configId ? `?configuration_id=${this.configId}` : '';\n const url = `/v3/scheduling/bookings/${bookingId}${configIdParam}`;\n const headers = this.getHeaders();\n const response = await this.makeAPIRequest<NylasEvent>(\n decodeURIComponent(url),\n 'PATCH',\n JSON.stringify({\n start_time: start_time.getTime() / 1000,\n end_time: end_time.getTime() / 1000,\n time_zone,\n additional_fields,\n guest: { ...primaryParticipant },\n }),\n headers,\n );\n\n if ('error' in response) {\n this.schedulerStore.set('isLoading', false);\n const errorType = response.error?.type;\n let error = response.error;\n if (errorType && errorType in apiErrors) {\n error = apiErrors[errorType as APIErrorType](error?.message || error?.title || 'Something went wrong');\n }\n }\n\n if ('data' in response) this.schedulerStore.set('eventInfo', response?.data);\n\n this.schedulerStore.set('isLoading', false);\n return response;\n }\n}\n"]}
@@ -1,4 +1,3 @@
1
- export * from './components';
2
1
  import NylasThemeStore from "./common/nylas-theme";
3
2
  export { NylasThemeStore };
4
3
  export { NylasIdentityRequestWrapper } from './common/nylas-api-request';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAE7B,OAAO,eAA+B,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAc,CAAC;AACvC,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC","sourcesContent":["export * from './components';\nexport { ObservableMap } from '@stencil/store';\nimport NylasThemeStore, { NylasTheme } from './common/nylas-theme';\nexport { NylasThemeStore, NylasTheme };\nexport { NylasIdentityRequestWrapper } from './common/nylas-api-request';\nexport type { NylasRequestArgs, NylasApiRequest } from './common/nylas-api-request';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,eAA+B,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAc,CAAC;AACvC,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC","sourcesContent":["export type * from './components.d.ts';\nexport { ObservableMap } from '@stencil/store';\nimport NylasThemeStore, { NylasTheme } from './common/nylas-theme';\nexport { NylasThemeStore, NylasTheme };\nexport { NylasIdentityRequestWrapper } from './common/nylas-api-request';\nexport type { NylasRequestArgs, NylasApiRequest } from './common/nylas-api-request';\n"]}
@@ -1,7 +1,7 @@
1
1
  import { createStore } from "@stencil/store";
2
2
  export function CreateNylasSchedulerConfigStore(defaultState = {}) {
3
3
  const defaultNylasSchedulerConfigStoreState = {
4
- config: {},
4
+ selectedConfiguration: {},
5
5
  configurations: [],
6
6
  calendars: [],
7
7
  currentUser: null,
@@ -10,11 +10,17 @@ export function CreateNylasSchedulerConfigStore(defaultState = {}) {
10
10
  ...defaultState,
11
11
  };
12
12
  const store = createStore(defaultNylasSchedulerConfigStoreState);
13
+ function resetSelectedConfiguration() {
14
+ store.set('selectedConfiguration', { ...defaultState['selectedConfiguration'] });
15
+ }
13
16
  store.onChange('action', async (action) => {
14
17
  if (!action) {
15
- store.set('config', {});
18
+ resetSelectedConfiguration();
16
19
  }
17
20
  });
18
- return store;
21
+ return {
22
+ ...store,
23
+ resetSelectedConfiguration,
24
+ };
19
25
  }
20
26
  //# sourceMappingURL=scheduler-config-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scheduler-config-store.js","sourceRoot":"","sources":["../../src/stores/scheduler-config-store.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAc7C,MAAM,UAAU,+BAA+B,CAAC,eAAwD,EAAE;IACxG,MAAM,qCAAqC,GAAmC;QAC5E,MAAM,EAAE,EAAE;QACV,cAAc,EAAE,EAAE;QAClB,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,IAAI;QACjB,MAAM,EAAE,IAAI;QACZ,0BAA0B,EAAE,IAAI;QAChC,GAAG,YAAY;KAChB,CAAC;IACF,MAAM,KAAK,GAAG,WAAW,CAAiC,qCAAqC,CAAC,CAAC;IAEjG,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACtC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;AACf,CAAC","sourcesContent":["import { Calendar, Configuration } from '@nylas/core';\nimport { createStore } from '@stencil/store';\nimport { User } from '@/common/nylas-api-request';\n\nexport interface NylasSchedulerConfigStoreState {\n config: Partial<Configuration>;\n configurations: Configuration[];\n calendars: Calendar[];\n currentUser: User | null;\n action: 'create' | 'edit' | null;\n defaultRequiresSessionAuth: boolean;\n}\n\nexport type NylasSchedulerConfigStoreType = ReturnType<typeof CreateNylasSchedulerConfigStore>;\n\nexport function CreateNylasSchedulerConfigStore(defaultState: Partial<NylasSchedulerConfigStoreState> = {}) {\n const defaultNylasSchedulerConfigStoreState: NylasSchedulerConfigStoreState = {\n config: {},\n configurations: [],\n calendars: [],\n currentUser: null,\n action: null,\n defaultRequiresSessionAuth: true,\n ...defaultState,\n };\n const store = createStore<NylasSchedulerConfigStoreState>(defaultNylasSchedulerConfigStoreState);\n\n store.onChange('action', async action => {\n if (!action) {\n store.set('config', {});\n }\n });\n\n return store;\n}\n"]}
1
+ {"version":3,"file":"scheduler-config-store.js","sourceRoot":"","sources":["../../src/stores/scheduler-config-store.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,WAAW,EAAE,MAAM,gBAAgB,CAAC;AA8C5D,MAAM,UAAU,+BAA+B,CAAC,eAAwD,EAAE;IACxG,MAAM,qCAAqC,GAAmC;QAC5E,qBAAqB,EAAE,EAAE;QACzB,cAAc,EAAE,EAAE;QAClB,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,IAAI;QACjB,MAAM,EAAE,IAAI;QACZ,0BAA0B,EAAE,IAAI;QAChC,GAAG,YAAY;KAChB,CAAC;IACF,MAAM,KAAK,GAAG,WAAW,CAAiC,qCAAqC,CAAC,CAAC;IAMjG,SAAS,0BAA0B;QACjC,KAAK,CAAC,GAAG,CAAC,uBAAuB,EAAE,EAAE,GAAG,YAAY,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACtC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,0BAA0B,EAAE,CAAC;QAC/B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,GAAG,KAAK;QACR,0BAA0B;KAC3B,CAAC;AACJ,CAAC","sourcesContent":["import { Calendar, Configuration } from '@nylas/core';\nimport { ObservableMap, createStore } from '@stencil/store';\nimport { User } from '@/common/nylas-api-request';\n\nexport interface NylasSchedulerConfigStoreState {\n /**\n * The selected configuration.\n * This is the configuration that is currently selected, use it to populate default values for new configurations.\n */\n selectedConfiguration: Partial<Configuration>;\n /**\n * The list of configurations.\n * This is the list of configurations that the user has created.\n */\n configurations: Configuration[];\n /**\n * The list of calendars.\n * This is the list of calendars that the user has access to.\n */\n calendars: Calendar[];\n /**\n * The current user.\n * This is the user that is currently logged in.\n */\n currentUser: User | null;\n /**\n * The current action.\n * This is the current action that the user is performing.\n */\n action: 'create' | 'edit' | null;\n /**\n * Whether the default configuration requires session authentication.\n * This is used to determine whether the default configuration should require session authentication.\n */\n defaultRequiresSessionAuth: boolean;\n}\n\nexport type NylasSchedulerConfigStoreType = ReturnType<typeof CreateNylasSchedulerConfigStore>;\n\nexport type CreateNylasSchedulerConfigStoreReturnType = ObservableMap<NylasSchedulerConfigStoreState> & {\n /**\n * Reset the selected configuration to the default state.\n * This is used to reset the selected configuration to the default state instead of setting it to an empty object.\n */\n resetSelectedConfiguration: () => void;\n};\n\nexport function CreateNylasSchedulerConfigStore(defaultState: Partial<NylasSchedulerConfigStoreState> = {}): CreateNylasSchedulerConfigStoreReturnType {\n const defaultNylasSchedulerConfigStoreState: NylasSchedulerConfigStoreState = {\n selectedConfiguration: {},\n configurations: [],\n calendars: [],\n currentUser: null,\n action: null,\n defaultRequiresSessionAuth: true,\n ...defaultState,\n };\n const store = createStore<NylasSchedulerConfigStoreState>(defaultNylasSchedulerConfigStoreState);\n\n /**\n * Reset the selected configuration to the default state.\n * This is used to reset the selected configuration to the default state instead of setting it to an empty object.\n */\n function resetSelectedConfiguration() {\n store.set('selectedConfiguration', { ...defaultState['selectedConfiguration'] });\n }\n\n store.onChange('action', async action => {\n if (!action) {\n resetSelectedConfiguration();\n }\n });\n\n return {\n ...store,\n resetSelectedConfiguration,\n };\n}\n"]}
@@ -10,7 +10,7 @@ const AddCircleIcon = proxyCustomElement(class AddCircleIcon extends HTMLElement
10
10
  this.height = '25';
11
11
  }
12
12
  render() {
13
- return (h("svg", { key: 'cf16ecaad5754ff1367162ab390027b36f7ede3e', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '8a93ab08ac48dd371bc2526a42ce86f15595128a', d: "M12 2.5c5.523 0 10 4.477 10 10s-4.477 10-10 10-10-4.477-10-10 4.477-10 10-10ZM12 4a8.5 8.5 0 1 0 0 17 8.5 8.5 0 0 0 0-17Zm0 3.5a.75.75 0 0 1 .75.75v3.5h3.5a.75.75 0 0 1 0 1.5h-3.5v3.5a.75.75 0 0 1-1.5 0v-3.5h-3.5a.75.75 0 0 1 0-1.5h3.5v-3.5A.75.75 0 0 1 12 7.5Z", fill: "currentColor" })));
13
+ return (h("svg", { key: '58ce81214aeed7ddc1ce5f76d674aba576422d48', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '2a47ed74601a5370f0300da06295a2b5969d7e5f', d: "M12 2.5c5.523 0 10 4.477 10 10s-4.477 10-10 10-10-4.477-10-10 4.477-10 10-10ZM12 4a8.5 8.5 0 1 0 0 17 8.5 8.5 0 0 0 0-17Zm0 3.5a.75.75 0 0 1 .75.75v3.5h3.5a.75.75 0 0 1 0 1.5h-3.5v3.5a.75.75 0 0 1-1.5 0v-3.5h-3.5a.75.75 0 0 1 0-1.5h3.5v-3.5A.75.75 0 0 1 12 7.5Z", fill: "currentColor" })));
14
14
  }
15
15
  static get style() { return iconCss; }
16
16
  }, [2, "add-circle-icon", {
@@ -10,7 +10,7 @@ const ArchiveIcon = proxyCustomElement(class ArchiveIcon extends HTMLElement {
10
10
  this.height = '15';
11
11
  }
12
12
  render() {
13
- return (h("svg", { key: '2feab930375be767f893e1149579a7b57da2be69', width: this.width, height: this.height, viewBox: "0 0 24 24", fill: "auto", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'f157a132c6a6b024ddb6f293c6af6a1261b9e948', d: "M3 6H5H21", stroke: "auto", "stroke-width": "1.5" }), h("path", { key: '471d8d9001b13eec8d68e936c0aaed6b8af3f40c', d: "M8 6V4C8 3.46957 8.21071 2.96086 8.58579 2.58579C8.96086 2.21071 9.46957 2 10 2H14C14.5304 2 15.0391 2.21071 15.4142 2.58579C15.7893 2.96086 16 3.46957 16 4V6M19 6V20C19 20.5304 18.7893 21.0391 18.4142 21.4142C18.0391 21.7893 17.5304 22 17 22H7C6.46957 22 5.96086 21.7893 5.58579 21.4142C5.21071 21.0391 5 20.5304 5 20V6H19Z", stroke: "auto", "stroke-width": "1.5" }), h("path", { key: '3ff934392c3e68d83c2c6b25c8c879029a5c2c0c', d: "M10 11V17", stroke: "auto", "stroke-width": "1.5" }), h("path", { key: '0333d602e8754b22f55316102b6fccf207789518', d: "M14 11V17", stroke: "auto", "stroke-width": "1.5" })));
13
+ return (h("svg", { key: '5aa6b838481a9741f602d5b1b2a9fd963a00067e', width: this.width, height: this.height, viewBox: "0 0 24 24", fill: "auto", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '0028df292407861bc39c00157b6b4f0bfe31dda5', d: "M3 6H5H21", stroke: "auto", "stroke-width": "1.5" }), h("path", { key: '0e53fcc6b2a704f65ab8b7088f2bd3f24483d2cd', d: "M8 6V4C8 3.46957 8.21071 2.96086 8.58579 2.58579C8.96086 2.21071 9.46957 2 10 2H14C14.5304 2 15.0391 2.21071 15.4142 2.58579C15.7893 2.96086 16 3.46957 16 4V6M19 6V20C19 20.5304 18.7893 21.0391 18.4142 21.4142C18.0391 21.7893 17.5304 22 17 22H7C6.46957 22 5.96086 21.7893 5.58579 21.4142C5.21071 21.0391 5 20.5304 5 20V6H19Z", stroke: "auto", "stroke-width": "1.5" }), h("path", { key: '8dbf8176c6c6a10188984e36dd985bd1a5be4b2f', d: "M10 11V17", stroke: "auto", "stroke-width": "1.5" }), h("path", { key: '218c043fbf70ae2fd0db434f573e0339ad2303f8', d: "M14 11V17", stroke: "auto", "stroke-width": "1.5" })));
14
14
  }
15
15
  static get style() { return iconCss; }
16
16
  }, [2, "archive-icon", {
@@ -10,7 +10,7 @@ const ArrowIcon = proxyCustomElement(class ArrowIcon extends HTMLElement {
10
10
  this.height = '15';
11
11
  }
12
12
  render() {
13
- return (h("svg", { key: '965b6c266cf4a21eb5b9853e64b4687ff44171e6', width: this.width, height: this.height, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'adc092890503e2bbb72fb20d46a91b76f87dde5f', d: "M5 12H19M12 5L19 12L12 19", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" })));
13
+ return (h("svg", { key: '60eb6fe3830bcf83b515575fddac295ee46b8445', width: this.width, height: this.height, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'bc01c86926c840e985ae2dbd7edf1714b5015bc2', d: "M5 12H19M12 5L19 12L12 19", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" })));
14
14
  }
15
15
  static get style() { return iconCss; }
16
16
  }, [2, "arrow-icon", {
@@ -10,7 +10,7 @@ const BoldIcon = proxyCustomElement(class BoldIcon extends HTMLElement {
10
10
  this.height = '15';
11
11
  }
12
12
  render() {
13
- return (h("svg", { key: '348d5aab6f9207f2c258faac86042d2ef7501512', width: this.width, height: this.height, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'aec1210751f099670e6cab47c0c068714cb21ba9', d: "M6 4V20M9.5 4H15.5C17.7091 4 19.5 5.79086 19.5 8C19.5 10.2091 17.7091 12 15.5 12H9.5H16.5C18.7091 12 20.5 13.7909 20.5 16C20.5 18.2091 18.7091 20 16.5 20H9.5M9.5 4V20M9.5 4H4M9.5 20H4", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" })));
13
+ return (h("svg", { key: '31974bb21eb101d41aaebdd8199a3a5f7ce55a63', width: this.width, height: this.height, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '78c695ad810b93f8d3b70119cd594d936803b9f4', d: "M6 4V20M9.5 4H15.5C17.7091 4 19.5 5.79086 19.5 8C19.5 10.2091 17.7091 12 15.5 12H9.5H16.5C18.7091 12 20.5 13.7909 20.5 16C20.5 18.2091 18.7091 20 16.5 20H9.5M9.5 4V20M9.5 4H4M9.5 20H4", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" })));
14
14
  }
15
15
  static get style() { return iconCss; }
16
16
  }, [2, "bold-icon", {
@@ -1,6 +1,6 @@
1
1
  import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client';
2
2
 
3
- const buttonComponentCss = "button.sc-button-component{height:48px;border:none;border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;cursor:pointer;font-family:var(--nylas-font-family);font-weight:600}button.button-primary.sc-button-component{background:var(--nylas-primary);color:var(--nylas-base-0);height:48px;border:none;border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;cursor:pointer}button.button-primary.sc-button-component:hover{background:var(--nylas-base-600)}button.button-primary.sc-button-component:active{background:var(--nylas-base-800)}button.button-primary.sc-button-component:disabled{background:var(--nylas-base-300);cursor:not-allowed}button.button-basic.sc-button-component{border:1px solid var(--nylas-base-300);color:var(--nylas-base-700);background:transparent}button.button-basic.sc-button-component:hover{background:transparent;border-color:var(--nylas-primary)}button.button-basic.sc-button-component:active{background:transparent;border-color:var(--nylas-base-600);border-width:2px}button.button-basic.sc-button-component:disabled{background:transparent;border-color:var(--nylas-base-300);color:var(--nylas-base-300);cursor:not-allowed}button.button-destructive.sc-button-component{border:1px solid var(--nylas-base-300);color:var(--nylas-error);background:transparent}button.button-destructive.sc-button-component:hover{background:transparent;border-color:var(--nylas-error)}button.button-destructive.sc-button-component:active{background:transparent;border-color:var(--nylas-error-pressed);border-width:2px;color:var(--nylas-error-pressed)}button.button-destructive.sc-button-component:disabled{background:transparent;border-color:var(--nylas-base-300);color:var(--nylas-base-300);cursor:not-allowed}";
3
+ const buttonComponentCss = "button.sc-button-component{height:48px;border:none;border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;cursor:pointer;font-family:var(--nylas-font-family);font-weight:600}@media screen and (max-width: 768px){button.sc-button-component{width:100%}}button.button-primary.sc-button-component{background:var(--nylas-primary);color:var(--nylas-base-0);height:48px;border:none;border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;cursor:pointer}button.button-primary.sc-button-component:hover{background:var(--nylas-base-600)}button.button-primary.sc-button-component:active{background:var(--nylas-base-800)}button.button-primary.sc-button-component:disabled{background:var(--nylas-base-300);cursor:not-allowed}button.button-basic.sc-button-component{border:1px solid var(--nylas-base-300);color:var(--nylas-base-700);background:transparent}button.button-basic.sc-button-component:hover{background:transparent;border-color:var(--nylas-primary)}button.button-basic.sc-button-component:active{background:transparent;border-color:var(--nylas-base-600);border-width:2px}button.button-basic.sc-button-component:disabled{background:transparent;border-color:var(--nylas-base-300);color:var(--nylas-base-300);cursor:not-allowed}button.button-destructive.sc-button-component{border:1px solid var(--nylas-base-300);color:var(--nylas-error);background:transparent}button.button-destructive.sc-button-component:hover{background:transparent;border-color:var(--nylas-error)}button.button-destructive.sc-button-component:active{background:transparent;border-color:var(--nylas-error-pressed);border-width:2px;color:var(--nylas-error-pressed)}button.button-destructive.sc-button-component:disabled{background:transparent;border-color:var(--nylas-base-300);color:var(--nylas-base-300);cursor:not-allowed}";
4
4
 
5
5
  const ButtonComponent = proxyCustomElement(class ButtonComponent extends HTMLElement {
6
6
  constructor() {
@@ -17,7 +17,7 @@ const ButtonComponent = proxyCustomElement(class ButtonComponent extends HTMLEle
17
17
  }
18
18
  render() {
19
19
  const className = `button-${this.variant}` + (this.disabled ? ' disabled' : '');
20
- return (h("button", { key: 'fc37072bb6662cb8d14d597672b2944aa54bc813', class: className, disabled: this.disabled, type: "type", onClick: this.clickHandler, onMouseOver: this.mouseOverHandler, onMouseOut: this.mouseOutHandler, onFocus: this.focusHandler, onBlur: this.blurHandler }, h("slot", { key: 'f951bc5c0b29be66946a743713ca5dd089b64c8c' })));
20
+ return (h("button", { key: '3ac840e8b65854c2e4bdabe93b21b5bcda99e4db', class: className, disabled: this.disabled, type: "type", onClick: this.clickHandler, onMouseOver: this.mouseOverHandler, onMouseOut: this.mouseOutHandler, onFocus: this.focusHandler, onBlur: this.blurHandler }, h("slot", { key: '110df0711566be0df89f2e04aed008dcaf91e9f3' })));
21
21
  }
22
22
  static get style() { return buttonComponentCss; }
23
23
  }, [6, "button-component", {
@@ -1 +1 @@
1
- {"file":"button-component2.js","mappings":";;AAAA,MAAM,kBAAkB,GAAG,uvDAAuvD;;MCQrwD,eAAe;;;;uBAEI,SAAS;wBAGX,KAAK;oBAEV,QAAQ;;;;;;;IAO/B,MAAM;QACJ,MAAM,SAAS,GAAG,UAAU,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,QAAQ,GAAG,WAAW,GAAG,EAAE,CAAC,CAAC;QAEhF,QACE,+DACE,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,IAAI,EAAC,MAAM,EACX,OAAO,EAAE,IAAI,CAAC,YAAY,EAC1B,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAClC,UAAU,EAAE,IAAI,CAAC,eAAe,EAChC,OAAO,EAAE,IAAI,CAAC,YAAY,EAC1B,MAAM,EAAE,IAAI,CAAC,WAAW,IAExB,8DAAa,CACN,EACT;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/design-system/button-component/button-component.scss?tag=button-component&encapsulation=scoped","src/components/design-system/button-component/button-component.tsx"],"sourcesContent":["@import '../../../common/mixins/buttons.scss';\n@import '../../../common/styles/variables.scss';\n\nbutton {\n height: 48px;\n border: none;\n border-radius: var(--nylas-border-radius-2x);\n font-size: 1rem;\n line-height: 24px;\n padding: 0 1rem;\n cursor: pointer;\n font-family: var(--nylas-font-family);\n font-weight: 600;\n &.button-primary {\n @include primary-button;\n }\n &.button-basic {\n border: 1px solid var(--nylas-base-300);\n color: var(--nylas-base-700);\n background: transparent;\n &:hover {\n background: transparent;\n border-color: var(--nylas-primary);\n }\n &:active {\n background: transparent;\n border-color: var(--nylas-base-600);\n border-width: 2px;\n }\n &:disabled {\n background: transparent;\n border-color: var(--nylas-base-300);\n color: var(--nylas-base-300);\n cursor: not-allowed;\n }\n }\n &.button-destructive {\n border: 1px solid var(--nylas-base-300);\n color: var(--nylas-error);\n background: transparent;\n &:hover {\n background: transparent;\n border-color: var(--nylas-error);\n }\n &:active {\n background: transparent;\n border-color: var(--nylas-error-pressed);\n border-width: 2px;\n color: var(--nylas-error-pressed);\n }\n &:disabled {\n background: transparent;\n border-color: var(--nylas-base-300);\n color: var(--nylas-base-300);\n cursor: not-allowed;\n }\n }\n}\n","import { Component, Prop, h } from '@stencil/core';\ntype ButtonType = 'primary' | 'basic' | 'destructive';\n\n@Component({\n tag: 'button-component',\n styleUrl: 'button-component.scss',\n scoped: true,\n})\nexport class ButtonComponent {\n // Define a prop to accept the button type\n @Prop() variant: ButtonType = 'primary';\n\n // Define a prop for disabled state\n @Prop() disabled: boolean = false;\n\n @Prop() type: string = 'button';\n @Prop() clickHandler?: (event: MouseEvent) => void;\n @Prop() mouseOverHandler?: (event: MouseEvent) => void;\n @Prop() mouseOutHandler?: (event: MouseEvent) => void;\n @Prop() focusHandler?: (event: FocusEvent) => void;\n @Prop() blurHandler?: (event: FocusEvent) => void;\n\n render() {\n const className = `button-${this.variant}` + (this.disabled ? ' disabled' : '');\n\n return (\n <button\n class={className}\n disabled={this.disabled}\n type=\"type\"\n onClick={this.clickHandler}\n onMouseOver={this.mouseOverHandler}\n onMouseOut={this.mouseOutHandler}\n onFocus={this.focusHandler}\n onBlur={this.blurHandler}\n >\n <slot></slot>\n </button>\n );\n }\n}\n"],"version":3}
1
+ {"file":"button-component2.js","mappings":";;AAAA,MAAM,kBAAkB,GAAG,m0DAAm0D;;MCQj1D,eAAe;;;;uBAEI,SAAS;wBAGX,KAAK;oBAEV,QAAQ;;;;;;;IAO/B,MAAM;QACJ,MAAM,SAAS,GAAG,UAAU,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,QAAQ,GAAG,WAAW,GAAG,EAAE,CAAC,CAAC;QAEhF,QACE,+DACE,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,IAAI,EAAC,MAAM,EACX,OAAO,EAAE,IAAI,CAAC,YAAY,EAC1B,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAClC,UAAU,EAAE,IAAI,CAAC,eAAe,EAChC,OAAO,EAAE,IAAI,CAAC,YAAY,EAC1B,MAAM,EAAE,IAAI,CAAC,WAAW,IAExB,8DAAa,CACN,EACT;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/design-system/button-component/button-component.scss?tag=button-component&encapsulation=scoped","src/components/design-system/button-component/button-component.tsx"],"sourcesContent":["@import '../../../common/mixins/buttons.scss';\n@import '../../../common/styles/variables.scss';\n\nbutton {\n height: 48px;\n border: none;\n border-radius: var(--nylas-border-radius-2x);\n font-size: 1rem;\n line-height: 24px;\n padding: 0 1rem;\n cursor: pointer;\n font-family: var(--nylas-font-family);\n font-weight: 600;\n @media #{$mobile} {\n width: 100%;\n }\n &.button-primary {\n @include primary-button;\n }\n &.button-basic {\n border: 1px solid var(--nylas-base-300);\n color: var(--nylas-base-700);\n background: transparent;\n &:hover {\n background: transparent;\n border-color: var(--nylas-primary);\n }\n &:active {\n background: transparent;\n border-color: var(--nylas-base-600);\n border-width: 2px;\n }\n &:disabled {\n background: transparent;\n border-color: var(--nylas-base-300);\n color: var(--nylas-base-300);\n cursor: not-allowed;\n }\n }\n &.button-destructive {\n border: 1px solid var(--nylas-base-300);\n color: var(--nylas-error);\n background: transparent;\n &:hover {\n background: transparent;\n border-color: var(--nylas-error);\n }\n &:active {\n background: transparent;\n border-color: var(--nylas-error-pressed);\n border-width: 2px;\n color: var(--nylas-error-pressed);\n }\n &:disabled {\n background: transparent;\n border-color: var(--nylas-base-300);\n color: var(--nylas-base-300);\n cursor: not-allowed;\n }\n }\n}\n","import { Component, Prop, h } from '@stencil/core';\ntype ButtonType = 'primary' | 'basic' | 'destructive';\n\n@Component({\n tag: 'button-component',\n styleUrl: 'button-component.scss',\n scoped: true,\n})\nexport class ButtonComponent {\n // Define a prop to accept the button type\n @Prop() variant: ButtonType = 'primary';\n\n // Define a prop for disabled state\n @Prop() disabled: boolean = false;\n\n @Prop() type: string = 'button';\n @Prop() clickHandler?: (event: MouseEvent) => void;\n @Prop() mouseOverHandler?: (event: MouseEvent) => void;\n @Prop() mouseOutHandler?: (event: MouseEvent) => void;\n @Prop() focusHandler?: (event: FocusEvent) => void;\n @Prop() blurHandler?: (event: FocusEvent) => void;\n\n render() {\n const className = `button-${this.variant}` + (this.disabled ? ' disabled' : '');\n\n return (\n <button\n class={className}\n disabled={this.disabled}\n type=\"type\"\n onClick={this.clickHandler}\n onMouseOver={this.mouseOverHandler}\n onMouseOut={this.mouseOutHandler}\n onFocus={this.focusHandler}\n onBlur={this.blurHandler}\n >\n <slot></slot>\n </button>\n );\n }\n}\n"],"version":3}
@@ -10,7 +10,7 @@ const CalendarCancelIcon = proxyCustomElement(class CalendarCancelIcon extends H
10
10
  this.height = '20';
11
11
  }
12
12
  render() {
13
- return (h("svg", { key: 'db6701b8f80c91b9f6a113fcc0960177f599d7b9', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '1047c1e125b9e145ce8cddee8cbd416fe10dc5f2', d: "M14.5 9a5.5 5.5 0 1 1 0 11 5.5 5.5 0 0 1 0-11Zm-2.476 3.024a.5.5 0 0 0 0 .707l1.769 1.77-1.767 1.766a.5.5 0 1 0 .707.708l1.767-1.767 1.77 1.769a.5.5 0 1 0 .707-.707L15.208 14.5l1.771-1.77a.5.5 0 0 0-.707-.707l-1.771 1.77-1.77-1.77a.5.5 0 0 0-.707 0ZM14.75 0A3.25 3.25 0 0 1 18 3.25l.001 5.773a6.47 6.47 0 0 0-1.5-.71L16.5 5.5h-15v9.25c0 .966.784 1.75 1.75 1.75h5.064a6.47 6.47 0 0 0 .709 1.501L3.25 18A3.25 3.25 0 0 1 0 14.75V3.25A3.25 3.25 0 0 1 3.25 0h11.5Zm0 1.5H3.25A1.75 1.75 0 0 0 1.5 3.25V4h15v-.75a1.75 1.75 0 0 0-1.75-1.75Z", fill: "currentColor" })));
13
+ return (h("svg", { key: '09bdd81a98611d49143ed327802cee77c1e851ae', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '9692e20de89c490c05ccf9800faea78c5860260d', d: "M14.5 9a5.5 5.5 0 1 1 0 11 5.5 5.5 0 0 1 0-11Zm-2.476 3.024a.5.5 0 0 0 0 .707l1.769 1.77-1.767 1.766a.5.5 0 1 0 .707.708l1.767-1.767 1.77 1.769a.5.5 0 1 0 .707-.707L15.208 14.5l1.771-1.77a.5.5 0 0 0-.707-.707l-1.771 1.77-1.77-1.77a.5.5 0 0 0-.707 0ZM14.75 0A3.25 3.25 0 0 1 18 3.25l.001 5.773a6.47 6.47 0 0 0-1.5-.71L16.5 5.5h-15v9.25c0 .966.784 1.75 1.75 1.75h5.064a6.47 6.47 0 0 0 .709 1.501L3.25 18A3.25 3.25 0 0 1 0 14.75V3.25A3.25 3.25 0 0 1 3.25 0h11.5Zm0 1.5H3.25A1.75 1.75 0 0 0 1.5 3.25V4h15v-.75a1.75 1.75 0 0 0-1.75-1.75Z", fill: "currentColor" })));
14
14
  }
15
15
  static get style() { return iconCss; }
16
16
  }, [2, "calendar-cancel-icon", {
@@ -10,7 +10,7 @@ const CalendarCheckIcon = proxyCustomElement(class CalendarCheckIcon extends HTM
10
10
  this.height = '20';
11
11
  }
12
12
  render() {
13
- return (h("svg", { key: '38443394b07088e29b246c590994774d60bb192e', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '7ab6ea9098ce5585c193f1bf4e668e04a442991a', fill: "currentColor", d: "M14.75 0C16.5449 0 18 1.45507 18 3.25V9.02182C17.5368 8.72526 17.0335 8.48584 16.5 8.3135V5.5H1.5V14.75C1.5 15.7165 2.2835 16.5 3.25 16.5H8.3135C8.48584 17.0335 8.72526 17.5368 9.02182 18H3.25C1.45507 18 0 16.5449 0 14.75V3.25C0 1.45507 1.45507 0 3.25 0H14.75ZM14.75 1.5H3.25C2.2835 1.5 1.5 2.2835 1.5 3.25V4H16.5V3.25C16.5 2.2835 15.7165 1.5 14.75 1.5ZM20 14.5C20 17.5376 17.5376 20 14.5 20C11.4624 20 9 17.5376 9 14.5C9 11.4624 11.4624 9 14.5 9C17.5376 9 20 11.4624 20 14.5ZM17.8536 12.1464C17.6583 11.9512 17.3417 11.9512 17.1464 12.1464L13.5 15.7929L11.8536 14.1464C11.6583 13.9512 11.3417 13.9512 11.1464 14.1464C10.9512 14.3417 10.9512 14.6583 11.1464 14.8536L13.1464 16.8536C13.3417 17.0488 13.6583 17.0488 13.8536 16.8536L17.8536 12.8536C18.0488 12.6583 18.0488 12.3417 17.8536 12.1464Z" })));
13
+ return (h("svg", { key: '128211c766d7f563df0549f5a3d15ed24c92824c', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '063233f8a8a8b823df7949caff2643c0fa5ea021', fill: "currentColor", d: "M14.75 0C16.5449 0 18 1.45507 18 3.25V9.02182C17.5368 8.72526 17.0335 8.48584 16.5 8.3135V5.5H1.5V14.75C1.5 15.7165 2.2835 16.5 3.25 16.5H8.3135C8.48584 17.0335 8.72526 17.5368 9.02182 18H3.25C1.45507 18 0 16.5449 0 14.75V3.25C0 1.45507 1.45507 0 3.25 0H14.75ZM14.75 1.5H3.25C2.2835 1.5 1.5 2.2835 1.5 3.25V4H16.5V3.25C16.5 2.2835 15.7165 1.5 14.75 1.5ZM20 14.5C20 17.5376 17.5376 20 14.5 20C11.4624 20 9 17.5376 9 14.5C9 11.4624 11.4624 9 14.5 9C17.5376 9 20 11.4624 20 14.5ZM17.8536 12.1464C17.6583 11.9512 17.3417 11.9512 17.1464 12.1464L13.5 15.7929L11.8536 14.1464C11.6583 13.9512 11.3417 13.9512 11.1464 14.1464C10.9512 14.3417 10.9512 14.6583 11.1464 14.8536L13.1464 16.8536C13.3417 17.0488 13.6583 17.0488 13.8536 16.8536L17.8536 12.8536C18.0488 12.6583 18.0488 12.3417 17.8536 12.1464Z" })));
14
14
  }
15
15
  static get style() { return iconCss; }
16
16
  }, [2, "calendar-check-icon", {
@@ -10,7 +10,7 @@ const CalendarInfoIcon = proxyCustomElement(class CalendarInfoIcon extends HTMLE
10
10
  this.height = '20';
11
11
  }
12
12
  render() {
13
- return (h("svg", { key: '060bde1be8b6a697f073c73caa121b3b79f989a1', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '5ddd8695565e3efee4a76a2757cf7cafa79780b0', d: "M12 0C13.3807 0 14.5 1.11929 14.5 2.5V6.59971C14.1832 6.43777 13.8486 6.30564 13.5 6.20703V4H1.5V11.5C1.5 12.3284 2.17157 13 3 13H6.70703C6.80564 13.3486 6.93777 13.6832 7.09971 14H3C1.61929 14 0.5 12.8807 0.5 11.5V2.5C0.5 1.11929 1.61929 0 3 0H12ZM12 1H3C2.17157 1 1.5 1.67157 1.5 2.5V3H13.5V2.5C13.5 1.67157 12.8284 1 12 1ZM11.375 9.5C11.375 9.15482 11.6548 8.875 12 8.875C12.3452 8.875 12.625 9.15482 12.625 9.5C12.625 9.84518 12.3452 10.125 12 10.125C11.6548 10.125 11.375 9.84518 11.375 9.5ZM12.5 13.5C12.5 13.7761 12.2761 14 12 14C11.7239 14 11.5 13.7761 11.5 13.5V11.5C11.5 11.2239 11.7239 11 12 11C12.2761 11 12.5 11.2239 12.5 11.5V13.5ZM7.5 11.5C7.5 9.01472 9.51472 7 12 7C14.4853 7 16.5 9.01472 16.5 11.5C16.5 13.9853 14.4853 16 12 16C9.51472 16 7.5 13.9853 7.5 11.5ZM8.5 11.5C8.5 13.433 10.067 15 12 15C13.933 15 15.5 13.433 15.5 11.5C15.5 9.567 13.933 8 12 8C10.067 8 8.5 9.567 8.5 11.5Z", fill: "currentColor" })));
13
+ return (h("svg", { key: '4c290eae1d55ec9df96cbe6d9ba85d5d8b7ee102', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'a2a76a5d0183952d59f1d2f448dc7c460694e410', d: "M12 0C13.3807 0 14.5 1.11929 14.5 2.5V6.59971C14.1832 6.43777 13.8486 6.30564 13.5 6.20703V4H1.5V11.5C1.5 12.3284 2.17157 13 3 13H6.70703C6.80564 13.3486 6.93777 13.6832 7.09971 14H3C1.61929 14 0.5 12.8807 0.5 11.5V2.5C0.5 1.11929 1.61929 0 3 0H12ZM12 1H3C2.17157 1 1.5 1.67157 1.5 2.5V3H13.5V2.5C13.5 1.67157 12.8284 1 12 1ZM11.375 9.5C11.375 9.15482 11.6548 8.875 12 8.875C12.3452 8.875 12.625 9.15482 12.625 9.5C12.625 9.84518 12.3452 10.125 12 10.125C11.6548 10.125 11.375 9.84518 11.375 9.5ZM12.5 13.5C12.5 13.7761 12.2761 14 12 14C11.7239 14 11.5 13.7761 11.5 13.5V11.5C11.5 11.2239 11.7239 11 12 11C12.2761 11 12.5 11.2239 12.5 11.5V13.5ZM7.5 11.5C7.5 9.01472 9.51472 7 12 7C14.4853 7 16.5 9.01472 16.5 11.5C16.5 13.9853 14.4853 16 12 16C9.51472 16 7.5 13.9853 7.5 11.5ZM8.5 11.5C8.5 13.433 10.067 15 12 15C13.933 15 15.5 13.433 15.5 11.5C15.5 9.567 13.933 8 12 8C10.067 8 8.5 9.567 8.5 11.5Z", fill: "currentColor" })));
14
14
  }
15
15
  static get style() { return iconCss; }
16
16
  }, [2, "calendar-info-icon", {
@@ -10,7 +10,7 @@ const CalendarPatternsIcon = proxyCustomElement(class CalendarPatternsIcon exten
10
10
  this.height = '20';
11
11
  }
12
12
  render() {
13
- return (h("svg", { key: 'd01849f00df7eb5d24f7da7a76c933fdcdfd13b1', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'd1fdc79ea4e67493ccd8058530e12d127d174e66', d: "M3.25 0H11.75C13.2688 0 14.5 1.23122 14.5 2.75V11.25C14.5 12.7688 13.2688 14 11.75 14H3.25C1.73122 14 0.5 12.7688 0.5 11.25V2.75C0.5 1.23122 1.73122 0 3.25 0ZM2 2.75V4H13V2.75C13 2.05964 12.4404 1.5 11.75 1.5H3.25C2.55964 1.5 2 2.05964 2 2.75ZM12.2071 5L8.20711 9H10.7929L13 6.79289V5H12.2071ZM10.7929 5H8.20711L4.20711 9H6.79289L10.7929 5ZM2.79289 9L6.79289 5H4.20711L2 7.20711V9H2.79289ZM2 5.79289L2.79289 5H2V5.79289ZM12.2071 9H13V8.20711L12.2071 9Z", fill: "currentColor" })));
13
+ return (h("svg", { key: 'cf8071f578ad04793f5bd5b446dccaa1f6d4c1a3', width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '8e8a3c7d87bc41c6d6973a34863d05d996155c1d', d: "M3.25 0H11.75C13.2688 0 14.5 1.23122 14.5 2.75V11.25C14.5 12.7688 13.2688 14 11.75 14H3.25C1.73122 14 0.5 12.7688 0.5 11.25V2.75C0.5 1.23122 1.73122 0 3.25 0ZM2 2.75V4H13V2.75C13 2.05964 12.4404 1.5 11.75 1.5H3.25C2.55964 1.5 2 2.05964 2 2.75ZM12.2071 5L8.20711 9H10.7929L13 6.79289V5H12.2071ZM10.7929 5H8.20711L4.20711 9H6.79289L10.7929 5ZM2.79289 9L6.79289 5H4.20711L2 7.20711V9H2.79289ZM2 5.79289L2.79289 5H2V5.79289ZM12.2071 9H13V8.20711L12.2071 9Z", fill: "currentColor" })));
14
14
  }
15
15
  static get style() { return iconCss; }
16
16
  }, [2, "calendar-patterns-icon", {
@@ -10,7 +10,7 @@ const CalendarIcon = proxyCustomElement(class CalendarIcon extends HTMLElement {
10
10
  this.height = '15';
11
11
  }
12
12
  render() {
13
- return (h("svg", { key: '13b15d8a30949d8dc9425276f610ac973ddac58e', width: this.width, height: this.height, fill: "none", viewBox: "0 0 18 18", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'd5306bec4f4b9aca435d75e7ead87dfaf2e7204e', fill: "currentColor", d: "M14.3073 0.692383C15.9641 0.692383 17.3073 2.03553 17.3073 3.69238V14.3078C17.3073 15.9646 15.9641 17.3078 14.3073 17.3078H3.6919C2.03504 17.3078 0.691895 15.9646 0.691895 14.3078V3.69238C0.691895 2.03553 2.03504 0.692383 3.6919 0.692383H14.3073ZM15.9227 5.76931H2.07651V14.3078C2.07651 15.1999 2.79974 15.9232 3.6919 15.9232H14.3073C15.1994 15.9232 15.9227 15.1999 15.9227 14.3078V5.76931ZM5.07651 11.3078C5.71376 11.3078 6.23036 11.8244 6.23036 12.4616C6.23036 13.0989 5.71376 13.6155 5.07651 13.6155C4.43926 13.6155 3.92266 13.0989 3.92266 12.4616C3.92266 11.8244 4.43926 11.3078 5.07651 11.3078ZM8.99959 11.3078C9.63684 11.3078 10.1534 11.8244 10.1534 12.4616C10.1534 13.0989 9.63684 13.6155 8.99959 13.6155C8.36234 13.6155 7.84574 13.0989 7.84574 12.4616C7.84574 11.8244 8.36234 11.3078 8.99959 11.3078ZM5.07651 7.61546C5.71376 7.61546 6.23036 8.13206 6.23036 8.76931C6.23036 9.40656 5.71376 9.92315 5.07651 9.92315C4.43926 9.92315 3.92266 9.40656 3.92266 8.76931C3.92266 8.13206 4.43926 7.61546 5.07651 7.61546ZM8.99959 7.61546C9.63684 7.61546 10.1534 8.13206 10.1534 8.76931C10.1534 9.40656 9.63684 9.92315 8.99959 9.92315C8.36234 9.92315 7.84574 9.40656 7.84574 8.76931C7.84574 8.13206 8.36234 7.61546 8.99959 7.61546ZM12.9227 7.61546C13.5599 7.61546 14.0765 8.13206 14.0765 8.76931C14.0765 9.40656 13.5599 9.92315 12.9227 9.92315C12.2854 9.92315 11.7688 9.40656 11.7688 8.76931C11.7688 8.13206 12.2854 7.61546 12.9227 7.61546ZM14.3073 2.077H3.6919C2.79974 2.077 2.07651 2.80023 2.07651 3.69238V4.38469H15.9227V3.69238C15.9227 2.80023 15.1994 2.077 14.3073 2.077Z" })));
13
+ return (h("svg", { key: '3511648425d3fb5cb3df268c9647cf2590d28ab0', width: this.width, height: this.height, fill: "none", viewBox: "0 0 18 18", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '32465f5a3184be89f1acdcc53a98158e757c22bb', fill: "currentColor", d: "M14.3073 0.692383C15.9641 0.692383 17.3073 2.03553 17.3073 3.69238V14.3078C17.3073 15.9646 15.9641 17.3078 14.3073 17.3078H3.6919C2.03504 17.3078 0.691895 15.9646 0.691895 14.3078V3.69238C0.691895 2.03553 2.03504 0.692383 3.6919 0.692383H14.3073ZM15.9227 5.76931H2.07651V14.3078C2.07651 15.1999 2.79974 15.9232 3.6919 15.9232H14.3073C15.1994 15.9232 15.9227 15.1999 15.9227 14.3078V5.76931ZM5.07651 11.3078C5.71376 11.3078 6.23036 11.8244 6.23036 12.4616C6.23036 13.0989 5.71376 13.6155 5.07651 13.6155C4.43926 13.6155 3.92266 13.0989 3.92266 12.4616C3.92266 11.8244 4.43926 11.3078 5.07651 11.3078ZM8.99959 11.3078C9.63684 11.3078 10.1534 11.8244 10.1534 12.4616C10.1534 13.0989 9.63684 13.6155 8.99959 13.6155C8.36234 13.6155 7.84574 13.0989 7.84574 12.4616C7.84574 11.8244 8.36234 11.3078 8.99959 11.3078ZM5.07651 7.61546C5.71376 7.61546 6.23036 8.13206 6.23036 8.76931C6.23036 9.40656 5.71376 9.92315 5.07651 9.92315C4.43926 9.92315 3.92266 9.40656 3.92266 8.76931C3.92266 8.13206 4.43926 7.61546 5.07651 7.61546ZM8.99959 7.61546C9.63684 7.61546 10.1534 8.13206 10.1534 8.76931C10.1534 9.40656 9.63684 9.92315 8.99959 9.92315C8.36234 9.92315 7.84574 9.40656 7.84574 8.76931C7.84574 8.13206 8.36234 7.61546 8.99959 7.61546ZM12.9227 7.61546C13.5599 7.61546 14.0765 8.13206 14.0765 8.76931C14.0765 9.40656 13.5599 9.92315 12.9227 9.92315C12.2854 9.92315 11.7688 9.40656 11.7688 8.76931C11.7688 8.13206 12.2854 7.61546 12.9227 7.61546ZM14.3073 2.077H3.6919C2.79974 2.077 2.07651 2.80023 2.07651 3.69238V4.38469H15.9227V3.69238C15.9227 2.80023 15.1994 2.077 14.3073 2.077Z" })));
14
14
  }
15
15
  static get style() { return iconCss; }
16
16
  }, [2, "calendar-icon", {
@@ -10,7 +10,7 @@ const CheckmarkCircleIcon = proxyCustomElement(class CheckmarkCircleIcon extends
10
10
  this.height = '20';
11
11
  }
12
12
  render() {
13
- return (h("svg", { key: 'fe15f01206b6a97170014eccd61a87db4e73e324', xmlns: "http://www.w3.org/2000/svg", width: this.width, height: this.height, fill: "none", viewBox: "0 0 20 20" }, h("path", { key: '1742bbcd93b66151ec4394083b2e6e0441f5c808', fill: "currentColor", d: "M10 2a8 8 0 1 1 0 16 8 8 0 0 1 0-16Zm0 1a7 7 0 1 0 0 14 7 7 0 0 0 0-14Zm3.358 4.646a.5.5 0 0 1 .058.638l-.058.07-4.004 4.004a.5.5 0 0 1-.638.058l-.07-.058-2-2a.5.5 0 0 1 .638-.765l.07.058L9 11.298l3.651-3.652a.5.5 0 0 1 .707 0Z" })));
13
+ return (h("svg", { key: '391cc64dd53e54e877a74042d20890c59b1a25a1', xmlns: "http://www.w3.org/2000/svg", width: this.width, height: this.height, fill: "none", viewBox: "0 0 20 20" }, h("path", { key: '9fa7b6dd7971961e6129720a4ec73af505d5c188', fill: "currentColor", d: "M10 2a8 8 0 1 1 0 16 8 8 0 0 1 0-16Zm0 1a7 7 0 1 0 0 14 7 7 0 0 0 0-14Zm3.358 4.646a.5.5 0 0 1 .058.638l-.058.07-4.004 4.004a.5.5 0 0 1-.638.058l-.07-.058-2-2a.5.5 0 0 1 .638-.765l.07.058L9 11.298l3.651-3.652a.5.5 0 0 1 .707 0Z" })));
14
14
  }
15
15
  static get style() { return iconCss; }
16
16
  }, [2, "checkmark-circle-icon", {
@@ -10,7 +10,7 @@ const ChevronIcon = proxyCustomElement(class ChevronIcon extends HTMLElement {
10
10
  this.height = '24';
11
11
  }
12
12
  render() {
13
- return (h("svg", { key: '8b2f33f377a5e7cef2b384c7f94d8fbe16c91fa0', xmlns: "http://www.w3.org/2000/svg", width: this.width, height: this.height, viewBox: "0 0 24 24", fill: "none" }, h("path", { key: '8470f2d9380d24168e7b0985b75d389e8ceae095', fill: "currentColor", d: "M15.53 4.22a.75.75 0 0 1 0 1.06L8.81 12l6.72 6.72a.75.75 0 1 1-1.06 1.06l-7.25-7.25a.75.75 0 0 1 0-1.06l7.25-7.25a.75.75 0 0 1 1.06 0Z" })));
13
+ return (h("svg", { key: '4237d5be45ec5b20c76f6132347abbbff3db30d3', xmlns: "http://www.w3.org/2000/svg", width: this.width, height: this.height, viewBox: "0 0 24 24", fill: "none" }, h("path", { key: '3d68979af03e88ecb6725fefbd1a4d9af22aa727', fill: "currentColor", d: "M15.53 4.22a.75.75 0 0 1 0 1.06L8.81 12l6.72 6.72a.75.75 0 1 1-1.06 1.06l-7.25-7.25a.75.75 0 0 1 0-1.06l7.25-7.25a.75.75 0 0 1 1.06 0Z" })));
14
14
  }
15
15
  static get style() { return iconCss; }
16
16
  }, [2, "chevron-icon", {