@nylas/web-elements 1.1.0-canary.15 → 1.1.0-canary.17

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 (732) hide show
  1. package/dist/cjs/add-circle-icon.cjs.entry.js +1 -1
  2. package/dist/cjs/add-circle-icon_2.cjs.entry.js +11 -18
  3. package/dist/cjs/add-circle-icon_2.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 +1 -1
  10. package/dist/cjs/calendar-cancel-icon.cjs.entry.js +1 -1
  11. package/dist/cjs/calendar-check-icon.cjs.entry.js +1 -1
  12. package/dist/cjs/calendar-check-icon_2.cjs.entry.js +2 -2
  13. package/dist/cjs/calendar-icon.cjs.entry.js +1 -1
  14. package/dist/cjs/calendar-info-icon.cjs.entry.js +1 -1
  15. package/dist/cjs/{calendar-info-icon_25.cjs.entry.js → calendar-info-icon_28.cjs.entry.js} +419 -397
  16. package/dist/cjs/calendar-info-icon_28.cjs.entry.js.map +1 -0
  17. package/dist/cjs/calendar-patterns-icon.cjs.entry.js +1 -1
  18. package/dist/cjs/checkbox-component.cjs.entry.js +1 -1
  19. package/dist/cjs/checkbox-component.cjs.entry.js.map +1 -1
  20. package/dist/cjs/checkmark-circle-icon.cjs.entry.js +1 -1
  21. package/dist/cjs/chevron-icon.cjs.entry.js +1 -1
  22. package/dist/cjs/chevron-icon_3.cjs.entry.js +4 -4
  23. package/dist/cjs/clock-icon.cjs.entry.js +1 -1
  24. package/dist/cjs/clock-icon_2.cjs.entry.js +2 -2
  25. package/dist/cjs/close-icon.cjs.entry.js +1 -1
  26. package/dist/cjs/document-refresh-icon.cjs.entry.js +1 -1
  27. package/dist/cjs/flow-icon.cjs.entry.js +1 -1
  28. package/dist/cjs/folder-icon.cjs.entry.js +1 -1
  29. package/dist/cjs/forward-icon.cjs.entry.js +1 -1
  30. package/dist/cjs/forward-icon_6.cjs.entry.js +7 -7
  31. package/dist/cjs/globe-icon.cjs.entry.js +1 -1
  32. package/dist/cjs/google-logo-icon.cjs.entry.js +1 -1
  33. package/dist/cjs/google-logo-icon_4.cjs.entry.js +101 -78
  34. package/dist/cjs/google-logo-icon_4.cjs.entry.js.map +1 -1
  35. package/dist/cjs/inbox-icon.cjs.entry.js +1 -1
  36. package/dist/cjs/index-7af03e3f.js +12 -20
  37. package/dist/cjs/index-c14ea8f5.js +22 -18
  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/input-component.cjs.entry.js +1 -1
  41. package/dist/cjs/input-dropdown.cjs.entry.js +21 -4
  42. package/dist/cjs/input-dropdown.cjs.entry.js.map +1 -1
  43. package/dist/cjs/input-dropdown_2.cjs.entry.js +22 -5
  44. package/dist/cjs/input-dropdown_2.cjs.entry.js.map +1 -1
  45. package/dist/cjs/italic-icon.cjs.entry.js +1 -1
  46. package/dist/cjs/loader.cjs.js +1 -1
  47. package/dist/cjs/loading-icon.cjs.entry.js +1 -1
  48. package/dist/cjs/location-icon.cjs.entry.js +1 -1
  49. package/dist/cjs/location-off-icon.cjs.entry.js +1 -1
  50. package/dist/cjs/microsoft-logo-icon.cjs.entry.js +1 -1
  51. package/dist/cjs/multi-select-dropdown.cjs.entry.js +2 -2
  52. package/dist/cjs/nylas-additional-participants.cjs.entry.js +38 -14
  53. package/dist/cjs/nylas-additional-participants.cjs.entry.js.map +1 -1
  54. package/dist/cjs/nylas-availability-picker.cjs.entry.js +27 -16
  55. package/dist/cjs/nylas-availability-picker.cjs.entry.js.map +1 -1
  56. package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js +6 -6
  57. package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js.map +1 -1
  58. package/dist/cjs/nylas-booking-form.cjs.entry.js +2 -2
  59. package/dist/cjs/nylas-booking-form.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-customize-booking-settings.cjs.entry.js +4 -4
  64. package/dist/cjs/nylas-customize-booking-settings.cjs.entry.js.map +1 -1
  65. package/dist/cjs/nylas-editor-tabs.cjs.entry.js +99 -76
  66. package/dist/cjs/nylas-editor-tabs.cjs.entry.js.map +1 -1
  67. package/dist/cjs/nylas-if-state.cjs.entry.js +1 -1
  68. package/dist/cjs/nylas-list-folders.cjs.entry.js +1 -1
  69. package/dist/cjs/nylas-list-threads.cjs.entry.js +1 -1
  70. package/dist/cjs/nylas-login.cjs.entry.js +1 -1
  71. package/dist/cjs/nylas-logo.cjs.entry.js +1 -1
  72. package/dist/cjs/nylas-mailbox-toolbar-button.cjs.entry.js +1 -1
  73. package/dist/cjs/nylas-mailbox.cjs.entry.js +1 -1
  74. package/dist/cjs/nylas-notification.cjs.entry.js +1 -1
  75. package/dist/cjs/nylas-participants-custom-availability.cjs.entry.js +142 -0
  76. package/dist/cjs/nylas-participants-custom-availability.cjs.entry.js.map +1 -0
  77. package/dist/cjs/nylas-provider.cjs.entry.js +2 -2
  78. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js +4 -2
  79. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js.map +1 -1
  80. package/dist/cjs/nylas-scheduling.cjs.entry.js +1 -1
  81. package/dist/cjs/nylas-scheduling.cjs.entry.js.map +1 -1
  82. package/dist/cjs/nylas-summarize-message-button.cjs.entry.js +2 -2
  83. package/dist/cjs/nylas-threads-refresh.cjs.entry.js +2 -2
  84. package/dist/cjs/nylas-threads-search.cjs.entry.js +1 -1
  85. package/dist/cjs/nylas-time-window-picker.cjs.entry.js +1 -1
  86. package/dist/cjs/nylas-timeslot-interval.cjs.entry.js +2 -2
  87. package/dist/cjs/nylas-view-email.cjs.entry.js +1 -1
  88. package/dist/cjs/nylas-view-thread.cjs.entry.js +1 -1
  89. package/dist/cjs/nylas-web-elements.cjs.js +1 -1
  90. package/dist/cjs/people-icon.cjs.entry.js +1 -1
  91. package/dist/cjs/person-icon.cjs.entry.js +1 -1
  92. package/dist/cjs/play-icon.cjs.entry.js +1 -1
  93. package/dist/cjs/play-icon_2.cjs.entry.js +2 -2
  94. package/dist/cjs/radio-button-group.cjs.entry.js +1 -1
  95. package/dist/cjs/refresh-icon.cjs.entry.js +1 -1
  96. package/dist/cjs/reply-all-icon.cjs.entry.js +1 -1
  97. package/dist/cjs/reply-icon.cjs.entry.js +1 -1
  98. package/dist/cjs/{scheduler-config-store-a5b7c08b.js → scheduler-config-store-0266631b.js} +2 -1
  99. package/dist/cjs/scheduler-config-store-0266631b.js.map +1 -0
  100. package/dist/cjs/{scheduler-config-store-918c20d5.js → scheduler-config-store-9f19c7a9.js} +2 -1
  101. package/dist/cjs/scheduler-config-store-9f19c7a9.js.map +1 -0
  102. package/dist/cjs/scheduler-store-0f7328f1.js.map +1 -1
  103. package/dist/cjs/scheduler-store-743ed238.js.map +1 -1
  104. package/dist/cjs/search-icon.cjs.entry.js +1 -1
  105. package/dist/cjs/select-dropdown.cjs.entry.js +2 -2
  106. package/dist/cjs/sent-icon.cjs.entry.js +1 -1
  107. package/dist/cjs/spam-icon.cjs.entry.js +1 -1
  108. package/dist/cjs/star-icon.cjs.entry.js +1 -1
  109. package/dist/cjs/stop-icon.cjs.entry.js +1 -1
  110. package/dist/cjs/textarea-component.cjs.entry.js +1 -1
  111. package/dist/cjs/time-period-selector.cjs.entry.js +1 -1
  112. package/dist/cjs/toggle-switch.cjs.entry.js +1 -1
  113. package/dist/cjs/toggle-switch.cjs.entry.js.map +1 -1
  114. package/dist/cjs/tooltip-component.cjs.entry.js +1 -1
  115. package/dist/cjs/translate-icon.cjs.entry.js +1 -1
  116. package/dist/cjs/trash-icon.cjs.entry.js +1 -1
  117. package/dist/cjs/underline-icon.cjs.entry.js +1 -1
  118. package/dist/cjs/warning-icon.cjs.entry.js +1 -1
  119. package/dist/collection/collection-manifest.json +1 -0
  120. package/dist/collection/common/icons/add-circle.js +1 -1
  121. package/dist/collection/common/icons/archive.js +1 -1
  122. package/dist/collection/common/icons/arrow.js +1 -1
  123. package/dist/collection/common/icons/bold.js +1 -1
  124. package/dist/collection/common/icons/calendar-cancel.js +1 -1
  125. package/dist/collection/common/icons/calendar-check.js +1 -1
  126. package/dist/collection/common/icons/calendar-info.js +1 -1
  127. package/dist/collection/common/icons/calendar-patterns.js +1 -1
  128. package/dist/collection/common/icons/calendar.js +1 -1
  129. package/dist/collection/common/icons/checkmark-circle.js +1 -1
  130. package/dist/collection/common/icons/chevron.js +1 -1
  131. package/dist/collection/common/icons/clock.js +1 -1
  132. package/dist/collection/common/icons/close.js +1 -1
  133. package/dist/collection/common/icons/document-refresh.js +1 -1
  134. package/dist/collection/common/icons/flow.js +1 -1
  135. package/dist/collection/common/icons/folder.js +1 -1
  136. package/dist/collection/common/icons/forward.js +1 -1
  137. package/dist/collection/common/icons/globe.js +1 -1
  138. package/dist/collection/common/icons/google-logo.js +1 -1
  139. package/dist/collection/common/icons/inbox.js +1 -1
  140. package/dist/collection/common/icons/info.js +1 -1
  141. package/dist/collection/common/icons/italic.js +1 -1
  142. package/dist/collection/common/icons/loading.js +1 -1
  143. package/dist/collection/common/icons/location-off.js +1 -1
  144. package/dist/collection/common/icons/location.js +1 -1
  145. package/dist/collection/common/icons/microsoft-logo.js +1 -1
  146. package/dist/collection/common/icons/nylas-logo.js +1 -1
  147. package/dist/collection/common/icons/people.js +1 -1
  148. package/dist/collection/common/icons/person.js +1 -1
  149. package/dist/collection/common/icons/play.js +1 -1
  150. package/dist/collection/common/icons/refresh.js +1 -1
  151. package/dist/collection/common/icons/reply-all.js +1 -1
  152. package/dist/collection/common/icons/reply.js +1 -1
  153. package/dist/collection/common/icons/search.js +1 -1
  154. package/dist/collection/common/icons/sent.js +1 -1
  155. package/dist/collection/common/icons/spam.js +1 -1
  156. package/dist/collection/common/icons/star.js +1 -1
  157. package/dist/collection/common/icons/stop.js +1 -1
  158. package/dist/collection/common/icons/translate.js +1 -1
  159. package/dist/collection/common/icons/trash.js +1 -1
  160. package/dist/collection/common/icons/underline.js +1 -1
  161. package/dist/collection/common/icons/warning.js +1 -1
  162. package/dist/collection/components/design-system/button-component/button-component.js +1 -1
  163. package/dist/collection/components/design-system/checkbox-component/checkbox-component.js +1 -1
  164. package/dist/collection/components/design-system/checkbox-component/checkbox-component.js.map +1 -1
  165. package/dist/collection/components/design-system/input-component/input-component.js +1 -1
  166. package/dist/collection/components/design-system/input-dropdown/input-dropdown.js +40 -3
  167. package/dist/collection/components/design-system/input-dropdown/input-dropdown.js.map +1 -1
  168. package/dist/collection/components/design-system/multi-select-dropdown/multi-select-dropdown.js +2 -2
  169. package/dist/collection/components/design-system/radio-button-group/radio-button-group.js +1 -1
  170. package/dist/collection/components/design-system/select-dropdown/select-dropdown.js +2 -2
  171. package/dist/collection/components/design-system/textarea-component/textarea-component.js +1 -1
  172. package/dist/collection/components/design-system/time-period-selector/time-period-selector.js +1 -1
  173. package/dist/collection/components/design-system/toggle-switch/toggle-switch.js +1 -1
  174. package/dist/collection/components/design-system/toggle-switch/toggle-switch.js.map +1 -1
  175. package/dist/collection/components/design-system/tooltip-component/toolitp-component.js +1 -1
  176. package/dist/collection/components/mailbox/nylas-composer/nylas-composer.js +1 -1
  177. package/dist/collection/components/mailbox/nylas-list-folders/nylas-list-folders.js +1 -1
  178. package/dist/collection/components/mailbox/nylas-list-threads/nylas-list-threads.js +1 -1
  179. package/dist/collection/components/mailbox/nylas-mailbox/nylas-mailbox.js +1 -1
  180. package/dist/collection/components/mailbox/nylas-mailbox-toolbar-button/nylas-mailbox-toolbar-button.js +1 -1
  181. package/dist/collection/components/mailbox/nylas-summarize-message-button/nylas-summarize-message-button.js +2 -2
  182. package/dist/collection/components/mailbox/nylas-threads-refresh/nylas-threads-refresh.js +2 -2
  183. package/dist/collection/components/mailbox/nylas-threads-search/nylas-threads-search.js +1 -1
  184. package/dist/collection/components/mailbox/nylas-view-email/nylas-view-email.js +1 -1
  185. package/dist/collection/components/mailbox/nylas-view-thread/nylas-view-thread.js +1 -1
  186. package/dist/collection/components/nylas-if-state/nylas-if-state.js +1 -1
  187. package/dist/collection/components/nylas-login/nylas-login.js +1 -1
  188. package/dist/collection/components/nylas-provider/nylas-provider.js +1 -1
  189. package/dist/collection/components/scheduler/nylas-booking-form/nylas-booking-form.js +2 -2
  190. package/dist/collection/components/scheduler/nylas-booking-form/nylas-booking-form.js.map +1 -1
  191. package/dist/collection/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.js +2 -2
  192. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js +2 -2
  193. package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.js +1 -1
  194. package/dist/collection/components/scheduler/nylas-notification/nylas-notification.js +1 -1
  195. package/dist/collection/components/scheduler/nylas-scheduling/nylas-scheduling.css +1 -0
  196. package/dist/collection/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.css +20 -1
  197. package/dist/collection/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.js +83 -13
  198. package/dist/collection/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.js.map +1 -1
  199. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.css +1 -1
  200. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js +48 -25
  201. package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js.map +1 -1
  202. package/dist/collection/components/scheduler-editor/nylas-customize-booking-settings/nylas-customize-booking-settings.js +5 -5
  203. package/dist/collection/components/scheduler-editor/nylas-customize-booking-settings/nylas-customize-booking-settings.js.map +1 -1
  204. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js +95 -76
  205. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js.map +1 -1
  206. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js +2 -0
  207. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js.map +1 -1
  208. package/dist/collection/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.css +98 -0
  209. package/dist/collection/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.js +219 -0
  210. package/dist/collection/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.js.map +1 -0
  211. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js +26 -3
  212. package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js.map +1 -1
  213. package/dist/collection/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.js +1 -1
  214. package/dist/collection/components/scheduler-editor/nylas-timeslot-interval/nylas-timeslot-interval.js +2 -2
  215. package/dist/collection/stores/scheduler-config-store.js +1 -0
  216. package/dist/collection/stores/scheduler-config-store.js.map +1 -1
  217. package/dist/collection/stores/scheduler-store.js.map +1 -1
  218. package/dist/components/add-circle.js +1 -1
  219. package/dist/components/archive.js +1 -1
  220. package/dist/components/arrow.js +1 -1
  221. package/dist/components/bold.js +1 -1
  222. package/dist/components/button-component2.js +1 -1
  223. package/dist/components/calendar-cancel.js +1 -1
  224. package/dist/components/calendar-check.js +1 -1
  225. package/dist/components/calendar-info.js +1 -1
  226. package/dist/components/calendar-patterns.js +1 -1
  227. package/dist/components/calendar.js +1 -1
  228. package/dist/components/checkbox-component2.js +1 -1
  229. package/dist/components/checkbox-component2.js.map +1 -1
  230. package/dist/components/checkmark-circle.js +1 -1
  231. package/dist/components/chevron.js +1 -1
  232. package/dist/components/clock.js +1 -1
  233. package/dist/components/close.js +1 -1
  234. package/dist/components/document-refresh-icon.js +1 -1
  235. package/dist/components/flow.js +1 -1
  236. package/dist/components/folder.js +1 -1
  237. package/dist/components/forward.js +1 -1
  238. package/dist/components/globe.js +1 -1
  239. package/dist/components/google-logo.js +1 -1
  240. package/dist/components/inbox.js +1 -1
  241. package/dist/components/info.js +1 -1
  242. package/dist/components/input-component2.js +1 -1
  243. package/dist/components/input-dropdown2.js +24 -5
  244. package/dist/components/input-dropdown2.js.map +1 -1
  245. package/dist/components/italic.js +1 -1
  246. package/dist/components/loading.js +1 -1
  247. package/dist/components/location-off.js +1 -1
  248. package/dist/components/location.js +1 -1
  249. package/dist/components/microsoft-logo.js +1 -1
  250. package/dist/components/multi-select-dropdown2.js +2 -2
  251. package/dist/components/nylas-additional-participants.js +1 -127
  252. package/dist/components/nylas-additional-participants.js.map +1 -1
  253. package/dist/components/nylas-additional-participants2.js +168 -0
  254. package/dist/components/nylas-additional-participants2.js.map +1 -0
  255. package/dist/components/nylas-availability-picker2.js +28 -16
  256. package/dist/components/nylas-availability-picker2.js.map +1 -1
  257. package/dist/components/nylas-booking-form2.js +2 -2
  258. package/dist/components/nylas-booking-form2.js.map +1 -1
  259. package/dist/components/nylas-cancel-booking-form2.js +1 -1
  260. package/dist/components/nylas-cancelled-event-card2.js +1 -1
  261. package/dist/components/nylas-composer2.js +1 -1
  262. package/dist/components/nylas-customize-booking-settings2.js +4 -4
  263. package/dist/components/nylas-customize-booking-settings2.js.map +1 -1
  264. package/dist/components/nylas-editor-tabs2.js +197 -150
  265. package/dist/components/nylas-editor-tabs2.js.map +1 -1
  266. package/dist/components/nylas-if-state.js +1 -1
  267. package/dist/components/nylas-list-folders.js +1 -1
  268. package/dist/components/nylas-list-threads.js +1 -1
  269. package/dist/components/nylas-login.js +1 -1
  270. package/dist/components/nylas-logo2.js +1 -1
  271. package/dist/components/nylas-mailbox-toolbar-button.js +1 -1
  272. package/dist/components/nylas-mailbox.js +1 -1
  273. package/dist/components/nylas-notification2.js +1 -1
  274. package/dist/components/nylas-participants-custom-availability.d.ts +11 -0
  275. package/dist/components/nylas-participants-custom-availability.js +8 -0
  276. package/dist/components/nylas-participants-custom-availability.js.map +1 -0
  277. package/dist/components/nylas-participants-custom-availability2.js +218 -0
  278. package/dist/components/nylas-participants-custom-availability2.js.map +1 -0
  279. package/dist/components/nylas-provider.js +1 -1
  280. package/dist/components/nylas-scheduler-editor.js +112 -85
  281. package/dist/components/nylas-scheduler-editor.js.map +1 -1
  282. package/dist/components/nylas-scheduling.js +1 -1
  283. package/dist/components/nylas-scheduling.js.map +1 -1
  284. package/dist/components/nylas-summarize-message-button2.js +2 -2
  285. package/dist/components/nylas-threads-refresh.js +2 -2
  286. package/dist/components/nylas-threads-search.js +1 -1
  287. package/dist/components/nylas-time-window-picker2.js +1 -1
  288. package/dist/components/nylas-timeslot-interval2.js +2 -2
  289. package/dist/components/nylas-view-email2.js +1 -1
  290. package/dist/components/nylas-view-thread.js +1 -1
  291. package/dist/components/people-icon.js +1 -32
  292. package/dist/components/people-icon.js.map +1 -1
  293. package/dist/components/people.js +36 -0
  294. package/dist/components/people.js.map +1 -0
  295. package/dist/components/person.js +1 -1
  296. package/dist/components/play.js +1 -1
  297. package/dist/components/radio-button-group2.js +1 -1
  298. package/dist/components/refresh.js +1 -1
  299. package/dist/components/reply-all.js +1 -1
  300. package/dist/components/reply.js +1 -1
  301. package/dist/components/scheduler-config-store.js +1 -0
  302. package/dist/components/scheduler-config-store.js.map +1 -1
  303. package/dist/components/scheduler-store.js.map +1 -1
  304. package/dist/components/search.js +1 -1
  305. package/dist/components/select-dropdown2.js +2 -2
  306. package/dist/components/sent.js +1 -1
  307. package/dist/components/spam.js +1 -1
  308. package/dist/components/star.js +1 -1
  309. package/dist/components/stop.js +1 -1
  310. package/dist/components/textarea-component.js +1 -1
  311. package/dist/components/time-period-selector2.js +1 -1
  312. package/dist/components/toggle-switch.js +1 -49
  313. package/dist/components/toggle-switch.js.map +1 -1
  314. package/dist/components/toggle-switch2.js +53 -0
  315. package/dist/components/toggle-switch2.js.map +1 -0
  316. package/dist/components/toolitp-component.js +1 -1
  317. package/dist/components/translate.js +1 -1
  318. package/dist/components/trash.js +1 -1
  319. package/dist/components/underline.js +1 -1
  320. package/dist/components/warning.js +1 -1
  321. package/dist/esm/add-circle-icon.entry.js +2 -2
  322. package/dist/esm/add-circle-icon_2.entry.js +11 -18
  323. package/dist/esm/add-circle-icon_2.entry.js.map +1 -1
  324. package/dist/esm/archive-icon.entry.js +2 -2
  325. package/dist/esm/archive-icon_7.entry.js +7 -7
  326. package/dist/esm/arrow-icon.entry.js +2 -2
  327. package/dist/esm/bold-icon.entry.js +2 -2
  328. package/dist/esm/bold-icon_3.entry.js +3 -3
  329. package/dist/esm/button-component.entry.js +2 -2
  330. package/dist/esm/calendar-cancel-icon.entry.js +2 -2
  331. package/dist/esm/calendar-check-icon.entry.js +2 -2
  332. package/dist/esm/calendar-check-icon_2.entry.js +2 -2
  333. package/dist/esm/calendar-icon.entry.js +2 -2
  334. package/dist/esm/calendar-info-icon.entry.js +2 -2
  335. package/dist/esm/{calendar-info-icon_25.entry.js → calendar-info-icon_28.entry.js} +417 -398
  336. package/dist/esm/calendar-info-icon_28.entry.js.map +1 -0
  337. package/dist/esm/calendar-patterns-icon.entry.js +2 -2
  338. package/dist/esm/checkbox-component.entry.js +2 -2
  339. package/dist/esm/checkbox-component.entry.js.map +1 -1
  340. package/dist/esm/checkmark-circle-icon.entry.js +2 -2
  341. package/dist/esm/chevron-icon.entry.js +2 -2
  342. package/dist/esm/chevron-icon_3.entry.js +4 -4
  343. package/dist/esm/clock-icon.entry.js +2 -2
  344. package/dist/esm/clock-icon_2.entry.js +2 -2
  345. package/dist/esm/close-icon.entry.js +2 -2
  346. package/dist/esm/document-refresh-icon.entry.js +2 -2
  347. package/dist/esm/flow-icon.entry.js +2 -2
  348. package/dist/esm/folder-icon.entry.js +2 -2
  349. package/dist/esm/forward-icon.entry.js +2 -2
  350. package/dist/esm/forward-icon_6.entry.js +7 -7
  351. package/dist/esm/globe-icon.entry.js +2 -2
  352. package/dist/esm/google-logo-icon.entry.js +2 -2
  353. package/dist/esm/google-logo-icon_4.entry.js +101 -78
  354. package/dist/esm/google-logo-icon_4.entry.js.map +1 -1
  355. package/dist/esm/inbox-icon.entry.js +2 -2
  356. package/dist/esm/{index-11d12497.js → index-2c7e4f4b.js} +2 -2
  357. package/dist/esm/{index-11d12497.js.map → index-2c7e4f4b.js.map} +1 -1
  358. package/dist/esm/{index-8362ce5c.js → index-582cfc93.js} +24 -20
  359. package/dist/esm/{index-8362ce5c.js.map → index-582cfc93.js.map} +1 -1
  360. package/dist/esm/index-7cb0dd3d.js +12 -20
  361. package/dist/{nylas-web-elements/index.es-896126fc.js → esm/index.es-c5a8a1ac.js} +2 -2
  362. package/dist/esm/{index.es-896126fc.js.map → index.es-c5a8a1ac.js.map} +1 -1
  363. package/dist/esm/index.js +4 -4
  364. package/dist/esm/info-icon.entry.js +2 -2
  365. package/dist/esm/info-icon_2.entry.js +2 -2
  366. package/dist/esm/input-component.entry.js +2 -2
  367. package/dist/esm/input-dropdown.entry.js +22 -5
  368. package/dist/esm/input-dropdown.entry.js.map +1 -1
  369. package/dist/esm/input-dropdown_2.entry.js +22 -5
  370. package/dist/esm/input-dropdown_2.entry.js.map +1 -1
  371. package/dist/esm/italic-icon.entry.js +2 -2
  372. package/dist/esm/loader.js +3 -3
  373. package/dist/esm/loading-icon.entry.js +2 -2
  374. package/dist/esm/location-icon.entry.js +2 -2
  375. package/dist/esm/location-off-icon.entry.js +2 -2
  376. package/dist/esm/{mailbox-store-11fa8387.js → mailbox-store-94133e15.js} +4 -4
  377. package/dist/esm/{mailbox-store-11fa8387.js.map → mailbox-store-94133e15.js.map} +1 -1
  378. package/dist/esm/microsoft-logo-icon.entry.js +2 -2
  379. package/dist/esm/multi-select-dropdown.entry.js +4 -4
  380. package/dist/esm/nylas-additional-participants.entry.js +41 -17
  381. package/dist/esm/nylas-additional-participants.entry.js.map +1 -1
  382. package/dist/esm/{nylas-api-request-27e81d64.js → nylas-api-request-5ac7887c.js} +2 -2
  383. package/dist/esm/{nylas-api-request-27e81d64.js.map → nylas-api-request-5ac7887c.js.map} +1 -1
  384. package/dist/esm/nylas-availability-picker.entry.js +30 -19
  385. package/dist/esm/nylas-availability-picker.entry.js.map +1 -1
  386. package/dist/esm/nylas-booked-event-card.entry.js +3 -3
  387. package/dist/esm/nylas-booked-event-card_10.entry.js +6 -6
  388. package/dist/esm/nylas-booked-event-card_10.entry.js.map +1 -1
  389. package/dist/esm/nylas-booking-calendar-picker.entry.js +3 -3
  390. package/dist/esm/nylas-booking-form.entry.js +5 -5
  391. package/dist/esm/nylas-booking-form.entry.js.map +1 -1
  392. package/dist/esm/nylas-buffer-time.entry.js +3 -3
  393. package/dist/esm/nylas-calendar-picker.entry.js +3 -3
  394. package/dist/esm/nylas-cancel-booking-form.entry.js +4 -4
  395. package/dist/esm/nylas-cancellation-policy.entry.js +3 -3
  396. package/dist/esm/nylas-cancelled-event-card.entry.js +4 -4
  397. package/dist/esm/nylas-composer.entry.js +3 -3
  398. package/dist/esm/nylas-custom-booking-flow.entry.js +3 -3
  399. package/dist/esm/nylas-customize-booking-settings.entry.js +7 -7
  400. package/dist/esm/nylas-customize-booking-settings.entry.js.map +1 -1
  401. package/dist/esm/nylas-date-picker.entry.js +3 -3
  402. package/dist/esm/nylas-editor-tabs.entry.js +102 -79
  403. package/dist/esm/nylas-editor-tabs.entry.js.map +1 -1
  404. package/dist/esm/nylas-event-description.entry.js +3 -3
  405. package/dist/esm/nylas-event-duration.entry.js +3 -3
  406. package/dist/esm/nylas-event-info.entry.js +3 -3
  407. package/dist/esm/nylas-event-limits.entry.js +3 -3
  408. package/dist/esm/nylas-event-location.entry.js +3 -3
  409. package/dist/esm/nylas-event-title.entry.js +3 -3
  410. package/dist/esm/nylas-form-card.entry.js +3 -3
  411. package/dist/esm/nylas-if-state.entry.js +4 -4
  412. package/dist/esm/nylas-limit-future-bookings.entry.js +3 -3
  413. package/dist/esm/nylas-list-configurations.entry.js +3 -3
  414. package/dist/esm/nylas-list-folders.entry.js +4 -4
  415. package/dist/esm/nylas-list-threads.entry.js +4 -4
  416. package/dist/esm/nylas-locale-switch.entry.js +3 -3
  417. package/dist/esm/nylas-login.entry.js +4 -4
  418. package/dist/esm/nylas-logo.entry.js +2 -2
  419. package/dist/esm/nylas-mailbox-pagination.entry.js +3 -3
  420. package/dist/esm/nylas-mailbox-toolbar-button.entry.js +4 -4
  421. package/dist/esm/nylas-mailbox.entry.js +6 -6
  422. package/dist/esm/nylas-min-booking-notice.entry.js +3 -3
  423. package/dist/esm/nylas-min-cancellation-notice.entry.js +3 -3
  424. package/dist/esm/nylas-notification.entry.js +3 -3
  425. package/dist/esm/nylas-participants-custom-availability.entry.js +138 -0
  426. package/dist/esm/nylas-participants-custom-availability.entry.js.map +1 -0
  427. package/dist/esm/nylas-provider.entry.js +8 -8
  428. package/dist/esm/nylas-scheduler-editor.entry.js +9 -7
  429. package/dist/esm/nylas-scheduler-editor.entry.js.map +1 -1
  430. package/dist/esm/nylas-scheduling.entry.js +6 -6
  431. package/dist/esm/nylas-scheduling.entry.js.map +1 -1
  432. package/dist/esm/nylas-selected-event-card.entry.js +3 -3
  433. package/dist/esm/nylas-summarize-message-button.entry.js +5 -5
  434. package/dist/esm/nylas-threads-refresh.entry.js +5 -5
  435. package/dist/esm/nylas-threads-search.entry.js +4 -4
  436. package/dist/esm/nylas-time-window-picker.entry.js +3 -3
  437. package/dist/esm/nylas-timeslot-interval.entry.js +5 -5
  438. package/dist/esm/nylas-timeslot-picker.entry.js +3 -3
  439. package/dist/esm/nylas-view-email.entry.js +3 -3
  440. package/dist/esm/nylas-view-thread.entry.js +4 -4
  441. package/dist/esm/nylas-web-elements.js +3 -3
  442. package/dist/esm/people-icon.entry.js +2 -2
  443. package/dist/esm/person-icon.entry.js +2 -2
  444. package/dist/esm/play-icon.entry.js +2 -2
  445. package/dist/esm/play-icon_2.entry.js +2 -2
  446. package/dist/esm/radio-button-group.entry.js +2 -2
  447. package/dist/esm/refresh-icon.entry.js +2 -2
  448. package/dist/esm/{register-component-8e4e394f.js → register-component-aef40ec4.js} +3 -3
  449. package/dist/esm/{register-component-8e4e394f.js.map → register-component-aef40ec4.js.map} +1 -1
  450. package/dist/esm/reply-all-icon.entry.js +2 -2
  451. package/dist/esm/reply-icon.entry.js +2 -2
  452. package/dist/esm/{scheduler-config-store-ec3b6190.js → scheduler-config-store-4a50a03d.js} +2 -1
  453. package/dist/esm/scheduler-config-store-4a50a03d.js.map +1 -0
  454. package/dist/{nylas-web-elements/scheduler-config-store-8ccc8dc7.js → esm/scheduler-config-store-f20845ad.js} +3 -2
  455. package/dist/esm/scheduler-config-store-f20845ad.js.map +1 -0
  456. package/dist/{nylas-web-elements/scheduler-store-c3af2560.js → esm/scheduler-store-6c4866d6.js} +3 -3
  457. package/dist/esm/{scheduler-store-c3af2560.js.map → scheduler-store-6c4866d6.js.map} +1 -1
  458. package/dist/esm/scheduler-store-f02ce045.js.map +1 -1
  459. package/dist/esm/search-icon.entry.js +2 -2
  460. package/dist/esm/select-dropdown.entry.js +3 -3
  461. package/dist/esm/sent-icon.entry.js +2 -2
  462. package/dist/esm/spam-icon.entry.js +2 -2
  463. package/dist/esm/star-icon.entry.js +2 -2
  464. package/dist/esm/stop-icon.entry.js +2 -2
  465. package/dist/esm/textarea-component.entry.js +2 -2
  466. package/dist/esm/time-period-selector.entry.js +3 -3
  467. package/dist/esm/toggle-switch.entry.js +2 -2
  468. package/dist/esm/toggle-switch.entry.js.map +1 -1
  469. package/dist/esm/tooltip-component.entry.js +2 -2
  470. package/dist/esm/translate-icon.entry.js +2 -2
  471. package/dist/esm/trash-icon.entry.js +2 -2
  472. package/dist/esm/underline-icon.entry.js +2 -2
  473. package/dist/esm/{utils-49a1d17b.js → utils-04c10cbd.js} +2 -2
  474. package/dist/esm/{utils-49a1d17b.js.map → utils-04c10cbd.js.map} +1 -1
  475. package/dist/esm/warning-icon.entry.js +2 -2
  476. package/dist/nylas-web-elements/add-circle-icon.entry.js +2 -2
  477. package/dist/nylas-web-elements/archive-icon.entry.js +2 -2
  478. package/dist/nylas-web-elements/arrow-icon.entry.js +2 -2
  479. package/dist/nylas-web-elements/bold-icon.entry.js +2 -2
  480. package/dist/nylas-web-elements/button-component.entry.js +2 -2
  481. package/dist/nylas-web-elements/calendar-cancel-icon.entry.js +2 -2
  482. package/dist/nylas-web-elements/calendar-check-icon.entry.js +2 -2
  483. package/dist/nylas-web-elements/calendar-icon.entry.js +2 -2
  484. package/dist/nylas-web-elements/calendar-info-icon.entry.js +2 -2
  485. package/dist/nylas-web-elements/calendar-patterns-icon.entry.js +2 -2
  486. package/dist/nylas-web-elements/checkbox-component.entry.js +2 -2
  487. package/dist/nylas-web-elements/checkbox-component.entry.js.map +1 -1
  488. package/dist/nylas-web-elements/checkmark-circle-icon.entry.js +2 -2
  489. package/dist/nylas-web-elements/chevron-icon.entry.js +2 -2
  490. package/dist/nylas-web-elements/clock-icon.entry.js +2 -2
  491. package/dist/nylas-web-elements/close-icon.entry.js +2 -2
  492. package/dist/nylas-web-elements/document-refresh-icon.entry.js +2 -2
  493. package/dist/nylas-web-elements/flow-icon.entry.js +2 -2
  494. package/dist/nylas-web-elements/folder-icon.entry.js +2 -2
  495. package/dist/nylas-web-elements/forward-icon.entry.js +2 -2
  496. package/dist/nylas-web-elements/globe-icon.entry.js +2 -2
  497. package/dist/nylas-web-elements/google-logo-icon.entry.js +2 -2
  498. package/dist/nylas-web-elements/inbox-icon.entry.js +2 -2
  499. package/dist/nylas-web-elements/{index-11d12497.js → index-2c7e4f4b.js} +2 -2
  500. package/dist/nylas-web-elements/{index-11d12497.js.map → index-2c7e4f4b.js.map} +1 -1
  501. package/dist/nylas-web-elements/{index-8362ce5c.js → index-582cfc93.js} +2 -2
  502. package/dist/nylas-web-elements/{index-8362ce5c.js.map → index-582cfc93.js.map} +1 -1
  503. package/dist/{esm/index.es-896126fc.js → nylas-web-elements/index.es-c5a8a1ac.js} +2 -2
  504. package/dist/nylas-web-elements/{index.es-896126fc.js.map → index.es-c5a8a1ac.js.map} +1 -1
  505. package/dist/nylas-web-elements/index.esm.js +4 -4
  506. package/dist/nylas-web-elements/info-icon.entry.js +2 -2
  507. package/dist/nylas-web-elements/input-component.entry.js +2 -2
  508. package/dist/nylas-web-elements/input-dropdown.entry.js +22 -5
  509. package/dist/nylas-web-elements/input-dropdown.entry.js.map +1 -1
  510. package/dist/nylas-web-elements/italic-icon.entry.js +2 -2
  511. package/dist/nylas-web-elements/loading-icon.entry.js +2 -2
  512. package/dist/nylas-web-elements/location-icon.entry.js +2 -2
  513. package/dist/nylas-web-elements/location-off-icon.entry.js +2 -2
  514. package/dist/nylas-web-elements/{mailbox-store-11fa8387.js → mailbox-store-94133e15.js} +4 -4
  515. package/dist/nylas-web-elements/{mailbox-store-11fa8387.js.map → mailbox-store-94133e15.js.map} +1 -1
  516. package/dist/nylas-web-elements/microsoft-logo-icon.entry.js +2 -2
  517. package/dist/nylas-web-elements/multi-select-dropdown.entry.js +4 -4
  518. package/dist/nylas-web-elements/nylas-additional-participants.entry.js +41 -17
  519. package/dist/nylas-web-elements/nylas-additional-participants.entry.js.map +1 -1
  520. package/dist/nylas-web-elements/{nylas-api-request-27e81d64.js → nylas-api-request-5ac7887c.js} +2 -2
  521. package/dist/nylas-web-elements/{nylas-api-request-27e81d64.js.map → nylas-api-request-5ac7887c.js.map} +1 -1
  522. package/dist/nylas-web-elements/nylas-availability-picker.entry.js +30 -19
  523. package/dist/nylas-web-elements/nylas-availability-picker.entry.js.map +1 -1
  524. package/dist/nylas-web-elements/nylas-booked-event-card.entry.js +3 -3
  525. package/dist/nylas-web-elements/nylas-booking-calendar-picker.entry.js +3 -3
  526. package/dist/nylas-web-elements/nylas-booking-form.entry.js +5 -5
  527. package/dist/nylas-web-elements/nylas-booking-form.entry.js.map +1 -1
  528. package/dist/nylas-web-elements/nylas-buffer-time.entry.js +3 -3
  529. package/dist/nylas-web-elements/nylas-calendar-picker.entry.js +3 -3
  530. package/dist/nylas-web-elements/nylas-cancel-booking-form.entry.js +4 -4
  531. package/dist/nylas-web-elements/nylas-cancellation-policy.entry.js +3 -3
  532. package/dist/nylas-web-elements/nylas-cancelled-event-card.entry.js +4 -4
  533. package/dist/nylas-web-elements/nylas-composer.entry.js +3 -3
  534. package/dist/nylas-web-elements/nylas-custom-booking-flow.entry.js +3 -3
  535. package/dist/nylas-web-elements/nylas-customize-booking-settings.entry.js +7 -7
  536. package/dist/nylas-web-elements/nylas-customize-booking-settings.entry.js.map +1 -1
  537. package/dist/nylas-web-elements/nylas-date-picker.entry.js +3 -3
  538. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js +102 -79
  539. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js.map +1 -1
  540. package/dist/nylas-web-elements/nylas-event-description.entry.js +3 -3
  541. package/dist/nylas-web-elements/nylas-event-duration.entry.js +3 -3
  542. package/dist/nylas-web-elements/nylas-event-info.entry.js +3 -3
  543. package/dist/nylas-web-elements/nylas-event-limits.entry.js +3 -3
  544. package/dist/nylas-web-elements/nylas-event-location.entry.js +3 -3
  545. package/dist/nylas-web-elements/nylas-event-title.entry.js +3 -3
  546. package/dist/nylas-web-elements/nylas-form-card.entry.js +3 -3
  547. package/dist/nylas-web-elements/nylas-if-state.entry.js +4 -4
  548. package/dist/nylas-web-elements/nylas-limit-future-bookings.entry.js +3 -3
  549. package/dist/nylas-web-elements/nylas-list-configurations.entry.js +3 -3
  550. package/dist/nylas-web-elements/nylas-list-folders.entry.js +4 -4
  551. package/dist/nylas-web-elements/nylas-list-threads.entry.js +4 -4
  552. package/dist/nylas-web-elements/nylas-locale-switch.entry.js +3 -3
  553. package/dist/nylas-web-elements/nylas-login.entry.js +4 -4
  554. package/dist/nylas-web-elements/nylas-logo.entry.js +2 -2
  555. package/dist/nylas-web-elements/nylas-mailbox-pagination.entry.js +3 -3
  556. package/dist/nylas-web-elements/nylas-mailbox-toolbar-button.entry.js +4 -4
  557. package/dist/nylas-web-elements/nylas-mailbox.entry.js +6 -6
  558. package/dist/nylas-web-elements/nylas-min-booking-notice.entry.js +3 -3
  559. package/dist/nylas-web-elements/nylas-min-cancellation-notice.entry.js +3 -3
  560. package/dist/nylas-web-elements/nylas-notification.entry.js +3 -3
  561. package/dist/nylas-web-elements/nylas-participants-custom-availability.entry.js +138 -0
  562. package/dist/nylas-web-elements/nylas-participants-custom-availability.entry.js.map +1 -0
  563. package/dist/nylas-web-elements/nylas-provider.entry.js +8 -8
  564. package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js +9 -7
  565. package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js.map +1 -1
  566. package/dist/nylas-web-elements/nylas-scheduling.entry.js +6 -6
  567. package/dist/nylas-web-elements/nylas-scheduling.entry.js.map +1 -1
  568. package/dist/nylas-web-elements/nylas-selected-event-card.entry.js +3 -3
  569. package/dist/nylas-web-elements/nylas-summarize-message-button.entry.js +5 -5
  570. package/dist/nylas-web-elements/nylas-threads-refresh.entry.js +5 -5
  571. package/dist/nylas-web-elements/nylas-threads-search.entry.js +4 -4
  572. package/dist/nylas-web-elements/nylas-time-window-picker.entry.js +3 -3
  573. package/dist/nylas-web-elements/nylas-timeslot-interval.entry.js +5 -5
  574. package/dist/nylas-web-elements/nylas-timeslot-picker.entry.js +3 -3
  575. package/dist/nylas-web-elements/nylas-view-email.entry.js +3 -3
  576. package/dist/nylas-web-elements/nylas-view-thread.entry.js +4 -4
  577. package/dist/nylas-web-elements/nylas-web-elements.esm.js +3 -3
  578. package/dist/nylas-web-elements/{p-e4a7746d.entry.js → p-012cb022.entry.js} +2 -2
  579. package/dist/nylas-web-elements/{p-b9064de4.entry.js → p-017f2538.entry.js} +2 -2
  580. package/dist/nylas-web-elements/p-05833164.entry.js +2 -0
  581. package/dist/nylas-web-elements/p-05833164.entry.js.map +1 -0
  582. package/dist/nylas-web-elements/p-086746ee.entry.js +2 -0
  583. package/dist/nylas-web-elements/p-086746ee.entry.js.map +1 -0
  584. package/dist/nylas-web-elements/p-0919bbbe.entry.js +2 -0
  585. package/dist/nylas-web-elements/{p-da21471c.entry.js → p-13eb1a05.entry.js} +2 -2
  586. package/dist/nylas-web-elements/{p-deafc6bc.entry.js → p-1569f74f.entry.js} +2 -2
  587. package/dist/nylas-web-elements/{p-6e888067.entry.js → p-23c143f6.entry.js} +2 -2
  588. package/dist/nylas-web-elements/p-2743621d.entry.js +2 -0
  589. package/dist/nylas-web-elements/p-2743621d.entry.js.map +1 -0
  590. package/dist/nylas-web-elements/p-29938263.js +2 -0
  591. package/dist/nylas-web-elements/p-29938263.js.map +1 -0
  592. package/dist/nylas-web-elements/{p-afd34a25.entry.js → p-2f656fb3.entry.js} +3 -3
  593. package/dist/nylas-web-elements/p-2f656fb3.entry.js.map +1 -0
  594. package/dist/nylas-web-elements/{p-a7dd4c24.entry.js → p-30144ca0.entry.js} +2 -2
  595. package/dist/nylas-web-elements/{p-11f94952.entry.js → p-336631dd.entry.js} +2 -2
  596. package/dist/nylas-web-elements/p-43bfaa93.entry.js +2 -0
  597. package/dist/nylas-web-elements/{p-120d2c72.entry.js → p-4e48846a.entry.js} +2 -2
  598. package/dist/nylas-web-elements/{p-4b84ab3f.entry.js → p-5fd52ecd.entry.js} +2 -2
  599. package/dist/nylas-web-elements/p-62cf46ee.entry.js +2 -0
  600. package/dist/nylas-web-elements/{p-32682655.entry.js → p-672f1951.entry.js} +2 -2
  601. package/dist/nylas-web-elements/p-823c8aa2.js.map +1 -1
  602. package/dist/nylas-web-elements/{p-ace74b9d.entry.js → p-84c53084.entry.js} +2 -2
  603. package/dist/nylas-web-elements/p-8c1a5e57.entry.js +2 -0
  604. package/dist/nylas-web-elements/p-8c1a5e57.entry.js.map +1 -0
  605. package/dist/nylas-web-elements/p-8eddadb3.entry.js +2 -0
  606. package/dist/nylas-web-elements/{p-0dbc0c01.entry.js.map → p-8eddadb3.entry.js.map} +1 -1
  607. package/dist/nylas-web-elements/p-938d4ec9.entry.js +2 -0
  608. package/dist/nylas-web-elements/{p-fbac3865.entry.js.map → p-938d4ec9.entry.js.map} +1 -1
  609. package/dist/nylas-web-elements/{p-6891ad5d.entry.js → p-a118f20c.entry.js} +2 -2
  610. package/dist/nylas-web-elements/{p-24082558.entry.js → p-a5dbdc8e.entry.js} +2 -2
  611. package/dist/nylas-web-elements/{p-4fdc6122.entry.js → p-a7640232.entry.js} +2 -2
  612. package/dist/nylas-web-elements/{p-27db7b0b.entry.js → p-ad93d3bd.entry.js} +3 -3
  613. package/dist/nylas-web-elements/{p-bfd3b5f0.entry.js → p-b3d46e08.entry.js} +2 -2
  614. package/dist/nylas-web-elements/{p-4b1466b3.entry.js → p-b443f769.entry.js} +2 -2
  615. package/dist/nylas-web-elements/{p-c8c737ed.entry.js → p-c1df61d0.entry.js} +2 -2
  616. package/dist/nylas-web-elements/{p-395f49eb.entry.js → p-cc67e6a8.entry.js} +2 -2
  617. package/dist/nylas-web-elements/p-d1d984c5.entry.js +2 -0
  618. package/dist/nylas-web-elements/p-d1d984c5.entry.js.map +1 -0
  619. package/dist/nylas-web-elements/{p-98a2f588.entry.js → p-d9a145a5.entry.js} +2 -2
  620. package/dist/nylas-web-elements/p-dcb497d4.entry.js +2 -0
  621. package/dist/nylas-web-elements/p-dcb497d4.entry.js.map +1 -0
  622. package/dist/nylas-web-elements/{p-ec26560f.entry.js → p-e9c1e983.entry.js} +2 -2
  623. package/dist/nylas-web-elements/p-e9f7d494.entry.js +2 -0
  624. package/dist/nylas-web-elements/{p-53da3000.entry.js.map → p-e9f7d494.entry.js.map} +1 -1
  625. package/dist/nylas-web-elements/p-f1e9ed6b.entry.js +2 -0
  626. package/dist/nylas-web-elements/p-f1e9ed6b.entry.js.map +1 -0
  627. package/dist/nylas-web-elements/p-f8e0164c.entry.js +2 -0
  628. package/dist/nylas-web-elements/p-f8e0164c.entry.js.map +1 -0
  629. package/dist/nylas-web-elements/{p-84529d9b.entry.js → p-fbfa3a7d.entry.js} +2 -2
  630. package/dist/nylas-web-elements/{p-d5146511.entry.js → p-fd8e29e6.entry.js} +2 -2
  631. package/dist/nylas-web-elements/people-icon.entry.js +2 -2
  632. package/dist/nylas-web-elements/person-icon.entry.js +2 -2
  633. package/dist/nylas-web-elements/play-icon.entry.js +2 -2
  634. package/dist/nylas-web-elements/radio-button-group.entry.js +2 -2
  635. package/dist/nylas-web-elements/refresh-icon.entry.js +2 -2
  636. package/dist/nylas-web-elements/{register-component-8e4e394f.js → register-component-aef40ec4.js} +3 -3
  637. package/dist/nylas-web-elements/{register-component-8e4e394f.js.map → register-component-aef40ec4.js.map} +1 -1
  638. package/dist/nylas-web-elements/reply-all-icon.entry.js +2 -2
  639. package/dist/nylas-web-elements/reply-icon.entry.js +2 -2
  640. package/dist/{esm/scheduler-config-store-8ccc8dc7.js → nylas-web-elements/scheduler-config-store-f20845ad.js} +3 -2
  641. package/dist/nylas-web-elements/scheduler-config-store-f20845ad.js.map +1 -0
  642. package/dist/{esm/scheduler-store-c3af2560.js → nylas-web-elements/scheduler-store-6c4866d6.js} +3 -3
  643. package/dist/nylas-web-elements/{scheduler-store-c3af2560.js.map → scheduler-store-6c4866d6.js.map} +1 -1
  644. package/dist/nylas-web-elements/search-icon.entry.js +2 -2
  645. package/dist/nylas-web-elements/select-dropdown.entry.js +3 -3
  646. package/dist/nylas-web-elements/sent-icon.entry.js +2 -2
  647. package/dist/nylas-web-elements/spam-icon.entry.js +2 -2
  648. package/dist/nylas-web-elements/star-icon.entry.js +2 -2
  649. package/dist/nylas-web-elements/stop-icon.entry.js +2 -2
  650. package/dist/nylas-web-elements/textarea-component.entry.js +2 -2
  651. package/dist/nylas-web-elements/time-period-selector.entry.js +3 -3
  652. package/dist/nylas-web-elements/toggle-switch.entry.js +2 -2
  653. package/dist/nylas-web-elements/toggle-switch.entry.js.map +1 -1
  654. package/dist/nylas-web-elements/tooltip-component.entry.js +2 -2
  655. package/dist/nylas-web-elements/translate-icon.entry.js +2 -2
  656. package/dist/nylas-web-elements/trash-icon.entry.js +2 -2
  657. package/dist/nylas-web-elements/underline-icon.entry.js +2 -2
  658. package/dist/nylas-web-elements/{utils-49a1d17b.js → utils-04c10cbd.js} +2 -2
  659. package/dist/nylas-web-elements/{utils-49a1d17b.js.map → utils-04c10cbd.js.map} +1 -1
  660. package/dist/nylas-web-elements/warning-icon.entry.js +2 -2
  661. package/dist/types/components/design-system/input-dropdown/input-dropdown.d.ts +3 -0
  662. package/dist/types/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.d.ts +16 -1
  663. package/dist/types/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.d.ts +2 -4
  664. package/dist/types/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.d.ts +12 -5
  665. package/dist/types/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.d.ts +36 -0
  666. package/dist/types/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.d.ts +2 -0
  667. package/dist/types/components.d.ts +134 -11
  668. package/dist/types/stores/scheduler-config-store.d.ts +2 -1
  669. package/dist/types/stores/scheduler-store.d.ts +1 -1
  670. package/package.json +2 -2
  671. package/dist/cjs/calendar-info-icon_25.cjs.entry.js.map +0 -1
  672. package/dist/cjs/scheduler-config-store-918c20d5.js.map +0 -1
  673. package/dist/cjs/scheduler-config-store-a5b7c08b.js.map +0 -1
  674. package/dist/esm/calendar-info-icon_25.entry.js.map +0 -1
  675. package/dist/esm/scheduler-config-store-8ccc8dc7.js.map +0 -1
  676. package/dist/esm/scheduler-config-store-ec3b6190.js.map +0 -1
  677. package/dist/nylas-web-elements/p-0dbc0c01.entry.js +0 -2
  678. package/dist/nylas-web-elements/p-155942d0.entry.js +0 -2
  679. package/dist/nylas-web-elements/p-155942d0.entry.js.map +0 -1
  680. package/dist/nylas-web-elements/p-237d2b4e.entry.js +0 -2
  681. package/dist/nylas-web-elements/p-237d2b4e.entry.js.map +0 -1
  682. package/dist/nylas-web-elements/p-2e813dd0.entry.js +0 -2
  683. package/dist/nylas-web-elements/p-2e813dd0.entry.js.map +0 -1
  684. package/dist/nylas-web-elements/p-35b66ab6.entry.js +0 -2
  685. package/dist/nylas-web-elements/p-35b66ab6.entry.js.map +0 -1
  686. package/dist/nylas-web-elements/p-3fd63454.entry.js +0 -2
  687. package/dist/nylas-web-elements/p-3fd63454.entry.js.map +0 -1
  688. package/dist/nylas-web-elements/p-53da3000.entry.js +0 -2
  689. package/dist/nylas-web-elements/p-6239608c.entry.js +0 -2
  690. package/dist/nylas-web-elements/p-6239608c.entry.js.map +0 -1
  691. package/dist/nylas-web-elements/p-7fac2bba.entry.js +0 -2
  692. package/dist/nylas-web-elements/p-86895fc4.entry.js +0 -2
  693. package/dist/nylas-web-elements/p-86895fc4.entry.js.map +0 -1
  694. package/dist/nylas-web-elements/p-afd34a25.entry.js.map +0 -1
  695. package/dist/nylas-web-elements/p-b406bf70.entry.js +0 -2
  696. package/dist/nylas-web-elements/p-b406bf70.entry.js.map +0 -1
  697. package/dist/nylas-web-elements/p-c170c56d.entry.js +0 -2
  698. package/dist/nylas-web-elements/p-de63bc35.entry.js +0 -2
  699. package/dist/nylas-web-elements/p-ee91a2a0.js +0 -2
  700. package/dist/nylas-web-elements/p-ee91a2a0.js.map +0 -1
  701. package/dist/nylas-web-elements/p-f1bd124d.entry.js +0 -2
  702. package/dist/nylas-web-elements/p-f1bd124d.entry.js.map +0 -1
  703. package/dist/nylas-web-elements/p-fac4d89e.entry.js +0 -2
  704. package/dist/nylas-web-elements/p-fac4d89e.entry.js.map +0 -1
  705. package/dist/nylas-web-elements/p-fbac3865.entry.js +0 -2
  706. package/dist/nylas-web-elements/scheduler-config-store-8ccc8dc7.js.map +0 -1
  707. /package/dist/nylas-web-elements/{p-e4a7746d.entry.js.map → p-012cb022.entry.js.map} +0 -0
  708. /package/dist/nylas-web-elements/{p-b9064de4.entry.js.map → p-017f2538.entry.js.map} +0 -0
  709. /package/dist/nylas-web-elements/{p-de63bc35.entry.js.map → p-0919bbbe.entry.js.map} +0 -0
  710. /package/dist/nylas-web-elements/{p-da21471c.entry.js.map → p-13eb1a05.entry.js.map} +0 -0
  711. /package/dist/nylas-web-elements/{p-deafc6bc.entry.js.map → p-1569f74f.entry.js.map} +0 -0
  712. /package/dist/nylas-web-elements/{p-6e888067.entry.js.map → p-23c143f6.entry.js.map} +0 -0
  713. /package/dist/nylas-web-elements/{p-a7dd4c24.entry.js.map → p-30144ca0.entry.js.map} +0 -0
  714. /package/dist/nylas-web-elements/{p-11f94952.entry.js.map → p-336631dd.entry.js.map} +0 -0
  715. /package/dist/nylas-web-elements/{p-7fac2bba.entry.js.map → p-43bfaa93.entry.js.map} +0 -0
  716. /package/dist/nylas-web-elements/{p-120d2c72.entry.js.map → p-4e48846a.entry.js.map} +0 -0
  717. /package/dist/nylas-web-elements/{p-4b84ab3f.entry.js.map → p-5fd52ecd.entry.js.map} +0 -0
  718. /package/dist/nylas-web-elements/{p-c170c56d.entry.js.map → p-62cf46ee.entry.js.map} +0 -0
  719. /package/dist/nylas-web-elements/{p-32682655.entry.js.map → p-672f1951.entry.js.map} +0 -0
  720. /package/dist/nylas-web-elements/{p-ace74b9d.entry.js.map → p-84c53084.entry.js.map} +0 -0
  721. /package/dist/nylas-web-elements/{p-6891ad5d.entry.js.map → p-a118f20c.entry.js.map} +0 -0
  722. /package/dist/nylas-web-elements/{p-24082558.entry.js.map → p-a5dbdc8e.entry.js.map} +0 -0
  723. /package/dist/nylas-web-elements/{p-4fdc6122.entry.js.map → p-a7640232.entry.js.map} +0 -0
  724. /package/dist/nylas-web-elements/{p-27db7b0b.entry.js.map → p-ad93d3bd.entry.js.map} +0 -0
  725. /package/dist/nylas-web-elements/{p-bfd3b5f0.entry.js.map → p-b3d46e08.entry.js.map} +0 -0
  726. /package/dist/nylas-web-elements/{p-4b1466b3.entry.js.map → p-b443f769.entry.js.map} +0 -0
  727. /package/dist/nylas-web-elements/{p-c8c737ed.entry.js.map → p-c1df61d0.entry.js.map} +0 -0
  728. /package/dist/nylas-web-elements/{p-395f49eb.entry.js.map → p-cc67e6a8.entry.js.map} +0 -0
  729. /package/dist/nylas-web-elements/{p-98a2f588.entry.js.map → p-d9a145a5.entry.js.map} +0 -0
  730. /package/dist/nylas-web-elements/{p-ec26560f.entry.js.map → p-e9c1e983.entry.js.map} +0 -0
  731. /package/dist/nylas-web-elements/{p-84529d9b.entry.js.map → p-fbfa3a7d.entry.js.map} +0 -0
  732. /package/dist/nylas-web-elements/{p-d5146511.entry.js.map → p-fd8e29e6.entry.js.map} +0 -0
