@nylas/web-elements 2.5.6 → 2.5.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (331) hide show
  1. package/dist/cdn/nylas-scheduler-editor/nylas-scheduler-editor.es.js +7317 -7304
  2. package/dist/cdn/nylas-scheduling/nylas-scheduling.es.js +1 -1
  3. package/dist/cjs/{abstract-provider-f3JKAnoC.js → abstract-provider-EX4lu0u8.js} +3 -3
  4. package/dist/cjs/{abstract-provider-f3JKAnoC.js.map → abstract-provider-EX4lu0u8.js.map} +1 -1
  5. package/dist/cjs/calendar-agenda-fill-icon_39.cjs.entry.js +2 -2
  6. package/dist/cjs/checkbox-group_4.cjs.entry.js +3 -3
  7. package/dist/cjs/checkmark-icon_14.cjs.entry.js +2 -2
  8. package/dist/cjs/{customParseFormat-5f0XwO0N.js → customParseFormat-CRtj2ht3.js} +3 -3
  9. package/dist/cjs/{customParseFormat-5f0XwO0N.js.map → customParseFormat-CRtj2ht3.js.map} +1 -1
  10. package/dist/cjs/globe-icon_3.cjs.entry.js +2 -2
  11. package/dist/cjs/google-logo-icon.microsoft-logo-icon.nylas-editor-tabs.nylas-editor-tabs-group.nylas-list-configurations.nylas-select-event-type.entry.cjs.js.map +1 -1
  12. package/dist/cjs/google-logo-icon_6.cjs.entry.js +34 -22
  13. package/dist/cjs/google-logo-icon_6.cjs.entry.js.map +1 -1
  14. package/dist/cjs/index.cjs.js +2 -2
  15. package/dist/cjs/input-component.cjs.entry.js +1 -1
  16. package/dist/cjs/input-dropdown_2.cjs.entry.js +1 -1
  17. package/dist/cjs/input-image-url_2.cjs.entry.js +2 -2
  18. package/dist/cjs/multi-select-dropdown.cjs.entry.js +1 -1
  19. package/dist/cjs/{nylas-api-request-Cbo-19Nf.js → nylas-api-request-8qsFHWUt.js} +3 -3
  20. package/dist/cjs/{nylas-api-request-Cbo-19Nf.js.map → nylas-api-request-8qsFHWUt.js.map} +1 -1
  21. package/dist/cjs/nylas-booked-event-card_11.cjs.entry.js +2 -2
  22. package/dist/cjs/nylas-form-card.cjs.entry.js +2 -2
  23. package/dist/cjs/nylas-notification_2.cjs.entry.js +1 -1
  24. package/dist/cjs/nylas-scheduler-editor.cjs.entry.js +4 -4
  25. package/dist/cjs/nylas-scheduling.cjs.entry.js +3 -3
  26. package/dist/cjs/{register-component-3z1jbXx-.js → register-component-DjG8kzjz.js} +3 -3
  27. package/dist/cjs/{register-component-3z1jbXx-.js.map → register-component-DjG8kzjz.js.map} +1 -1
  28. package/dist/cjs/textarea-component.cjs.entry.js +1 -1
  29. package/dist/cjs/{utils-C5qGWVDr.js → utils-BDriE9YY.js} +17 -2
  30. package/dist/{esm/utils-DDKV6-nQ.js.map → cjs/utils-BDriE9YY.js.map} +1 -1
  31. package/dist/cjs/{version-CJ5046pS.js → version-C5rRjTHU.js} +3 -3
  32. package/dist/cjs/{version-CJ5046pS.js.map → version-C5rRjTHU.js.map} +1 -1
  33. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js +8 -8
  34. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js.map +1 -1
  35. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js +1 -1
  36. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js.map +1 -1
  37. package/dist/collection/components/scheduler-editor/nylas-editor-tabs-group/nylas-editor-tabs-group.js +8 -8
  38. package/dist/collection/components/scheduler-editor/nylas-editor-tabs-group/nylas-editor-tabs-group.js.map +1 -1
  39. package/dist/collection/components/scheduler-editor/nylas-editor-tabs-group/tab-contents-group.js +1 -1
  40. package/dist/collection/components/scheduler-editor/nylas-editor-tabs-group/tab-contents-group.js.map +1 -1
  41. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.js +15 -3
  42. package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.js.map +1 -1
  43. package/dist/collection/utils/utils.js +14 -0
  44. package/dist/collection/utils/utils.js.map +1 -1
  45. package/dist/collection/version.js +1 -1
  46. package/dist/collection/version.js.map +1 -1
  47. package/dist/components/index.js +1 -1
  48. package/dist/components/input-component.js +1 -1
  49. package/dist/components/input-image-url.js +1 -1
  50. package/dist/components/multi-select-dropdown.js +1 -1
  51. package/dist/components/nylas-additional-participants.js +1 -1
  52. package/dist/components/nylas-availability-picker.js +1 -1
  53. package/dist/components/nylas-booked-event-card.js +1 -1
  54. package/dist/components/nylas-booking-calendar-picker.js +1 -1
  55. package/dist/components/nylas-booking-confirmation-redirect.js +1 -1
  56. package/dist/components/nylas-booking-confirmation-type.js +1 -1
  57. package/dist/components/nylas-booking-form-config.js +1 -1
  58. package/dist/components/nylas-booking-form.js +1 -1
  59. package/dist/components/nylas-buffer-time.js +1 -1
  60. package/dist/components/nylas-calendar-picker.js +1 -1
  61. package/dist/components/nylas-cancel-booking-form.js +1 -1
  62. package/dist/components/nylas-cancellation-policy.js +1 -1
  63. package/dist/components/nylas-cancelled-event-card.js +1 -1
  64. package/dist/components/nylas-confirmation-email.js +1 -1
  65. package/dist/components/nylas-confirmed-event-card.js +1 -1
  66. package/dist/components/nylas-connected-calendars.js +1 -1
  67. package/dist/components/nylas-custom-booking-flow.js +1 -1
  68. package/dist/components/nylas-custom-event-slug.js +1 -1
  69. package/dist/components/nylas-customize-booking-settings.js +1 -1
  70. package/dist/components/nylas-date-component.js +1 -1
  71. package/dist/components/nylas-date-picker.js +1 -1
  72. package/dist/components/nylas-disable-emails.js +1 -1
  73. package/dist/components/nylas-editor-tabs-group.js +1 -1
  74. package/dist/components/nylas-editor-tabs.js +1 -1
  75. package/dist/components/nylas-event-calendar.js +1 -1
  76. package/dist/components/nylas-event-capacity.js +1 -1
  77. package/dist/components/nylas-event-description.js +1 -1
  78. package/dist/components/nylas-event-duration.js +1 -1
  79. package/dist/components/nylas-event-info.js +1 -1
  80. package/dist/components/nylas-event-limits.js +1 -1
  81. package/dist/components/nylas-event-location.js +1 -1
  82. package/dist/components/nylas-event-timeslot.js +1 -1
  83. package/dist/components/nylas-event-title.js +1 -1
  84. package/dist/components/nylas-feedback-form.js +1 -1
  85. package/dist/components/nylas-form-card.js +1 -1
  86. package/dist/components/nylas-limit-future-bookings.js +1 -1
  87. package/dist/components/nylas-list-configurations.js +1 -1
  88. package/dist/components/nylas-locale-switch.js +1 -1
  89. package/dist/components/nylas-min-booking-notice.js +1 -1
  90. package/dist/components/nylas-min-cancellation-notice.js +1 -1
  91. package/dist/components/nylas-notetaker-config.js +1 -1
  92. package/dist/components/nylas-notification.js +1 -1
  93. package/dist/components/nylas-only-specific-time-availability.js +1 -1
  94. package/dist/components/nylas-organizer-confirmation-card.js +1 -1
  95. package/dist/components/nylas-page-name.js +1 -1
  96. package/dist/components/nylas-page-styling.js +1 -1
  97. package/dist/components/nylas-participant-booking-calendars.js +1 -1
  98. package/dist/components/nylas-participants-custom-availability.js +1 -1
  99. package/dist/components/nylas-reminder-emails.js +1 -1
  100. package/dist/components/nylas-reminder-time.js +1 -1
  101. package/dist/components/nylas-scheduler-editor.js +56 -56
  102. package/dist/components/nylas-scheduling-method.js +1 -1
  103. package/dist/components/nylas-scheduling.js +19 -19
  104. package/dist/components/nylas-select-event-type.js +1 -1
  105. package/dist/components/nylas-selected-event-card.js +1 -1
  106. package/dist/components/nylas-specific-time-availability-picker.js +1 -1
  107. package/dist/components/nylas-time-window-picker.js +1 -1
  108. package/dist/components/nylas-timeslot-interval.js +1 -1
  109. package/dist/components/nylas-timeslot-picker.js +1 -1
  110. package/dist/components/{p-U-EdxzfX.js → p-4jS2598L.js} +3 -3
  111. package/dist/components/{p-U-EdxzfX.js.map → p-4jS2598L.js.map} +1 -1
  112. package/dist/components/{p-BNfHz7A2.js → p-B2_cvJns.js} +5 -5
  113. package/dist/components/{p-BNfHz7A2.js.map → p-B2_cvJns.js.map} +1 -1
  114. package/dist/components/{p-ClGGIEMi.js → p-B2iddmWd.js} +5 -5
  115. package/dist/components/{p-ClGGIEMi.js.map → p-B2iddmWd.js.map} +1 -1
  116. package/dist/components/{p-D8Gq0LJd.js → p-B5zQj3-Z.js} +4 -4
  117. package/dist/components/{p-D8Gq0LJd.js.map → p-B5zQj3-Z.js.map} +1 -1
  118. package/dist/components/{p-xxFdByBn.js → p-BCUF1qcs.js} +17 -3
  119. package/dist/components/p-BCUF1qcs.js.map +1 -0
  120. package/dist/components/{p-B54mNgSc.js → p-BNzrPoR6.js} +5 -5
  121. package/dist/components/{p-B54mNgSc.js.map → p-BNzrPoR6.js.map} +1 -1
  122. package/dist/components/{p-CsyEOZaq.js → p-BRszp61A.js} +3 -3
  123. package/dist/components/{p-CsyEOZaq.js.map → p-BRszp61A.js.map} +1 -1
  124. package/dist/components/{p-D4C1TKzq.js → p-BTo3RJwU.js} +5 -5
  125. package/dist/components/{p-D4C1TKzq.js.map → p-BTo3RJwU.js.map} +1 -1
  126. package/dist/components/{p-D-3RU2oS.js → p-BWCjcWGP.js} +4 -4
  127. package/dist/components/{p-D-3RU2oS.js.map → p-BWCjcWGP.js.map} +1 -1
  128. package/dist/components/{p-CXqwQnQF.js → p-Bj4ZUpbc.js} +4 -4
  129. package/dist/components/{p-CXqwQnQF.js.map → p-Bj4ZUpbc.js.map} +1 -1
  130. package/dist/components/{p-FYD-tPqw.js → p-C1Z2qktB.js} +7 -7
  131. package/dist/components/{p-FYD-tPqw.js.map → p-C1Z2qktB.js.map} +1 -1
  132. package/dist/components/{p-Bzhy3cc5.js → p-C2EKszp0.js} +3 -3
  133. package/dist/components/{p-Bzhy3cc5.js.map → p-C2EKszp0.js.map} +1 -1
  134. package/dist/components/{p-DRgnghCP.js → p-CJ7rVNTy.js} +4 -4
  135. package/dist/components/{p-DRgnghCP.js.map → p-CJ7rVNTy.js.map} +1 -1
  136. package/dist/components/{p-irdXl5Fp.js → p-CM9l-8zy.js} +5 -5
  137. package/dist/components/{p-irdXl5Fp.js.map → p-CM9l-8zy.js.map} +1 -1
  138. package/dist/components/{p-DtHKroeT.js → p-CNvWFjFr.js} +4 -4
  139. package/dist/components/{p-DtHKroeT.js.map → p-CNvWFjFr.js.map} +1 -1
  140. package/dist/components/{p-DPBfMry4.js → p-CSECxNkF.js} +6 -6
  141. package/dist/components/{p-DPBfMry4.js.map → p-CSECxNkF.js.map} +1 -1
  142. package/dist/components/{p-CSqqWusO.js → p-CbB5JFln.js} +4 -4
  143. package/dist/components/{p-CSqqWusO.js.map → p-CbB5JFln.js.map} +1 -1
  144. package/dist/components/{p-DBwy7Snv.js → p-CeWOPOaM.js} +4 -4
  145. package/dist/components/{p-DBwy7Snv.js.map → p-CeWOPOaM.js.map} +1 -1
  146. package/dist/components/{p-CMF0O-Fp.js → p-Cf-rjo7-.js} +6 -6
  147. package/dist/components/{p-CMF0O-Fp.js.map → p-Cf-rjo7-.js.map} +1 -1
  148. package/dist/components/{p-wJcvwuFy.js → p-CfNiz60j.js} +5 -5
  149. package/dist/components/{p-wJcvwuFy.js.map → p-CfNiz60j.js.map} +1 -1
  150. package/dist/components/{p-BIbAx1y2.js → p-Ch03cZa9.js} +3 -3
  151. package/dist/components/{p-BIbAx1y2.js.map → p-Ch03cZa9.js.map} +1 -1
  152. package/dist/components/{p-Dxtgg1gN.js → p-CjMpnxmP.js} +3 -3
  153. package/dist/components/{p-Dxtgg1gN.js.map → p-CjMpnxmP.js.map} +1 -1
  154. package/dist/components/{p-CrXOqjIw.js → p-Co08mMKn.js} +4 -4
  155. package/dist/components/{p-CrXOqjIw.js.map → p-Co08mMKn.js.map} +1 -1
  156. package/dist/components/{p-jHq8WTky.js → p-CpP2uaEo.js} +3 -3
  157. package/dist/components/{p-jHq8WTky.js.map → p-CpP2uaEo.js.map} +1 -1
  158. package/dist/components/{p-DzkCpPXX.js → p-CqVcXov0.js} +7 -7
  159. package/dist/components/{p-DzkCpPXX.js.map → p-CqVcXov0.js.map} +1 -1
  160. package/dist/components/{p-CYy1pa_3.js → p-Cx6l-C7e.js} +4 -4
  161. package/dist/components/{p-CYy1pa_3.js.map → p-Cx6l-C7e.js.map} +1 -1
  162. package/dist/components/{p-zzOzXpMC.js → p-Czoh6-K4.js} +6 -6
  163. package/dist/components/{p-zzOzXpMC.js.map → p-Czoh6-K4.js.map} +1 -1
  164. package/dist/components/{p-DBEvFYf0.js → p-D6yyOiee.js} +5 -5
  165. package/dist/components/{p-DBEvFYf0.js.map → p-D6yyOiee.js.map} +1 -1
  166. package/dist/components/{p-CLMQXVmv.js → p-D7Xfdt74.js} +4 -4
  167. package/dist/components/{p-CLMQXVmv.js.map → p-D7Xfdt74.js.map} +1 -1
  168. package/dist/components/{p-8jVEXvkn.js → p-D8f8zHZu.js} +5 -5
  169. package/dist/components/{p-8jVEXvkn.js.map → p-D8f8zHZu.js.map} +1 -1
  170. package/dist/components/{p-mElO3u2v.js → p-DGUo_p68.js} +4 -4
  171. package/dist/components/{p-mElO3u2v.js.map → p-DGUo_p68.js.map} +1 -1
  172. package/dist/components/{p-nozjdB6e.js → p-DGwr7E6J.js} +4 -4
  173. package/dist/components/{p-nozjdB6e.js.map → p-DGwr7E6J.js.map} +1 -1
  174. package/dist/components/{p-CUL-OCAu.js → p-DWMCGYZt.js} +5 -5
  175. package/dist/components/{p-CUL-OCAu.js.map → p-DWMCGYZt.js.map} +1 -1
  176. package/dist/components/{p-Dj4JDZ9W.js → p-D_8c_n1h.js} +4 -4
  177. package/dist/components/{p-Dj4JDZ9W.js.map → p-D_8c_n1h.js.map} +1 -1
  178. package/dist/components/{p-DxYfbkxH.js → p-D_CPIneS.js} +3 -3
  179. package/dist/components/{p-DxYfbkxH.js.map → p-D_CPIneS.js.map} +1 -1
  180. package/dist/components/{p-Bye3Di82.js → p-DclMe63w.js} +3 -3
  181. package/dist/components/{p-Bye3Di82.js.map → p-DclMe63w.js.map} +1 -1
  182. package/dist/components/{p-DR_UXNMx.js → p-DfNywLNk.js} +4 -4
  183. package/dist/components/{p-DR_UXNMx.js.map → p-DfNywLNk.js.map} +1 -1
  184. package/dist/components/{p-5ZYkWuBH.js → p-DjFQHhGY.js} +4 -4
  185. package/dist/components/{p-5ZYkWuBH.js.map → p-DjFQHhGY.js.map} +1 -1
  186. package/dist/components/{p-SjPGcPOD.js → p-DjQuy9Lc.js} +5 -5
  187. package/dist/components/{p-SjPGcPOD.js.map → p-DjQuy9Lc.js.map} +1 -1
  188. package/dist/components/{p-CIiKlhjq.js → p-Dlku8PCX.js} +4 -4
  189. package/dist/components/{p-CIiKlhjq.js.map → p-Dlku8PCX.js.map} +1 -1
  190. package/dist/components/{p-D1laIpmv.js → p-Dm3gIdGZ.js} +7 -7
  191. package/dist/components/{p-D1laIpmv.js.map → p-Dm3gIdGZ.js.map} +1 -1
  192. package/dist/components/{p-Uj5eg-r1.js → p-DqVU9VaM.js} +48 -48
  193. package/dist/components/p-DqVU9VaM.js.map +1 -0
  194. package/dist/components/{p-NkqnymW3.js → p-DqgGszYv.js} +8 -8
  195. package/dist/components/{p-NkqnymW3.js.map → p-DqgGszYv.js.map} +1 -1
  196. package/dist/components/{p-D19TzH-m.js → p-DrmjHhDH.js} +5 -5
  197. package/dist/components/{p-D19TzH-m.js.map → p-DrmjHhDH.js.map} +1 -1
  198. package/dist/components/{p-cIIaCJPC.js → p-DswqiER3.js} +3 -3
  199. package/dist/components/{p-cIIaCJPC.js.map → p-DswqiER3.js.map} +1 -1
  200. package/dist/components/{p-BhY18Huj.js → p-Dwxouxgj.js} +4 -4
  201. package/dist/components/{p-BhY18Huj.js.map → p-Dwxouxgj.js.map} +1 -1
  202. package/dist/components/{p-B_HtmTBC.js → p-EKeBVTKB.js} +5 -5
  203. package/dist/components/{p-B_HtmTBC.js.map → p-EKeBVTKB.js.map} +1 -1
  204. package/dist/components/{p-CTDkYArQ.js → p-FBEildbE.js} +8 -8
  205. package/dist/components/{p-CTDkYArQ.js.map → p-FBEildbE.js.map} +1 -1
  206. package/dist/components/{p-C8K-8dJ0.js → p-HJ5amhvq.js} +58 -58
  207. package/dist/components/p-HJ5amhvq.js.map +1 -0
  208. package/dist/components/{p-BpDfyvY4.js → p-OAhdn1vx.js} +3 -3
  209. package/dist/components/{p-BpDfyvY4.js.map → p-OAhdn1vx.js.map} +1 -1
  210. package/dist/components/{p-CKPYi9FX.js → p-W0q3GPje.js} +3 -3
  211. package/dist/components/{p-CKPYi9FX.js.map → p-W0q3GPje.js.map} +1 -1
  212. package/dist/components/{p-DFSt8wfH.js → p-eej_Ksq1.js} +5 -5
  213. package/dist/components/{p-DFSt8wfH.js.map → p-eej_Ksq1.js.map} +1 -1
  214. package/dist/components/{p-D_ZAV9If.js → p-f0IvxSr9.js} +6 -6
  215. package/dist/components/{p-D_ZAV9If.js.map → p-f0IvxSr9.js.map} +1 -1
  216. package/dist/components/{p-fOr8r1Zc.js → p-hmiyEk6L.js} +20 -8
  217. package/dist/components/p-hmiyEk6L.js.map +1 -0
  218. package/dist/components/{p-DDjhKQi2.js → p-i8gpwgDT.js} +4 -4
  219. package/dist/components/{p-DDjhKQi2.js.map → p-i8gpwgDT.js.map} +1 -1
  220. package/dist/components/{p-ByIpuB6X.js → p-ixTtdC_2.js} +5 -5
  221. package/dist/components/{p-ByIpuB6X.js.map → p-ixTtdC_2.js.map} +1 -1
  222. package/dist/components/{p-CpMfG8zc.js → p-lV8W1_93.js} +17 -17
  223. package/dist/components/{p-CpMfG8zc.js.map → p-lV8W1_93.js.map} +1 -1
  224. package/dist/components/{p-CABFxRgm.js → p-oVDOs1AN.js} +4 -4
  225. package/dist/components/{p-CABFxRgm.js.map → p-oVDOs1AN.js.map} +1 -1
  226. package/dist/components/{p-B0eXe4fu.js → p-pY2yw_Ql.js} +8 -8
  227. package/dist/components/{p-B0eXe4fu.js.map → p-pY2yw_Ql.js.map} +1 -1
  228. package/dist/components/{p-BqcSDTPa.js → p-rODq8j3H.js} +5 -5
  229. package/dist/components/{p-BqcSDTPa.js.map → p-rODq8j3H.js.map} +1 -1
  230. package/dist/components/{p-CHMf20sF.js → p-sH4nuWqV.js} +4 -4
  231. package/dist/components/{p-CHMf20sF.js.map → p-sH4nuWqV.js.map} +1 -1
  232. package/dist/components/{p-BCdaMIEZ.js → p-tIcs9Qo5.js} +5 -5
  233. package/dist/components/{p-BCdaMIEZ.js.map → p-tIcs9Qo5.js.map} +1 -1
  234. package/dist/components/{p-C1IR0LII.js → p-uQf7jw6y.js} +7 -7
  235. package/dist/components/{p-C1IR0LII.js.map → p-uQf7jw6y.js.map} +1 -1
  236. package/dist/components/{p-SbxgHNeG.js → p-umrdj-23.js} +5 -5
  237. package/dist/components/{p-SbxgHNeG.js.map → p-umrdj-23.js.map} +1 -1
  238. package/dist/components/{p-sKaBe5Hr.js → p-w9ANRXbn.js} +5 -5
  239. package/dist/components/{p-sKaBe5Hr.js.map → p-w9ANRXbn.js.map} +1 -1
  240. package/dist/components/{p-CXxRydPc.js → p-xnXT49TS.js} +4 -4
  241. package/dist/components/{p-CXxRydPc.js.map → p-xnXT49TS.js.map} +1 -1
  242. package/dist/components/{p-6buYtCek.js → p-y15sKy8D.js} +4 -4
  243. package/dist/components/{p-6buYtCek.js.map → p-y15sKy8D.js.map} +1 -1
  244. package/dist/components/textarea-component.js +1 -1
  245. package/dist/components/time-period-selector.js +1 -1
  246. package/dist/esm/{abstract-provider-Dbnlk0Q8.js → abstract-provider-DfvNw5fP.js} +3 -3
  247. package/dist/esm/{abstract-provider-Dbnlk0Q8.js.map → abstract-provider-DfvNw5fP.js.map} +1 -1
  248. package/dist/esm/calendar-agenda-fill-icon_39.entry.js +2 -2
  249. package/dist/esm/checkbox-group_4.entry.js +3 -3
  250. package/dist/esm/checkmark-icon_14.entry.js +2 -2
  251. package/dist/esm/{customParseFormat-xZjyidlk.js → customParseFormat-BUZsRKas.js} +3 -3
  252. package/dist/esm/{customParseFormat-xZjyidlk.js.map → customParseFormat-BUZsRKas.js.map} +1 -1
  253. package/dist/esm/globe-icon_3.entry.js +2 -2
  254. package/dist/esm/google-logo-icon.microsoft-logo-icon.nylas-editor-tabs.nylas-editor-tabs-group.nylas-list-configurations.nylas-select-event-type.entry.js.map +1 -1
  255. package/dist/esm/google-logo-icon_6.entry.js +34 -22
  256. package/dist/esm/google-logo-icon_6.entry.js.map +1 -1
  257. package/dist/esm/index.js +2 -2
  258. package/dist/esm/input-component.entry.js +1 -1
  259. package/dist/esm/input-dropdown_2.entry.js +1 -1
  260. package/dist/esm/input-image-url_2.entry.js +2 -2
  261. package/dist/esm/multi-select-dropdown.entry.js +1 -1
  262. package/dist/esm/{nylas-api-request-tYrM5hQX.js → nylas-api-request-B3Fj4B-L.js} +3 -3
  263. package/dist/esm/{nylas-api-request-tYrM5hQX.js.map → nylas-api-request-B3Fj4B-L.js.map} +1 -1
  264. package/dist/esm/nylas-booked-event-card_11.entry.js +2 -2
  265. package/dist/esm/nylas-form-card.entry.js +2 -2
  266. package/dist/esm/nylas-notification_2.entry.js +1 -1
  267. package/dist/esm/nylas-scheduler-editor.entry.js +4 -4
  268. package/dist/esm/nylas-scheduling.entry.js +3 -3
  269. package/dist/esm/{register-component-3SZ7gAeK.js → register-component-B9YP9nha.js} +3 -3
  270. package/dist/esm/{register-component-3SZ7gAeK.js.map → register-component-B9YP9nha.js.map} +1 -1
  271. package/dist/esm/textarea-component.entry.js +1 -1
  272. package/dist/esm/{utils-DDKV6-nQ.js → utils-OpKyWV8q.js} +17 -3
  273. package/dist/{cjs/utils-C5qGWVDr.js.map → esm/utils-OpKyWV8q.js.map} +1 -1
  274. package/dist/esm/{version-Xc-4F4Ta.js → version-C5BO7xwe.js} +3 -3
  275. package/dist/esm/{version-Xc-4F4Ta.js.map → version-C5BO7xwe.js.map} +1 -1
  276. package/dist/nylas-web-elements/google-logo-icon.microsoft-logo-icon.nylas-editor-tabs.nylas-editor-tabs-group.nylas-list-configurations.nylas-select-event-type.entry.esm.js.map +1 -1
  277. package/dist/nylas-web-elements/index.esm.js +1 -1
  278. package/dist/nylas-web-elements/nylas-web-elements.esm.js +1 -1
  279. package/dist/nylas-web-elements/p-083268de.entry.js +2 -0
  280. package/dist/nylas-web-elements/p-083268de.entry.js.map +1 -0
  281. package/dist/nylas-web-elements/{p-926c0f10.entry.js → p-2f3a33e1.entry.js} +2 -2
  282. package/dist/nylas-web-elements/{p-473a9f48.entry.js → p-330c2159.entry.js} +2 -2
  283. package/dist/nylas-web-elements/{p-2e34476b.entry.js → p-38806f4d.entry.js} +2 -2
  284. package/dist/nylas-web-elements/p-3f66ac98.entry.js +2 -0
  285. package/dist/nylas-web-elements/{p-49510dd2.entry.js.map → p-3f66ac98.entry.js.map} +1 -1
  286. package/dist/nylas-web-elements/{p-bb4b9655.entry.js → p-4d9bdaa0.entry.js} +2 -2
  287. package/dist/nylas-web-elements/{p-469c232b.entry.js → p-85955466.entry.js} +2 -2
  288. package/dist/nylas-web-elements/{p-b9a991fe.entry.js → p-97034347.entry.js} +2 -2
  289. package/dist/nylas-web-elements/{p-4c51d165.entry.js → p-9a5ddc21.entry.js} +2 -2
  290. package/dist/nylas-web-elements/{p-CONX24aJ.js → p-C-mOw2iU.js} +2 -2
  291. package/dist/nylas-web-elements/{p-CONX24aJ.js.map → p-C-mOw2iU.js.map} +1 -1
  292. package/dist/nylas-web-elements/{p-Xc-4F4Ta.js → p-C5BO7xwe.js} +2 -2
  293. package/dist/nylas-web-elements/{p-Xc-4F4Ta.js.map → p-C5BO7xwe.js.map} +1 -1
  294. package/dist/nylas-web-elements/{p-Cz68LNCB.js → p-D8VJgipo.js} +2 -2
  295. package/dist/nylas-web-elements/{p-Cz68LNCB.js.map → p-D8VJgipo.js.map} +1 -1
  296. package/dist/nylas-web-elements/{p-CpfLRTv0.js → p-FlNKXp4j.js} +2 -2
  297. package/dist/nylas-web-elements/{p-CpfLRTv0.js.map → p-FlNKXp4j.js.map} +1 -1
  298. package/dist/nylas-web-elements/{p-DDKV6-nQ.js → p-OpKyWV8q.js} +2 -2
  299. package/dist/nylas-web-elements/{p-DDKV6-nQ.js.map → p-OpKyWV8q.js.map} +1 -1
  300. package/dist/nylas-web-elements/{p-CZUjPf2B.js → p-S0IPwRIR.js} +2 -2
  301. package/dist/nylas-web-elements/{p-CZUjPf2B.js.map → p-S0IPwRIR.js.map} +1 -1
  302. package/dist/nylas-web-elements/{p-b877c010.entry.js → p-ad920702.entry.js} +2 -2
  303. package/dist/nylas-web-elements/{p-c71c04d0.entry.js → p-ae86e7c6.entry.js} +3 -3
  304. package/dist/nylas-web-elements/{p-6245bad4.entry.js → p-cc4150a5.entry.js} +3 -3
  305. package/dist/nylas-web-elements/{p-42432de0.entry.js → p-db79a1ca.entry.js} +2 -2
  306. package/dist/nylas-web-elements/p-e240fd68.entry.js +2 -0
  307. package/dist/nylas-web-elements/{p-f74f3a8d.entry.js.map → p-e240fd68.entry.js.map} +1 -1
  308. package/dist/nylas-web-elements/{p-90569d2b.entry.js → p-f235211e.entry.js} +2 -2
  309. package/dist/types/utils/utils.d.ts +1 -0
  310. package/dist/types/version.d.ts +1 -1
  311. package/package.json +1 -1
  312. package/dist/components/p-C8K-8dJ0.js.map +0 -1
  313. package/dist/components/p-Uj5eg-r1.js.map +0 -1
  314. package/dist/components/p-fOr8r1Zc.js.map +0 -1
  315. package/dist/components/p-xxFdByBn.js.map +0 -1
  316. package/dist/nylas-web-elements/p-49510dd2.entry.js +0 -2
  317. package/dist/nylas-web-elements/p-7186d262.entry.js +0 -2
  318. package/dist/nylas-web-elements/p-7186d262.entry.js.map +0 -1
  319. package/dist/nylas-web-elements/p-f74f3a8d.entry.js +0 -2
  320. /package/dist/nylas-web-elements/{p-926c0f10.entry.js.map → p-2f3a33e1.entry.js.map} +0 -0
  321. /package/dist/nylas-web-elements/{p-473a9f48.entry.js.map → p-330c2159.entry.js.map} +0 -0
  322. /package/dist/nylas-web-elements/{p-2e34476b.entry.js.map → p-38806f4d.entry.js.map} +0 -0
  323. /package/dist/nylas-web-elements/{p-bb4b9655.entry.js.map → p-4d9bdaa0.entry.js.map} +0 -0
  324. /package/dist/nylas-web-elements/{p-469c232b.entry.js.map → p-85955466.entry.js.map} +0 -0
  325. /package/dist/nylas-web-elements/{p-b9a991fe.entry.js.map → p-97034347.entry.js.map} +0 -0
  326. /package/dist/nylas-web-elements/{p-4c51d165.entry.js.map → p-9a5ddc21.entry.js.map} +0 -0
  327. /package/dist/nylas-web-elements/{p-b877c010.entry.js.map → p-ad920702.entry.js.map} +0 -0
  328. /package/dist/nylas-web-elements/{p-c71c04d0.entry.js.map → p-ae86e7c6.entry.js.map} +0 -0
  329. /package/dist/nylas-web-elements/{p-6245bad4.entry.js.map → p-cc4150a5.entry.js.map} +0 -0
  330. /package/dist/nylas-web-elements/{p-42432de0.entry.js.map → p-db79a1ca.entry.js.map} +0 -0
  331. /package/dist/nylas-web-elements/{p-90569d2b.entry.js.map → p-f235211e.entry.js.map} +0 -0