@@ -1,5 +1,5 @@
1
- import { r as registerInstance, i as createEvent, h, a as Host, e as getElement } from './index-8362ce5c.js';
2
- import { a as debug } from './utils-49a1d17b.js';
1
+ import { r as registerInstance, a as createEvent, h, e as Host, i as getElement } from './index-582cfc93.js';
2
+ import { a as debug } from './utils-04c10cbd.js';
3
3
  import './buffer-es6-5510d761.js';
4
4
  import './_commonjsHelpers-6cbf8316.js';
5
5
 
@@ -125,9 +125,9 @@ const MultiSelectDropdown = class {
125
125
  }, class: { selected: !!option.selected } }, h("label", { htmlFor: option.value }, h("input", { "aria-hidden": "true", id: option.value, type: "checkbox", checked: option.selected }), h("span", null, option.label))));
126
126
  }
127
127
  render() {
128
- return (h(Host, { key: '89819bc74cdae708fbdd60dc3f4160c0047d1414' }, h("div", { key: '2c3568247699101568790460b5d9ef6780cef096', class: "dropdown", part: "msd_dropdown" }, h("label", { key: 'd524fd75f9a8fcde85727904b6e2b21e5f6cbe0e', class: "dropdown-label" }, this.label, h("slot", { key: 'e4442acbc279840d6c3d815907fa79f6fd7a11d5', name: "label-icon", "aria-hidden": "true" })), h("button", { key: '8b66520137e83747c4e74237c74598fa2081275f', part: "msd_dropdown-button", class: { dropbtn: true, open: this.isOpen }, onClick: () => this.toggleDropdown(), "aria-haspopup": "listbox", "aria-expanded": this.isOpen ? 'true' : 'false', "aria-label": this.name, onKeyDown: e => this.handleSelectButtonKeyDown(e) }, h("slot", { key: 'e6ba4fd51fb6cf3dde63757f9eef8d1538a9a91d', name: "select-icon", "aria-hidden": "true" }), h("span", { key: 'bfc7c1bdc8046bb3a27f11a587619ecfe6d62d32', class: "selected-option", part: "msd_dropdown-button-selected-label" }, this.getSelectedOptions().length > 1
128
+ return (h(Host, { key: '68762c15e4d20e8d695807b7d4b401f95d1759a8' }, h("div", { key: 'f6b695da1ac813ce000f09442d79797cd57b5400', class: "dropdown", part: "msd_dropdown" }, h("label", { key: '375e7f825f8ca0962b12f5a35960a514535a0e4d', class: "dropdown-label" }, this.label, h("slot", { key: '4cb277f7424fc3a2906b6ca2bb25ab9af75f4b48', name: "label-icon", "aria-hidden": "true" })), h("button", { key: '76d5eec276f0aadb5f94de67a7c674d7506fec1b', part: "msd_dropdown-button", class: { dropbtn: true, open: this.isOpen }, onClick: () => this.toggleDropdown(), "aria-haspopup": "listbox", "aria-expanded": this.isOpen ? 'true' : 'false', "aria-label": this.name, onKeyDown: e => this.handleSelectButtonKeyDown(e) }, h("slot", { key: '229cae92d81294a1a8785ae95a265b156c4c571b', name: "select-icon", "aria-hidden": "true" }), h("span", { key: 'c2c030a9052bf733af0c9f5aabf665f9c50a612a', class: "selected-option", part: "msd_dropdown-button-selected-label" }, this.getSelectedOptions().length > 1
129
129
  ? `Multiple ${this.name}s selected`
130
- : this.availableOptions.filter(o => o.selected)[0]?.label ?? this.availableOptions[0]?.label), h("span", { key: 'f93e18714865b54dee754d2764b0b3bec3a4dead', class: this.isOpen ? 'open' : 'closed', "aria-hidden": "true" }, h("chevron-icon", { key: 'd91d60366c8503e84cb6e41e43ac77f911f9517c', width: "16", height: "16" }))), this.isOpen ? null : (h("div", { class: 'selected-options' }, this.getSelectedOptions().map(option => (h("span", { class: "selected-option" }, option.label, h("button", { key: option.label, onClick: () => this.selectOption(option) }, h("close-icon", null))))))), this.isOpen ? (h("div", { class: "dropdown-content", part: "msd_dropdown-content" }, h("ul", { tabindex: "-1", role: "listbox", "aria-label": this.name, "aria-multiselectable": true, "aria-activedescendant": this.ariaActivedescendant, onKeyDown: e => this.handleListboxKeydown(e) }, this.availableOptions.map(option => this.renderOption(option))))) : null)));
130
+ : this.availableOptions.filter(o => o.selected)[0]?.label ?? this.availableOptions[0]?.label), h("span", { key: '0f18d14621e108bd6019ceea2e86ae19d1816d53', class: this.isOpen ? 'open' : 'closed', "aria-hidden": "true" }, h("chevron-icon", { key: '1dba99f7491f72edeed66b567692b4aaf16be32d', width: "16", height: "16" }))), this.isOpen ? null : (h("div", { class: 'selected-options' }, this.getSelectedOptions().map(option => (h("span", { class: "selected-option" }, option.label, h("button", { key: option.label, onClick: () => this.selectOption(option) }, h("close-icon", null))))))), this.isOpen ? (h("div", { class: "dropdown-content", part: "msd_dropdown-content" }, h("ul", { tabindex: "-1", role: "listbox", "aria-label": this.name, "aria-multiselectable": true, "aria-activedescendant": this.ariaActivedescendant, onKeyDown: e => this.handleListboxKeydown(e) }, this.availableOptions.map(option => this.renderOption(option))))) : null)));
131
131
  }