@@ -1,12 +1,12 @@
1
1
  import { p as proxyCustomElement, H, e as createEvent, h, i as Host } from './p-Bht9ktsW.js';
2
- import { R as RegisterComponent } from './p-jHq8WTky.js';
3
- import { a as debug, e as error } from './p-xxFdByBn.js';
2
+ import { R as RegisterComponent } from './p-CpP2uaEo.js';
3
+ import { a as debug, e as error } from './p-BCUF1qcs.js';
4
4
  import { i as instance } from './p-BjxQTsOy.js';
5
5
  import { d as defineCustomElement$6 } from './p-kbilJltW.js';
6
6
  import { d as defineCustomElement$5 } from './p-ao6VxuAL.js';
7
7
  import { d as defineCustomElement$4 } from './p-CFeDwD40.js';
8
8
  import { d as defineCustomElement$3 } from './p-d3kelm3z.js';
9
- import { d as defineCustomElement$2 } from './p-cIIaCJPC.js';
9
+ import { d as defineCustomElement$2 } from './p-DswqiER3.js';
10
10
  import { d as defineCustomElement$1 } from './p-DxDoo-4C.js';
11
11
 
12
12
  const nylasCustomEventSlugCss = ":host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-50:#ffeae8;--nylas-error-100:#ffc5bf;--nylas-error-200:#fecaca;--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-color-blue-100:#e0e6f9;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif;--nylas-color-black:#000000;--nylas-color-grey-900:#2c2c2c;--nylas-color-grey-800:#4b4b4b;--nylas-color-grey-700:#6e6e6e;--nylas-color-grey-600:#8e8e8e;--nylas-color-grey-500:#b3b3b3;--nylas-color-grey-400:#cacaca;--nylas-color-grey-300:#e1e1e1;--nylas-color-grey-200:#eaeaea;--nylas-color-grey-100:#f5f5f5;--nylas-color-grey-50:#fbfcfe;--nylas-color-white:#ffffff;--nylas-color-red-900:#992222;--nylas-color-red-700:#cc4841;--nylas-color-red-500:#ff786a;--nylas-color-red-300:#ffa79e;--nylas-color-red-100:#ffc5bf;--nylas-color-red-50:#ffeae8;--nylas-color-blue-900:#213571;--nylas-color-blue-700:#314fa9;--nylas-color-blue-500:#4169e1;--nylas-color-blue-300:#bdccf9;--nylas-color-blue-100:#e0e6f9;--nylas-color-blue-50:#f6f8fd;--nylas-color-yellow-900:#7c6506;--nylas-color-yellow-700:#c29f09;--nylas-color-yellow-500:#f7c90b;--nylas-color-yellow-300:#f9de70;--nylas-color-yellow-100:#fceba9;--nylas-color-yellow-50:#fdf4ce;--nylas-color-green-900:#0e6b60;--nylas-color-green-700:#16a392;--nylas-color-green-500:#17c3b2;--nylas-color-green-300:#74dbd1;--nylas-color-green-100:#a2e7e0;--nylas-color-green-50:#d1f3f0;--nylas-color-purple-900:#643554;--nylas-color-purple-700:#954f7d;--nylas-color-purple-500:#c769a7;--nylas-color-purple-300:#dda5ca;--nylas-color-purple-100:#e0bdd6;--nylas-color-purple-50:#e9dde5;--nylas-color-sky-900:#20698f;--nylas-color-sky-700:#2b8fc2;--nylas-color-sky-500:#6dceff;--nylas-color-sky-300:#8fdaff;--nylas-color-sky-100:#b8e7ff;--nylas-color-sky-50:#d9f2ff;width:inherit}.nylas-custom-event-slug{width:inherit;display:flex;flex-direction:column;margin:1rem;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-200);text-align:left;background-color:var(--nylas-base-0);color:var(--nylas-base-900)}.nylas-custom-event-slug .header{padding:1rem;display:grid;grid-template-columns:1fr auto}.nylas-custom-event-slug .header h3{border-radius:var(--nylas-border-radius-2x);margin:0;font-size:16px;font-weight:600;line-height:20px;color:var(--nylas-base-900);text-align:left}.nylas-custom-event-slug .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-custom-event-slug .header .drawer-toggle{display:flex;gap:24px;align-items:center}.nylas-custom-event-slug .header .drawer-toggle .chevron{display:flex;align-self:center;cursor:pointer}.nylas-custom-event-slug .header .drawer-toggle .chevron:hover,.nylas-custom-event-slug .header .drawer-toggle .chevron:active{color:var(--nylas-primary)}.nylas-custom-event-slug .header .drawer-toggle .chevron.open{transform:rotate(90deg)}.nylas-custom-event-slug .header .drawer-toggle .chevron.closed{transform:rotate(270deg)}.nylas-custom-event-slug .header .drawer-toggle .chevron.disabled{cursor:not-allowed;color:var(--nylas-base-300)}.nylas-custom-event-slug .header .drawer-toggle .chevron.disabled:hover{color:var(--nylas-base-300)}.nylas-custom-event-slug .nylas-custom-event-slug__body{display:grid;grid-template-columns:1fr;background-color:var(--nylas-base-25);border-radius:0 0 var(--nylas-border-radius-2x) var(--nylas-border-radius-2x);border-top:1px solid var(--nylas-base-200)}@media screen and (max-width: 768px){.nylas-custom-event-slug .nylas-custom-event-slug__body{grid-template-columns:1fr}}.nylas-custom-event-slug .nylas-custom-event-slug__body .nylas-custom-event-slug__section{padding:1rem;display:flex;flex-direction:column;gap:1rem;color:var(--nylas-base-800)}@media screen and (max-width: 768px){.nylas-custom-event-slug .nylas-custom-event-slug__body .nylas-custom-event-slug__section{border:none}}.nylas-custom-event-slug .nylas-custom-event-slug__body .nylas-custom-event-slug__section .nylas-custom-event-slug__row{display:flex;align-items:center;gap:1rem}.nylas-custom-event-slug .nylas-custom-event-slug__body .nylas-custom-event-slug__section .nylas-custom-event-slug__row label{display:flex;align-items:center}.nylas-custom-event-slug .nylas-custom-event-slug__body .nylas-custom-event-slug__section .nylas-custom-event-slug__row label span.required{color:var(--nylas-error, #cc4841)}.nylas-custom-event-slug .nylas-custom-event-slug__body .nylas-custom-event-slug__section .nylas-custom-event-slug__row label span.label-icon{margin-left:4px}.nylas-custom-event-slug .nylas-custom-event-slug__body .nylas-custom-event-slug__section .nylas-custom-event-slug__row label span.label-icon tooltip-component{display:flex}.nylas-custom-event-slug .nylas-custom-event-slug__body .nylas-custom-event-slug__section .nylas-custom-event-slug__row p{margin:0.25rem 0 0 0;font-size:16px;font-weight:500;line-height:24px;color:var(--nylas-base-900)}.nylas-custom-event-slug .nylas-custom-event-slug__body .nylas-custom-event-slug__section .nylas-custom-event-slug__row .input-container{width:100%}.nylas-custom-event-slug .nylas-custom-event-slug__body span.error-message{color:var(--nylas-error)}.nylas-custom-event-slug .nylas-custom-event-slug__body span.help-text{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-custom-event-slug .nylas-custom-event-slug__input-wrapper{display:flex;height:48px;padding-left:16px;align-items:center;gap:8px;align-self:stretch;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-300);background:var(--nylas-base-0);width:-webkit-fill-available;color:var(--nylas-base-900);font-size:16px;font-style:normal;font-weight:400;line-height:150%;width:-moz-available;width:-webkit-fill-available;display:flex;flex-direction:row;gap:0.125rem;border-radius:var(--nylas-border-radius-2x);z-index:1}.nylas-custom-event-slug .nylas-custom-event-slug__input-wrapper:focus{outline-color:var(--nylas-primary)}.nylas-custom-event-slug .nylas-custom-event-slug__input-wrapper.error{border-radius:var(--nylas-border-radius-2x);font-weight:600;border-color:var(--nylas-error);border-width:2px}.nylas-custom-event-slug .nylas-custom-event-slug__input-wrapper.error::placeholder{font-weight:400}.nylas-custom-event-slug .nylas-custom-event-slug__input-wrapper::placeholder{color:var(--nylas-base-300)}.nylas-custom-event-slug .nylas-custom-event-slug__input-wrapper.focus{outline:2px solid var(--nylas-primary)}.nylas-custom-event-slug .nylas-custom-event-slug__input-wrapper.error{border-color:var(--nylas-error);outline:none}.nylas-custom-event-slug .nylas-custom-event-slug__input-wrapper input-component::part(ic__input){outline:none;border:none;width:100%;font-size:16px;height:auto;padding-left:0px}.nylas-custom-event-slug .nylas-custom-event-slug__input-wrapper .prefix{z-index:0;margin-top:1px;color:var(--nylas-base-400);font-weight:500;font-size:24px}.nylas-custom-event-slug .nylas-custom-event-slug__input-wrapper .icon{margin-right:0.25rem;padding:0 0.75rem;height:100%;display:flex;align-items:center;right:0;cursor:pointer;user-select:none}.nylas-custom-event-slug .nylas-custom-event-slug__input-wrapper .icon.disabled{cursor:not-allowed}.nylas-custom-event-slug .nylas-custom-event-slug__input-wrapper .icon:hover svg path{fill:var(--nylas-primary)}.nylas-custom-event-slug .nylas-custom-event-slug__input-wrapper .icon:active svg path{fill:var(--nylas-base-500)}.nylas-custom-event-slug .nylas-custom-event-slug__input-wrapper .icon .copied{display:flex;align-items:center;font-size:0.875rem;gap:0.125rem}";
@@ -254,6 +254,6 @@ function defineCustomElement() {
254
254
  }
255
255
 
256
256
  export { NylasCustomEventSlug as N, defineCustomElement as d };
257
- //# sourceMappingURL=p-B_HtmTBC.js.map
257
+ //# sourceMappingURL=p-EKeBVTKB.js.map
258
258
 
259
- //# sourceMappingURL=p-B_HtmTBC.js.map
259
+ //# sourceMappingURL=p-EKeBVTKB.js.map
@@ -1 +1 @@
1
- {"file":"p-B_HtmTBC.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","i18next"],"sources":["src/components/scheduler-editor/nylas-custom-event-slug/nylas-custom-event-slug.scss?tag=nylas-custom-event-slug&encapsulation=shadow","src/components/scheduler-editor/nylas-custom-event-slug/nylas-custom-event-slug.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n@use '../../../common/mixins/inputs' as *;\n\n:host {\n display: block;\n @include default-css-variables;\n width: inherit;\n}\n\n.nylas-custom-event-slug {\n width: inherit;\n display: flex;\n flex-direction: column;\n margin: 1rem;\n border-radius: var(--nylas-border-radius-2x);\n border: 1px solid var(--nylas-base-200);\n text-align: left;\n background-color: var(--nylas-base-0);\n color: var(--nylas-base-900);\n\n .header {\n padding: 1rem;\n display: grid;\n grid-template-columns: 1fr auto;\n\n h3 {\n border-radius: var(--nylas-border-radius-2x);\n margin: 0;\n font-size: 16px;\n font-weight: 600;\n line-height: 20px;\n color: var(--nylas-base-900);\n text-align: left;\n }\n\n p {\n margin: 0.25rem 0 0 0;\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 20px;\n color: var(--nylas-base-600);\n text-align: left;\n }\n\n .drawer-toggle {\n display: flex;\n gap: 24px;\n align-items: center;\n\n .chevron {\n display: flex;\n align-self: center;\n cursor: pointer;\n\n &:hover,\n &:active {\n color: var(--nylas-primary);\n }\n\n &.open {\n transform: rotate(90deg);\n }\n\n &.closed {\n transform: rotate(270deg);\n }\n\n &.disabled {\n cursor: not-allowed;\n color: var(--nylas-base-300);\n\n &:hover {\n color: var(--nylas-base-300);\n }\n }\n }\n }\n }\n\n .nylas-custom-event-slug__body {\n display: grid;\n grid-template-columns: 1fr;\n background-color: var(--nylas-base-25);\n border-radius: 0 0 var(--nylas-border-radius-2x) var(--nylas-border-radius-2x);\n border-top: 1px solid var(--nylas-base-200);\n\n @media #{$mobile} {\n grid-template-columns: 1fr;\n }\n\n .nylas-custom-event-slug__section {\n padding: 1rem;\n display: flex;\n flex-direction: column;\n gap: 1rem;\n color: var(--nylas-base-800);\n\n @media #{$mobile} {\n border: none;\n }\n\n .nylas-custom-event-slug__row {\n display: flex;\n align-items: center;\n gap: 1rem;\n\n label {\n display: flex;\n align-items: center;\n\n span.required {\n color: var(--nylas-error, #cc4841);\n }\n\n span.label-icon {\n margin-left: 4px;\n\n tooltip-component {\n display: flex;\n }\n }\n }\n\n p {\n margin: 0.25rem 0 0 0;\n font-size: 16px;\n font-weight: 500;\n line-height: 24px;\n color: var(--nylas-base-900);\n }\n\n .input-container {\n width: 100%;\n }\n }\n }\n\n span.error-message {\n color: var(--nylas-error);\n }\n\n span.help-text {\n margin: 0.25rem 0 0 0;\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 20px;\n color: var(--nylas-base-600);\n text-align: left;\n }\n }\n\n .nylas-custom-event-slug__input-wrapper {\n @include textfield;\n width: -moz-available;\n width: -webkit-fill-available;\n display: flex;\n flex-direction: row;\n gap: 0.125rem;\n border-radius: var(--nylas-border-radius-2x);\n z-index: 1;\n\n &.focus {\n outline: 2px solid var(--nylas-primary);\n }\n\n &.error {\n border-color: var(--nylas-error);\n outline: none;\n }\n\n input-component::part(ic__input) {\n outline: none;\n border: none;\n width: 100%;\n font-size: 16px;\n height: auto;\n padding-left: 0px;\n }\n\n .prefix {\n z-index: 0;\n margin-top: 1px;\n color: var(--nylas-base-400);\n font-weight: 500;\n font-size: 24px;\n }\n\n .icon {\n margin-right: 0.25rem;\n padding: 0 0.75rem;\n height: 100%;\n display: flex;\n align-items: center;\n right: 0;\n cursor: pointer;\n user-select: none;\n\n &.disabled {\n cursor: not-allowed;\n }\n\n &:hover {\n svg path {\n fill: var(--nylas-primary);\n }\n }\n\n &:active {\n svg path {\n fill: var(--nylas-base-500);\n }\n }\n\n .copied {\n display: flex;\n align-items: center;\n font-size: 0.875rem;\n gap: 0.125rem;\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug, error } from '@/utils/utils';\nimport { AttachInternals, Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport { Configuration } from '@nylas/core';\nimport i18next from '@/utils/i18n';\nimport { LANGUAGE_CODE } from '@/common/constants';\nimport { ThemeConfig } from '@nylas/core';\n\n/**\n * The `nylas-custom-event-slug` component is a UI component that allows users to add a custom URL slug for their event link.\n *\n * @part nces - The nylas-custom-event-slug container\n * @part nces__body - The body of the event communication section\n * @part nces__header - The header of the event communication section\n * @part nces__drawer-toggle--container - The card's drawer toggle container\n * @part nces__input-textfield - The custom slug input textfield\n */\n@Component({\n tag: 'nylas-custom-event-slug',\n styleUrl: 'nylas-custom-event-slug.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasCustomEventSlug {\n @Element() host!: HTMLNylasCustomEventSlugElement;\n /**\n * The selected config\n */\n @Prop() selectedConfiguration?: Configuration;\n /**\n * The default custom event slug\n */\n @Prop() defaultUrlSlug?: string;\n /**\n * Is the custom event slug card expanded\n */\n @Prop() isOpen: boolean = true;\n /**\n * Slug error message\n */\n @Prop() slugErrorMessage: string = '';\n /**\n * The name of the component\n */\n @Prop() name: string = 'custom-event-slug';\n /**\n * Indicates if a slug is required for the configuration.\n * When set to true, the user must enter a slug when creating or editing a configuration.\n * The slug is used for hosted pages that are public.\n */\n @Prop() requiresSlug: boolean = false;\n /**\n * The selected language.\n */\n @Prop() selectedLanguage?: LANGUAGE_CODE;\n /**\n * @standalone\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: ThemeConfig;\n /**\n * The element internals.\n */\n @AttachInternals() internals!: ElementInternals;\n\n /**\n * The URL slug state\n */\n @State() urlSlug!: string;\n\n /**\n * The focus state of the input container.\n */\n @State() focus = false;\n\n /**\n * The copied state for the copy to clipboard button\n */\n @State() copied = false;\n\n @State() requiredError: string = i18next.t('fieldRequired', { field: 'Slug' });\n @State() patternError: string = i18next.t('invalidInputFormat', { field: 'Slug' });\n\n /**\n * This event is fired when the slug value changes\n */\n @Event() valueChanged!: EventEmitter<{\n value: string;\n name: string;\n valueChanged?: (event: CustomEvent<{ value: string; name: string }>) => void;\n }>;\n\n // Lifecycle methods\n connectedCallback() {\n debug('nylas-custom-event-slug', 'connectedCallback');\n // Use queueMicrotask to defer theme application until after React has set props.\n // This fixes the timing issue where connectedCallback fires before React sets themeConfig.\n queueMicrotask(() => {\n if (this.themeConfig) {\n this.applyThemeConfig(this.themeConfig);\n this.host.setAttribute('data-themed', '');\n }\n });\n }\n\n disconnectedCallback() {\n debug('nylas-custom-event-slug', 'disconnectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-custom-event-slug', 'componentWillLoad');\n // See comment in the @Watch('name') decorator for more information.\n this.host.setAttribute('name', this.name);\n }\n\n componentDidLoad() {\n debug('nylas-custom-event-slug', 'componentDidLoad');\n if (this.selectedConfiguration) {\n this.selectedConfigurationChangedHandler(this.selectedConfiguration);\n } else {\n debug('No selected configuration found');\n this.urlSlug = this.defaultUrlSlug || '';\n }\n }\n\n componentWillUpdate() {\n debug('nylas-custom-event-slug', 'componentWillUpdate');\n }\n\n componentDidUpdate() {\n debug('nylas-custom-event-slug', 'componentDidUpdate');\n }\n\n componentWillRender() {\n debug('nylas-custom-event-slug', 'componentWillRender');\n }\n\n componentDidRender() {\n debug('nylas-custom-event-slug', 'componentDidRender');\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-custom-event-slug', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @Watch('selectedConfiguration')\n selectedConfigurationChangedHandler(newValue: Configuration) {\n debug('nylas-custom-booking-flow', 'selectedConfigurationChangedHandler', newValue);\n this.urlSlug = newValue?.slug || this.defaultUrlSlug || '';\n }\n\n @Watch('selectedLanguage')\n selectedLanguageChangedHandler(newVal: LANGUAGE_CODE, oldVal: LANGUAGE_CODE) {\n if (newVal === oldVal) return;\n i18next.changeLanguage(newVal);\n this.requiredError = i18next.t('fieldRequired', { field: 'Slug' });\n this.patternError = i18next.t('invalidInputFormat', { field: 'Slug' });\n }\n\n @Watch('themeConfig')\n themeConfigChangedHandler(newVal: ThemeConfig, oldVal: ThemeConfig) {\n if (newVal === oldVal) return;\n this.applyThemeConfig(newVal);\n }\n\n @Listen('nylasFormInputChanged')\n async nylasFormInputChangeHandler(event: CustomEvent<{ value: string; name: string }>) {\n const { name, value } = event.detail;\n this.internals.setValidity({});\n\n if (name === 'event-slug') {\n this.urlSlug = value;\n this.internals.setFormValue(JSON.stringify(value), this.name);\n this.valueChanged.emit({ value: JSON.stringify(value), name: this.name });\n }\n }\n\n @Listen('nylasFormInputFocused')\n async nylasFormInputFocusHandler() {\n this.focus = true;\n }\n\n @Listen('nylasFormInputBlurred')\n async nylasFormInputBlurHandler() {\n this.slugErrorMessage = '';\n this.internals.setValidity({});\n this.focus = false;\n if (this.requiresSlug && this.urlSlug.trim() === '') {\n this.internals.setValidity({ customError: true }, i18next.t('nylasCustomEventSlug.slugRequiredErrorMessage'));\n this.slugErrorMessage = i18next.t('nylasCustomEventSlug.slugRequiredErrorMessage');\n return;\n }\n if (!/^[A-Za-z0-9._-]*$/.test(this.urlSlug.trim())) {\n this.internals.setValidity({ customError: true }, i18next.t('nylasCustomEventSlug.slugErrorMessage'));\n this.slugErrorMessage = i18next.t('nylasCustomEventSlug.slugErrorMessage');\n }\n }\n\n @Listen('formSubmitted', { target: 'window' })\n formSubmittedHandler(event: CustomEvent) {\n debug('nylas-event-title', 'formSubmittedHandler', event);\n this.nylasFormInputBlurHandler();\n }\n\n applyThemeConfig(themeConfig?: ThemeConfig) {\n if (themeConfig) {\n for (const [key, value] of Object.entries(themeConfig)) {\n this.host.style.setProperty(`${key}`, value);\n }\n }\n }\n\n toggleDrawer() {\n this.isOpen = !this.isOpen;\n }\n\n async copyToClipboard() {\n try {\n await navigator.clipboard.writeText(`${this.urlSlug}`);\n\n this.copied = true;\n setTimeout(() => {\n this.copied = false;\n }, 1000);\n } catch (err) {\n error('Failed to copy: ', err);\n }\n }\n\n @RegisterComponent<NylasCustomEventSlug, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-custom-event-slug',\n stateToProps: new Map([\n ['schedulerConfig.requiresSlug', 'requiresSlug'],\n ['schedulerConfig.selectedConfiguration', 'selectedConfiguration'],\n ['schedulerConfig.selectedLanguage', 'selectedLanguage'],\n ['schedulerConfig.themeConfig', 'themeConfig'],\n ]),\n eventToProps: {\n valueChanged: async (\n event: CustomEvent<{ value: string; name: string; valueChanged?: (event: CustomEvent<{ value: string; name: string }>) => void }>,\n _nylasSchedulerConfigConnector: NylasSchedulerConfigConnector,\n ) => {\n const { valueChanged } = event.detail;\n // If a handler is passed, call it.\n if (valueChanged) {\n valueChanged(event);\n }\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n if (!this.requiresSlug) return null;\n const isComponentReady = typeof this.urlSlug !== 'undefined';\n return (\n <Host>\n <div class=\"nylas-custom-event-slug\" part=\"nces\">\n <div class=\"header\" part=\"nces__header\">\n <div>\n <h3>{i18next.t('nylasCustomEventSlug.headerTitle')}</h3>\n <p>{i18next.t('nylasCustomEventSlug.headerSubTitle')}</p>\n </div>\n <div class=\"drawer-toggle\" part=\"nces__drawer-toggle--container\">\n <span class={`chevron ${this.isOpen ? 'open' : 'closed'} `} onClick={() => this.toggleDrawer()}>\n <chevron-icon width=\"24\" height=\"24\" />\n </span>\n </div>\n </div>\n\n {this.isOpen && (\n <div class=\"nylas-custom-event-slug__body\" part=\"nces__body\">\n <div class=\"nylas-custom-event-slug__section\">\n <div class=\"nylas-custom-event-slug__row\">\n <div class=\"input-container\">\n <label>\n {i18next.t('nylasCustomEventSlug.eventSlugLabel')}\n <span class=\"label-icon\">\n <tooltip-component>\n <info-icon slot=\"tooltip-icon\" />\n <span slot=\"tooltip-content\">{i18next.t('nylasCustomEventSlug.tooltip.desc')}</span>\n </tooltip-component>\n </span>\n </label>\n\n <div class={{ 'nylas-custom-event-slug__input-wrapper': true, 'focus': this.focus, 'error': !!this.slugErrorMessage }}>\n <div slot=\"prefix\" class=\"prefix\">\n &#47;\n </div>\n {isComponentReady && (\n <input-component\n name=\"event-slug\"\n id=\"event-slug\"\n type=\"text\"\n required={false}\n placeholder=\"my-link-name\"\n exportparts=\"ic_input: nces__input-textfield\"\n defaultValue={this.urlSlug}\n requiredError={this.requiredError}\n patternError={this.patternError}\n themeConfig={this.themeConfig}\n />\n )}\n <div slot=\"icon\" class={{ icon: true, disabled: !this.urlSlug }} onClick={() => !this.copied && !!this.urlSlug && this.copyToClipboard()}>\n {this.copied ? (\n <div class=\"copied\">\n <checkmark-icon width=\"12\" height=\"18\" /> {i18next.t('nylasCustomEventSlug.copied')}\n </div>\n ) : (\n <copy-icon width=\"12\" height=\"18\" />\n )}\n </div>\n </div>\n {this.slugErrorMessage && <span class=\"error-message\">{this.slugErrorMessage}</span>}\n </div>\n </div>\n </div>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-EKeBVTKB.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","i18next"],"sources":["src/components/scheduler-editor/nylas-custom-event-slug/nylas-custom-event-slug.scss?tag=nylas-custom-event-slug&encapsulation=shadow","src/components/scheduler-editor/nylas-custom-event-slug/nylas-custom-event-slug.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n@use '../../../common/mixins/inputs' as *;\n\n:host {\n display: block;\n @include default-css-variables;\n width: inherit;\n}\n\n.nylas-custom-event-slug {\n width: inherit;\n display: flex;\n flex-direction: column;\n margin: 1rem;\n border-radius: var(--nylas-border-radius-2x);\n border: 1px solid var(--nylas-base-200);\n text-align: left;\n background-color: var(--nylas-base-0);\n color: var(--nylas-base-900);\n\n .header {\n padding: 1rem;\n display: grid;\n grid-template-columns: 1fr auto;\n\n h3 {\n border-radius: var(--nylas-border-radius-2x);\n margin: 0;\n font-size: 16px;\n font-weight: 600;\n line-height: 20px;\n color: var(--nylas-base-900);\n text-align: left;\n }\n\n p {\n margin: 0.25rem 0 0 0;\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 20px;\n color: var(--nylas-base-600);\n text-align: left;\n }\n\n .drawer-toggle {\n display: flex;\n gap: 24px;\n align-items: center;\n\n .chevron {\n display: flex;\n align-self: center;\n cursor: pointer;\n\n &:hover,\n &:active {\n color: var(--nylas-primary);\n }\n\n &.open {\n transform: rotate(90deg);\n }\n\n &.closed {\n transform: rotate(270deg);\n }\n\n &.disabled {\n cursor: not-allowed;\n color: var(--nylas-base-300);\n\n &:hover {\n color: var(--nylas-base-300);\n }\n }\n }\n }\n }\n\n .nylas-custom-event-slug__body {\n display: grid;\n grid-template-columns: 1fr;\n background-color: var(--nylas-base-25);\n border-radius: 0 0 var(--nylas-border-radius-2x) var(--nylas-border-radius-2x);\n border-top: 1px solid var(--nylas-base-200);\n\n @media #{$mobile} {\n grid-template-columns: 1fr;\n }\n\n .nylas-custom-event-slug__section {\n padding: 1rem;\n display: flex;\n flex-direction: column;\n gap: 1rem;\n color: var(--nylas-base-800);\n\n @media #{$mobile} {\n border: none;\n }\n\n .nylas-custom-event-slug__row {\n display: flex;\n align-items: center;\n gap: 1rem;\n\n label {\n display: flex;\n align-items: center;\n\n span.required {\n color: var(--nylas-error, #cc4841);\n }\n\n span.label-icon {\n margin-left: 4px;\n\n tooltip-component {\n display: flex;\n }\n }\n }\n\n p {\n margin: 0.25rem 0 0 0;\n font-size: 16px;\n font-weight: 500;\n line-height: 24px;\n color: var(--nylas-base-900);\n }\n\n .input-container {\n width: 100%;\n }\n }\n }\n\n span.error-message {\n color: var(--nylas-error);\n }\n\n span.help-text {\n margin: 0.25rem 0 0 0;\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 20px;\n color: var(--nylas-base-600);\n text-align: left;\n }\n }\n\n .nylas-custom-event-slug__input-wrapper {\n @include textfield;\n width: -moz-available;\n width: -webkit-fill-available;\n display: flex;\n flex-direction: row;\n gap: 0.125rem;\n border-radius: var(--nylas-border-radius-2x);\n z-index: 1;\n\n &.focus {\n outline: 2px solid var(--nylas-primary);\n }\n\n &.error {\n border-color: var(--nylas-error);\n outline: none;\n }\n\n input-component::part(ic__input) {\n outline: none;\n border: none;\n width: 100%;\n font-size: 16px;\n height: auto;\n padding-left: 0px;\n }\n\n .prefix {\n z-index: 0;\n margin-top: 1px;\n color: var(--nylas-base-400);\n font-weight: 500;\n font-size: 24px;\n }\n\n .icon {\n margin-right: 0.25rem;\n padding: 0 0.75rem;\n height: 100%;\n display: flex;\n align-items: center;\n right: 0;\n cursor: pointer;\n user-select: none;\n\n &.disabled {\n cursor: not-allowed;\n }\n\n &:hover {\n svg path {\n fill: var(--nylas-primary);\n }\n }\n\n &:active {\n svg path {\n fill: var(--nylas-base-500);\n }\n }\n\n .copied {\n display: flex;\n align-items: center;\n font-size: 0.875rem;\n gap: 0.125rem;\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug, error } from '@/utils/utils';\nimport { AttachInternals, Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport { Configuration } from '@nylas/core';\nimport i18next from '@/utils/i18n';\nimport { LANGUAGE_CODE } from '@/common/constants';\nimport { ThemeConfig } from '@nylas/core';\n\n/**\n * The `nylas-custom-event-slug` component is a UI component that allows users to add a custom URL slug for their event link.\n *\n * @part nces - The nylas-custom-event-slug container\n * @part nces__body - The body of the event communication section\n * @part nces__header - The header of the event communication section\n * @part nces__drawer-toggle--container - The card's drawer toggle container\n * @part nces__input-textfield - The custom slug input textfield\n */\n@Component({\n tag: 'nylas-custom-event-slug',\n styleUrl: 'nylas-custom-event-slug.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasCustomEventSlug {\n @Element() host!: HTMLNylasCustomEventSlugElement;\n /**\n * The selected config\n */\n @Prop() selectedConfiguration?: Configuration;\n /**\n * The default custom event slug\n */\n @Prop() defaultUrlSlug?: string;\n /**\n * Is the custom event slug card expanded\n */\n @Prop() isOpen: boolean = true;\n /**\n * Slug error message\n */\n @Prop() slugErrorMessage: string = '';\n /**\n * The name of the component\n */\n @Prop() name: string = 'custom-event-slug';\n /**\n * Indicates if a slug is required for the configuration.\n * When set to true, the user must enter a slug when creating or editing a configuration.\n * The slug is used for hosted pages that are public.\n */\n @Prop() requiresSlug: boolean = false;\n /**\n * The selected language.\n */\n @Prop() selectedLanguage?: LANGUAGE_CODE;\n /**\n * @standalone\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: ThemeConfig;\n /**\n * The element internals.\n */\n @AttachInternals() internals!: ElementInternals;\n\n /**\n * The URL slug state\n */\n @State() urlSlug!: string;\n\n /**\n * The focus state of the input container.\n */\n @State() focus = false;\n\n /**\n * The copied state for the copy to clipboard button\n */\n @State() copied = false;\n\n @State() requiredError: string = i18next.t('fieldRequired', { field: 'Slug' });\n @State() patternError: string = i18next.t('invalidInputFormat', { field: 'Slug' });\n\n /**\n * This event is fired when the slug value changes\n */\n @Event() valueChanged!: EventEmitter<{\n value: string;\n name: string;\n valueChanged?: (event: CustomEvent<{ value: string; name: string }>) => void;\n }>;\n\n // Lifecycle methods\n connectedCallback() {\n debug('nylas-custom-event-slug', 'connectedCallback');\n // Use queueMicrotask to defer theme application until after React has set props.\n // This fixes the timing issue where connectedCallback fires before React sets themeConfig.\n queueMicrotask(() => {\n if (this.themeConfig) {\n this.applyThemeConfig(this.themeConfig);\n this.host.setAttribute('data-themed', '');\n }\n });\n }\n\n disconnectedCallback() {\n debug('nylas-custom-event-slug', 'disconnectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-custom-event-slug', 'componentWillLoad');\n // See comment in the @Watch('name') decorator for more information.\n this.host.setAttribute('name', this.name);\n }\n\n componentDidLoad() {\n debug('nylas-custom-event-slug', 'componentDidLoad');\n if (this.selectedConfiguration) {\n this.selectedConfigurationChangedHandler(this.selectedConfiguration);\n } else {\n debug('No selected configuration found');\n this.urlSlug = this.defaultUrlSlug || '';\n }\n }\n\n componentWillUpdate() {\n debug('nylas-custom-event-slug', 'componentWillUpdate');\n }\n\n componentDidUpdate() {\n debug('nylas-custom-event-slug', 'componentDidUpdate');\n }\n\n componentWillRender() {\n debug('nylas-custom-event-slug', 'componentWillRender');\n }\n\n componentDidRender() {\n debug('nylas-custom-event-slug', 'componentDidRender');\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-custom-event-slug', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @Watch('selectedConfiguration')\n selectedConfigurationChangedHandler(newValue: Configuration) {\n debug('nylas-custom-booking-flow', 'selectedConfigurationChangedHandler', newValue);\n this.urlSlug = newValue?.slug || this.defaultUrlSlug || '';\n }\n\n @Watch('selectedLanguage')\n selectedLanguageChangedHandler(newVal: LANGUAGE_CODE, oldVal: LANGUAGE_CODE) {\n if (newVal === oldVal) return;\n i18next.changeLanguage(newVal);\n this.requiredError = i18next.t('fieldRequired', { field: 'Slug' });\n this.patternError = i18next.t('invalidInputFormat', { field: 'Slug' });\n }\n\n @Watch('themeConfig')\n themeConfigChangedHandler(newVal: ThemeConfig, oldVal: ThemeConfig) {\n if (newVal === oldVal) return;\n this.applyThemeConfig(newVal);\n }\n\n @Listen('nylasFormInputChanged')\n async nylasFormInputChangeHandler(event: CustomEvent<{ value: string; name: string }>) {\n const { name, value } = event.detail;\n this.internals.setValidity({});\n\n if (name === 'event-slug') {\n this.urlSlug = value;\n this.internals.setFormValue(JSON.stringify(value), this.name);\n this.valueChanged.emit({ value: JSON.stringify(value), name: this.name });\n }\n }\n\n @Listen('nylasFormInputFocused')\n async nylasFormInputFocusHandler() {\n this.focus = true;\n }\n\n @Listen('nylasFormInputBlurred')\n async nylasFormInputBlurHandler() {\n this.slugErrorMessage = '';\n this.internals.setValidity({});\n this.focus = false;\n if (this.requiresSlug && this.urlSlug.trim() === '') {\n this.internals.setValidity({ customError: true }, i18next.t('nylasCustomEventSlug.slugRequiredErrorMessage'));\n this.slugErrorMessage = i18next.t('nylasCustomEventSlug.slugRequiredErrorMessage');\n return;\n }\n if (!/^[A-Za-z0-9._-]*$/.test(this.urlSlug.trim())) {\n this.internals.setValidity({ customError: true }, i18next.t('nylasCustomEventSlug.slugErrorMessage'));\n this.slugErrorMessage = i18next.t('nylasCustomEventSlug.slugErrorMessage');\n }\n }\n\n @Listen('formSubmitted', { target: 'window' })\n formSubmittedHandler(event: CustomEvent) {\n debug('nylas-event-title', 'formSubmittedHandler', event);\n this.nylasFormInputBlurHandler();\n }\n\n applyThemeConfig(themeConfig?: ThemeConfig) {\n if (themeConfig) {\n for (const [key, value] of Object.entries(themeConfig)) {\n this.host.style.setProperty(`${key}`, value);\n }\n }\n }\n\n toggleDrawer() {\n this.isOpen = !this.isOpen;\n }\n\n async copyToClipboard() {\n try {\n await navigator.clipboard.writeText(`${this.urlSlug}`);\n\n this.copied = true;\n setTimeout(() => {\n this.copied = false;\n }, 1000);\n } catch (err) {\n error('Failed to copy: ', err);\n }\n }\n\n @RegisterComponent<NylasCustomEventSlug, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-custom-event-slug',\n stateToProps: new Map([\n ['schedulerConfig.requiresSlug', 'requiresSlug'],\n ['schedulerConfig.selectedConfiguration', 'selectedConfiguration'],\n ['schedulerConfig.selectedLanguage', 'selectedLanguage'],\n ['schedulerConfig.themeConfig', 'themeConfig'],\n ]),\n eventToProps: {\n valueChanged: async (\n event: CustomEvent<{ value: string; name: string; valueChanged?: (event: CustomEvent<{ value: string; name: string }>) => void }>,\n _nylasSchedulerConfigConnector: NylasSchedulerConfigConnector,\n ) => {\n const { valueChanged } = event.detail;\n // If a handler is passed, call it.\n if (valueChanged) {\n valueChanged(event);\n }\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n if (!this.requiresSlug) return null;\n const isComponentReady = typeof this.urlSlug !== 'undefined';\n return (\n <Host>\n <div class=\"nylas-custom-event-slug\" part=\"nces\">\n <div class=\"header\" part=\"nces__header\">\n <div>\n <h3>{i18next.t('nylasCustomEventSlug.headerTitle')}</h3>\n <p>{i18next.t('nylasCustomEventSlug.headerSubTitle')}</p>\n </div>\n <div class=\"drawer-toggle\" part=\"nces__drawer-toggle--container\">\n <span class={`chevron ${this.isOpen ? 'open' : 'closed'} `} onClick={() => this.toggleDrawer()}>\n <chevron-icon width=\"24\" height=\"24\" />\n </span>\n </div>\n </div>\n\n {this.isOpen && (\n <div class=\"nylas-custom-event-slug__body\" part=\"nces__body\">\n <div class=\"nylas-custom-event-slug__section\">\n <div class=\"nylas-custom-event-slug__row\">\n <div class=\"input-container\">\n <label>\n {i18next.t('nylasCustomEventSlug.eventSlugLabel')}\n <span class=\"label-icon\">\n <tooltip-component>\n <info-icon slot=\"tooltip-icon\" />\n <span slot=\"tooltip-content\">{i18next.t('nylasCustomEventSlug.tooltip.desc')}</span>\n </tooltip-component>\n </span>\n </label>\n\n <div class={{ 'nylas-custom-event-slug__input-wrapper': true, 'focus': this.focus, 'error': !!this.slugErrorMessage }}>\n <div slot=\"prefix\" class=\"prefix\">\n &#47;\n </div>\n {isComponentReady && (\n <input-component\n name=\"event-slug\"\n id=\"event-slug\"\n type=\"text\"\n required={false}\n placeholder=\"my-link-name\"\n exportparts=\"ic_input: nces__input-textfield\"\n defaultValue={this.urlSlug}\n requiredError={this.requiredError}\n patternError={this.patternError}\n themeConfig={this.themeConfig}\n />\n )}\n <div slot=\"icon\" class={{ icon: true, disabled: !this.urlSlug }} onClick={() => !this.copied && !!this.urlSlug && this.copyToClipboard()}>\n {this.copied ? (\n <div class=\"copied\">\n <checkmark-icon width=\"12\" height=\"18\" /> {i18next.t('nylasCustomEventSlug.copied')}\n </div>\n ) : (\n <copy-icon width=\"12\" height=\"18\" />\n )}\n </div>\n </div>\n {this.slugErrorMessage && <span class=\"error-message\">{this.slugErrorMessage}</span>}\n </div>\n </div>\n </div>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,16 +1,16 @@
1
1
  import { p as proxyCustomElement, H, e as createEvent, h, i as Host } from './p-Bht9ktsW.js';
2
- import { R as RegisterComponent } from './p-jHq8WTky.js';
3
- import { h as dayjs, w as utc, x as timezone, a as debug, X as generateRRule, Y as getTimezoneOffset, T as TIMEZONE_MAP } from './p-xxFdByBn.js';
2
+ import { R as RegisterComponent } from './p-CpP2uaEo.js';
3
+ import { h as dayjs, w as utc, x as timezone, a as debug, Y as generateRRule, Z as getTimezoneOffset, T as TIMEZONE_MAP } from './p-BCUF1qcs.js';
4
4
  import { i as instance } from './p-BjxQTsOy.js';
5
- import { c as customParseFormat, d as defineCustomElement$4 } from './p-DxYfbkxH.js';
5
+ import { c as customParseFormat, d as defineCustomElement$4 } from './p-D_CPIneS.js';
6
6
  import { d as defineCustomElement$9 } from './p-ao6VxuAL.js';
7
7
  import { d as defineCustomElement$8 } from './p-DS6Ijr4M.js';
8
- import { d as defineCustomElement$7 } from './p-cIIaCJPC.js';
8
+ import { d as defineCustomElement$7 } from './p-DswqiER3.js';
9
9
  import { d as defineCustomElement$6 } from './p-BF0muZ9G.js';
10
- import { d as defineCustomElement$5 } from './p-BIbAx1y2.js';
10
+ import { d as defineCustomElement$5 } from './p-Ch03cZa9.js';
11
11
  import { d as defineCustomElement$3 } from './p-DBHtQK2b.js';
12
12
  import { d as defineCustomElement$2 } from './p-wphqTozF.js';
13
- import { d as defineCustomElement$1 } from './p-CKPYi9FX.js';
13
+ import { d as defineCustomElement$1 } from './p-W0q3GPje.js';
14
14
 
15
15
  const nylasEventTimeslotCss = ":host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-50:#ffeae8;--nylas-error-100:#ffc5bf;--nylas-error-200:#fecaca;--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-color-blue-100:#e0e6f9;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:\"Inter\", sans-serif;--nylas-color-black:#000000;--nylas-color-grey-900:#2c2c2c;--nylas-color-grey-800:#4b4b4b;--nylas-color-grey-700:#6e6e6e;--nylas-color-grey-600:#8e8e8e;--nylas-color-grey-500:#b3b3b3;--nylas-color-grey-400:#cacaca;--nylas-color-grey-300:#e1e1e1;--nylas-color-grey-200:#eaeaea;--nylas-color-grey-100:#f5f5f5;--nylas-color-grey-50:#fbfcfe;--nylas-color-white:#ffffff;--nylas-color-red-900:#992222;--nylas-color-red-700:#cc4841;--nylas-color-red-500:#ff786a;--nylas-color-red-300:#ffa79e;--nylas-color-red-100:#ffc5bf;--nylas-color-red-50:#ffeae8;--nylas-color-blue-900:#213571;--nylas-color-blue-700:#314fa9;--nylas-color-blue-500:#4169e1;--nylas-color-blue-300:#bdccf9;--nylas-color-blue-100:#e0e6f9;--nylas-color-blue-50:#f6f8fd;--nylas-color-yellow-900:#7c6506;--nylas-color-yellow-700:#c29f09;--nylas-color-yellow-500:#f7c90b;--nylas-color-yellow-300:#f9de70;--nylas-color-yellow-100:#fceba9;--nylas-color-yellow-50:#fdf4ce;--nylas-color-green-900:#0e6b60;--nylas-color-green-700:#16a392;--nylas-color-green-500:#17c3b2;--nylas-color-green-300:#74dbd1;--nylas-color-green-100:#a2e7e0;--nylas-color-green-50:#d1f3f0;--nylas-color-purple-900:#643554;--nylas-color-purple-700:#954f7d;--nylas-color-purple-500:#c769a7;--nylas-color-purple-300:#dda5ca;--nylas-color-purple-100:#e0bdd6;--nylas-color-purple-50:#e9dde5;--nylas-color-sky-900:#20698f;--nylas-color-sky-700:#2b8fc2;--nylas-color-sky-500:#6dceff;--nylas-color-sky-300:#8fdaff;--nylas-color-sky-100:#b8e7ff;--nylas-color-sky-50:#d9f2ff;width:inherit}div.nylas-event-timeslot label{display:flex;align-items:center;color:var(--nylas-base-800);font-size:16px;font-style:normal;font-weight:400;line-height:150%}div.nylas-event-timeslot div.date-time-input div.date-time-picker{display:flex;gap:32px}@media screen and (max-width: 768px){div.nylas-event-timeslot div.date-time-input div.date-time-picker{flex-direction:column;gap:16px}}div.nylas-event-timeslot div.date-time-input div.date-time-picker nylas-date-component{width:224px}@media screen and (max-width: 768px){div.nylas-event-timeslot div.date-time-input div.date-time-picker nylas-date-component{width:100%}}div.nylas-event-timeslot div.date-time-input div.date-time-picker nylas-date-component:not(.error)::part(ic__date){border-color:var(--nylas-base-200)}div.nylas-event-timeslot div.date-time-input div.date-time-picker nylas-date-component::part(ic__date){height:50px}div.nylas-event-timeslot div.date-time-input div.date-time-picker div.time-range{display:flex;gap:8px;align-items:flex-start}div.nylas-event-timeslot div.date-time-input div.date-time-picker div.time-range span{margin:12px 0 0 6px;display:inline-flex;align-items:flex-start}@media screen and (max-width: 768px){div.nylas-event-timeslot div.date-time-input div.date-time-picker div.time-range{display:grid;grid-template-columns:1fr 20px 1fr}div.nylas-event-timeslot div.date-time-input div.date-time-picker div.time-range nylas-time-window-picker::part(time-picker){width:-webkit-fill-available}div.nylas-event-timeslot div.date-time-input div.date-time-picker div.time-range nylas-time-window-picker::part(time-input){width:calc(100% - 8px)}}div.nylas-event-timeslot div.date-time-input div.date-time-picker select-dropdown{width:fit-content}div.nylas-event-timeslot div.date-time-input div.date-time-picker select-dropdown::part(sd_dropdown){position:relative}div.nylas-event-timeslot div.date-time-input div.date-time-picker select-dropdown::part(sd_dropdown-button){border:none;padding:14px;justify-content:flex-start}div.nylas-event-timeslot div.date-time-input div.date-time-picker select-dropdown::part(sd_dropdown-button):hover{border:none;outline:none;color:var(--nylas-primary)}@media screen and (max-width: 768px){div.nylas-event-timeslot div.date-time-input div.date-time-picker select-dropdown{width:-webkit-fill-available}div.nylas-event-timeslot div.date-time-input div.date-time-picker select-dropdown::part(sd_dropdown-button-selected-label){max-width:fit-content}div.nylas-event-timeslot div.date-time-input div.date-time-picker select-dropdown::part(sd_dropdown-content){right:unset;width:unset}}div.nylas-event-timeslot div.date-time-input div.recurrence-options{margin:8px 0}div.nylas-event-timeslot div.date-time-input div.recurrence-options select-dropdown::part(sd_dropdown){position:relative}div.nylas-event-timeslot div.date-time-input div.recurrence-options select-dropdown::part(sd_dropdown-button){width:fit-content;padding:14px;border-color:var(--nylas-base-200)}div.nylas-event-timeslot div.date-time-input div.recurrence-options select-dropdown::part(sd_dropdown-button):hover{color:var(--nylas-primary)}div.nylas-event-timeslot div.date-time-input div.recurrence-options select-dropdown::part(sd_dropdown-content){width:fit-content}div.nylas-event-timeslot div.date-time-input div.recurrence-options select-dropdown::part(sd_dropdown-button-selected-label){max-width:100%;width:fit-content;font-size:16px}@media screen and (max-width: 768px){div.nylas-event-timeslot div.date-time-input div.recurrence-options select-dropdown{width:-webkit-fill-available}div.nylas-event-timeslot div.date-time-input div.recurrence-options select-dropdown::part(sd_dropdown-button-selected-label){max-width:254px;width:fit-content}div.nylas-event-timeslot div.date-time-input div.recurrence-options select-dropdown::part(sd_dropdown-content){right:unset;width:unset}}@media screen and (max-width: 412px){div.nylas-event-timeslot div.date-time-input div.recurrence-options select-dropdown::part(sd_dropdown-button-selected-label){max-width:240px}}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.custom-recurrence-time-period,div.nylas-event-timeslot div.date-time-input div.recurrence-options div.recurrence-type,div.nylas-event-timeslot div.date-time-input div.recurrence-options div.recurrence-end{display:grid;align-items:center;gap:16px;grid-template-columns:128px 1fr;margin-bottom:8px}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.custom-recurrence-time-period select-dropdown::part(sd_dropdown-button),div.nylas-event-timeslot div.date-time-input div.recurrence-options div.recurrence-type select-dropdown::part(sd_dropdown-button),div.nylas-event-timeslot div.date-time-input div.recurrence-options div.recurrence-end select-dropdown::part(sd_dropdown-button){border-color:var(--nylas-base-200)}@media screen and (max-width: 768px){div.nylas-event-timeslot div.date-time-input div.recurrence-options div.custom-recurrence-time-period,div.nylas-event-timeslot div.date-time-input div.recurrence-options div.recurrence-type,div.nylas-event-timeslot div.date-time-input div.recurrence-options div.recurrence-end{grid-template-columns:1fr;gap:4px;margin:16px 0}}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.custom-recurrence-time-period time-period-selector::part(id_dropdown-input),div.nylas-event-timeslot div.date-time-input div.recurrence-options div.recurrence-type time-period-selector::part(id_dropdown-input),div.nylas-event-timeslot div.date-time-input div.recurrence-options div.recurrence-end time-period-selector::part(id_dropdown-input){padding:16px}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.custom-recurrence-time-period time-period-selector input-dropdown:hover,div.nylas-event-timeslot div.date-time-input div.recurrence-options div.recurrence-type time-period-selector input-dropdown:hover,div.nylas-event-timeslot div.date-time-input div.recurrence-options div.recurrence-end time-period-selector input-dropdown:hover{border:1px solid var(--nylas-primary);outline:1px solid transparent}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.days{margin:16px 0;display:flex;gap:16px;align-items:center}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.days div.buttons{display:flex;gap:8px;margin:8px 0}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.days div.buttons button{border-radius:50%;border:none;height:24px;width:24px;color:var(--nylas-base-800);cursor:pointer;background:var(--nylas-base-100)}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.days div.buttons button:hover{background-color:var(--nylas-base-500);color:var(--nylas-base-0)}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.days div.buttons button.selected{background-color:var(--nylas-primary);color:var(--nylas-base-0)}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.days div.buttons button:active{background-color:var(--nylas-base-600);color:var(--nylas-base-0)}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.days,div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.custom-recurrence-ends,div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.month-recurrence{display:grid;align-items:center;gap:16px;grid-template-columns:128px 1fr}@media screen and (max-width: 768px){div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.days,div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.custom-recurrence-ends,div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.month-recurrence{grid-template-columns:1fr;gap:4px;margin:16px 0}}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.custom-recurrence-ends #custom-recurrence-end-type::part(sd_dropdown-button){padding:16px}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.custom-recurrence{display:flex;gap:16px;align-items:baseline}@media screen and (max-width: 768px){div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.custom-recurrence{flex-direction:column;align-items:flex-start;gap:0}}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.custom-recurrence div.custom-recurrence-end-after{display:flex;gap:8px;align-items:center}@media screen and (max-width: 768px){div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.custom-recurrence div.custom-recurrence-end-after{flex-direction:column;align-items:flex-start}}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.custom-recurrence div.custom-recurrence-end-after #recurrence-end-after::part(netimeslot__input-textfield),div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.custom-recurrence div.custom-recurrence-end-after #recurrence-end-after::part(ic__input){border-color:var(--nylas-base-200)}div.nylas-event-timeslot div.date-time-input div.recurrence-options div.repeat-on div.custom-recurrence nylas-date-component::part(ic__date){padding:0 16px;height:52px;border:1px solid var(--nylas-base-200)}";
16
16
 
@@ -551,6 +551,6 @@ function defineCustomElement() {
551
551
  }
552
552
 
553
553
  export { NylasEventTimeslot as N, defineCustomElement as d };
554
- //# sourceMappingURL=p-CTDkYArQ.js.map
554
+ //# sourceMappingURL=p-FBEildbE.js.map
555
555
 
556
- //# sourceMappingURL=p-CTDkYArQ.js.map
556
+ //# sourceMappingURL=p-FBEildbE.js.map
@@ -1 +1 @@
1
- {"file":"p-CTDkYArQ.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","i18next"],"sources":["src/components/scheduler-editor/nylas-event-timeslot/nylas-event-timeslot.scss?tag=nylas-event-timeslot&encapsulation=shadow","src/components/scheduler-editor/nylas-event-timeslot/nylas-event-timeslot.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n@use '../../../common/mixins/buttons' as *;\n\n:host {\n display: block;\n @include default-css-variables;\n width: inherit;\n}\n\ndiv.nylas-event-timeslot {\n label {\n display: flex;\n align-items: center;\n color: var(--nylas-base-800);\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 150%;\n }\n\n div.date-time-input {\n div.date-time-picker {\n display: flex;\n gap: 32px;\n\n @media #{$mobile} {\n flex-direction: column;\n gap: 16px;\n }\n\n nylas-date-component {\n width: 224px;\n\n @media #{$mobile} {\n width: 100%;\n }\n &:not(.error) {\n &::part(ic__date) {\n border-color: var(--nylas-base-200);\n }\n }\n &::part(ic__date) {\n height: 50px;\n }\n }\n\n div.time-range {\n display: flex;\n gap: 8px;\n align-items: flex-start;\n\n span {\n margin: 12px 0 0 6px;\n display: inline-flex;\n align-items: flex-start;\n }\n\n @media #{$mobile} {\n display: grid;\n grid-template-columns: 1fr 20px 1fr;\n\n nylas-time-window-picker {\n &::part(time-picker) {\n width: -webkit-fill-available;\n }\n\n &::part(time-input) {\n width: calc(100% - 8px);\n }\n }\n }\n }\n\n select-dropdown {\n width: fit-content;\n\n &::part(sd_dropdown) {\n position: relative;\n }\n\n &::part(sd_dropdown-button) {\n border: none;\n padding: 14px;\n justify-content: flex-start;\n\n &:hover {\n border: none;\n outline: none;\n color: var(--nylas-primary);\n }\n }\n\n @media #{$mobile} {\n width: -webkit-fill-available;\n\n &::part(sd_dropdown-button-selected-label) {\n max-width: fit-content;\n }\n\n &::part(sd_dropdown-content) {\n right: unset;\n width: unset;\n }\n }\n }\n }\n\n div.recurrence-options {\n margin: 8px 0;\n\n select-dropdown {\n &::part(sd_dropdown) {\n position: relative;\n }\n\n &::part(sd_dropdown-button) {\n width: fit-content;\n padding: 14px;\n border-color: var(--nylas-base-200);\n\n &:hover {\n color: var(--nylas-primary);\n }\n }\n\n &::part(sd_dropdown-content) {\n width: fit-content;\n }\n\n &::part(sd_dropdown-button-selected-label) {\n max-width: 100%;\n width: fit-content;\n font-size: 16px;\n }\n\n @media #{$mobile} {\n width: -webkit-fill-available;\n\n &::part(sd_dropdown-button-selected-label) {\n max-width: 254px;\n width: fit-content;\n }\n\n &::part(sd_dropdown-content) {\n right: unset;\n width: unset;\n }\n }\n\n @media #{$x-small-mobile} {\n &::part(sd_dropdown-button-selected-label) {\n max-width: 240px;\n }\n }\n }\n\n div.custom-recurrence-time-period,\n div.recurrence-type,\n div.recurrence-end {\n display: grid;\n align-items: center;\n gap: 16px;\n grid-template-columns: 128px 1fr;\n margin-bottom: 8px;\n select-dropdown::part(sd_dropdown-button) {\n border-color: var(--nylas-base-200);\n }\n\n @media #{$mobile} {\n grid-template-columns: 1fr;\n gap: 4px;\n margin: 16px 0;\n }\n\n time-period-selector::part(id_dropdown-input) {\n padding: 16px;\n }\n time-period-selector input-dropdown {\n &:hover {\n border: 1px solid var(--nylas-primary);\n outline: 1px solid transparent;\n }\n }\n }\n\n div.repeat-on {\n div.days {\n margin: 16px 0;\n display: flex;\n gap: 16px;\n align-items: center;\n\n div.buttons {\n display: flex;\n gap: 8px;\n margin: 8px 0;\n\n button {\n border-radius: 50%;\n border: none;\n height: 24px;\n width: 24px;\n color: var(--nylas-base-800);\n cursor: pointer;\n background: var(--nylas-base-100);\n\n &:hover {\n background-color: var(--nylas-base-500);\n color: var(--nylas-base-0);\n }\n\n &.selected {\n background-color: var(--nylas-primary);\n color: var(--nylas-base-0);\n }\n\n &:active {\n background-color: var(--nylas-base-600);\n color: var(--nylas-base-0);\n }\n }\n }\n }\n\n div.days,\n div.custom-recurrence-ends,\n div.month-recurrence {\n display: grid;\n align-items: center;\n gap: 16px;\n grid-template-columns: 128px 1fr;\n\n @media #{$mobile} {\n grid-template-columns: 1fr;\n gap: 4px;\n margin: 16px 0;\n }\n }\n\n div.custom-recurrence-ends {\n #custom-recurrence-end-type {\n &::part(sd_dropdown-button) {\n padding: 16px;\n }\n }\n }\n\n div.custom-recurrence {\n display: flex;\n gap: 16px;\n align-items: baseline;\n\n @media #{$mobile} {\n flex-direction: column;\n align-items: flex-start;\n gap: 0;\n }\n\n div.custom-recurrence-end-after {\n display: flex;\n gap: 8px;\n align-items: center;\n\n @media #{$mobile} {\n flex-direction: column;\n align-items: flex-start;\n }\n #recurrence-end-after {\n &::part(netimeslot__input-textfield),\n &::part(ic__input) {\n border-color: var(--nylas-base-200);\n }\n }\n }\n\n nylas-date-component::part(ic__date) {\n padding: 0 16px;\n height: 52px;\n border: 1px solid var(--nylas-base-200);\n }\n }\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug, generateRRule, getTimezoneOffset } from '@/utils/utils';\nimport { AttachInternals, Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport i18next from '@/utils/i18n';\nimport { LANGUAGE_CODE, TIMEZONE_MAP } from '@/common/constants';\nimport dayjs from 'dayjs';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\nimport utc from 'dayjs/plugin/utc';\nimport timezone from 'dayjs/plugin/timezone';\nimport { User } from '@/common/nylas-api-request';\nimport { ThemeConfig } from '@nylas/core';\n\ndayjs.extend(customParseFormat);\ndayjs.extend(utc);\ndayjs.extend(timezone);\n\nconst periodMap = {\n day: 'daily',\n week: 'weekly',\n month: 'monthly',\n year: 'yearly',\n};\n\ntype RepeatEndType = 'never' | 'on' | 'after';\ntype RecurrenceType = 'none' | 'daily' | 'weekly' | 'monthly' | 'yearly' | 'custom';\n\n/**\n * The `nylas-event-timeslot` component is a UI component that allows users to select the event type for the scheduler configuration.\n */\n@Component({\n tag: 'nylas-event-timeslot',\n styleUrl: 'nylas-event-timeslot.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasEventTimeslot {\n @Element() host!: HTMLNylasEventTimeslotElement;\n\n /**\n * @standalone\n * The name of the component\n */\n @Prop() name: string = 'event-timeslot';\n /**\n * The initial value of the event timeslot.\n */\n @Prop() initialValue?: {\n when: {\n start_time: number;\n end_time: number;\n start_timezone: string;\n end_timezone: string;\n };\n recurrence: string[];\n };\n\n /**\n * The selected language.\n */\n @Prop() selectedLanguage?: LANGUAGE_CODE;\n\n /**\n * The current user.\n */\n @Prop() currentUser?: User;\n /**\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: ThemeConfig;\n\n /**\n * The selected date.\n */\n @State() selectedDate!: string;\n\n /**\n * The selected start time.\n */\n @State() selectedStartTime!: string;\n\n /**\n * The selected end time.\n */\n @State() selectedEndTime!: string;\n\n /**\n * The timezone.\n */\n @State() selectedTimezone!: string;\n\n /**\n * The selected recurrence type.\n */\n @State() selectedRecurrenceType!: RecurrenceType;\n\n /**\n * Time range error.\n */\n @State() timeRangeError: boolean = false;\n\n /**\n * The selected rrule.\n */\n @State() selectedRrule!: string | null;\n\n /**\n * Recurrence options.\n */\n @State() recurrenceOptions: { label: string; value: string }[] = [];\n /**\n * Repeat every frequency.\n */\n @State() repeatEveryInterval: number = 1;\n /**\n * Repeat every period.\n */\n @State() repeatEveryFrequency: string = 'week';\n /**\n * Repeat on days.\n */\n @State() repeatOnDays: string[] = [];\n /**\n * Repeat monthly on.\n */\n @State() repeatMonthlySameDate: boolean = true;\n /**\n * Repeat end type.\n */\n @State() repeatEndType: RepeatEndType = 'never';\n /**\n * Repeat end after.\n */\n @State() repeatEndAfter: number = 1;\n /**\n * Repeat end on (custom recurrence).\n */\n @State() repeatEndOn: string | undefined;\n /**\n * Month recurrence options.\n */\n @State() monthRecurrenceOptions: { label: string; value: string }[] = [];\n /**\n * The end date for recurrence (non-custom recurrence).\n */\n @State() endDate: string | undefined;\n\n /**\n * The flag to indicate if the date input is in error state.\n */\n @State() hasDateTimeInputError: boolean = false;\n\n /**\n * The element internals.\n */\n @AttachInternals() internals!: ElementInternals;\n\n /**\n * This event is fired when the value of the event location changes.\n */\n @Event() valueChanged!: EventEmitter<{\n value: string;\n name: string;\n }>;\n\n /**\n * This event is fired when the value of the event timeslot changes.\n */\n @Event() timeWindowFormError!: EventEmitter<{\n key: string;\n message: string;\n uniqueIdentifier?: string;\n }>;\n\n /**\n * This event is fired when the value of the event timeslot changes.\n */\n @Event() dateTimeInputError!: EventEmitter<{\n key: string;\n message: string;\n }>;\n\n // Lifecycle methods\n connectedCallback() {\n debug('nylas-event-timeslot', 'connectedCallback');\n // Use queueMicrotask to defer theme application until after React has set props.\n // This fixes the timing issue where connectedCallback fires before React sets themeConfig.\n queueMicrotask(() => {\n if (this.themeConfig) {\n this.applyThemeConfig(this.themeConfig);\n this.host.setAttribute('data-themed', '');\n }\n });\n }\n\n disconnectedCallback() {\n debug('nylas-event-timeslot', 'disconnectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-event-timeslot', 'componentWillLoad');\n // See comment in the @Watch('name') decorator for more information.\n this.host.setAttribute('name', this.name);\n }\n\n componentDidLoad() {\n debug('nylas-event-timeslot', 'componentDidLoad');\n\n // Set defaults from initialValue or fallback to current values\n if (this.initialValue) {\n const { when, recurrence } = this.initialValue;\n\n if (when) {\n this.selectedDate = dayjs.unix(when.start_time).tz(when.start_timezone).format('YYYY-MM-DD');\n this.selectedStartTime = dayjs.unix(when.start_time).tz(when.start_timezone).format('hh:mma');\n this.selectedEndTime = dayjs.unix(when.end_time).tz(when.end_timezone).format('hh:mma');\n this.selectedTimezone = when.start_timezone;\n } else {\n this.selectedDate = new Date().toISOString().split('T')[0];\n const defaultTimes = this.getSuggestedTime();\n this.selectedStartTime = defaultTimes.startTime;\n this.selectedEndTime = defaultTimes.endTime;\n this.selectedTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;\n }\n\n if (recurrence && recurrence.length > 0) {\n this.selectedRrule = recurrence[0];\n const repeatEndAfter = recurrence[0]?.split(';')?.find(s => s.includes('COUNT'));\n if (repeatEndAfter) {\n this.repeatEndAfter = parseInt(repeatEndAfter.split('=')[1]);\n }\n const daysString = recurrence[0]?.split(';')?.find(s => s.includes('BYDAY'));\n if (daysString) {\n this.repeatOnDays = daysString.split('=')[1].split(',');\n }\n const until = recurrence[0]?.split(';')?.find(s => s.includes('UNTIL'));\n if (until) {\n const untilDate = dayjs(until.split('=')[1], 'YYYYMMDDTHHmmss').toDate();\n this.repeatEndOn = dayjs(untilDate).toISOString().split('T')[0];\n this.repeatEndType = 'on';\n }\n const recurrenceType = this.getRecurrenceTypeFromRrule(recurrence[0]);\n this.selectedRecurrenceType = recurrenceType || 'none';\n } else {\n this.selectedRecurrenceType = 'none';\n this.selectedRrule = generateRRule(this.selectedDate, this.selectedRecurrenceType, undefined, undefined, this.selectedTimezone);\n }\n } else {\n this.selectedDate = new Date().toISOString().split('T')[0];\n const defaultTimes = this.getSuggestedTime();\n this.selectedStartTime = defaultTimes.startTime;\n this.selectedEndTime = defaultTimes.endTime;\n this.selectedTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;\n this.selectedRecurrenceType = 'none';\n this.selectedRrule = generateRRule(this.selectedDate, this.selectedRecurrenceType, undefined, undefined, this.selectedTimezone);\n }\n\n this.recurrenceOptions = this.generateRecurrenceOptions(this.selectedDate, this.selectedTimezone);\n this.monthRecurrenceOptions = this.getMonthRecurrenceOptions(this.selectedDate, this.selectedTimezone);\n\n // Trigger initial value change\n this.handleValueChanged(true);\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-event-timeslot', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @Watch('selectedLanguage')\n selectedLanguageChangedHandler(newVal: LANGUAGE_CODE, oldVal: LANGUAGE_CODE) {\n if (newVal === oldVal) return;\n i18next.changeLanguage(newVal);\n }\n\n @Watch('themeConfig')\n themeConfigChangedHandler(newVal: ThemeConfig, oldVal: ThemeConfig) {\n if (newVal === oldVal) return;\n this.applyThemeConfig(newVal);\n }\n\n applyThemeConfig(themeConfig?: ThemeConfig) {\n if (themeConfig) {\n for (const [key, value] of Object.entries(themeConfig)) {\n this.host.style.setProperty(`${key}`, value);\n }\n }\n }\n\n // Utility function to get the ordinal suffix (e.g., 1st, 2nd, 3rd)\n getOrdinalSuffix(n) {\n const s = ['th', 'st', 'nd', 'rd'];\n const v = n % 100;\n return n + (s[(v - 20) % 10] || s[v] || s[0]);\n }\n\n getRecurrenceTypeFromRrule(rrule: string): RecurrenceType | undefined {\n if (rrule.includes('INTERVAL')) return 'custom';\n if (rrule.includes('FREQ=DAILY')) return 'daily';\n if (rrule.includes('FREQ=WEEKLY')) return 'weekly';\n if (rrule.includes('FREQ=MONTHLY')) return 'monthly';\n if (rrule.includes('FREQ=YEARLY')) return 'yearly';\n return undefined;\n }\n\n // Function to generate dynamic recurrence options\n generateRecurrenceOptions(selectedDate: string, timezoneStr: string) {\n const daysOfWeek = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];\n\n // Parse the date in the given timezone\n const selectedDay = dayjs.tz(selectedDate, timezoneStr);\n\n const dayOfWeek = daysOfWeek[selectedDay.day()]; // Get the day of the week (e.g., Thursday)\n\n // Determine the occurrence of the day in the month (e.g., 1st, 2nd, etc.)\n const date = selectedDay.date();\n const occurrenceInMonth = Math.ceil(date / 7); // e.g., 1st Thursday\n\n // Generate options\n return [\n { label: i18next.t('nylasEventTimeslot.recurrenceOptions.none'), value: 'none' },\n { label: i18next.t('nylasEventTimeslot.recurrenceOptions.daily'), value: 'daily' },\n { label: i18next.t('nylasEventTimeslot.recurrenceOptions.weekly', { dayOfWeek: dayOfWeek }), value: 'weekly' },\n { label: i18next.t('nylasEventTimeslot.recurrenceOptions.monthly', { dayOfMonth: `${this.getOrdinalSuffix(occurrenceInMonth)} ${dayOfWeek}` }), value: 'monthly' },\n {\n label: i18next.t('nylasEventTimeslot.recurrenceOptions.yearly', { dateOfMonth: `${selectedDay.format('MMMM D')}` }),\n value: 'yearly',\n },\n { label: i18next.t('nylasEventTimeslot.recurrenceOptions.custom'), value: 'custom' },\n ];\n }\n\n // Function to generate dynamic month recurrence options\n getMonthRecurrenceOptions(selectedDate: string, timezoneStr: string) {\n const daysOfWeek = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];\n\n const selectedDay = dayjs.tz(selectedDate, timezoneStr);\n const dayOfWeek = daysOfWeek[selectedDay.day()]; // Get the day of the week (e.g., Thursday)\n const date = selectedDay.date();\n const occurrenceInMonth = Math.ceil(date / 7);\n\n return [\n { label: i18next.t('nylasEventTimeslot.recurrenceOptions.monthOnDay', { date: date }), value: 'monthly-same-date' },\n { label: i18next.t('nylasEventTimeslot.recurrenceOptions.monthly', { dayOfMonth: `${this.getOrdinalSuffix(occurrenceInMonth)} ${dayOfWeek}` }), value: 'monthly' },\n ];\n }\n\n // Function to get the default suggested time shown in the time range picker\n getSuggestedTime() {\n const now = dayjs();\n\n // Round current time to the next 30-minute increment\n const minutes = now.minute();\n const roundedMinutes = minutes <= 30 ? 30 : 60;\n const startTime = now.set('minute', roundedMinutes).set('second', 0);\n\n // Calculate end time (30 minutes after start time)\n const endTime = startTime.add(30, 'minute');\n\n // Format the times in \"hh:mma\" format\n return {\n startTime: startTime.format('hh:mma'), // e.g., \"03:00pm\"\n endTime: endTime.format('hh:mma'), // e.g., \"03:30pm\"\n };\n }\n\n getTimezoneLabelHTML(timezone: string) {\n const offset = getTimezoneOffset(timezone);\n return (\n <span\n class=\"timezone-label\"\n style={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n width: '-webkit-fill-available',\n }}\n >\n {TIMEZONE_MAP[timezone]}{' '}\n <span\n class=\"timezone-offset\"\n style={{\n fontSize: '14px',\n fontWeight: '400',\n color: 'var(--nylas-base-500)',\n }}\n >\n {offset}\n </span>\n </span>\n );\n }\n\n // Function to check if the start time is after the end time (used for validation)\n isStartTimeAfterEndTime(startTime: string, endTime: string): boolean {\n // Parse the times using Day.js\n const start = dayjs(startTime, 'hh:mma');\n const end = dayjs(endTime, 'hh:mma');\n\n // Compare start and end times\n return start.isAfter(end);\n }\n\n isStartTimeEqualToEndTime(startTime: string, endTime: string): boolean {\n const start = dayjs(startTime, 'hh:mma');\n const end = dayjs(endTime, 'hh:mma');\n return start.isSame(end);\n }\n\n isStartTimeBeforeCurrentDate(date: string, startTime: string, timezone: string): boolean {\n const dateTime = dayjs.tz(`${date} ${startTime}`, 'YYYY-MM-DD hh:mma', timezone);\n return dateTime.isBefore(dayjs());\n }\n\n validateDateTimeInput(date: string, startTime: string, timezone: string): { isValid: boolean; errorMessage: string } {\n const dateTimeWithStartTime = dayjs.tz(`${date} ${startTime}`, 'YYYY-MM-DD hh:mma', timezone);\n const isInPast = dateTimeWithStartTime.isBefore(dayjs());\n\n return {\n isValid: !isInPast,\n errorMessage: isInPast ? i18next.t('nylasEventTimeslot.errors.startTimeBeforeCurrentDate') : '',\n };\n }\n\n // Function to get the start and end times in Unix timestamp format (used in the valueChanged event)\n getStartAndEndTimes() {\n const start_time = dayjs.tz(`${this.selectedDate} ${this.selectedStartTime}`, 'YYYY-MM-DD hh:mma', this.selectedTimezone).toDate();\n const end_time = dayjs.tz(`${this.selectedDate} ${this.selectedEndTime}`, 'YYYY-MM-DD hh:mma', this.selectedTimezone).toDate();\n\n return {\n start_time: Math.round(start_time.getTime() / 1000),\n end_time: Math.round(end_time.getTime() / 1000),\n };\n }\n\n // Function to get the custom options for the RRule\n getCustomOptions() {\n if (this.selectedRecurrenceType !== 'custom') {\n return undefined;\n }\n\n const repeatFreq = periodMap[this.repeatEveryFrequency];\n\n return {\n frequency: repeatFreq,\n interval: this.repeatEveryInterval,\n daysOfWeek: this.repeatEveryFrequency === 'week' ? this.repeatOnDays : undefined,\n monthlySameDate: this.repeatEveryFrequency === 'month' ? this.repeatMonthlySameDate : undefined,\n end: {\n type: this.repeatEndType,\n count: this.repeatEndType === 'after' ? this.repeatEndAfter : undefined,\n date: this.repeatEndType === 'on' ? this.repeatEndOn : undefined,\n },\n };\n }\n\n handleValueChanged(noValue: boolean = false) {\n const customOptions = this.getCustomOptions();\n this.selectedRrule = generateRRule(this.selectedDate, this.selectedRecurrenceType, this.repeatEndOn, customOptions, this.selectedTimezone);\n const { start_time, end_time } = this.getStartAndEndTimes();\n const internalsObj = {\n when: {\n start_time: start_time,\n end_time: end_time,\n start_timezone: this.selectedTimezone,\n end_timezone: this.selectedTimezone,\n },\n recurrence: this.selectedRrule ? [this.selectedRrule] : [],\n };\n this.internals.setFormValue(JSON.stringify(internalsObj), this.name);\n if (!noValue) {\n this.valueChanged.emit({\n value: JSON.stringify(internalsObj),\n name: this.name,\n });\n }\n }\n\n // Listeners\n @Listen('timeChange')\n setTime(event: CustomEvent<{ key: string; value: string }>) {\n const { key, value } = event.detail;\n if (key === 'event-timeslot-start-time') {\n this.selectedStartTime = value;\n } else if (key === 'event-timeslot-end-time') {\n this.selectedEndTime = value;\n }\n const validateStartTimeAfterEndTime = this.isStartTimeAfterEndTime(this.selectedStartTime, this.selectedEndTime);\n const validateStartTimeEqualToEndTime = this.isStartTimeEqualToEndTime(this.selectedStartTime, this.selectedEndTime);\n\n // Update the validation to use the validation method\n const validation = this.validateDateTimeInput(this.selectedDate, this.selectedStartTime, this.selectedTimezone);\n const validateStartTimeBeforeCurrentDate = !validation.isValid;\n\n this.timeRangeError = validateStartTimeAfterEndTime || validateStartTimeEqualToEndTime || validateStartTimeBeforeCurrentDate;\n let error = '';\n if (validateStartTimeAfterEndTime) {\n error = i18next.t('nylasEventTimeslot.errors.invalidTimeRange');\n } else if (validateStartTimeEqualToEndTime) {\n error = i18next.t('nylasEventTimeslot.errors.startTimeSameAsEndTime');\n } else if (validateStartTimeBeforeCurrentDate) {\n error = validation.errorMessage;\n } else {\n error = '';\n }\n this.timeWindowFormError.emit({\n key: this.name,\n message: error,\n uniqueIdentifier: 'time-range',\n });\n if (error) {\n return;\n }\n\n this.handleValueChanged();\n }\n\n @Listen('nylasFormDropdownChanged')\n nylasFormDropdownChangedHandler(\n event: CustomEvent<{\n value: RecurrenceType | RepeatEndType | string;\n name: string;\n }>,\n ) {\n const { name, value } = event.detail;\n if (name === 'timezone') {\n this.selectedTimezone = value;\n const date = dayjs(this.selectedDate);\n const validation = this.validateDateTimeInput(date.format('YYYY-MM-DD'), this.selectedStartTime, this.selectedTimezone);\n\n this.hasDateTimeInputError = !validation.isValid;\n this.dateTimeInputError.emit({\n key: this.name,\n message: validation.errorMessage,\n });\n\n if (!validation.isValid) {\n return;\n }\n } else if (name === 'recurrence-type') {\n this.selectedRecurrenceType = value as RecurrenceType;\n } else if (name === 'month-recurrence-type') {\n this.repeatMonthlySameDate = value === 'monthly-same-date';\n } else if (name === 'custom-recurrence-end-type') {\n this.repeatEndType = value as RepeatEndType;\n }\n\n this.handleValueChanged();\n }\n\n @Listen('nylasFormInputChanged')\n nylasFormInputChangedHandler(event: CustomEvent<{ value: string; name: string; error?: string }>) {\n const { name, value } = event.detail;\n if (name === 'date-time-input') {\n const date = dayjs(value);\n const validation = this.validateDateTimeInput(date.format('YYYY-MM-DD'), this.selectedStartTime, this.selectedTimezone);\n\n this.hasDateTimeInputError = !validation.isValid;\n this.dateTimeInputError.emit({\n key: this.name,\n message: validation.errorMessage,\n });\n\n if (!validation.isValid) {\n return;\n }\n\n this.selectedDate = date.format('YYYY-MM-DD');\n this.recurrenceOptions = this.generateRecurrenceOptions(this.selectedDate, this.selectedTimezone);\n this.monthRecurrenceOptions = this.getMonthRecurrenceOptions(this.selectedDate, this.selectedTimezone);\n } else if (name === 'recurrence-end-date' || name === 'custom-recurrence-end-date') {\n const error = event.detail?.error || '';\n this.timeWindowFormError.emit({\n key: this.name,\n message: error,\n uniqueIdentifier: name,\n });\n this.repeatEndOn = value;\n } else if (name === 'recurrence-end-after') {\n const parsedValue = parseInt(value);\n if (parsedValue < 1 || isNaN(parsedValue)) {\n this.timeWindowFormError.emit({\n key: this.name,\n message: i18next.t('fixFormErrors'),\n });\n return;\n }\n this.repeatEndAfter = parsedValue;\n }\n\n this.handleValueChanged();\n }\n\n @Listen('timePeriodChanged')\n timePeriodChangedHandler(event: CustomEvent<{ number: number; period: 'day' | 'week' | 'month' | 'year' }>) {\n const { number, period } = event.detail;\n this.repeatEveryInterval = number;\n this.repeatEveryFrequency = period;\n\n if (period === 'month') {\n this.monthRecurrenceOptions = this.getMonthRecurrenceOptions(this.selectedDate, this.selectedTimezone);\n }\n\n this.handleValueChanged();\n }\n\n @RegisterComponent<NylasEventTimeslot, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-event-timeslot',\n stateToProps: new Map([\n ['schedulerConfig.selectedLanguage', 'selectedLanguage'],\n ['schedulerConfig.currentUser', 'currentUser'],\n ['schedulerConfig.themeConfig', 'themeConfig'],\n ]),\n eventToProps: {\n valueChanged: async (event: CustomEvent<{ value: string; name: string }>, _nylasConnector: NylasSchedulerConfigConnector) => {\n debug('nylas-event-timeslot', 'valueChanged', event.detail);\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n const icloudProvider = this.currentUser?.provider === 'icloud';\n const defaultRecurrenceOption = this.recurrenceOptions.find(option => option.value === this.selectedRecurrenceType);\n const timezoneOptions = Object.keys(TIMEZONE_MAP).map(key => ({\n labelHTML: this.getTimezoneLabelHTML(key),\n label: TIMEZONE_MAP[key],\n value: key,\n }));\n const selectedTimezoneOption = timezoneOptions.find(i => i.value === this.selectedTimezone);\n const endOptions = [\n { label: i18next.t('nylasEventTimeslot.customRecurrence.endsOptions.never'), value: 'never' },\n { label: i18next.t('nylasEventTimeslot.customRecurrence.endsOptions.on'), value: 'on' },\n { label: i18next.t('nylasEventTimeslot.customRecurrence.endsOptions.after'), value: 'after' },\n ];\n const defaultEndOnDate = dayjs(this.selectedDate).add(1, 'year').toISOString().split('T')[0];\n const defaultEndAfter = this.repeatEveryFrequency === 'week' ? 4 : this.repeatEveryFrequency === 'month' ? 12 : 5;\n this.repeatEndOn = this.repeatEndOn || defaultEndOnDate;\n this.repeatEndAfter = this.repeatEndAfter || defaultEndAfter;\n const today = dayjs().tz(this.selectedTimezone);\n return (\n <Host>\n <div class=\"nylas-event-timeslot\" part=\"netimeslot\">\n <label htmlFor=\"date-time-input\">{i18next.t('nylasEventTimeslot.dateTimeLabel')}</label>\n <div class=\"date-time-input\" part=\"netimeslot__date-time-input\">\n <div class=\"date-time-picker\" part=\"netimeslot__date-time-picker\">\n <nylas-date-component\n minDate={dayjs().tz(this.selectedTimezone).toISOString().split('T')[0]}\n name=\"date-time-input\"\n defaultValue={this.selectedDate}\n id={'date-time-input'}\n class={{ error: this.hasDateTimeInputError }}\n required={true}\n hasError={this.hasDateTimeInputError}\n themeConfig={this.themeConfig}\n ></nylas-date-component>\n <div class=\"time-range\" part=\"netimeslot__time-range\">\n <nylas-time-window-picker\n id={'event-timeslot-start-time'}\n hasError={this.timeRangeError}\n time={this.selectedStartTime}\n language={this.selectedLanguage}\n name={'event-timeslot-start-time'}\n key={'event-timeslot-start-time'}\n themeConfig={this.themeConfig}\n exportparts=\"time-picker: nap__time-picker-container, time-input: nap__time-picker-input, times: nap__time-picker-times\"\n />\n <span>&ndash;</span>\n <nylas-time-window-picker\n id={'event-timeslot-end-time'}\n hasError={this.timeRangeError}\n time={this.selectedEndTime}\n language={this.selectedLanguage}\n name={'event-timeslot-end-time'}\n key={'event-timeslot-end-time'}\n minimumStartTime={this.selectedStartTime}\n themeConfig={this.themeConfig}\n exportparts=\"time-picker: nap__time-picker-container, time-input: nap__time-picker-input, times: nap__time-picker-times\"\n />\n </div>\n {selectedTimezoneOption?.label && (\n <select-dropdown\n searchPlaceholder={i18next.t('search')}\n name=\"timezone\"\n exportparts=\"sd_dropdown: nap__timezone-container, sd_dropdown-button: nap__timezone-button, sd_dropdown-content: nap__timezone-dropdown-content\"\n options={timezoneOptions}\n withChevron={false}\n defaultSelectedOption={selectedTimezoneOption}\n themeConfig={this.themeConfig}\n >\n <span slot=\"select-icon\">\n <globe-icon width=\"20\" height=\"20\" />\n </span>\n </select-dropdown>\n )}\n </div>\n {!icloudProvider && (\n // iCloud provider does not support recurrence options\n <div class=\"recurrence-options\" part=\"netimeslot__recurrence-options\">\n {defaultRecurrenceOption && defaultRecurrenceOption?.label && (\n <div class=\"recurrence-type\" part=\"netimeslot__recurrence-type\">\n <label htmlFor=\"recurrence-type\">{i18next.t('nylasEventTimeslot.recurrenceLabel')}</label>\n <select-dropdown\n withSearch={false}\n id=\"recurrence-type\"\n name=\"recurrence-type\"\n options={this.recurrenceOptions}\n themeConfig={this.themeConfig}\n defaultSelectedOption={defaultRecurrenceOption}\n exportparts=\"sd_dropdown: netimeslot__dropdown, sd_dropdown-button: netimeslot__dropdown-button, sd_dropdown-content: netimeslot__dropdown-content\"\n ></select-dropdown>\n </div>\n )}\n {this.selectedRecurrenceType !== 'custom' && this.selectedRecurrenceType !== 'none' && (\n <div class=\"recurrence-end\" part=\"netimeslot__recurrence-end\">\n <label>{i18next.t('nylasEventTimeslot.endDate')}</label>\n <nylas-date-component\n name=\"recurrence-end-date\"\n minDate={today.toISOString().split('T')[0]}\n defaultValue={this.repeatEndOn || defaultEndOnDate}\n id={'recurrence-end-date'}\n required={true}\n themeConfig={this.themeConfig}\n ></nylas-date-component>\n </div>\n )}\n\n {this.selectedRecurrenceType === 'custom' && (\n <div class=\"custom-recurrence-time-period\" part=\"netimeslot__custom-recurrence\">\n <label htmlFor=\"\">{i18next.t('nylasEventTimeslot.customRecurrence.repeatEvery')}</label>\n <time-period-selector\n id=\"custom-recurrence-time-period\"\n exportparts=\"tps__number-dropdown: netimeslot__number-dropdown, tps__number-dropdown-button: netimeslot__number-dropdown-button, tps__number-dropdown-content: netimeslot__number-dropdown-content, tps__period-dropdown: netimeslot__period-dropdown, tps__period-dropdown-button: netimeslot__period-dropdown-button, tps__period-dropdown-content: netimeslot__period-dropdown-content\"\n timePeriods={[\n { value: 'day', label: i18next.t('timePeriod', { context: 'day' }) },\n { value: 'week', label: i18next.t('timePeriod', { context: 'week' }) },\n { value: 'month', label: i18next.t('timePeriod', { context: 'month' }) },\n { value: 'year', label: i18next.t('timePeriod', { context: 'year' }) },\n ]}\n themeConfig={this.themeConfig}\n defaultSelectedNumber={this.repeatEveryInterval}\n defaultSelectedPeriod={this.repeatEveryFrequency}\n />\n </div>\n )}\n <div class=\"repeat-on\">\n {this.selectedRecurrenceType === 'custom' && this.repeatEveryFrequency === 'week' && (\n <div class=\"days\">\n <label>{i18next.t('nylasEventTimeslot.customRecurrence.repeatOn')}</label>\n <div class=\"buttons\">\n {[\n { label: 'S', value: 'SU', title: 'Sunday' },\n { label: 'M', value: 'MO', title: 'Monday' },\n { label: 'T', value: 'TU', title: 'Tuesday' },\n { label: 'W', value: 'WE', title: 'Wednesday' },\n { label: 'T', value: 'TH', title: 'Thursday' },\n { label: 'F', value: 'FR', title: 'Friday' },\n { label: 'S', value: 'SA', title: 'Saturday' },\n ].map(day => (\n <button\n class={{ selected: this.repeatOnDays.includes(day.value) }}\n title={day.title}\n onClick={() => {\n this.repeatOnDays = this.repeatOnDays.includes(day.value) ? this.repeatOnDays.filter(d => d !== day.value) : [...this.repeatOnDays, day.value];\n this.handleValueChanged();\n }}\n >\n {day.label}\n </button>\n ))}\n </div>\n </div>\n )}\n {this.selectedRecurrenceType === 'custom' && this.repeatEveryFrequency === 'month' && (\n <div class=\"month-recurrence\">\n <span></span>\n <select-dropdown\n withSearch={false}\n id=\"month-recurrence-type\"\n name=\"month-recurrence-type\"\n options={this.monthRecurrenceOptions}\n themeConfig={this.themeConfig}\n defaultSelectedOption={this.repeatMonthlySameDate ? this.monthRecurrenceOptions[0] : this.monthRecurrenceOptions[1]}\n exportparts=\"sd_dropdown: netimeslot__dropdown, sd_dropdown-button: netimeslot__dropdown-button, sd_dropdown-content: netimeslot__dropdown-content\"\n ></select-dropdown>\n </div>\n )}\n <div class=\"custom-recurrence\">\n {this.selectedRecurrenceType === 'custom' && (\n <div class=\"custom-recurrence-ends\">\n <label htmlFor=\"recurrence-type\">{i18next.t('nylasEventTimeslot.customRecurrence.ends')}</label>\n <select-dropdown\n withSearch={false}\n id=\"custom-recurrence-end-type\"\n name=\"custom-recurrence-end-type\"\n options={endOptions}\n themeConfig={this.themeConfig}\n defaultSelectedOption={endOptions.find(option => option.value === this.repeatEndType)}\n exportparts=\"sd_dropdown: netimeslot__dropdown, sd_dropdown-button: netimeslot__dropdown-button, sd_dropdown-content: netimeslot__dropdown-content\"\n ></select-dropdown>\n </div>\n )}\n {this.selectedRecurrenceType === 'custom' && this.repeatEndType === 'on' && (\n <div>\n <nylas-date-component\n name=\"custom-recurrence-end-date\"\n minDate={today.toISOString().split('T')[0]}\n defaultValue={this.repeatEndOn || defaultEndOnDate}\n id={'custom-recurrence-end-date'}\n required={true}\n themeConfig={this.themeConfig}\n ></nylas-date-component>\n </div>\n )}\n {this.selectedRecurrenceType === 'custom' && this.repeatEndType === 'after' && (\n <div class=\"custom-recurrence-end-after\">\n <input-component\n name=\"recurrence-end-after\"\n id=\"recurrence-end-after\"\n type=\"number\"\n minValue={1}\n themeConfig={this.themeConfig}\n defaultValue={defaultEndAfter.toString()}\n exportparts=\"ic_input: netimeslot__input-textfield\"\n />\n <span>{i18next.t('nylasEventTimeslot.customRecurrence.occurrences')}</span>\n </div>\n )}\n </div>\n </div>\n </div>\n )}\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-FBEildbE.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","i18next"],"sources":["src/components/scheduler-editor/nylas-event-timeslot/nylas-event-timeslot.scss?tag=nylas-event-timeslot&encapsulation=shadow","src/components/scheduler-editor/nylas-event-timeslot/nylas-event-timeslot.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n@use '../../../common/mixins/buttons' as *;\n\n:host {\n display: block;\n @include default-css-variables;\n width: inherit;\n}\n\ndiv.nylas-event-timeslot {\n label {\n display: flex;\n align-items: center;\n color: var(--nylas-base-800);\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 150%;\n }\n\n div.date-time-input {\n div.date-time-picker {\n display: flex;\n gap: 32px;\n\n @media #{$mobile} {\n flex-direction: column;\n gap: 16px;\n }\n\n nylas-date-component {\n width: 224px;\n\n @media #{$mobile} {\n width: 100%;\n }\n &:not(.error) {\n &::part(ic__date) {\n border-color: var(--nylas-base-200);\n }\n }\n &::part(ic__date) {\n height: 50px;\n }\n }\n\n div.time-range {\n display: flex;\n gap: 8px;\n align-items: flex-start;\n\n span {\n margin: 12px 0 0 6px;\n display: inline-flex;\n align-items: flex-start;\n }\n\n @media #{$mobile} {\n display: grid;\n grid-template-columns: 1fr 20px 1fr;\n\n nylas-time-window-picker {\n &::part(time-picker) {\n width: -webkit-fill-available;\n }\n\n &::part(time-input) {\n width: calc(100% - 8px);\n }\n }\n }\n }\n\n select-dropdown {\n width: fit-content;\n\n &::part(sd_dropdown) {\n position: relative;\n }\n\n &::part(sd_dropdown-button) {\n border: none;\n padding: 14px;\n justify-content: flex-start;\n\n &:hover {\n border: none;\n outline: none;\n color: var(--nylas-primary);\n }\n }\n\n @media #{$mobile} {\n width: -webkit-fill-available;\n\n &::part(sd_dropdown-button-selected-label) {\n max-width: fit-content;\n }\n\n &::part(sd_dropdown-content) {\n right: unset;\n width: unset;\n }\n }\n }\n }\n\n div.recurrence-options {\n margin: 8px 0;\n\n select-dropdown {\n &::part(sd_dropdown) {\n position: relative;\n }\n\n &::part(sd_dropdown-button) {\n width: fit-content;\n padding: 14px;\n border-color: var(--nylas-base-200);\n\n &:hover {\n color: var(--nylas-primary);\n }\n }\n\n &::part(sd_dropdown-content) {\n width: fit-content;\n }\n\n &::part(sd_dropdown-button-selected-label) {\n max-width: 100%;\n width: fit-content;\n font-size: 16px;\n }\n\n @media #{$mobile} {\n width: -webkit-fill-available;\n\n &::part(sd_dropdown-button-selected-label) {\n max-width: 254px;\n width: fit-content;\n }\n\n &::part(sd_dropdown-content) {\n right: unset;\n width: unset;\n }\n }\n\n @media #{$x-small-mobile} {\n &::part(sd_dropdown-button-selected-label) {\n max-width: 240px;\n }\n }\n }\n\n div.custom-recurrence-time-period,\n div.recurrence-type,\n div.recurrence-end {\n display: grid;\n align-items: center;\n gap: 16px;\n grid-template-columns: 128px 1fr;\n margin-bottom: 8px;\n select-dropdown::part(sd_dropdown-button) {\n border-color: var(--nylas-base-200);\n }\n\n @media #{$mobile} {\n grid-template-columns: 1fr;\n gap: 4px;\n margin: 16px 0;\n }\n\n time-period-selector::part(id_dropdown-input) {\n padding: 16px;\n }\n time-period-selector input-dropdown {\n &:hover {\n border: 1px solid var(--nylas-primary);\n outline: 1px solid transparent;\n }\n }\n }\n\n div.repeat-on {\n div.days {\n margin: 16px 0;\n display: flex;\n gap: 16px;\n align-items: center;\n\n div.buttons {\n display: flex;\n gap: 8px;\n margin: 8px 0;\n\n button {\n border-radius: 50%;\n border: none;\n height: 24px;\n width: 24px;\n color: var(--nylas-base-800);\n cursor: pointer;\n background: var(--nylas-base-100);\n\n &:hover {\n background-color: var(--nylas-base-500);\n color: var(--nylas-base-0);\n }\n\n &.selected {\n background-color: var(--nylas-primary);\n color: var(--nylas-base-0);\n }\n\n &:active {\n background-color: var(--nylas-base-600);\n color: var(--nylas-base-0);\n }\n }\n }\n }\n\n div.days,\n div.custom-recurrence-ends,\n div.month-recurrence {\n display: grid;\n align-items: center;\n gap: 16px;\n grid-template-columns: 128px 1fr;\n\n @media #{$mobile} {\n grid-template-columns: 1fr;\n gap: 4px;\n margin: 16px 0;\n }\n }\n\n div.custom-recurrence-ends {\n #custom-recurrence-end-type {\n &::part(sd_dropdown-button) {\n padding: 16px;\n }\n }\n }\n\n div.custom-recurrence {\n display: flex;\n gap: 16px;\n align-items: baseline;\n\n @media #{$mobile} {\n flex-direction: column;\n align-items: flex-start;\n gap: 0;\n }\n\n div.custom-recurrence-end-after {\n display: flex;\n gap: 8px;\n align-items: center;\n\n @media #{$mobile} {\n flex-direction: column;\n align-items: flex-start;\n }\n #recurrence-end-after {\n &::part(netimeslot__input-textfield),\n &::part(ic__input) {\n border-color: var(--nylas-base-200);\n }\n }\n }\n\n nylas-date-component::part(ic__date) {\n padding: 0 16px;\n height: 52px;\n border: 1px solid var(--nylas-base-200);\n }\n }\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug, generateRRule, getTimezoneOffset } from '@/utils/utils';\nimport { AttachInternals, Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport i18next from '@/utils/i18n';\nimport { LANGUAGE_CODE, TIMEZONE_MAP } from '@/common/constants';\nimport dayjs from 'dayjs';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\nimport utc from 'dayjs/plugin/utc';\nimport timezone from 'dayjs/plugin/timezone';\nimport { User } from '@/common/nylas-api-request';\nimport { ThemeConfig } from '@nylas/core';\n\ndayjs.extend(customParseFormat);\ndayjs.extend(utc);\ndayjs.extend(timezone);\n\nconst periodMap = {\n day: 'daily',\n week: 'weekly',\n month: 'monthly',\n year: 'yearly',\n};\n\ntype RepeatEndType = 'never' | 'on' | 'after';\ntype RecurrenceType = 'none' | 'daily' | 'weekly' | 'monthly' | 'yearly' | 'custom';\n\n/**\n * The `nylas-event-timeslot` component is a UI component that allows users to select the event type for the scheduler configuration.\n */\n@Component({\n tag: 'nylas-event-timeslot',\n styleUrl: 'nylas-event-timeslot.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasEventTimeslot {\n @Element() host!: HTMLNylasEventTimeslotElement;\n\n /**\n * @standalone\n * The name of the component\n */\n @Prop() name: string = 'event-timeslot';\n /**\n * The initial value of the event timeslot.\n */\n @Prop() initialValue?: {\n when: {\n start_time: number;\n end_time: number;\n start_timezone: string;\n end_timezone: string;\n };\n recurrence: string[];\n };\n\n /**\n * The selected language.\n */\n @Prop() selectedLanguage?: LANGUAGE_CODE;\n\n /**\n * The current user.\n */\n @Prop() currentUser?: User;\n /**\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: ThemeConfig;\n\n /**\n * The selected date.\n */\n @State() selectedDate!: string;\n\n /**\n * The selected start time.\n */\n @State() selectedStartTime!: string;\n\n /**\n * The selected end time.\n */\n @State() selectedEndTime!: string;\n\n /**\n * The timezone.\n */\n @State() selectedTimezone!: string;\n\n /**\n * The selected recurrence type.\n */\n @State() selectedRecurrenceType!: RecurrenceType;\n\n /**\n * Time range error.\n */\n @State() timeRangeError: boolean = false;\n\n /**\n * The selected rrule.\n */\n @State() selectedRrule!: string | null;\n\n /**\n * Recurrence options.\n */\n @State() recurrenceOptions: { label: string; value: string }[] = [];\n /**\n * Repeat every frequency.\n */\n @State() repeatEveryInterval: number = 1;\n /**\n * Repeat every period.\n */\n @State() repeatEveryFrequency: string = 'week';\n /**\n * Repeat on days.\n */\n @State() repeatOnDays: string[] = [];\n /**\n * Repeat monthly on.\n */\n @State() repeatMonthlySameDate: boolean = true;\n /**\n * Repeat end type.\n */\n @State() repeatEndType: RepeatEndType = 'never';\n /**\n * Repeat end after.\n */\n @State() repeatEndAfter: number = 1;\n /**\n * Repeat end on (custom recurrence).\n */\n @State() repeatEndOn: string | undefined;\n /**\n * Month recurrence options.\n */\n @State() monthRecurrenceOptions: { label: string; value: string }[] = [];\n /**\n * The end date for recurrence (non-custom recurrence).\n */\n @State() endDate: string | undefined;\n\n /**\n * The flag to indicate if the date input is in error state.\n */\n @State() hasDateTimeInputError: boolean = false;\n\n /**\n * The element internals.\n */\n @AttachInternals() internals!: ElementInternals;\n\n /**\n * This event is fired when the value of the event location changes.\n */\n @Event() valueChanged!: EventEmitter<{\n value: string;\n name: string;\n }>;\n\n /**\n * This event is fired when the value of the event timeslot changes.\n */\n @Event() timeWindowFormError!: EventEmitter<{\n key: string;\n message: string;\n uniqueIdentifier?: string;\n }>;\n\n /**\n * This event is fired when the value of the event timeslot changes.\n */\n @Event() dateTimeInputError!: EventEmitter<{\n key: string;\n message: string;\n }>;\n\n // Lifecycle methods\n connectedCallback() {\n debug('nylas-event-timeslot', 'connectedCallback');\n // Use queueMicrotask to defer theme application until after React has set props.\n // This fixes the timing issue where connectedCallback fires before React sets themeConfig.\n queueMicrotask(() => {\n if (this.themeConfig) {\n this.applyThemeConfig(this.themeConfig);\n this.host.setAttribute('data-themed', '');\n }\n });\n }\n\n disconnectedCallback() {\n debug('nylas-event-timeslot', 'disconnectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-event-timeslot', 'componentWillLoad');\n // See comment in the @Watch('name') decorator for more information.\n this.host.setAttribute('name', this.name);\n }\n\n componentDidLoad() {\n debug('nylas-event-timeslot', 'componentDidLoad');\n\n // Set defaults from initialValue or fallback to current values\n if (this.initialValue) {\n const { when, recurrence } = this.initialValue;\n\n if (when) {\n this.selectedDate = dayjs.unix(when.start_time).tz(when.start_timezone).format('YYYY-MM-DD');\n this.selectedStartTime = dayjs.unix(when.start_time).tz(when.start_timezone).format('hh:mma');\n this.selectedEndTime = dayjs.unix(when.end_time).tz(when.end_timezone).format('hh:mma');\n this.selectedTimezone = when.start_timezone;\n } else {\n this.selectedDate = new Date().toISOString().split('T')[0];\n const defaultTimes = this.getSuggestedTime();\n this.selectedStartTime = defaultTimes.startTime;\n this.selectedEndTime = defaultTimes.endTime;\n this.selectedTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;\n }\n\n if (recurrence && recurrence.length > 0) {\n this.selectedRrule = recurrence[0];\n const repeatEndAfter = recurrence[0]?.split(';')?.find(s => s.includes('COUNT'));\n if (repeatEndAfter) {\n this.repeatEndAfter = parseInt(repeatEndAfter.split('=')[1]);\n }\n const daysString = recurrence[0]?.split(';')?.find(s => s.includes('BYDAY'));\n if (daysString) {\n this.repeatOnDays = daysString.split('=')[1].split(',');\n }\n const until = recurrence[0]?.split(';')?.find(s => s.includes('UNTIL'));\n if (until) {\n const untilDate = dayjs(until.split('=')[1], 'YYYYMMDDTHHmmss').toDate();\n this.repeatEndOn = dayjs(untilDate).toISOString().split('T')[0];\n this.repeatEndType = 'on';\n }\n const recurrenceType = this.getRecurrenceTypeFromRrule(recurrence[0]);\n this.selectedRecurrenceType = recurrenceType || 'none';\n } else {\n this.selectedRecurrenceType = 'none';\n this.selectedRrule = generateRRule(this.selectedDate, this.selectedRecurrenceType, undefined, undefined, this.selectedTimezone);\n }\n } else {\n this.selectedDate = new Date().toISOString().split('T')[0];\n const defaultTimes = this.getSuggestedTime();\n this.selectedStartTime = defaultTimes.startTime;\n this.selectedEndTime = defaultTimes.endTime;\n this.selectedTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;\n this.selectedRecurrenceType = 'none';\n this.selectedRrule = generateRRule(this.selectedDate, this.selectedRecurrenceType, undefined, undefined, this.selectedTimezone);\n }\n\n this.recurrenceOptions = this.generateRecurrenceOptions(this.selectedDate, this.selectedTimezone);\n this.monthRecurrenceOptions = this.getMonthRecurrenceOptions(this.selectedDate, this.selectedTimezone);\n\n // Trigger initial value change\n this.handleValueChanged(true);\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-event-timeslot', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @Watch('selectedLanguage')\n selectedLanguageChangedHandler(newVal: LANGUAGE_CODE, oldVal: LANGUAGE_CODE) {\n if (newVal === oldVal) return;\n i18next.changeLanguage(newVal);\n }\n\n @Watch('themeConfig')\n themeConfigChangedHandler(newVal: ThemeConfig, oldVal: ThemeConfig) {\n if (newVal === oldVal) return;\n this.applyThemeConfig(newVal);\n }\n\n applyThemeConfig(themeConfig?: ThemeConfig) {\n if (themeConfig) {\n for (const [key, value] of Object.entries(themeConfig)) {\n this.host.style.setProperty(`${key}`, value);\n }\n }\n }\n\n // Utility function to get the ordinal suffix (e.g., 1st, 2nd, 3rd)\n getOrdinalSuffix(n) {\n const s = ['th', 'st', 'nd', 'rd'];\n const v = n % 100;\n return n + (s[(v - 20) % 10] || s[v] || s[0]);\n }\n\n getRecurrenceTypeFromRrule(rrule: string): RecurrenceType | undefined {\n if (rrule.includes('INTERVAL')) return 'custom';\n if (rrule.includes('FREQ=DAILY')) return 'daily';\n if (rrule.includes('FREQ=WEEKLY')) return 'weekly';\n if (rrule.includes('FREQ=MONTHLY')) return 'monthly';\n if (rrule.includes('FREQ=YEARLY')) return 'yearly';\n return undefined;\n }\n\n // Function to generate dynamic recurrence options\n generateRecurrenceOptions(selectedDate: string, timezoneStr: string) {\n const daysOfWeek = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];\n\n // Parse the date in the given timezone\n const selectedDay = dayjs.tz(selectedDate, timezoneStr);\n\n const dayOfWeek = daysOfWeek[selectedDay.day()]; // Get the day of the week (e.g., Thursday)\n\n // Determine the occurrence of the day in the month (e.g., 1st, 2nd, etc.)\n const date = selectedDay.date();\n const occurrenceInMonth = Math.ceil(date / 7); // e.g., 1st Thursday\n\n // Generate options\n return [\n { label: i18next.t('nylasEventTimeslot.recurrenceOptions.none'), value: 'none' },\n { label: i18next.t('nylasEventTimeslot.recurrenceOptions.daily'), value: 'daily' },\n { label: i18next.t('nylasEventTimeslot.recurrenceOptions.weekly', { dayOfWeek: dayOfWeek }), value: 'weekly' },\n { label: i18next.t('nylasEventTimeslot.recurrenceOptions.monthly', { dayOfMonth: `${this.getOrdinalSuffix(occurrenceInMonth)} ${dayOfWeek}` }), value: 'monthly' },\n {\n label: i18next.t('nylasEventTimeslot.recurrenceOptions.yearly', { dateOfMonth: `${selectedDay.format('MMMM D')}` }),\n value: 'yearly',\n },\n { label: i18next.t('nylasEventTimeslot.recurrenceOptions.custom'), value: 'custom' },\n ];\n }\n\n // Function to generate dynamic month recurrence options\n getMonthRecurrenceOptions(selectedDate: string, timezoneStr: string) {\n const daysOfWeek = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];\n\n const selectedDay = dayjs.tz(selectedDate, timezoneStr);\n const dayOfWeek = daysOfWeek[selectedDay.day()]; // Get the day of the week (e.g., Thursday)\n const date = selectedDay.date();\n const occurrenceInMonth = Math.ceil(date / 7);\n\n return [\n { label: i18next.t('nylasEventTimeslot.recurrenceOptions.monthOnDay', { date: date }), value: 'monthly-same-date' },\n { label: i18next.t('nylasEventTimeslot.recurrenceOptions.monthly', { dayOfMonth: `${this.getOrdinalSuffix(occurrenceInMonth)} ${dayOfWeek}` }), value: 'monthly' },\n ];\n }\n\n // Function to get the default suggested time shown in the time range picker\n getSuggestedTime() {\n const now = dayjs();\n\n // Round current time to the next 30-minute increment\n const minutes = now.minute();\n const roundedMinutes = minutes <= 30 ? 30 : 60;\n const startTime = now.set('minute', roundedMinutes).set('second', 0);\n\n // Calculate end time (30 minutes after start time)\n const endTime = startTime.add(30, 'minute');\n\n // Format the times in \"hh:mma\" format\n return {\n startTime: startTime.format('hh:mma'), // e.g., \"03:00pm\"\n endTime: endTime.format('hh:mma'), // e.g., \"03:30pm\"\n };\n }\n\n getTimezoneLabelHTML(timezone: string) {\n const offset = getTimezoneOffset(timezone);\n return (\n <span\n class=\"timezone-label\"\n style={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n width: '-webkit-fill-available',\n }}\n >\n {TIMEZONE_MAP[timezone]}{' '}\n <span\n class=\"timezone-offset\"\n style={{\n fontSize: '14px',\n fontWeight: '400',\n color: 'var(--nylas-base-500)',\n }}\n >\n {offset}\n </span>\n </span>\n );\n }\n\n // Function to check if the start time is after the end time (used for validation)\n isStartTimeAfterEndTime(startTime: string, endTime: string): boolean {\n // Parse the times using Day.js\n const start = dayjs(startTime, 'hh:mma');\n const end = dayjs(endTime, 'hh:mma');\n\n // Compare start and end times\n return start.isAfter(end);\n }\n\n isStartTimeEqualToEndTime(startTime: string, endTime: string): boolean {\n const start = dayjs(startTime, 'hh:mma');\n const end = dayjs(endTime, 'hh:mma');\n return start.isSame(end);\n }\n\n isStartTimeBeforeCurrentDate(date: string, startTime: string, timezone: string): boolean {\n const dateTime = dayjs.tz(`${date} ${startTime}`, 'YYYY-MM-DD hh:mma', timezone);\n return dateTime.isBefore(dayjs());\n }\n\n validateDateTimeInput(date: string, startTime: string, timezone: string): { isValid: boolean; errorMessage: string } {\n const dateTimeWithStartTime = dayjs.tz(`${date} ${startTime}`, 'YYYY-MM-DD hh:mma', timezone);\n const isInPast = dateTimeWithStartTime.isBefore(dayjs());\n\n return {\n isValid: !isInPast,\n errorMessage: isInPast ? i18next.t('nylasEventTimeslot.errors.startTimeBeforeCurrentDate') : '',\n };\n }\n\n // Function to get the start and end times in Unix timestamp format (used in the valueChanged event)\n getStartAndEndTimes() {\n const start_time = dayjs.tz(`${this.selectedDate} ${this.selectedStartTime}`, 'YYYY-MM-DD hh:mma', this.selectedTimezone).toDate();\n const end_time = dayjs.tz(`${this.selectedDate} ${this.selectedEndTime}`, 'YYYY-MM-DD hh:mma', this.selectedTimezone).toDate();\n\n return {\n start_time: Math.round(start_time.getTime() / 1000),\n end_time: Math.round(end_time.getTime() / 1000),\n };\n }\n\n // Function to get the custom options for the RRule\n getCustomOptions() {\n if (this.selectedRecurrenceType !== 'custom') {\n return undefined;\n }\n\n const repeatFreq = periodMap[this.repeatEveryFrequency];\n\n return {\n frequency: repeatFreq,\n interval: this.repeatEveryInterval,\n daysOfWeek: this.repeatEveryFrequency === 'week' ? this.repeatOnDays : undefined,\n monthlySameDate: this.repeatEveryFrequency === 'month' ? this.repeatMonthlySameDate : undefined,\n end: {\n type: this.repeatEndType,\n count: this.repeatEndType === 'after' ? this.repeatEndAfter : undefined,\n date: this.repeatEndType === 'on' ? this.repeatEndOn : undefined,\n },\n };\n }\n\n handleValueChanged(noValue: boolean = false) {\n const customOptions = this.getCustomOptions();\n this.selectedRrule = generateRRule(this.selectedDate, this.selectedRecurrenceType, this.repeatEndOn, customOptions, this.selectedTimezone);\n const { start_time, end_time } = this.getStartAndEndTimes();\n const internalsObj = {\n when: {\n start_time: start_time,\n end_time: end_time,\n start_timezone: this.selectedTimezone,\n end_timezone: this.selectedTimezone,\n },\n recurrence: this.selectedRrule ? [this.selectedRrule] : [],\n };\n this.internals.setFormValue(JSON.stringify(internalsObj), this.name);\n if (!noValue) {\n this.valueChanged.emit({\n value: JSON.stringify(internalsObj),\n name: this.name,\n });\n }\n }\n\n // Listeners\n @Listen('timeChange')\n setTime(event: CustomEvent<{ key: string; value: string }>) {\n const { key, value } = event.detail;\n if (key === 'event-timeslot-start-time') {\n this.selectedStartTime = value;\n } else if (key === 'event-timeslot-end-time') {\n this.selectedEndTime = value;\n }\n const validateStartTimeAfterEndTime = this.isStartTimeAfterEndTime(this.selectedStartTime, this.selectedEndTime);\n const validateStartTimeEqualToEndTime = this.isStartTimeEqualToEndTime(this.selectedStartTime, this.selectedEndTime);\n\n // Update the validation to use the validation method\n const validation = this.validateDateTimeInput(this.selectedDate, this.selectedStartTime, this.selectedTimezone);\n const validateStartTimeBeforeCurrentDate = !validation.isValid;\n\n this.timeRangeError = validateStartTimeAfterEndTime || validateStartTimeEqualToEndTime || validateStartTimeBeforeCurrentDate;\n let error = '';\n if (validateStartTimeAfterEndTime) {\n error = i18next.t('nylasEventTimeslot.errors.invalidTimeRange');\n } else if (validateStartTimeEqualToEndTime) {\n error = i18next.t('nylasEventTimeslot.errors.startTimeSameAsEndTime');\n } else if (validateStartTimeBeforeCurrentDate) {\n error = validation.errorMessage;\n } else {\n error = '';\n }\n this.timeWindowFormError.emit({\n key: this.name,\n message: error,\n uniqueIdentifier: 'time-range',\n });\n if (error) {\n return;\n }\n\n this.handleValueChanged();\n }\n\n @Listen('nylasFormDropdownChanged')\n nylasFormDropdownChangedHandler(\n event: CustomEvent<{\n value: RecurrenceType | RepeatEndType | string;\n name: string;\n }>,\n ) {\n const { name, value } = event.detail;\n if (name === 'timezone') {\n this.selectedTimezone = value;\n const date = dayjs(this.selectedDate);\n const validation = this.validateDateTimeInput(date.format('YYYY-MM-DD'), this.selectedStartTime, this.selectedTimezone);\n\n this.hasDateTimeInputError = !validation.isValid;\n this.dateTimeInputError.emit({\n key: this.name,\n message: validation.errorMessage,\n });\n\n if (!validation.isValid) {\n return;\n }\n } else if (name === 'recurrence-type') {\n this.selectedRecurrenceType = value as RecurrenceType;\n } else if (name === 'month-recurrence-type') {\n this.repeatMonthlySameDate = value === 'monthly-same-date';\n } else if (name === 'custom-recurrence-end-type') {\n this.repeatEndType = value as RepeatEndType;\n }\n\n this.handleValueChanged();\n }\n\n @Listen('nylasFormInputChanged')\n nylasFormInputChangedHandler(event: CustomEvent<{ value: string; name: string; error?: string }>) {\n const { name, value } = event.detail;\n if (name === 'date-time-input') {\n const date = dayjs(value);\n const validation = this.validateDateTimeInput(date.format('YYYY-MM-DD'), this.selectedStartTime, this.selectedTimezone);\n\n this.hasDateTimeInputError = !validation.isValid;\n this.dateTimeInputError.emit({\n key: this.name,\n message: validation.errorMessage,\n });\n\n if (!validation.isValid) {\n return;\n }\n\n this.selectedDate = date.format('YYYY-MM-DD');\n this.recurrenceOptions = this.generateRecurrenceOptions(this.selectedDate, this.selectedTimezone);\n this.monthRecurrenceOptions = this.getMonthRecurrenceOptions(this.selectedDate, this.selectedTimezone);\n } else if (name === 'recurrence-end-date' || name === 'custom-recurrence-end-date') {\n const error = event.detail?.error || '';\n this.timeWindowFormError.emit({\n key: this.name,\n message: error,\n uniqueIdentifier: name,\n });\n this.repeatEndOn = value;\n } else if (name === 'recurrence-end-after') {\n const parsedValue = parseInt(value);\n if (parsedValue < 1 || isNaN(parsedValue)) {\n this.timeWindowFormError.emit({\n key: this.name,\n message: i18next.t('fixFormErrors'),\n });\n return;\n }\n this.repeatEndAfter = parsedValue;\n }\n\n this.handleValueChanged();\n }\n\n @Listen('timePeriodChanged')\n timePeriodChangedHandler(event: CustomEvent<{ number: number; period: 'day' | 'week' | 'month' | 'year' }>) {\n const { number, period } = event.detail;\n this.repeatEveryInterval = number;\n this.repeatEveryFrequency = period;\n\n if (period === 'month') {\n this.monthRecurrenceOptions = this.getMonthRecurrenceOptions(this.selectedDate, this.selectedTimezone);\n }\n\n this.handleValueChanged();\n }\n\n @RegisterComponent<NylasEventTimeslot, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-event-timeslot',\n stateToProps: new Map([\n ['schedulerConfig.selectedLanguage', 'selectedLanguage'],\n ['schedulerConfig.currentUser', 'currentUser'],\n ['schedulerConfig.themeConfig', 'themeConfig'],\n ]),\n eventToProps: {\n valueChanged: async (event: CustomEvent<{ value: string; name: string }>, _nylasConnector: NylasSchedulerConfigConnector) => {\n debug('nylas-event-timeslot', 'valueChanged', event.detail);\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n const icloudProvider = this.currentUser?.provider === 'icloud';\n const defaultRecurrenceOption = this.recurrenceOptions.find(option => option.value === this.selectedRecurrenceType);\n const timezoneOptions = Object.keys(TIMEZONE_MAP).map(key => ({\n labelHTML: this.getTimezoneLabelHTML(key),\n label: TIMEZONE_MAP[key],\n value: key,\n }));\n const selectedTimezoneOption = timezoneOptions.find(i => i.value === this.selectedTimezone);\n const endOptions = [\n { label: i18next.t('nylasEventTimeslot.customRecurrence.endsOptions.never'), value: 'never' },\n { label: i18next.t('nylasEventTimeslot.customRecurrence.endsOptions.on'), value: 'on' },\n { label: i18next.t('nylasEventTimeslot.customRecurrence.endsOptions.after'), value: 'after' },\n ];\n const defaultEndOnDate = dayjs(this.selectedDate).add(1, 'year').toISOString().split('T')[0];\n const defaultEndAfter = this.repeatEveryFrequency === 'week' ? 4 : this.repeatEveryFrequency === 'month' ? 12 : 5;\n this.repeatEndOn = this.repeatEndOn || defaultEndOnDate;\n this.repeatEndAfter = this.repeatEndAfter || defaultEndAfter;\n const today = dayjs().tz(this.selectedTimezone);\n return (\n <Host>\n <div class=\"nylas-event-timeslot\" part=\"netimeslot\">\n <label htmlFor=\"date-time-input\">{i18next.t('nylasEventTimeslot.dateTimeLabel')}</label>\n <div class=\"date-time-input\" part=\"netimeslot__date-time-input\">\n <div class=\"date-time-picker\" part=\"netimeslot__date-time-picker\">\n <nylas-date-component\n minDate={dayjs().tz(this.selectedTimezone).toISOString().split('T')[0]}\n name=\"date-time-input\"\n defaultValue={this.selectedDate}\n id={'date-time-input'}\n class={{ error: this.hasDateTimeInputError }}\n required={true}\n hasError={this.hasDateTimeInputError}\n themeConfig={this.themeConfig}\n ></nylas-date-component>\n <div class=\"time-range\" part=\"netimeslot__time-range\">\n <nylas-time-window-picker\n id={'event-timeslot-start-time'}\n hasError={this.timeRangeError}\n time={this.selectedStartTime}\n language={this.selectedLanguage}\n name={'event-timeslot-start-time'}\n key={'event-timeslot-start-time'}\n themeConfig={this.themeConfig}\n exportparts=\"time-picker: nap__time-picker-container, time-input: nap__time-picker-input, times: nap__time-picker-times\"\n />\n <span>&ndash;</span>\n <nylas-time-window-picker\n id={'event-timeslot-end-time'}\n hasError={this.timeRangeError}\n time={this.selectedEndTime}\n language={this.selectedLanguage}\n name={'event-timeslot-end-time'}\n key={'event-timeslot-end-time'}\n minimumStartTime={this.selectedStartTime}\n themeConfig={this.themeConfig}\n exportparts=\"time-picker: nap__time-picker-container, time-input: nap__time-picker-input, times: nap__time-picker-times\"\n />\n </div>\n {selectedTimezoneOption?.label && (\n <select-dropdown\n searchPlaceholder={i18next.t('search')}\n name=\"timezone\"\n exportparts=\"sd_dropdown: nap__timezone-container, sd_dropdown-button: nap__timezone-button, sd_dropdown-content: nap__timezone-dropdown-content\"\n options={timezoneOptions}\n withChevron={false}\n defaultSelectedOption={selectedTimezoneOption}\n themeConfig={this.themeConfig}\n >\n <span slot=\"select-icon\">\n <globe-icon width=\"20\" height=\"20\" />\n </span>\n </select-dropdown>\n )}\n </div>\n {!icloudProvider && (\n // iCloud provider does not support recurrence options\n <div class=\"recurrence-options\" part=\"netimeslot__recurrence-options\">\n {defaultRecurrenceOption && defaultRecurrenceOption?.label && (\n <div class=\"recurrence-type\" part=\"netimeslot__recurrence-type\">\n <label htmlFor=\"recurrence-type\">{i18next.t('nylasEventTimeslot.recurrenceLabel')}</label>\n <select-dropdown\n withSearch={false}\n id=\"recurrence-type\"\n name=\"recurrence-type\"\n options={this.recurrenceOptions}\n themeConfig={this.themeConfig}\n defaultSelectedOption={defaultRecurrenceOption}\n exportparts=\"sd_dropdown: netimeslot__dropdown, sd_dropdown-button: netimeslot__dropdown-button, sd_dropdown-content: netimeslot__dropdown-content\"\n ></select-dropdown>\n </div>\n )}\n {this.selectedRecurrenceType !== 'custom' && this.selectedRecurrenceType !== 'none' && (\n <div class=\"recurrence-end\" part=\"netimeslot__recurrence-end\">\n <label>{i18next.t('nylasEventTimeslot.endDate')}</label>\n <nylas-date-component\n name=\"recurrence-end-date\"\n minDate={today.toISOString().split('T')[0]}\n defaultValue={this.repeatEndOn || defaultEndOnDate}\n id={'recurrence-end-date'}\n required={true}\n themeConfig={this.themeConfig}\n ></nylas-date-component>\n </div>\n )}\n\n {this.selectedRecurrenceType === 'custom' && (\n <div class=\"custom-recurrence-time-period\" part=\"netimeslot__custom-recurrence\">\n <label htmlFor=\"\">{i18next.t('nylasEventTimeslot.customRecurrence.repeatEvery')}</label>\n <time-period-selector\n id=\"custom-recurrence-time-period\"\n exportparts=\"tps__number-dropdown: netimeslot__number-dropdown, tps__number-dropdown-button: netimeslot__number-dropdown-button, tps__number-dropdown-content: netimeslot__number-dropdown-content, tps__period-dropdown: netimeslot__period-dropdown, tps__period-dropdown-button: netimeslot__period-dropdown-button, tps__period-dropdown-content: netimeslot__period-dropdown-content\"\n timePeriods={[\n { value: 'day', label: i18next.t('timePeriod', { context: 'day' }) },\n { value: 'week', label: i18next.t('timePeriod', { context: 'week' }) },\n { value: 'month', label: i18next.t('timePeriod', { context: 'month' }) },\n { value: 'year', label: i18next.t('timePeriod', { context: 'year' }) },\n ]}\n themeConfig={this.themeConfig}\n defaultSelectedNumber={this.repeatEveryInterval}\n defaultSelectedPeriod={this.repeatEveryFrequency}\n />\n </div>\n )}\n <div class=\"repeat-on\">\n {this.selectedRecurrenceType === 'custom' && this.repeatEveryFrequency === 'week' && (\n <div class=\"days\">\n <label>{i18next.t('nylasEventTimeslot.customRecurrence.repeatOn')}</label>\n <div class=\"buttons\">\n {[\n { label: 'S', value: 'SU', title: 'Sunday' },\n { label: 'M', value: 'MO', title: 'Monday' },\n { label: 'T', value: 'TU', title: 'Tuesday' },\n { label: 'W', value: 'WE', title: 'Wednesday' },\n { label: 'T', value: 'TH', title: 'Thursday' },\n { label: 'F', value: 'FR', title: 'Friday' },\n { label: 'S', value: 'SA', title: 'Saturday' },\n ].map(day => (\n <button\n class={{ selected: this.repeatOnDays.includes(day.value) }}\n title={day.title}\n onClick={() => {\n this.repeatOnDays = this.repeatOnDays.includes(day.value) ? this.repeatOnDays.filter(d => d !== day.value) : [...this.repeatOnDays, day.value];\n this.handleValueChanged();\n }}\n >\n {day.label}\n </button>\n ))}\n </div>\n </div>\n )}\n {this.selectedRecurrenceType === 'custom' && this.repeatEveryFrequency === 'month' && (\n <div class=\"month-recurrence\">\n <span></span>\n <select-dropdown\n withSearch={false}\n id=\"month-recurrence-type\"\n name=\"month-recurrence-type\"\n options={this.monthRecurrenceOptions}\n themeConfig={this.themeConfig}\n defaultSelectedOption={this.repeatMonthlySameDate ? this.monthRecurrenceOptions[0] : this.monthRecurrenceOptions[1]}\n exportparts=\"sd_dropdown: netimeslot__dropdown, sd_dropdown-button: netimeslot__dropdown-button, sd_dropdown-content: netimeslot__dropdown-content\"\n ></select-dropdown>\n </div>\n )}\n <div class=\"custom-recurrence\">\n {this.selectedRecurrenceType === 'custom' && (\n <div class=\"custom-recurrence-ends\">\n <label htmlFor=\"recurrence-type\">{i18next.t('nylasEventTimeslot.customRecurrence.ends')}</label>\n <select-dropdown\n withSearch={false}\n id=\"custom-recurrence-end-type\"\n name=\"custom-recurrence-end-type\"\n options={endOptions}\n themeConfig={this.themeConfig}\n defaultSelectedOption={endOptions.find(option => option.value === this.repeatEndType)}\n exportparts=\"sd_dropdown: netimeslot__dropdown, sd_dropdown-button: netimeslot__dropdown-button, sd_dropdown-content: netimeslot__dropdown-content\"\n ></select-dropdown>\n </div>\n )}\n {this.selectedRecurrenceType === 'custom' && this.repeatEndType === 'on' && (\n <div>\n <nylas-date-component\n name=\"custom-recurrence-end-date\"\n minDate={today.toISOString().split('T')[0]}\n defaultValue={this.repeatEndOn || defaultEndOnDate}\n id={'custom-recurrence-end-date'}\n required={true}\n themeConfig={this.themeConfig}\n ></nylas-date-component>\n </div>\n )}\n {this.selectedRecurrenceType === 'custom' && this.repeatEndType === 'after' && (\n <div class=\"custom-recurrence-end-after\">\n <input-component\n name=\"recurrence-end-after\"\n id=\"recurrence-end-after\"\n type=\"number\"\n minValue={1}\n themeConfig={this.themeConfig}\n defaultValue={defaultEndAfter.toString()}\n exportparts=\"ic_input: netimeslot__input-textfield\"\n />\n <span>{i18next.t('nylasEventTimeslot.customRecurrence.occurrences')}</span>\n </div>\n )}\n </div>\n </div>\n </div>\n )}\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}