132
132
  get el() { return getElement(this); }
133
133
  };
@@ -1,10 +1,10 @@
1
- import { r as registerInstance, h, a as Host, e as getElement } from './index-8362ce5c.js';
2
- import { R as RegisterComponent } from './register-component-8e4e394f.js';
3
- import { a as debug } from './utils-49a1d17b.js';
1
+ import { r as registerInstance, a as createEvent, h, e as Host, i as getElement } from './index-582cfc93.js';
2
+ import { R as RegisterComponent } from './register-component-aef40ec4.js';
3
+ import { a as debug } from './utils-04c10cbd.js';
4
4
  import './buffer-es6-5510d761.js';
5
5
  import './_commonjsHelpers-6cbf8316.js';
6
6
 
7
- const nylasAdditionalParticipantsCss = ":host{display:block;margin:1rem;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif}.nylas-additional-participants__title{color:var(--nylas-base-nylas-base-900-aaa, #101323);font-size:16px;font-style:normal;font-weight:600;line-height:20px;margin:0;text-align:left}.nylas-additional-participants__subtitle{color:var(--nylas-base-600);font-size:14px;font-style:normal;font-weight:400;line-height:20px;margin:0.25rem 0px 0px;text-align:left}.nylas-additional-participants__content{padding:1rem;display:flex;flex-direction:column;gap:1rem}.nylas-additional-participants__input_group{padding-top:8px;display:flex;flex-direction:column;gap:4px}.nylas-additional-participants__input_group label{display:flex;align-items:center;color:var(--nylas-base-800);font-size:14px;font-style:normal;font-weight:400;line-height:150%}.nylas-additional-participants__input_wrapper{display:flex;border-width:1;border-radius:8px;border:1px solid var(--nylas-base-300)}.nylas-additional-participants__input_wrapper button{padding:12px;border:none;background:none;cursor:pointer}.nylas-additional-participants__input_wrapper button:hover,.nylas-additional-participants__input_wrapper button:active{color:var(--nylas-primary)}.nylas-additional-participants__input_wrapper_organizer{background:var(--nylas-base-50)}.nylas-additional-participants__input{flex:1;padding:12px 16px;border-right:1px solid var(--nylas-base-300)}.nylas-additional-participants__input input{border:none;outline:none;background:none;width:100%}.nylas-additional-participants__add{padding:12px;display:flex;align-items:center;border:none;background:none;cursor:pointer}.nylas-additional-participants__add span{padding:0 8px;font-size:16px;font-style:normal;font-weight:500}.nylas-additional-participants__add:hover,.nylas-additional-participants__add:active{color:var(--nylas-primary)}";
7
+ const nylasAdditionalParticipantsCss = ":host{display:block;margin:1rem;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif}.nylas-additional-participants__title{color:var(--nylas-base-nylas-base-900-aaa, #101323);font-size:16px;font-style:normal;font-weight:600;line-height:20px;margin:0;text-align:left}.nylas-additional-participants__subtitle{color:var(--nylas-base-600);font-size:14px;font-style:normal;font-weight:400;line-height:20px;margin:0.25rem 0px 0px;text-align:left}.nylas-additional-participants__content{padding:1rem;display:flex;flex-direction:column;gap:1rem}.nylas-additional-participants__input_group{padding-top:8px;display:flex;flex-direction:column;gap:4px}.nylas-additional-participants__input_group label{display:flex;align-items:center;color:var(--nylas-base-800);font-size:14px;font-style:normal;font-weight:400;line-height:150%}.nylas-additional-participants__input_wrapper{display:flex;border-width:1;border-radius:8px;border:1px solid var(--nylas-base-300)}.nylas-additional-participants__input_wrapper button{padding:12px;border:none;border-left:1px solid var(--nylas-base-300);background:none;cursor:pointer}.nylas-additional-participants__input_wrapper button:hover,.nylas-additional-participants__input_wrapper button:active{color:var(--nylas-primary)}.nylas-additional-participants__input_wrapper_organizer{background:var(--nylas-base-50)}.nylas-additional-participants__input{flex:1;display:flex;justify-content:space-between}.nylas-additional-participants__input.organizer{padding:12px 16px}.nylas-additional-participants__input input{border:none;outline:none;background:none;width:100%}.nylas-additional-participants__input input-dropdown{width:100%}.nylas-additional-participants__input input-dropdown::part(id_dropdown){width:100%;height:100%}.nylas-additional-participants__input input-dropdown::part(id_dropdown-input){height:100%;border-radius:var(--nylas-border-radius-2x);border:none;border-top-right-radius:initial;border-bottom-right-radius:initial;padding-left:16px}.nylas-additional-participants__add{padding:12px;display:flex;align-items:center;border:none;background:none;cursor:pointer}.nylas-additional-participants__add span{padding:0 8px;font-size:16px;font-style:normal;font-weight:500}.nylas-additional-participants__add:hover,.nylas-additional-participants__add:active{color:var(--nylas-primary)}";
8
8
 
9
9
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
10
10
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -23,6 +23,7 @@ var __metadata = (undefined && undefined.__metadata) || function (k, v) {
23
23
  const NylasAdditionalParticipants = class {
24
24
  constructor(hostRef) {
25
25
  registerInstance(this, hostRef);
26
+ this.valueChanged = createEvent(this, "valueChanged", 7);
26
27
  if (hostRef.$hostElement$["s-ei"]) {
27
28
  this.internals = hostRef.$hostElement$["s-ei"];
28
29
  }
@@ -32,6 +33,7 @@ const NylasAdditionalParticipants = class {
32
33
  }
33
34
  this.name = 'participants';
34
35
  this.eventParticipants = undefined;
36
+ this.participantOptions = undefined;
35
37
  this.participants = this.eventParticipants ?? [];
36
38
  this.participantsValid = true;
37
39
  }
@@ -48,39 +50,60 @@ const NylasAdditionalParticipants = class {
48
50
  }
49
51
  componentDidLoad() {
50
52
  debug('nylas-additional-participants', 'componentDidLoad');
51
- this.internals.setFormValue(JSON.stringify(this.participants), 'participants');
53
+ this.updateFormValue();
52
54
  }
53
55
  disconnectedCallback() {
54
56
  debug('nylas-additional-participants', 'disconnectedCallback');
55
57
  }
58
+ onInputOptionChanged(event) {
59
+ debug('nylas-additional-participants', 'onInputOptionChanged');
60
+ const index = event.detail.name;
61
+ this.participants[index].email = event.detail.value;
62
+ const participant = this.participantOptions?.find(participant => participant.email === event.detail.value);
63
+ this.participants[index].availability = participant ? { calendar_ids: ['primary'] } : undefined;
64
+ this.participants[index].name = participant?.name || event.detail.value;
65
+ this.participants = [...this.participants];
66
+ this.updateFormValue();
67
+ }
56
68
  onParticipantChange(event, index) {
57
69
  debug('nylas-additional-participants', 'onParticipantChange');
58
70
  this.participants[index].email = event.target.value;
59
- this.internals.setFormValue(JSON.stringify(this.participants), 'participants');
71
+ this.updateFormValue();
60
72
  }
61
73
  addParticipant() {
62
74
  debug('nylas-additional-participants', 'addParticipant');
63
- this.participants = [...this.participants, { email: '', is_organizer: false, availability: { calendar_ids: ['primary'] } }];
64
- this.internals.setFormValue(JSON.stringify(this.participants), 'participants');
75
+ this.participants = [...this.participants, { name: '', email: '', is_organizer: false }];
76
+ this.updateFormValue();
65
77
  }
66
- removeParticipant(email) {
67
- debug('nylas-additional-participants', 'addParticipant');
68
- this.participants = this.participants.filter(p => p.email !== email);
69
- this.internals.setFormValue(JSON.stringify(this.participants), 'participants');
78
+ removeParticipant(index) {
79
+ debug('nylas-additional-participants', 'removeParticipant');
80
+ this.participants = this.participants.filter((_, i) => i !== index);
81
+ this.updateFormValue();
70
82
  }
71
83
  validate(email, index) {
72
84
  debug('nylas-additional-participants', 'validate');
73
85
  const regex = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
74
86
  const valid = regex.test(String(email).toLowerCase());
75
87
  this.participants[index].is_valid = valid;
76
- this.internals.setFormValue(JSON.stringify(this.participants), 'participants');
88
+ this.updateFormValue();
89
+ }
90
+ updateFormValue() {
91
+ debug('nylas-additional-participants', 'updateFormValue');
92
+ this.internals.setFormValue(JSON.stringify(this.participants), this.name);
93
+ this.valueChanged.emit({ value: JSON.stringify(this.participants), name: this.name });
94
+ }
95
+ getArrayDifference(array1, array2) {
96
+ const filtered = array1.filter(participant1 => !array2.some(participant2 => participant1.email === participant2.email));
97
+ return filtered.map(participant => {
98
+ return { value: participant.email, label: participant.email };
99
+ });
77
100
  }
78
101
  render() {
79
- return (h(Host, { key: '91518d593ecd43e88105d3137746e9d95653e0e7' }, h("nylas-form-card", { key: 'd05f897f3d5109ce3b31d2aad8ca09af05793b58' }, h("h3", { key: 'fcc5ae151fb84bf60abf58e44eb8e043cd4cefac', slot: "header-title", class: "nylas-additional-participants__title", part: "nap__title" }, "Additional participants"), h("p", { key: '7e8e8354258dc9884cef56c1e4bdbe0d1fc724c5', slot: "header-subtitle", class: "nylas-additional-participants__subtitle", part: "nap__subtitle" }, "Add anyone else who would be joining for this event."), h("div", { key: '3376539a53c39a2e43fd4a817a83511eb852cd87', slot: "content", class: "nylas-additional-participants__content" }, h("div", { key: 'b782dad233ad8ca25030d9ea45092eea93c2f0dd' }, this.participants.map((participant, index) => {
80
- return (h("div", { class: 'nylas-additional-participants__input_group', part: "nap__input_group" }, h("label", null, participant.is_organizer ? 'Organizer' : `Participant ${index}`), h("div", { part: "nap__input_wrapper", class: `nylas-additional-participants__input_wrapper ${participant.is_organizer && 'nylas-additional-participants__input_wrapper_organizer'} ${participant.is_valid === false && 'nylas-additional-participants__input_wrapper_invalid'}` }, h("div", { class: "nylas-additional-participants__input", part: "nap__input" }, h("input", { type: "text", value: participant.email, onInput: e => {
102
+ return (h(Host, { key: '67454437ca6e9771da4373e293b8b1d468c79680' }, h("nylas-form-card", { key: '844913ba1bca33b83b0d7c0a89323ca48f5ce1dd' }, h("h3", { key: 'bbdbf1e9addc3238a013697bff343a1065758928', slot: "header-title", class: "nylas-additional-participants__title", part: "nap__title" }, "Additional participants"), h("p", { key: '37520f9fcc4996b9635821a52ed5d9c0350af88f', slot: "header-subtitle", class: "nylas-additional-participants__subtitle", part: "nap__subtitle" }, "Add anyone else who would be joining for this event."), h("div", { key: '76a8d8118f9012cced55357e4243b897ec41e385', slot: "content", class: "nylas-additional-participants__content" }, h("div", { key: 'bb5d6f6e7ebf486eb4c8395ff3ab971335d19750' }, this.participants.map((participant, index) => {
103
+ return (h("div", { class: 'nylas-additional-participants__input_group', part: "nap__input_group" }, h("label", null, participant.is_organizer ? 'Organizer' : `Participant ${index}`), h("div", { part: "nap__input_wrapper", class: `nylas-additional-participants__input_wrapper ${participant.is_organizer && 'nylas-additional-participants__input_wrapper_organizer'} ${participant.is_valid === false && 'nylas-additional-participants__input_wrapper_invalid'}` }, h("div", { class: { 'nylas-additional-participants__input': true, 'organizer': participant.is_organizer }, part: "nap__input" }, participant.is_organizer ? (h("input", { type: "text", value: participant.email, onInput: e => {
81
104
  this.onParticipantChange(e, index);
82
- }, readOnly: participant.is_organizer, onBlur: () => this.validate(participant.email, index) })), !participant.is_organizer && (h("button", { onClick: () => this.removeParticipant(participant.email), part: "nap__remove-participant" }, h("close-icon", null))))));
83
- }))))));
105
+ }, readOnly: participant.is_organizer, onBlur: () => this.validate(participant.email, index) })) : (h("input-dropdown", { name: `${index}`, filterable: true, inputValue: participant.email, options: this.getArrayDifference(this.participantOptions || [], this.participants) })), !participant.is_organizer && (h("button", { onClick: () => this.removeParticipant(index), part: "nap__remove-participant" }, h("close-icon", null)))))));
106
+ })), h("button", { key: '14febbe15dc97b44304e98c14d7e084ea5126304', class: "nylas-additional-participants__add", part: "nap__add-participant", onClick: () => this.addParticipant() }, h("add-circle-icon", { key: '8f60f39d5d3b3b4532a78eacb0d4bf907a8b7836' }), " ", h("span", { key: '8e2c9a49072d04ab571470c68c3277a76706e60e' }, "Add ", this.participants.length > 1 ? 'another' : 'a', " participant"))))));
84
107
  }
85
108
  static get formAssociated() { return true; }
86
109
  get host() { return getElement(this); }
@@ -91,6 +114,7 @@ const NylasAdditionalParticipants = class {
91
114
  __decorate([
92
115
  RegisterComponent({
93
116
  name: 'nylas-additional-participants',
117
+ stateToProps: new Map([['schedulerConfig.additionalParticipants', 'participantOptions']]),
94
118
  eventToProps: {},
95
119
  fireRegisterEvent: true,
96
120
  }),
@@ -1 +1 @@
1
- {"file":"nylas-additional-participants.entry.esm.js","mappings":"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","names":[],"sources":["src/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.scss?tag=nylas-additional-participants&encapsulation=shadow","src/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n\n:host {\n display: block;\n margin: 1rem;\n @include default-css-variables;\n}\n\n.nylas-additional-participants__title {\n color: var(--nylas-base-nylas-base-900-aaa, #101323);\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px; /* 125% */\n margin: 0;\n text-align: left;\n}\n.nylas-additional-participants__subtitle {\n color: var(--nylas-base-600);\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px; /* 142.857% */\n margin: 0.25rem 0px 0px;\n text-align: left;\n}\n.nylas-additional-participants__content {\n padding: 1rem;\n display: flex;\n flex-direction: column;\n gap: 1rem;\n}\n\n.nylas-additional-participants__input_group {\n padding-top: 8px;\n display: flex;\n flex-direction: column;\n gap: 4px;\n label {\n display: flex;\n align-items: center;\n color: var(--nylas-base-800);\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 150%;\n }\n}\n.nylas-additional-participants__input_wrapper {\n display: flex;\n border-width: 1;\n border-radius: 8px;\n border: 1px solid var(--nylas-base-300);\n button {\n padding: 12px;\n border: none;\n background: none;\n cursor: pointer;\n &:hover,\n &:active {\n color: var(--nylas-primary);\n }\n }\n}\n.nylas-additional-participants__input_wrapper_organizer {\n background: var(--nylas-base-50);\n}\n\n.nylas-additional-participants__input {\n flex: 1;\n padding: 12px 16px;\n border-right: 1px solid var(--nylas-base-300);\n input {\n border: none;\n outline: none;\n background: none;\n width: 100%;\n }\n}\n\n.nylas-additional-participants__add {\n padding: 12px;\n display: flex;\n align-items: center;\n border: none;\n background: none;\n cursor: pointer;\n span {\n padding: 0 8px;\n font-size: 16px;\n font-style: normal;\n font-weight: 500;\n }\n &:hover,\n &:active {\n color: var(--nylas-primary);\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { AttachInternals, Component, Host, Prop, State, Watch, h, Element } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\n\ntype Participant = {\n name?: string;\n email: string;\n is_valid?: boolean;\n is_organizer: boolean;\n availability?: Availability;\n booking?: Booking;\n};\ntype Availability = {\n calendar_ids: string[];\n};\ntype Booking = {\n calendar_id: string;\n};\n\n/**\n * The `nylas-additional-participants` component is a form input for adding additional participants to an event.\n *\n * @part nap__title - The title of the component.\n * @part nap__subtitle - The subtitle of the component.\n * @part nap__content - The content of the component.\n * @part nap__input_group - The input group of the component.\n * @part nap__input_wrapper - The input wrapper of the component.\n * @part nap__input - The input of the component.\n * @part nap__remove-participant - The remove participant button of the component.\n * @part nap__add-participant - The add participant button of the component.\n *\n */\n@Component({\n tag: 'nylas-additional-participants',\n styleUrl: 'nylas-additional-participants.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasAdditionalParticipants {\n @Element() host!: HTMLNylasAdditionalParticipantsElement;\n @Prop() name: string = 'participants';\n @Prop() eventParticipants?: Participant[];\n @AttachInternals() internals!: ElementInternals;\n\n /**\n * When a name prop is passed, stencil does not automatically set the name attribute on the host element.\n * Since this component is form-associated, the name attribute is required for form submission.\n * This is a workaround to ensure that the name attribute is set on the host element.\n */\n @Watch('name')\n elementNameChangedHandler(newValue: string) {\n debug('nylas-additional-participants', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @State() participants: Participant[] = this.eventParticipants ?? [];\n @State() participantsValid: boolean = true;\n connectedCallback() {\n debug('nylas-additional-participants', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-additional-participants', 'componentWillLoad');\n this.host.setAttribute('name', this.name);\n }\n\n componentDidLoad() {\n debug('nylas-additional-participants', 'componentDidLoad');\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n\n disconnectedCallback() {\n debug('nylas-additional-participants', 'disconnectedCallback');\n }\n onParticipantChange(event, index) {\n debug('nylas-additional-participants', 'onParticipantChange');\n this.participants[index].email = event.target.value;\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n addParticipant() {\n debug('nylas-additional-participants', 'addParticipant');\n this.participants = [...this.participants, { email: '', is_organizer: false, availability: { calendar_ids: ['primary'] } }];\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n removeParticipant(email: string) {\n debug('nylas-additional-participants', 'addParticipant');\n this.participants = this.participants.filter(p => p.email !== email);\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n validate(email, index) {\n debug('nylas-additional-participants', 'validate');\n const regex = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n const valid = regex.test(String(email).toLowerCase());\n this.participants[index].is_valid = valid;\n this.internals.setFormValue(JSON.stringify(this.participants), 'participants');\n }\n\n @RegisterComponent<NylasAdditionalParticipants, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-additional-participants',\n eventToProps: {},\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <nylas-form-card>\n <h3 slot=\"header-title\" class=\"nylas-additional-participants__title\" part=\"nap__title\">\n Additional participants\n </h3>\n <p slot=\"header-subtitle\" class=\"nylas-additional-participants__subtitle\" part=\"nap__subtitle\">\n Add anyone else who would be joining for this event.\n </p>\n <div slot=\"content\" class=\"nylas-additional-participants__content\">\n <div>\n {this.participants.map((participant, index) => {\n return (\n <div class={'nylas-additional-participants__input_group'} part=\"nap__input_group\">\n <label>{participant.is_organizer ? 'Organizer' : `Participant ${index}`}</label>\n <div\n part=\"nap__input_wrapper\"\n class={`nylas-additional-participants__input_wrapper ${participant.is_organizer && 'nylas-additional-participants__input_wrapper_organizer'} ${participant.is_valid === false && 'nylas-additional-participants__input_wrapper_invalid'}`}\n >\n <div class=\"nylas-additional-participants__input\" part=\"nap__input\">\n <input\n type=\"text\"\n value={participant.email}\n onInput={e => {\n this.onParticipantChange(e, index);\n }}\n readOnly={participant.is_organizer}\n onBlur={() => this.validate(participant.email, index)}\n />\n </div>\n {!participant.is_organizer && (\n <button onClick={() => this.removeParticipant(participant.email)} part=\"nap__remove-participant\">\n <close-icon />\n </button>\n )}\n </div>\n </div>\n );\n })}\n </div>\n {/* <button class=\"nylas-additional-participants__add\" part=\"nap__add-participant\" onClick={() => this.addParticipant()}>\n <add-circle-icon /> <span>Add a participant</span>\n </button> */}\n </div>\n </nylas-form-card>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nylas-additional-participants.entry.esm.js","mappings":"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","names":[],"sources":["src/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.scss?tag=nylas-additional-participants&encapsulation=shadow","src/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n\n:host {\n display: block;\n margin: 1rem;\n @include default-css-variables;\n}\n\n.nylas-additional-participants__title {\n color: var(--nylas-base-nylas-base-900-aaa, #101323);\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px; /* 125% */\n margin: 0;\n text-align: left;\n}\n.nylas-additional-participants__subtitle {\n color: var(--nylas-base-600);\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px; /* 142.857% */\n margin: 0.25rem 0px 0px;\n text-align: left;\n}\n.nylas-additional-participants__content {\n padding: 1rem;\n display: flex;\n flex-direction: column;\n gap: 1rem;\n}\n\n.nylas-additional-participants__input_group {\n padding-top: 8px;\n display: flex;\n flex-direction: column;\n gap: 4px;\n label {\n display: flex;\n align-items: center;\n color: var(--nylas-base-800);\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 150%;\n }\n}\n.nylas-additional-participants__input_wrapper {\n display: flex;\n border-width: 1;\n border-radius: 8px;\n border: 1px solid var(--nylas-base-300);\n button {\n padding: 12px;\n border: none;\n border-left: 1px solid var(--nylas-base-300);\n background: none;\n cursor: pointer;\n &:hover,\n &:active {\n color: var(--nylas-primary);\n }\n }\n}\n.nylas-additional-participants__input_wrapper_organizer {\n background: var(--nylas-base-50);\n}\n\n.nylas-additional-participants__input {\n flex: 1;\n display: flex;\n justify-content: space-between;\n &.organizer {\n padding: 12px 16px;\n }\n input {\n border: none;\n outline: none;\n background: none;\n width: 100%;\n }\n input-dropdown {\n width: 100%;\n }\n input-dropdown::part(id_dropdown) {\n width: 100%;\n height: 100%;\n }\n input-dropdown::part(id_dropdown-input) {\n height: 100%;\n border-radius: var(--nylas-border-radius-2x);\n border: none;\n border-top-right-radius: initial;\n border-bottom-right-radius: initial;\n padding-left: 16px;\n }\n}\n\n.nylas-additional-participants__add {\n padding: 12px;\n display: flex;\n align-items: center;\n border: none;\n background: none;\n cursor: pointer;\n span {\n padding: 0 8px;\n font-size: 16px;\n font-style: normal;\n font-weight: 500;\n }\n &:hover,\n &:active {\n color: var(--nylas-primary);\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { AttachInternals, Component, Host, Prop, State, Watch, h, Element, Listen, EventEmitter } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport { Event } from '@stencil/core';\n\ntype Participant = {\n name?: string;\n email: string;\n is_valid?: boolean;\n is_organizer: boolean;\n availability?: Availability;\n booking?: Booking;\n};\ntype Availability = {\n calendar_ids: string[];\n};\ntype Booking = {\n calendar_id: string;\n};\n\n/**\n * The `nylas-additional-participants` component is a form input for adding additional participants to an event.\n *\n * @part nap__title - The title of the component.\n * @part nap__subtitle - The subtitle of the component.\n * @part nap__content - The content of the component.\n * @part nap__input_group - The input group of the component.\n * @part nap__input_wrapper - The input wrapper of the component.\n * @part nap__input - The input of the component.\n * @part nap__remove-participant - The remove participant button of the component.\n * @part nap__add-participant - The add participant button of the component.\n *\n */\n@Component({\n tag: 'nylas-additional-participants',\n styleUrl: 'nylas-additional-participants.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasAdditionalParticipants {\n @Element() host!: HTMLNylasAdditionalParticipantsElement;\n @Prop() name: string = 'participants';\n @Prop() eventParticipants?: Participant[];\n @Prop() participantOptions?: Participant[];\n @AttachInternals() internals!: ElementInternals;\n\n /**\n * This event is fired when the selected participants change.\n */\n @Event() valueChanged!: EventEmitter<{\n value: string;\n name: string;\n }>;\n\n /**\n * When a name prop is passed, stencil does not automatically set the name attribute on the host element.\n * Since this component is form-associated, the name attribute is required for form submission.\n * This is a workaround to ensure that the name attribute is set on the host element.\n */\n @Watch('name')\n elementNameChangedHandler(newValue: string) {\n debug('nylas-additional-participants', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @State() participants: Participant[] = this.eventParticipants ?? [];\n @State() participantsValid: boolean = true;\n connectedCallback() {\n debug('nylas-additional-participants', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-additional-participants', 'componentWillLoad');\n this.host.setAttribute('name', this.name);\n }\n\n componentDidLoad() {\n debug('nylas-additional-participants', 'componentDidLoad');\n this.updateFormValue();\n }\n\n disconnectedCallback() {\n debug('nylas-additional-participants', 'disconnectedCallback');\n }\n\n @Listen('inputOptionChanged')\n onInputOptionChanged(event: CustomEvent<{ value: string; name: string }>) {\n debug('nylas-additional-participants', 'onInputOptionChanged');\n const index = event.detail.name;\n this.participants[index].email = event.detail.value;\n const participant = this.participantOptions?.find(participant => participant.email === event.detail.value);\n this.participants[index].availability = participant ? { calendar_ids: ['primary'] } : undefined;\n this.participants[index].name = participant?.name || event.detail.value;\n this.participants = [...this.participants];\n this.updateFormValue();\n }\n onParticipantChange(event, index) {\n debug('nylas-additional-participants', 'onParticipantChange');\n this.participants[index].email = event.target.value;\n this.updateFormValue();\n }\n addParticipant() {\n debug('nylas-additional-participants', 'addParticipant');\n this.participants = [...this.participants, { name: '', email: '', is_organizer: false }];\n this.updateFormValue();\n }\n removeParticipant(index: number) {\n debug('nylas-additional-participants', 'removeParticipant');\n this.participants = this.participants.filter((_, i) => i !== index);\n this.updateFormValue();\n }\n validate(email, index) {\n debug('nylas-additional-participants', 'validate');\n const regex = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n const valid = regex.test(String(email).toLowerCase());\n this.participants[index].is_valid = valid;\n this.updateFormValue();\n }\n\n updateFormValue() {\n debug('nylas-additional-participants', 'updateFormValue');\n this.internals.setFormValue(JSON.stringify(this.participants), this.name);\n this.valueChanged.emit({ value: JSON.stringify(this.participants), name: this.name });\n }\n\n // Filter out the participants that are already added\n getArrayDifference(array1: Participant[], array2: Participant[]) {\n const filtered = array1.filter(participant1 => !array2.some(participant2 => participant1.email === participant2.email));\n return filtered.map(participant => {\n return { value: participant.email, label: participant.email };\n });\n }\n\n @RegisterComponent<NylasAdditionalParticipants, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-additional-participants',\n stateToProps: new Map([['schedulerConfig.additionalParticipants', 'participantOptions']]),\n eventToProps: {},\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <nylas-form-card>\n <h3 slot=\"header-title\" class=\"nylas-additional-participants__title\" part=\"nap__title\">\n Additional participants\n </h3>\n <p slot=\"header-subtitle\" class=\"nylas-additional-participants__subtitle\" part=\"nap__subtitle\">\n Add anyone else who would be joining for this event.\n </p>\n <div slot=\"content\" class=\"nylas-additional-participants__content\">\n <div>\n {this.participants.map((participant, index) => {\n return (\n <div class={'nylas-additional-participants__input_group'} part=\"nap__input_group\">\n <label>{participant.is_organizer ? 'Organizer' : `Participant ${index}`}</label>\n <div\n part=\"nap__input_wrapper\"\n class={`nylas-additional-participants__input_wrapper ${participant.is_organizer && 'nylas-additional-participants__input_wrapper_organizer'} ${participant.is_valid === false && 'nylas-additional-participants__input_wrapper_invalid'}`}\n >\n <div class={{ 'nylas-additional-participants__input': true, 'organizer': participant.is_organizer }} part=\"nap__input\">\n {participant.is_organizer ? (\n <input\n type=\"text\"\n value={participant.email}\n onInput={e => {\n this.onParticipantChange(e, index);\n }}\n readOnly={participant.is_organizer}\n onBlur={() => this.validate(participant.email, index)}\n />\n ) : (\n <input-dropdown\n name={`${index}`}\n filterable={true}\n inputValue={participant.email}\n options={this.getArrayDifference(this.participantOptions || [], this.participants)}\n />\n )}\n {!participant.is_organizer && (\n <button onClick={() => this.removeParticipant(index)} part=\"nap__remove-participant\">\n <close-icon />\n </button>\n )}\n </div>\n </div>\n </div>\n );\n })}\n </div>\n <button class=\"nylas-additional-participants__add\" part=\"nap__add-participant\" onClick={() => this.addParticipant()}>\n <add-circle-icon /> <span>Add {this.participants.length > 1 ? 'another' : 'a'} participant</span>\n </button>\n </div>\n </nylas-form-card>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { d as dataResponse } from './utils-49a1d17b.js';
1
+ import { d as dataResponse } from './utils-04c10cbd.js';
2
2
 
3
3
  class NylasApiRequest {
4
4
  }
@@ -66,4 +66,4 @@ class NylasIdentityRequestWrapper {
66
66
 
67
67
  export { NylasIdentityRequestWrapper as N };
68
68
 
69
- //# sourceMappingURL=nylas-api-request-27e81d64.js.map
69
+ //# sourceMappingURL=nylas-api-request-5ac7887c.js.map
@@ -1 +1 @@
1
- {"file":"nylas-api-request-27e81d64.js","mappings":";;MAuDsB,eAAe;CAwBpC;MAOY,2BAA2B;IAqBtC,YAAY,OAAsB;QAN1B,oBAAe,GAAe,EAAE,CAAC;QAOvC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;KACxB;IAQD,gBAAgB,CAAC,OAAe;QAC9B,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;KAC9B;IAWD,MAAM,OAAO,CAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAoB;QAChE,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,IAAI,EAAE,EAAE;gBAC7D,MAAM;gBACN,OAAO,EAAE,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,SAAS;gBACnD,IAAI;gBACJ,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,IAAI,CAAC,aAAa,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC;aACjG,CAAC,CAAC;YAIH,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;gBACnC,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;aAC1C;YAED,OAAO,YAAY,CAAC,QAAa,CAAC,CAAC;SACpC;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YACjC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE;gBACpD,YAAY,GAAG,sDAAsD,CAAC;gBACtE,UAAU,CAAC;oBACT,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;oBACjC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;oBAChC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;iBAC1B,EAAE,IAAI,CAAC,CAAC;aACV;YACD,OAAO,YAAY,CAAC,IAAS,EAAE;gBAC7B,OAAO,EAAE,YAAY;aACtB,CAAC,CAAC;SACJ;KACF;IAOD,MAAM,WAAW;QACf,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAC/E,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,IAAI,CAAC;SACb;QAED,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,GAAG;YACf,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,CAAC;KACH;IAOD,MAAM,iBAAiB,CAAC,QAAmB;QACzC,MAAM,QAAQ,GAAG,QAAQ,EAAE,QAAQ,IAAI,QAAQ,CAAC;QAChD,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;QAClF,IAAI,IAAI,GAAG,WAAW,IAAI,EAAE,CAAC;QAE7B,IAAI,QAAQ,EAAE;YACZ,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,EAAE,CAAC;SACjC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAChC;IAMD,kBAAkB,CAAC,QAAoB;QACrC,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;KACjC;;;;;","names":[],"sources":["src/common/nylas-api-request.ts"],"sourcesContent":["import { dataResponse } from '@/utils/utils';\nimport type { NylasSessions } from '@nylas/identity';\nimport { DataResponseReturnType } from './types';\n\n/**\n * Arguments for making a request to the Nylas API.\n */\nexport type NylasRequestArgs = {\n method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';\n path: string;\n body?: any;\n headers?: Record<string, string>;\n};\n\n/**\n * A model representing a user in the Nylas Identity system.\n */\nexport type User = {\n id: string;\n email: string;\n name?: string;\n};\n\n/**\n * Arguments for authenticating a user with the Nylas Identity system.\n */\nexport type AuthArgs = {\n /**\n * The provider of the user's email address.\n */\n provider?: string;\n /**\n * A list of permission scopes for the provider.\n */\n scope?: Array<string>;\n /**\n * The login hint associated with the user.\n */\n loginHint?: string;\n /**\n * Whether to include grant scopes in the auth exchange.\n */\n includeGrantScopes?: boolean;\n prompt?: string;\n metadata?: string;\n state?: string;\n};\n\n/**\n * Interface for making requests to the Nylas API.\n *\n * This is an abstract class that is meant to be implemented by customers to provide their own\n * implementation of making requests to the Nylas API. This allows customers to use their own\n * authentication mechanism, or to use a different HTTP client library.\n */\nexport abstract class NylasApiRequest {\n /**\n * This method should make an authenticated request to the Nylas API.\n * Note: It should not throw an error if the request fails, but should return an object with the error\n * information as part of the tuple returned.\n * @param args NylasRequestArgs\n */\n abstract request<T = any>(args: NylasRequestArgs): Promise<DataResponseReturnType<T>>;\n\n /**\n * This method should return the current user's information.\n */\n\n abstract currentUser(): Promise<User | null>;\n\n /**\n * This method should set the default authentication arguments to use when authenticating the user.\n */\n abstract setDefaultAuthArgs(authArgs: AuthArgs[]): void;\n\n /**\n * This method should return the URL to redirect the user to for authentication.\n */\n abstract authenticationUrl(authArgs?: AuthArgs): Promise<string | undefined>;\n}\n\n/**\n * A wrapper around the Nylas Identity session that implements the NylasApiRequest interface.\n * This class is used by the Nylas Web Elements to make requests to the Nylas API if no custom\n * implementation of NylasApiRequest is provided.\n */\nexport class NylasIdentityRequestWrapper implements NylasApiRequest {\n /**\n * The Nylas Identity session instance.\n */\n private session: NylasSessions;\n\n /**\n * The grant_id to use for requests, if there is multi-account support\n * enabled in the Nylas Identity settings.\n */\n private activeGrantId?: string;\n\n /**\n * The default authentication arguments to use when authenticating the user.\n */\n private defaultAuthArgs: AuthArgs[] = [];\n\n /**\n * Constructor for the NylasIdentityRequestWrapper class.\n * @param session The Nylas Identity session instance.\n */\n constructor(session: NylasSessions) {\n this.session = session;\n }\n\n /**\n * This method sets the grant_id to use for requests.\n * This is used when there is multi-account support enabled in the Nylas Identity settings.\n *\n * @param grantId\n */\n setActiveGrantId(grantId: string) {\n this.activeGrantId = grantId;\n }\n\n /**\n * This method makes a request to the Nylas API, using the Nylas Identity's fetch method.\n *\n * The `grants/me/` prefix is added because all requests made from the browser to the Nylas API\n * must be made on behalf of the currently logged in user with a valid access token.\n *\n * @param NylasRequestArgs\n * @returns Promise<[T | null, NylasErrorResponse['error'] | null]>\n */\n async request<T>({ method, path, body, headers }: NylasRequestArgs): Promise<DataResponseReturnType<T>> {\n try {\n const response = await this.session.fetch(`grants/me/${path}`, {\n method,\n headers: headers ? new Headers(headers) : undefined,\n body,\n ...(this.session.isMultiAccount() && this.activeGrantId ? { grant_id: this.activeGrantId } : {}),\n });\n\n // Sometimes the Nylas identity session fetch method returns undefined.\n // Possibly due to CORS issues. In this case, we throw an error.\n if (typeof response === 'undefined') {\n throw new Error('Response is undefined');\n }\n\n return dataResponse(response as T);\n } catch (error: any) {\n let errorMessage = String(error);\n if (String(error).includes('Access token not found')) {\n errorMessage = 'Session expired, please log in again. Redirecting...';\n setTimeout(() => {\n localStorage.removeItem('grant');\n localStorage.removeItem('user');\n window.location.reload();\n }, 1000);\n }\n return dataResponse(null as T, {\n message: errorMessage,\n });\n }\n }\n\n /**\n * This method returns the current (logged in) user's information.\n * If the user is not logged in, it returns null.\n * @returns Promise<User | null>\n */\n async currentUser(): Promise<User | null> {\n const grantId = this.session.isMultiAccount() ? this.activeGrantId : undefined;\n const idToken = await this.session.getProfile(grantId);\n if (!idToken) {\n return null;\n }\n\n return {\n id: idToken.sub,\n email: idToken.email,\n name: idToken.name,\n };\n }\n\n /**\n * This method returns the URL to redirect the user to for authentication.\n * @param authConfig authArgs\n * @returns Promise<string | undefined>\n */\n async authenticationUrl(authArgs?: AuthArgs): Promise<string | undefined> {\n const provider = authArgs?.provider || 'google';\n const defaultArgs = this.defaultAuthArgs.find(args => args.provider === provider);\n let args = defaultArgs || {};\n\n if (authArgs) {\n args = { ...args, ...authArgs };\n }\n return this.session.auth(args);\n }\n\n /**\n * This method sets the default authentication arguments to use when authenticating the user.\n * @param authArgs authArgs\n */\n setDefaultAuthArgs(authArgs: AuthArgs[]) {\n this.defaultAuthArgs = authArgs;\n }\n}\n"],"version":3}
1
+ {"file":"nylas-api-request-5ac7887c.js","mappings":";;MAuDsB,eAAe;CAwBpC;MAOY,2BAA2B;IAqBtC,YAAY,OAAsB;QAN1B,oBAAe,GAAe,EAAE,CAAC;QAOvC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;KACxB;IAQD,gBAAgB,CAAC,OAAe;QAC9B,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;KAC9B;IAWD,MAAM,OAAO,CAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAoB;QAChE,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,IAAI,EAAE,EAAE;gBAC7D,MAAM;gBACN,OAAO,EAAE,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,SAAS;gBACnD,IAAI;gBACJ,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,IAAI,CAAC,aAAa,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC;aACjG,CAAC,CAAC;YAIH,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;gBACnC,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;aAC1C;YAED,OAAO,YAAY,CAAC,QAAa,CAAC,CAAC;SACpC;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YACjC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE;gBACpD,YAAY,GAAG,sDAAsD,CAAC;gBACtE,UAAU,CAAC;oBACT,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;oBACjC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;oBAChC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;iBAC1B,EAAE,IAAI,CAAC,CAAC;aACV;YACD,OAAO,YAAY,CAAC,IAAS,EAAE;gBAC7B,OAAO,EAAE,YAAY;aACtB,CAAC,CAAC;SACJ;KACF;IAOD,MAAM,WAAW;QACf,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAC/E,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,IAAI,CAAC;SACb;QAED,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,GAAG;YACf,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,CAAC;KACH;IAOD,MAAM,iBAAiB,CAAC,QAAmB;QACzC,MAAM,QAAQ,GAAG,QAAQ,EAAE,QAAQ,IAAI,QAAQ,CAAC;QAChD,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;QAClF,IAAI,IAAI,GAAG,WAAW,IAAI,EAAE,CAAC;QAE7B,IAAI,QAAQ,EAAE;YACZ,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,EAAE,CAAC;SACjC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAChC;IAMD,kBAAkB,CAAC,QAAoB;QACrC,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;KACjC;;;;;","names":[],"sources":["src/common/nylas-api-request.ts"],"sourcesContent":["import { dataResponse } from '@/utils/utils';\nimport type { NylasSessions } from '@nylas/identity';\nimport { DataResponseReturnType } from './types';\n\n/**\n * Arguments for making a request to the Nylas API.\n */\nexport type NylasRequestArgs = {\n method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';\n path: string;\n body?: any;\n headers?: Record<string, string>;\n};\n\n/**\n * A model representing a user in the Nylas Identity system.\n */\nexport type User = {\n id: string;\n email: string;\n name?: string;\n};\n\n/**\n * Arguments for authenticating a user with the Nylas Identity system.\n */\nexport type AuthArgs = {\n /**\n * The provider of the user's email address.\n */\n provider?: string;\n /**\n * A list of permission scopes for the provider.\n */\n scope?: Array<string>;\n /**\n * The login hint associated with the user.\n */\n loginHint?: string;\n /**\n * Whether to include grant scopes in the auth exchange.\n */\n includeGrantScopes?: boolean;\n prompt?: string;\n metadata?: string;\n state?: string;\n};\n\n/**\n * Interface for making requests to the Nylas API.\n *\n * This is an abstract class that is meant to be implemented by customers to provide their own\n * implementation of making requests to the Nylas API. This allows customers to use their own\n * authentication mechanism, or to use a different HTTP client library.\n */\nexport abstract class NylasApiRequest {\n /**\n * This method should make an authenticated request to the Nylas API.\n * Note: It should not throw an error if the request fails, but should return an object with the error\n * information as part of the tuple returned.\n * @param args NylasRequestArgs\n */\n abstract request<T = any>(args: NylasRequestArgs): Promise<DataResponseReturnType<T>>;\n\n /**\n * This method should return the current user's information.\n */\n\n abstract currentUser(): Promise<User | null>;\n\n /**\n * This method should set the default authentication arguments to use when authenticating the user.\n */\n abstract setDefaultAuthArgs(authArgs: AuthArgs[]): void;\n\n /**\n * This method should return the URL to redirect the user to for authentication.\n */\n abstract authenticationUrl(authArgs?: AuthArgs): Promise<string | undefined>;\n}\n\n/**\n * A wrapper around the Nylas Identity session that implements the NylasApiRequest interface.\n * This class is used by the Nylas Web Elements to make requests to the Nylas API if no custom\n * implementation of NylasApiRequest is provided.\n */\nexport class NylasIdentityRequestWrapper implements NylasApiRequest {\n /**\n * The Nylas Identity session instance.\n */\n private session: NylasSessions;\n\n /**\n * The grant_id to use for requests, if there is multi-account support\n * enabled in the Nylas Identity settings.\n */\n private activeGrantId?: string;\n\n /**\n * The default authentication arguments to use when authenticating the user.\n */\n private defaultAuthArgs: AuthArgs[] = [];\n\n /**\n * Constructor for the NylasIdentityRequestWrapper class.\n * @param session The Nylas Identity session instance.\n */\n constructor(session: NylasSessions) {\n this.session = session;\n }\n\n /**\n * This method sets the grant_id to use for requests.\n * This is used when there is multi-account support enabled in the Nylas Identity settings.\n *\n * @param grantId\n */\n setActiveGrantId(grantId: string) {\n this.activeGrantId = grantId;\n }\n\n /**\n * This method makes a request to the Nylas API, using the Nylas Identity's fetch method.\n *\n * The `grants/me/` prefix is added because all requests made from the browser to the Nylas API\n * must be made on behalf of the currently logged in user with a valid access token.\n *\n * @param NylasRequestArgs\n * @returns Promise<[T | null, NylasErrorResponse['error'] | null]>\n */\n async request<T>({ method, path, body, headers }: NylasRequestArgs): Promise<DataResponseReturnType<T>> {\n try {\n const response = await this.session.fetch(`grants/me/${path}`, {\n method,\n headers: headers ? new Headers(headers) : undefined,\n body,\n ...(this.session.isMultiAccount() && this.activeGrantId ? { grant_id: this.activeGrantId } : {}),\n });\n\n // Sometimes the Nylas identity session fetch method returns undefined.\n // Possibly due to CORS issues. In this case, we throw an error.\n if (typeof response === 'undefined') {\n throw new Error('Response is undefined');\n }\n\n return dataResponse(response as T);\n } catch (error: any) {\n let errorMessage = String(error);\n if (String(error).includes('Access token not found')) {\n errorMessage = 'Session expired, please log in again. Redirecting...';\n setTimeout(() => {\n localStorage.removeItem('grant');\n localStorage.removeItem('user');\n window.location.reload();\n }, 1000);\n }\n return dataResponse(null as T, {\n message: errorMessage,\n });\n }\n }\n\n /**\n * This method returns the current (logged in) user's information.\n * If the user is not logged in, it returns null.\n * @returns Promise<User | null>\n */\n async currentUser(): Promise<User | null> {\n const grantId = this.session.isMultiAccount() ? this.activeGrantId : undefined;\n const idToken = await this.session.getProfile(grantId);\n if (!idToken) {\n return null;\n }\n\n return {\n id: idToken.sub,\n email: idToken.email,\n name: idToken.name,\n };\n }\n\n /**\n * This method returns the URL to redirect the user to for authentication.\n * @param authConfig authArgs\n * @returns Promise<string | undefined>\n */\n async authenticationUrl(authArgs?: AuthArgs): Promise<string | undefined> {\n const provider = authArgs?.provider || 'google';\n const defaultArgs = this.defaultAuthArgs.find(args => args.provider === provider);\n let args = defaultArgs || {};\n\n if (authArgs) {\n args = { ...args, ...authArgs };\n }\n return this.session.auth(args);\n }\n\n /**\n * This method sets the default authentication arguments to use when authenticating the user.\n * @param authArgs authArgs\n */\n setDefaultAuthArgs(authArgs: AuthArgs[]) {\n this.defaultAuthArgs = authArgs;\n }\n}\n"],"version":3}
@@ -1,11 +1,11 @@
1
- import { r as registerInstance, i as createEvent, h, a as Host, e as getElement } from './index-8362ce5c.js';
2
- import { R as RegisterComponent } from './register-component-8e4e394f.js';
3
- import { a as debug, y as timeToMinutes, z as convertTo12HourFormat, A as minutesToTime, B as convertTo24HourFormat } from './utils-49a1d17b.js';
1
+ import { r as registerInstance, a as createEvent, h, e as Host, i as getElement } from './index-582cfc93.js';
2
+ import { R as RegisterComponent } from './register-component-aef40ec4.js';
3
+ import { a as debug, B as timeToMinutes, C as convertTo12HourFormat, D as minutesToTime, E as convertTo24HourFormat } from './utils-04c10cbd.js';
4
4
  import { T as TIMEZONE_MAP } from './constants-b20948c9.js';
5
5
  import './buffer-es6-5510d761.js';
6
6
  import './_commonjsHelpers-6cbf8316.js';
7
7
 
8
- const nylasAvailabilityPickerCss = ":host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif;width:inherit}.nylas-availability-picker{width:inherit;display:flex;flex-direction:column;margin:1rem;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-200)}.nylas-availability-picker .header{padding:1rem;border-bottom:1px solid var(--nylas-base-200)}.nylas-availability-picker .header h3{margin:0;font-size:16px;font-weight:600;line-height:20px;color:var(--nylas-base-900);text-align:left}.nylas-availability-picker .header p{margin:0.25rem 0 0 0;font-size:0.875rem;font-weight:400;line-height:20px;color:var(--nylas-base-600);text-align:left}.nylas-availability-picker .content{padding:1rem;color:var(--nylas-base-900);font-size:16px;font-family:var(--nylas-font-family)}@media screen and (max-width: 504px){.nylas-availability-picker .content{font-size:15px}}.nylas-availability-picker .content .select-timezone{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--nylas-base-200);padding-bottom:1rem;gap:1rem}.nylas-availability-picker .content .select-timezone h4{display:flex;gap:0.5rem;align-items:center;margin:0;font-size:16px;font-weight:500;line-height:20px}@media screen and (max-width: 504px){.nylas-availability-picker .content .select-timezone h4{font-size:15px}}.nylas-availability-picker .content .availability{display:flex;flex-direction:column;gap:1rem;padding:0 0.5rem;margin:1rem 0}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability{gap:0.5rem;padding:0}}.nylas-availability-picker .content .availability .availability-day{display:grid;grid-template-columns:minmax(auto, 65px) 1fr minmax(auto, 40px);gap:1rem;align-items:baseline}@media screen and (max-width: 768px){.nylas-availability-picker .content .availability .availability-day{grid-template-columns:78px 1fr auto}}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day{display:inline-grid;gap:8px;grid-template-columns:60px 1fr auto}}.nylas-availability-picker .content .availability .availability-day .day{display:flex;gap:0.5rem;align-items:center}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day .day{gap:0.25rem}}.nylas-availability-picker .content .availability .availability-day .day input[type=checkbox]{transform:scale(1.3)}.nylas-availability-picker .content .availability .availability-day .time-ranges span.unavailable{height:48px;display:flex;align-items:center;justify-content:center}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range{display:flex;gap:1.5rem;justify-content:space-between;align-items:baseline}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range{justify-content:unset;gap:0.5rem}}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range .pickers{display:flex;gap:1rem}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range .pickers{gap:0.5rem}}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range .pickers span{margin-top:0.75rem}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range:not(:last-of-type){margin-bottom:1rem}.nylas-availability-picker .content .availability .availability-day .time-ranges p.error{color:var(--nylas-error)}.nylas-availability-picker .content .availability .availability-day button{border:none;background:transparent;height:40px;cursor:pointer;color:var(--nylas-base-800)}.nylas-availability-picker .content .availability .availability-day button:hover,.nylas-availability-picker .content .availability .availability-day button:active{color:var(--nylas-primary)}select-dropdown{width:auto}select-dropdown::part(sd_dropdown-button){justify-content:initial}";
8
+ const nylasAvailabilityPickerCss = ":host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif;width:inherit}.nylas-availability-picker{width:inherit;display:flex;flex-direction:column;margin:1rem;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-200)}.nylas-availability-picker .header{padding:1rem}.nylas-availability-picker .header h3{margin:0;font-size:16px;font-weight:600;line-height:20px;color:var(--nylas-base-900);text-align:left}.nylas-availability-picker .header p{margin:0.25rem 0 0 0;font-size:0.875rem;font-weight:400;line-height:20px;color:var(--nylas-base-600);text-align:left}.nylas-availability-picker .content{padding:1rem;color:var(--nylas-base-900);font-size:16px;font-family:var(--nylas-font-family);border-top:1px solid var(--nylas-base-200)}@media screen and (max-width: 504px){.nylas-availability-picker .content{font-size:15px}}.nylas-availability-picker .content .select-timezone{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--nylas-base-200);padding-bottom:1rem;gap:1rem}.nylas-availability-picker .content .select-timezone h4{display:flex;gap:0.5rem;align-items:center;margin:0;font-size:16px;font-weight:500;line-height:20px}@media screen and (max-width: 504px){.nylas-availability-picker .content .select-timezone h4{font-size:15px}}.nylas-availability-picker .content .availability{display:flex;flex-direction:column;gap:1rem;padding:0 0.5rem;margin:1rem 0}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability{gap:0.5rem;padding:0}}.nylas-availability-picker .content .availability .availability-day{display:grid;grid-template-columns:minmax(auto, 65px) 1fr minmax(auto, 40px);gap:1rem;align-items:baseline}@media screen and (max-width: 768px){.nylas-availability-picker .content .availability .availability-day{grid-template-columns:78px 1fr auto}}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day{display:inline-grid;gap:8px;grid-template-columns:60px 1fr auto}}.nylas-availability-picker .content .availability .availability-day .day{display:flex;gap:0.5rem;align-items:center}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day .day{gap:0.25rem}}.nylas-availability-picker .content .availability .availability-day .day input[type=checkbox]{transform:scale(1.3)}.nylas-availability-picker .content .availability .availability-day .time-ranges span.unavailable{height:48px;display:flex;align-items:center;justify-content:center}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range{display:flex;gap:1.5rem;justify-content:space-between;align-items:baseline}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range{justify-content:unset;gap:0.5rem}}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range .pickers{display:flex;gap:1rem}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range .pickers{gap:0.5rem}}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range .pickers span{margin-top:0.75rem}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range:not(:last-of-type){margin-bottom:1rem}.nylas-availability-picker .content .availability .availability-day .time-ranges p.error{color:var(--nylas-error)}.nylas-availability-picker .content .availability .availability-day button{border:none;background:transparent;height:40px;cursor:pointer;color:var(--nylas-base-800)}.nylas-availability-picker .content .availability .availability-day button:hover,.nylas-availability-picker .content .availability .availability-day button:active{color:var(--nylas-primary)}select-dropdown{width:auto}select-dropdown::part(sd_dropdown-button){justify-content:initial}";
9
9
 
10
10
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
11
11
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -36,6 +36,7 @@ const NylasAvailabilityPicker = class {
36
36
  this.openHours = undefined;
37
37
  this.name = 'availability';
38
38
  this.defaultTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
39
+ this.hideHeader = false;
39
40
  this.schedule = {
40
41
  SUN: [],
41
42
  MON: [{ start: '09:00am', end: '05:00pm' }],
@@ -53,20 +54,13 @@ const NylasAvailabilityPicker = class {
53
54
  this.host.setAttribute('name', newValue);
54
55
  }
55
56
  configChangedHandler(newConfig) {
56
- const organizer = newConfig?.participants?.find(p => p.is_organizer);
57
- if (organizer && organizer?.availability?.open_hours) {
58
- this.openHoursToSchedule(organizer?.availability?.open_hours);
57
+ const defaultOpenHours = newConfig?.availability?.availability_rules?.default_open_hours;
58
+ if (defaultOpenHours) {
59
+ this.openHoursToSchedule(defaultOpenHours);
59
60
  }
60
61
  }
61
62
  scheduleChanged(newValue, oldValue) {
62
63
  if (newValue !== oldValue) {
63
- this.valueChanged.emit({
64
- value: {
65
- openHours: this.scheduleToOpenHours(newValue),
66
- timezone: this.timezone,
67
- },
68
- name: this.name,
69
- });
70
64
  let overlapDays = {};
71
65
  Object.keys(newValue).forEach(key => {
72
66
  const dayTimeRanges = newValue[key];
@@ -95,6 +89,13 @@ const NylasAvailabilityPicker = class {
95
89
  timezone: this.timezone,
96
90
  }));
97
91
  }
92
+ this.valueChanged.emit({
93
+ value: JSON.stringify({
94
+ openHours: this.scheduleToOpenHours(newValue),
95
+ timezone: this.timezone,
96
+ }),
97
+ name: this.name,
98
+ });
98
99
  }
99
100
  }
100
101
  nylasFormDropdownChangedHandler(event) {
@@ -104,10 +105,15 @@ const NylasAvailabilityPicker = class {
104
105
  if (typeof this.internals.setFormValue !== 'function') {
105
106
  return;
106
107
  }
107
- this.internals.setFormValue(JSON.stringify({
108
+ const updateValue = {
108
109
  openHours: this.scheduleToOpenHours(this.schedule),
109
110
  timezone: this.timezone,
110
- }));
111
+ };
112
+ this.internals.setFormValue(JSON.stringify(updateValue));
113
+ this.valueChanged.emit({
114
+ value: JSON.stringify(updateValue),
115
+ name: this.name,
116
+ });
111
117
  }
112
118
  }
113
119
  connectedCallback() {
@@ -128,10 +134,15 @@ const NylasAvailabilityPicker = class {
128
134
  if (typeof this.internals.setFormValue !== 'function') {
129
135
  return;
130
136
  }
131
- this.internals.setFormValue(JSON.stringify({
137
+ const updateValue = {
132
138
  openHours: this.scheduleToOpenHours(this.schedule),
133
139
  timezone: this.timezone,
134
- }));
140
+ };
141
+ this.internals.setFormValue(JSON.stringify(updateValue));
142
+ this.valueChanged.emit({
143
+ value: JSON.stringify(updateValue),
144
+ name: this.name,
145
+ });
135
146
  }
136
147
  getOverlaps(timeRanges) {
137
148
  let timeRangesInMinutes = timeRanges.map((range, index) => ({
@@ -301,7 +312,7 @@ const NylasAvailabilityPicker = class {
301
312
  label: TIMEZONE_MAP[key],
302
313
  value: key,
303
314
  }));
304
- return (h(Host, { key: 'c032e8a3630fe918533895156285e4b37778d812' }, h("div", { key: '1582bd8c1f3ef09d793a7120dafb6c7d420c3e9a', class: "nylas-availability-picker" }, h("div", { key: '61f2c1de7921e15455d7b827379e7d4815f6fb13', class: "header", part: "nap__header" }, h("h3", { key: '238b0ab77477d06a62412fed051d5641924e46d4' }, "General availability"), h("p", { key: '81967b68c5077941a5bf3d055c9be9e41d4ae705' }, "Set your availability for scheduling meetings.")), h("div", { key: 'f1da5a939c1459bd7e9833cf9a97add09d75a822', class: "content" }, h("div", { key: '71e2f859541bd4fb2a4485f3350db5d6bbf73b00', class: "select-timezone", part: "nap__select-timezone" }, h("h4", { key: 'a136696a498fb1521d4d8d844b9b03e2e49ff93a', class: "sub-header" }, "Select timezone", h("span", { key: '52636e30a6dea12cb69d55bd258ed48837826c80', class: "icon" }, h("tooltip-component", { key: '9f0dbc8c234f3550e83bbce3226346981b764896' }, h("info-icon", { key: 'a8f556694bd02b710c89242a3d3057de5b7b0612', slot: "tooltip-icon" }), h("span", { key: 'a8a52dd9835c32becbae165fa972bf6be6e716fa', slot: "tooltip-content" }, "Select your timezone for displaying availability.")))), h("select-dropdown", { key: '4800272cc24dcd24c82a4a89f24131c11e528d8c', name: "timezone", exportparts: "sd_dropdown: nap__timezone-container, sd_dropdown-button: nap__timezone-button, sd_dropdown-content: nap__timezone-dropdown-content", options: timezoneOptions, defaultSelectedOption: timezoneOptions.find(i => i.value === this.defaultTimezone) }, h("span", { key: '8b072e23cd0130f203696f5c99baaad07b1bbb2e', slot: "select-icon" }, h("globe-icon", { key: 'de4c7ef153bff887947d73ed458aa5de0786b576', width: "20", height: "20" })))), h("div", { key: '6234933a0307c253e33ad9242e06c71388ba7a0a', class: "availability", part: "nap__availability" }, Object.keys(this.schedule).map(key => {
315
+ return (h(Host, { key: '81c6118e501f4424ce74cb81530a67f7896a7fca' }, h("div", { key: '6dbcda74a92e36089dfda5b11469c6619bb095e1', class: "nylas-availability-picker", part: "nap" }, !this.hideHeader && (h("div", { class: "header", part: "nap__header" }, h("h3", null, "General availability"), h("p", null, "Set your availability for scheduling meetings."))), h("div", { key: 'f217b53a7ddc2d0554a3c3e44e79580924dbaa43', class: "content" }, h("div", { key: 'fe3dcc1c1c5504e65babb72f7b92f7954e3d4a20', class: "select-timezone", part: "nap__select-timezone" }, h("h4", { key: '0746b7a08e56b8d2359ae37357b46b84b440851c', class: "sub-header" }, "Select timezone", h("span", { key: 'f6d5424b939bec04d0ab01e3b037a5db6ffdbb77', class: "icon" }, h("tooltip-component", { key: '7f6371d4e3ee3ab8c841d3799fbe77a1206084eb' }, h("info-icon", { key: 'ae2b6f45b9eba0c26909b283daceafeddefc7936', slot: "tooltip-icon" }), h("span", { key: '38cb9c51f61d0087216660e5b2a54f42a42663ae', slot: "tooltip-content" }, "Select your timezone for displaying availability.")))), h("select-dropdown", { key: 'e3467d03d104fe090d776bc03306d289de53cb60', name: "timezone", exportparts: "sd_dropdown: nap__timezone-container, sd_dropdown-button: nap__timezone-button, sd_dropdown-content: nap__timezone-dropdown-content", options: timezoneOptions, defaultSelectedOption: timezoneOptions.find(i => i.value === this.defaultTimezone) }, h("span", { key: 'afbee8547454b8eb1ba75a41056e1393fd60c2ec', slot: "select-icon" }, h("globe-icon", { key: '7bc82d7454658d2d0783a7d9422b76fb4083d14f', width: "20", height: "20" })))), h("div", { key: '2fd561856ac6731c16da239cd296545e256dd12d', class: "availability", part: "nap__availability" }, Object.keys(this.schedule).map(key => {
305
316
  const day = key;
306
317
  const timeRanges = this.schedule[key];
307
318
  return (h("div", { class: "availability-day" }, h("div", { class: "day", part: "nap__day" }, h("input", { type: "checkbox", name: day, id: day, checked: timeRanges.length > 0, onClick: () => {