@nylas/web-elements 0.0.0-canary-20251023162803 → 0.0.0-canary-20251029185136
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.
- package/dist/cdn/nylas-scheduler-editor/nylas-scheduler-editor.es.js +17 -16
- package/dist/cdn/nylas-scheduling/nylas-scheduling.es.js +10 -10
- package/dist/cjs/{abstract-provider-DOaCK0Ia.js → abstract-provider-CZo7QWPj.js} +3 -3
- package/dist/cjs/{abstract-provider-DOaCK0Ia.js.map → abstract-provider-CZo7QWPj.js.map} +1 -1
- package/dist/cjs/calendar-agenda-fill-icon_38.cjs.entry.js +9 -9
- package/dist/cjs/calendar-agenda-fill-icon_38.cjs.entry.js.map +1 -1
- package/dist/cjs/checkbox-group_4.cjs.entry.js +3 -3
- package/dist/cjs/checkmark-icon_15.cjs.entry.js +2 -2
- package/dist/cjs/{customParseFormat-B3qRJI76.js → customParseFormat-DdrySvrq.js} +3 -3
- package/dist/cjs/{customParseFormat-B3qRJI76.js.map → customParseFormat-DdrySvrq.js.map} +1 -1
- package/dist/cjs/globe-icon_3.cjs.entry.js +2 -2
- package/dist/cjs/google-logo-icon_6.cjs.entry.js +3 -3
- package/dist/cjs/index.cjs.js +2 -2
- package/dist/cjs/input-component.cjs.entry.js +1 -1
- package/dist/cjs/input-dropdown_2.cjs.entry.js +1 -1
- package/dist/cjs/multi-select-dropdown.cjs.entry.js +1 -1
- package/dist/cjs/{nylas-api-request-Dyvsd6KX.js → nylas-api-request-Cyt148Hk.js} +3 -3
- package/dist/cjs/{nylas-api-request-Dyvsd6KX.js.map → nylas-api-request-Cyt148Hk.js.map} +1 -1
- package/dist/cjs/nylas-booked-event-card_11.cjs.entry.js +2 -2
- package/dist/cjs/nylas-form-card.cjs.entry.js +2 -2
- package/dist/cjs/nylas-notification_2.cjs.entry.js +1 -1
- package/dist/cjs/nylas-scheduler-editor.cjs.entry.js +4 -4
- package/dist/cjs/nylas-scheduling.cjs.entry.js +3 -3
- package/dist/cjs/{register-component-CZKreEUk.js → register-component-BYFF0_7-.js} +3 -3
- package/dist/cjs/{register-component-CZKreEUk.js.map → register-component-BYFF0_7-.js.map} +1 -1
- package/dist/cjs/textarea-component.cjs.entry.js +1 -1
- package/dist/cjs/{utils-VYrzhIuQ.js → utils-DMP9yXCk.js} +11 -11
- package/dist/cjs/{utils-VYrzhIuQ.js.map → utils-DMP9yXCk.js.map} +1 -1
- package/dist/cjs/{version-B9vc8Krl.js → version-DTKfJ9pI.js} +3 -3
- package/dist/cjs/{version-B9vc8Krl.js.map → version-DTKfJ9pI.js.map} +1 -1
- package/dist/collection/components/scheduler-editor/nylas-specific-time-availability-picker/nylas-specific-time-availability-picker.css +9 -2
- package/dist/collection/components/scheduler-editor/nylas-specific-time-availability-picker/nylas-specific-time-availability-picker.js +6 -6
- package/dist/collection/components/scheduler-editor/nylas-specific-time-availability-picker/nylas-specific-time-availability-picker.js.map +1 -1
- package/dist/collection/version.js +1 -1
- package/dist/collection/version.js.map +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/input-component.js +1 -1
- package/dist/components/input-image-url.js +1 -1
- package/dist/components/multi-select-dropdown.js +1 -1
- package/dist/components/nylas-additional-participants.js +1 -1
- package/dist/components/nylas-availability-picker.js +1 -1
- package/dist/components/nylas-booked-event-card.js +1 -1
- package/dist/components/nylas-booking-calendar-picker.js +1 -1
- package/dist/components/nylas-booking-confirmation-redirect.js +1 -1
- package/dist/components/nylas-booking-confirmation-type.js +1 -1
- package/dist/components/nylas-booking-form-config.js +1 -1
- package/dist/components/nylas-booking-form.js +1 -1
- package/dist/components/nylas-buffer-time.js +1 -1
- package/dist/components/nylas-calendar-picker.js +1 -1
- package/dist/components/nylas-cancel-booking-form.js +1 -1
- package/dist/components/nylas-cancellation-policy.js +1 -1
- package/dist/components/nylas-cancelled-event-card.js +1 -1
- package/dist/components/nylas-confirmation-email.js +1 -1
- package/dist/components/nylas-confirmed-event-card.js +1 -1
- package/dist/components/nylas-connected-calendars.js +1 -1
- package/dist/components/nylas-custom-booking-flow.js +1 -1
- package/dist/components/nylas-custom-event-slug.js +1 -1
- package/dist/components/nylas-customize-booking-settings.js +1 -1
- package/dist/components/nylas-date-component.js +1 -1
- package/dist/components/nylas-date-picker.js +1 -1
- package/dist/components/nylas-disable-emails.js +1 -1
- package/dist/components/nylas-editor-tabs-group.js +1 -1
- package/dist/components/nylas-editor-tabs.js +1 -1
- package/dist/components/nylas-event-calendar.js +1 -1
- package/dist/components/nylas-event-capacity.js +1 -1
- package/dist/components/nylas-event-description.js +1 -1
- package/dist/components/nylas-event-duration.js +1 -1
- package/dist/components/nylas-event-info.js +1 -1
- package/dist/components/nylas-event-limits.js +1 -1
- package/dist/components/nylas-event-location.js +1 -1
- package/dist/components/nylas-event-timeslot.js +1 -1
- package/dist/components/nylas-event-title.js +1 -1
- package/dist/components/nylas-feedback-form.js +1 -1
- package/dist/components/nylas-form-card.js +1 -1
- package/dist/components/nylas-limit-future-bookings.js +1 -1
- package/dist/components/nylas-list-configurations.js +1 -1
- package/dist/components/nylas-locale-switch.js +1 -1
- package/dist/components/nylas-min-booking-notice.js +1 -1
- package/dist/components/nylas-min-cancellation-notice.js +1 -1
- package/dist/components/nylas-notification.js +1 -1
- package/dist/components/nylas-only-specific-time-availability.js +1 -1
- package/dist/components/nylas-organizer-confirmation-card.js +1 -1
- package/dist/components/nylas-page-name.js +1 -1
- package/dist/components/nylas-page-styling.js +1 -1
- package/dist/components/nylas-participant-booking-calendars.js +1 -1
- package/dist/components/nylas-participants-custom-availability.js +1 -1
- package/dist/components/nylas-reminder-emails.js +1 -1
- package/dist/components/nylas-reminder-time.js +1 -1
- package/dist/components/nylas-scheduler-editor.js +55 -55
- package/dist/components/nylas-scheduling-method.js +1 -1
- package/dist/components/nylas-scheduling.js +19 -19
- package/dist/components/nylas-select-event-type.js +1 -1
- package/dist/components/nylas-selected-event-card.js +1 -1
- package/dist/components/nylas-specific-time-availability-picker.js +1 -1
- package/dist/components/nylas-time-window-picker.js +1 -1
- package/dist/components/nylas-timeslot-interval.js +1 -1
- package/dist/components/nylas-timeslot-picker.js +1 -1
- package/dist/components/{p-H2PEDQev.js → p--DnD2uAW.js} +7 -7
- package/dist/components/{p-H2PEDQev.js.map → p--DnD2uAW.js.map} +1 -1
- package/dist/components/{p-BOEUsxij.js → p-B4K2F_cG.js} +4 -4
- package/dist/components/{p-BOEUsxij.js.map → p-B4K2F_cG.js.map} +1 -1
- package/dist/components/{p-CS8D-1if.js → p-B5pNjL0N.js} +4 -4
- package/dist/components/{p-CS8D-1if.js.map → p-B5pNjL0N.js.map} +1 -1
- package/dist/components/{p-Nzu_5ZmQ.js → p-BC9yeuRb.js} +3 -3
- package/dist/components/{p-Nzu_5ZmQ.js.map → p-BC9yeuRb.js.map} +1 -1
- package/dist/components/{p-BX-dFDFA.js → p-BMpBdxEp.js} +4 -4
- package/dist/components/{p-BX-dFDFA.js.map → p-BMpBdxEp.js.map} +1 -1
- package/dist/components/{p-DffK_G9v.js → p-BYzuAGXU.js} +49 -49
- package/dist/components/{p-DffK_G9v.js.map → p-BYzuAGXU.js.map} +1 -1
- package/dist/components/{p-D6E0vp2X.js → p-BfdTgv37.js} +4 -4
- package/dist/components/{p-D6E0vp2X.js.map → p-BfdTgv37.js.map} +1 -1
- package/dist/components/{p-C-9RzJZG.js → p-BkzMJ4pV.js} +11 -11
- package/dist/components/{p-C-9RzJZG.js.map → p-BkzMJ4pV.js.map} +1 -1
- package/dist/components/{p-BnKgaDIm.js → p-BnU07kVV.js} +5 -5
- package/dist/components/{p-BnKgaDIm.js.map → p-BnU07kVV.js.map} +1 -1
- package/dist/components/{p-CJXT074p.js → p-BnrCrrsE.js} +4 -4
- package/dist/components/{p-CJXT074p.js.map → p-BnrCrrsE.js.map} +1 -1
- package/dist/components/{p-B4LAfvS9.js → p-BoryVwdE.js} +3 -3
- package/dist/components/{p-B4LAfvS9.js.map → p-BoryVwdE.js.map} +1 -1
- package/dist/components/{p-B-q5dr4Z.js → p-BqTfI9iO.js} +5 -5
- package/dist/components/{p-B-q5dr4Z.js.map → p-BqTfI9iO.js.map} +1 -1
- package/dist/components/{p-PGZfpcsW.js → p-Bspl8yuu.js} +8 -8
- package/dist/components/{p-PGZfpcsW.js.map → p-Bspl8yuu.js.map} +1 -1
- package/dist/components/{p-nwpBi6uh.js → p-BvRLg-HQ.js} +3 -3
- package/dist/components/{p-nwpBi6uh.js.map → p-BvRLg-HQ.js.map} +1 -1
- package/dist/components/{p-Ck7Utpku.js → p-C5fHZLWQ.js} +5 -5
- package/dist/components/{p-Ck7Utpku.js.map → p-C5fHZLWQ.js.map} +1 -1
- package/dist/components/{p-rernVjNw.js → p-C7CSS14_.js} +6 -6
- package/dist/components/{p-rernVjNw.js.map → p-C7CSS14_.js.map} +1 -1
- package/dist/components/{p-USlPWd32.js → p-C8gVhB99.js} +5 -5
- package/dist/components/{p-USlPWd32.js.map → p-C8gVhB99.js.map} +1 -1
- package/dist/components/{p-CxxOe2_e.js → p-C9m4ME75.js} +40 -40
- package/dist/components/{p-CxxOe2_e.js.map → p-C9m4ME75.js.map} +1 -1
- package/dist/components/{p-BJIdbu1H.js → p-CHGzZc5-.js} +5 -5
- package/dist/components/{p-BJIdbu1H.js.map → p-CHGzZc5-.js.map} +1 -1
- package/dist/components/{p-C3quV8UM.js → p-CI0FKgAJ.js} +7 -7
- package/dist/components/{p-C3quV8UM.js.map → p-CI0FKgAJ.js.map} +1 -1
- package/dist/components/{p-OWT0xV_k.js → p-CNojy2PB.js} +4 -4
- package/dist/components/{p-OWT0xV_k.js.map → p-CNojy2PB.js.map} +1 -1
- package/dist/components/{p-CpcjVJMS.js → p-COOMTxtt.js} +4 -4
- package/dist/components/{p-CpcjVJMS.js.map → p-COOMTxtt.js.map} +1 -1
- package/dist/components/{p-CIZt1hbc.js → p-CS7dGt1R.js} +4 -4
- package/dist/components/{p-CIZt1hbc.js.map → p-CS7dGt1R.js.map} +1 -1
- package/dist/components/{p-CxgQ4DV9.js → p-CZw_P3Tp.js} +4 -4
- package/dist/components/{p-CxgQ4DV9.js.map → p-CZw_P3Tp.js.map} +1 -1
- package/dist/components/{p-CxjS5vcT.js → p-C_QAMVyX.js} +4 -4
- package/dist/components/{p-CxjS5vcT.js.map → p-C_QAMVyX.js.map} +1 -1
- package/dist/components/{p-zBmfn9Ee.js → p-CexYKlpc.js} +3 -3
- package/dist/components/{p-zBmfn9Ee.js.map → p-CexYKlpc.js.map} +1 -1
- package/dist/components/{p-wJWFqJZw.js → p-CsKdKz2W.js} +4 -4
- package/dist/components/{p-wJWFqJZw.js.map → p-CsKdKz2W.js.map} +1 -1
- package/dist/components/{p-CZLOU3Va.js → p-CwlnHdR3.js} +4 -4
- package/dist/components/{p-CZLOU3Va.js.map → p-CwlnHdR3.js.map} +1 -1
- package/dist/components/{p-BzNgohl1.js → p-Cx31rTZq.js} +4 -4
- package/dist/components/{p-BzNgohl1.js.map → p-Cx31rTZq.js.map} +1 -1
- package/dist/components/{p-BPbLHmnh.js → p-CzBqaxFU.js} +5 -5
- package/dist/components/{p-BPbLHmnh.js.map → p-CzBqaxFU.js.map} +1 -1
- package/dist/components/{p-C7_XycjO.js → p-D1EoqZsu.js} +4 -4
- package/dist/components/{p-C7_XycjO.js.map → p-D1EoqZsu.js.map} +1 -1
- package/dist/components/{p-C_9WoSFK.js → p-D3xYUjJI.js} +4 -4
- package/dist/components/{p-C_9WoSFK.js.map → p-D3xYUjJI.js.map} +1 -1
- package/dist/components/{p-BnsOCm71.js → p-D5KNDDuK.js} +4 -4
- package/dist/components/{p-BnsOCm71.js.map → p-D5KNDDuK.js.map} +1 -1
- package/dist/components/{p-CQQB-OD7.js → p-D6ovLzQI.js} +3 -3
- package/dist/components/{p-CQQB-OD7.js.map → p-D6ovLzQI.js.map} +1 -1
- package/dist/components/{p-BgVZNMXq.js → p-D6x7KnWY.js} +8 -8
- package/dist/components/{p-BgVZNMXq.js.map → p-D6x7KnWY.js.map} +1 -1
- package/dist/components/{p-C2wPhW78.js → p-D7s_zg_d.js} +4 -4
- package/dist/components/{p-C2wPhW78.js.map → p-D7s_zg_d.js.map} +1 -1
- package/dist/components/{p-4Eo0pKVg.js → p-D92kTAyK.js} +5 -5
- package/dist/components/{p-4Eo0pKVg.js.map → p-D92kTAyK.js.map} +1 -1
- package/dist/components/{p-B335hc0N.js → p-D9Dg1JWU.js} +3 -3
- package/dist/components/{p-B335hc0N.js.map → p-D9Dg1JWU.js.map} +1 -1
- package/dist/components/{p-DP1P7gC9.js → p-D9PED7bs.js} +5 -5
- package/dist/components/{p-DP1P7gC9.js.map → p-D9PED7bs.js.map} +1 -1
- package/dist/components/{p-Dy9AIDSW.js → p-DAmas3F9.js} +4 -4
- package/dist/components/{p-Dy9AIDSW.js.map → p-DAmas3F9.js.map} +1 -1
- package/dist/components/{p-DEF0WG29.js → p-DHlJz5qn.js} +5 -5
- package/dist/components/{p-DEF0WG29.js.map → p-DHlJz5qn.js.map} +1 -1
- package/dist/components/{p-o0D7OIed.js → p-DJv7tC9z.js} +3 -3
- package/dist/components/{p-o0D7OIed.js.map → p-DJv7tC9z.js.map} +1 -1
- package/dist/components/{p-s06UjtHJ.js → p-DKnp-SZi.js} +8 -8
- package/dist/components/{p-s06UjtHJ.js.map → p-DKnp-SZi.js.map} +1 -1
- package/dist/components/{p-DPHPGDki.js → p-DPeb4p0M.js} +5 -5
- package/dist/components/{p-DPHPGDki.js.map → p-DPeb4p0M.js.map} +1 -1
- package/dist/components/{p-C7Gn7-GK.js → p-DRd9V7vZ.js} +7 -7
- package/dist/components/{p-C7Gn7-GK.js.map → p-DRd9V7vZ.js.map} +1 -1
- package/dist/components/{p-D5WcQ7s2.js → p-DTlpOiw-.js} +6 -6
- package/dist/components/{p-D5WcQ7s2.js.map → p-DTlpOiw-.js.map} +1 -1
- package/dist/components/{p-auB3ZoWP.js → p-DWkUeMm6.js} +4 -4
- package/dist/components/{p-auB3ZoWP.js.map → p-DWkUeMm6.js.map} +1 -1
- package/dist/components/{p-DFnXfDS7.js → p-DbjQjOKi.js} +3 -3
- package/dist/components/{p-DFnXfDS7.js.map → p-DbjQjOKi.js.map} +1 -1
- package/dist/components/{p-BQaskvNx.js → p-DciJgP0N.js} +4 -4
- package/dist/components/{p-BQaskvNx.js.map → p-DciJgP0N.js.map} +1 -1
- package/dist/components/{p-CAlTvMv3.js → p-DkJ3N73P.js} +5 -5
- package/dist/components/{p-CAlTvMv3.js.map → p-DkJ3N73P.js.map} +1 -1
- package/dist/components/{p-D3EFT5f-.js → p-DmYbjMxT.js} +4 -4
- package/dist/components/{p-D3EFT5f-.js.map → p-DmYbjMxT.js.map} +1 -1
- package/dist/components/{p-Ckv0Bcus.js → p-Dp5o78QS.js} +5 -5
- package/dist/components/{p-Ckv0Bcus.js.map → p-Dp5o78QS.js.map} +1 -1
- package/dist/components/{p-BgfJE-cE.js → p-DqcCEDhq.js} +5 -5
- package/dist/components/{p-BgfJE-cE.js.map → p-DqcCEDhq.js.map} +1 -1
- package/dist/components/{p-ksfJsdwW.js → p-Dqk37NDi.js} +5 -5
- package/dist/components/{p-ksfJsdwW.js.map → p-Dqk37NDi.js.map} +1 -1
- package/dist/components/{p-ML5NaBlp.js → p-Du2grbuj.js} +5 -5
- package/dist/components/{p-ML5NaBlp.js.map → p-Du2grbuj.js.map} +1 -1
- package/dist/components/{p-Dows6o9d.js → p-DvSo9R8l.js} +5 -5
- package/dist/components/{p-Dows6o9d.js.map → p-DvSo9R8l.js.map} +1 -1
- package/dist/components/{p-DzIz09Sr.js → p-DwtTOYHU.js} +13 -13
- package/dist/components/p-DwtTOYHU.js.map +1 -0
- package/dist/components/{p-He5IjVyD.js → p-DzErtQSw.js} +5 -5
- package/dist/components/{p-He5IjVyD.js.map → p-DzErtQSw.js.map} +1 -1
- package/dist/components/{p-D4OZzddo.js → p-F1_K10Bc.js} +5 -5
- package/dist/components/{p-D4OZzddo.js.map → p-F1_K10Bc.js.map} +1 -1
- package/dist/components/{p-DLdTazaE.js → p-MYEzIAsT.js} +4 -4
- package/dist/components/{p-DLdTazaE.js.map → p-MYEzIAsT.js.map} +1 -1
- package/dist/components/{p-bbx04OZB.js → p-UTtjPYki.js} +3 -3
- package/dist/components/{p-bbx04OZB.js.map → p-UTtjPYki.js.map} +1 -1
- package/dist/components/{p-DZJR8iD8.js → p-ngAHxLZm.js} +5 -5
- package/dist/components/{p-DZJR8iD8.js.map → p-ngAHxLZm.js.map} +1 -1
- package/dist/components/{p-DIbhOKDN.js → p-qe7eWmdR.js} +3 -3
- package/dist/components/{p-DIbhOKDN.js.map → p-qe7eWmdR.js.map} +1 -1
- package/dist/components/{p-B_Zms6J8.js → p-s8TAnkny.js} +4 -4
- package/dist/components/{p-B_Zms6J8.js.map → p-s8TAnkny.js.map} +1 -1
- package/dist/components/{p-DHJAvIzJ.js → p-t4Pprf0f.js} +17 -17
- package/dist/components/{p-DHJAvIzJ.js.map → p-t4Pprf0f.js.map} +1 -1
- package/dist/components/{p-CoslO5Ge.js → p-tgoTIF6z.js} +3 -3
- package/dist/components/{p-CoslO5Ge.js.map → p-tgoTIF6z.js.map} +1 -1
- package/dist/components/textarea-component.js +1 -1
- package/dist/components/time-period-selector.js +1 -1
- package/dist/esm/{abstract-provider-CAByQ1yu.js → abstract-provider-X9hmEFLa.js} +3 -3
- package/dist/esm/{abstract-provider-CAByQ1yu.js.map → abstract-provider-X9hmEFLa.js.map} +1 -1
- package/dist/esm/calendar-agenda-fill-icon_38.entry.js +9 -9
- package/dist/esm/calendar-agenda-fill-icon_38.entry.js.map +1 -1
- package/dist/esm/checkbox-group_4.entry.js +3 -3
- package/dist/esm/checkmark-icon_15.entry.js +2 -2
- package/dist/esm/{customParseFormat-C5X9iZBs.js → customParseFormat-DrYeNeiE.js} +3 -3
- package/dist/esm/{customParseFormat-C5X9iZBs.js.map → customParseFormat-DrYeNeiE.js.map} +1 -1
- package/dist/esm/globe-icon_3.entry.js +2 -2
- package/dist/esm/google-logo-icon_6.entry.js +3 -3
- package/dist/esm/index.js +2 -2
- package/dist/esm/input-component.entry.js +1 -1
- package/dist/esm/input-dropdown_2.entry.js +1 -1
- package/dist/esm/multi-select-dropdown.entry.js +1 -1
- package/dist/esm/{nylas-api-request-DRpN-bAX.js → nylas-api-request-AONmCQNh.js} +3 -3
- package/dist/esm/{nylas-api-request-DRpN-bAX.js.map → nylas-api-request-AONmCQNh.js.map} +1 -1
- package/dist/esm/nylas-booked-event-card_11.entry.js +2 -2
- package/dist/esm/nylas-form-card.entry.js +2 -2
- package/dist/esm/nylas-notification_2.entry.js +1 -1
- package/dist/esm/nylas-scheduler-editor.entry.js +4 -4
- package/dist/esm/nylas-scheduling.entry.js +3 -3
- package/dist/esm/{register-component-BP-GJdVK.js → register-component-BjlxxlMe.js} +3 -3
- package/dist/esm/{register-component-BP-GJdVK.js.map → register-component-BjlxxlMe.js.map} +1 -1
- package/dist/esm/textarea-component.entry.js +1 -1
- package/dist/esm/{utils-A9dwq_ZM.js → utils-B8iY7eY3.js} +11 -11
- package/dist/esm/{utils-A9dwq_ZM.js.map → utils-B8iY7eY3.js.map} +1 -1
- package/dist/esm/{version-DpXXq7Uc.js → version-BXeVyeUj.js} +3 -3
- package/dist/esm/{version-DpXXq7Uc.js.map → version-BXeVyeUj.js.map} +1 -1
- package/dist/nylas-web-elements/index.esm.js +1 -1
- package/dist/nylas-web-elements/nylas-web-elements.esm.js +1 -1
- package/dist/nylas-web-elements/{p-d0cbbff8.entry.js → p-20f4278e.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-c6e3e92f.entry.js → p-292681a3.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-af31fa4c.entry.js → p-2cf643e5.entry.js} +3 -3
- package/dist/nylas-web-elements/{p-9efaf701.entry.js → p-2e5ddc68.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-3f8cca39.entry.js → p-2f787108.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-3a892dc9.entry.js → p-46da48ea.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-080d42d9.entry.js → p-581f203b.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-f344d9c4.entry.js → p-756bf83b.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-6e38f35b.entry.js → p-7b6e347e.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-5427bc14.entry.js → p-88fee757.entry.js} +3 -3
- package/dist/nylas-web-elements/{p-5427bc14.entry.js.map → p-88fee757.entry.js.map} +1 -1
- package/dist/nylas-web-elements/{p-CbRMUrkC.js → p-B1edKX4a.js} +2 -2
- package/dist/nylas-web-elements/{p-CbRMUrkC.js.map → p-B1edKX4a.js.map} +1 -1
- package/dist/nylas-web-elements/{p-A9dwq_ZM.js → p-B8iY7eY3.js} +2 -2
- package/dist/nylas-web-elements/{p-A9dwq_ZM.js.map → p-B8iY7eY3.js.map} +1 -1
- package/dist/nylas-web-elements/{p-DpXXq7Uc.js → p-BXeVyeUj.js} +2 -2
- package/dist/nylas-web-elements/{p-DpXXq7Uc.js.map → p-BXeVyeUj.js.map} +1 -1
- package/dist/nylas-web-elements/{p-uCXCisBZ.js → p-BaQNtGdo.js} +2 -2
- package/dist/nylas-web-elements/{p-uCXCisBZ.js.map → p-BaQNtGdo.js.map} +1 -1
- package/dist/nylas-web-elements/{p-BUNkAxEd.js → p-DEznk-5Q.js} +2 -2
- package/dist/nylas-web-elements/{p-BUNkAxEd.js.map → p-DEznk-5Q.js.map} +1 -1
- package/dist/nylas-web-elements/{p-CnLqB-Lc.js → p-ZCLNGrd_.js} +2 -2
- package/dist/nylas-web-elements/{p-CnLqB-Lc.js.map → p-ZCLNGrd_.js.map} +1 -1
- package/dist/nylas-web-elements/{p-6b993a45.entry.js → p-c157e947.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-e13ed4e9.entry.js → p-c8025a87.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-80b69e76.entry.js → p-cd365b9c.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-0e011ed4.entry.js → p-d246e20e.entry.js} +2 -2
- package/dist/types/version.d.ts +1 -1
- package/package.json +2 -2
- package/dist/components/p-DzIz09Sr.js.map +0 -1
- /package/dist/nylas-web-elements/{p-d0cbbff8.entry.js.map → p-20f4278e.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-c6e3e92f.entry.js.map → p-292681a3.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-af31fa4c.entry.js.map → p-2cf643e5.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-9efaf701.entry.js.map → p-2e5ddc68.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-3f8cca39.entry.js.map → p-2f787108.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-3a892dc9.entry.js.map → p-46da48ea.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-080d42d9.entry.js.map → p-581f203b.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-f344d9c4.entry.js.map → p-756bf83b.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-6e38f35b.entry.js.map → p-7b6e347e.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-6b993a45.entry.js.map → p-c157e947.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-e13ed4e9.entry.js.map → p-c8025a87.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-80b69e76.entry.js.map → p-cd365b9c.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-0e011ed4.entry.js.map → p-d246e20e.entry.js.map} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
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-
|
|
3
|
-
import { a as debug, b as instance } from './p-
|
|
2
|
+
import { R as RegisterComponent } from './p-BC9yeuRb.js';
|
|
3
|
+
import { a as debug, b as instance } from './p-BkzMJ4pV.js';
|
|
4
4
|
import { D as DEFAULT_OPEN_HOURS } from './p-DUCeQ1R4.js';
|
|
5
5
|
import { d as defineCustomElement$g } from './p-p1aiCEqo.js';
|
|
6
6
|
import { d as defineCustomElement$f } from './p-CfWyIsij.js';
|
|
@@ -10,10 +10,10 @@ import { d as defineCustomElement$c } from './p-BjvAaf0A.js';
|
|
|
10
10
|
import { d as defineCustomElement$b } from './p-T0NGagTT.js';
|
|
11
11
|
import { d as defineCustomElement$a } from './p-u4gxSL05.js';
|
|
12
12
|
import { d as defineCustomElement$9 } from './p-DwvZ9OA9.js';
|
|
13
|
-
import { d as defineCustomElement$8 } from './p-
|
|
14
|
-
import { d as defineCustomElement$7 } from './p-
|
|
15
|
-
import { d as defineCustomElement$6 } from './p-
|
|
16
|
-
import { d as defineCustomElement$5 } from './p-
|
|
13
|
+
import { d as defineCustomElement$8 } from './p-DHlJz5qn.js';
|
|
14
|
+
import { d as defineCustomElement$7 } from './p-UTtjPYki.js';
|
|
15
|
+
import { d as defineCustomElement$6 } from './p-DwtTOYHU.js';
|
|
16
|
+
import { d as defineCustomElement$5 } from './p-qe7eWmdR.js';
|
|
17
17
|
import { d as defineCustomElement$4 } from './p-Dyl-GVi0.js';
|
|
18
18
|
import { d as defineCustomElement$3 } from './p-emUyDjNl.js';
|
|
19
19
|
import { d as defineCustomElement$2 } from './p-5epylYpy.js';
|
|
@@ -413,6 +413,6 @@ function defineCustomElement() {
|
|
|
413
413
|
}
|
|
414
414
|
|
|
415
415
|
export { NylasParticipantsCustomAvailability as N, defineCustomElement as d };
|
|
416
|
-
//# sourceMappingURL=p-
|
|
416
|
+
//# sourceMappingURL=p-DKnp-SZi.js.map
|
|
417
417
|
|
|
418
|
-
//# sourceMappingURL=p-
|
|
418
|
+
//# sourceMappingURL=p-DKnp-SZi.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"p-s06UjtHJ.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","i18next"],"sources":["src/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.scss?tag=nylas-participants-custom-availability&encapsulation=shadow","src/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n\n:host {\n display: block;\n @include default-css-variables;\n width: inherit;\n}\n\n.nylas-participants-custom-availability {\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 .header {\n padding: 1rem;\n h3 {\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 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 .validation-error {\n margin: 0;\n padding: 0.75rem 1rem;\n background-color: var(--nylas-color-red-50);\n\n span {\n font-size: 0.875rem;\n font-weight: 500;\n line-height: 20px;\n color: var(--nylas-error);\n display: block;\n }\n }\n .content {\n .participant-container {\n padding-top: 8px;\n border-top: 1px solid var(--nylas-base-200);\n color: var(--nylas-base-900);\n background-color: var(--nylas-base-25);\n\n .participant-title {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 4px 16px 12px;\n p {\n margin: 0;\n }\n .participant-toggle {\n display: flex;\n gap: 24px;\n align-items: center;\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 &:hover {\n color: var(--nylas-base-300);\n }\n }\n }\n }\n }\n nylas-availability-picker::part(nap) {\n margin: 0;\n border: none;\n }\n nylas-specific-time-availability-picker::part(nstap) {\n margin: 0;\n border: none;\n }\n .participant-only-specific-time-container {\n padding: 8px 16px;\n border-top: 1px solid var(--nylas-base-200);\n background-color: var(--nylas-base-50);\n\n .participant-only-specific-time-checkbox {\n label {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 14px;\n font-weight: 400;\n color: var(--nylas-base-900);\n cursor: pointer;\n\n input[type='checkbox'] {\n width: 16px;\n height: 16px;\n cursor: pointer;\n accent-color: var(--nylas-primary);\n }\n\n span {\n flex: 1;\n }\n\n tooltip-component {\n display: flex;\n align-items: center;\n }\n }\n }\n }\n }\n .participant-tabs {\n justify-content: space-between;\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 16px;\n padding: 8px 16px;\n border-top: 1px solid var(--nylas-base-200);\n\n &.single-tab {\n grid-template-columns: 1fr;\n }\n }\n .participant-tab {\n cursor: pointer;\n padding: 8px 16px;\n border-radius: var(--nylas-border-radius-2x);\n background-color: var(--nylas-base-100);\n text-align: center;\n font-size: 14px;\n font-weight: 500;\n line-height: 20px;\n color: var(--nylas-base-600);\n &.active {\n background-color: var(--nylas-primary);\n color: var(--nylas-base-100);\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { AttachInternals, Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport { Configuration, OpenHours, Participant, ParticipantAvailability, SpecificTimeAvailability, ThemeConfig } from '@nylas/core';\nimport { DEFAULT_OPEN_HOURS } from '@/common/constants';\nimport i18next from '@/utils/i18n';\nimport { LANGUAGE_CODE } from '@/common/constants';\n\n/**\n * The `nylas-participants-custom-availability` component is a form input for setting custom availability for participants.\n *\n * @part npca - The participants custom availability container\n * @part npca__header - The header of the participants custom availability\n * @part npca__validation-error - The validation error message container\n * @part npca__content - The content of the participants custom availability\n * @part npca__participant-container - The participant container\n * @part npca__participant-title - The title of the participant\n * @part npca__participant-toggle--container - The toggle container for the participant\n * @part npca__toggle-label - The label of the toggle\n * @part npca_toggle-input - The input of the toggle\n * @part npca_toggle-slider - The slider of the toggle\n */\n@Component({\n tag: 'nylas-participants-custom-availability',\n styleUrl: 'nylas-participants-custom-availability.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasParticipantsCustomAvailability {\n @Element() host!: HTMLNylasParticipantsCustomAvailabilityElement;\n private participantFormRef!: HTMLFormElement;\n /**\n * @standalone\n * The selected config\n */\n @Prop() selectedConfiguration?: Configuration;\n\n /**\n * @standalone\n * The name of the participants custom availability.\n */\n @Prop() name: string = 'participant-custom-availability';\n\n /**\n * @standalone\n * The participants selected in the add participants section.\n */\n @Prop() participants: Participant[] = this.selectedConfiguration?.participants || [];\n\n /**\n * The selected language.\n */\n @Prop() selectedLanguage?: LANGUAGE_CODE;\n\n /**\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: ThemeConfig;\n\n /**\n * This event is fired when the participants custom availability changes.\n */\n @Event() valueChanged!: EventEmitter<{\n value: string;\n name: string;\n }>;\n\n /**\n * The element internals.\n */\n @AttachInternals() internals!: ElementInternals;\n\n /**\n * The state to store the custom availability setting for participants.\n */\n @State() selectedParticipants: {\n [key: string]: {\n setCustom: boolean;\n tab: 'availability' | 'specific-time-availability';\n isOpen: boolean;\n openHours: OpenHours[];\n specificTimesAvailability: SpecificTimeAvailability[];\n name: string;\n availability?: ParticipantAvailability;\n timezone?: string;\n onlySpecificTimeAvailability?: boolean;\n };\n } = this.setParticipants(this.participants);\n\n /**\n * The validation error message for the component.\n */\n @State() validationError: string = '';\n\n // Watchers\n @Watch('name')\n elementNameChangedHandler(newValue: string) {\n debug('nylas-participants-custom-availability', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @Watch('participants')\n participantsChangedHandler(newValue: Participant[], oldValue: Participant[]) {\n debug('nylas-participants-custom-availability', 'participantsChangedHandler', newValue, oldValue);\n if (!newValue || !oldValue || JSON.stringify(newValue) === JSON.stringify(oldValue)) {\n return;\n }\n this.selectedParticipants = this.setParticipants(newValue);\n }\n\n @Watch('selectedConfiguration')\n selectedConfigurationChangedHandler(newValue: Configuration, oldValue: Configuration) {\n debug('nylas-participants-custom-availability', 'selectedConfigurationChangedHandler', newValue, oldValue);\n if (!newValue || !oldValue || JSON.stringify(newValue) === JSON.stringify(oldValue)) {\n return;\n }\n if (newValue?.participants) {\n this.selectedParticipants = this.setParticipants(newValue?.participants);\n }\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 // Lifecycle Methods\n connectedCallback() {\n debug('nylas-participants-custom-availability', 'connectedCallback');\n }\n\n disconnectedCallback() {\n debug('nylas-participants-custom-availability', 'disconnectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-participants-custom-availability', 'componentWillLoad');\n }\n\n componentDidLoad() {\n debug('nylas-participants-custom-availability', 'componentDidLoad');\n if (this.selectedConfiguration) {\n this.selectedParticipants = this.setParticipants(this.selectedConfiguration?.participants);\n } else {\n this.selectedParticipants = this.setParticipants(this.participants);\n }\n // Run validation on initial load\n this.updateFormValue();\n }\n\n // Event Handlers\n @Listen('nylasFormSwitchToggled')\n nylasFormSwitchToggledHandler(event: CustomEvent<{ checked: boolean; name: string; label: boolean }>) {\n debug('nylas-participants-custom-availability', 'nylasFormSwitchToggledHandler', event.detail);\n\n // Check if this is a toggle for \"only specific time availability\"\n if (event.detail.name.startsWith('only-specific-time-')) {\n const participantEmail = event.detail.name.replace('only-specific-time-', '');\n if (this.selectedParticipants[participantEmail]) {\n this.selectedParticipants[participantEmail]['onlySpecificTimeAvailability'] = event.detail.checked;\n // When enabling only specific time, switch to specific time tab\n if (event.detail.checked) {\n this.selectedParticipants[participantEmail]['tab'] = 'specific-time-availability';\n }\n this.selectedParticipants = { ...this.selectedParticipants };\n this.updateFormValue();\n }\n return;\n }\n\n const existingParticipant = this.selectedConfiguration?.participants.find(participant => participant.email === event.detail.name);\n const existingOpenHours = existingParticipant?.availability?.open_hours || [];\n const openHours = existingOpenHours?.length > 0 ? existingOpenHours : this.selectedConfiguration?.availability?.availability_rules?.default_open_hours || [];\n const timeZone =\n existingOpenHours && existingOpenHours.length > 0\n ? existingParticipant?.timezone\n : this.selectedConfiguration?.availability?.availability_rules?.default_open_hours?.at(0)?.timezone ||\n this.selectedConfiguration?.event_booking?.timezone ||\n window.Intl.DateTimeFormat().resolvedOptions().timeZone;\n\n const existingSpecificTimeAvailability = existingParticipant?.specific_time_availability || [];\n const specificTimesAvailability = existingSpecificTimeAvailability?.length > 0 ? existingSpecificTimeAvailability : [];\n this.selectedParticipants[event.detail.name]['isOpen'] = event.detail.checked;\n this.selectedParticipants[event.detail.name]['tab'] = 'availability';\n this.selectedParticipants[event.detail.name]['setCustom'] = event.detail.checked;\n this.selectedParticipants[event.detail.name]['openHours'] = event.detail.checked ? (openHours?.length > 0 ? openHours : DEFAULT_OPEN_HOURS) : [];\n this.selectedParticipants[event.detail.name]['timezone'] = event.detail.checked ? timeZone : undefined;\n this.selectedParticipants[event.detail.name]['specificTimesAvailability'] = event.detail.checked ? specificTimesAvailability : [];\n // Reset onlySpecificTimeAvailability to false when custom availability is turned off\n this.selectedParticipants[event.detail.name]['onlySpecificTimeAvailability'] = event.detail.checked\n ? this.selectedParticipants[event.detail.name]['onlySpecificTimeAvailability'] || false\n : false;\n this.selectedParticipants = { ...this.selectedParticipants };\n this.updateFormValue();\n }\n\n @Listen('valueChanged')\n handleValueChanged(event: CustomEvent) {\n debug('[nylas-editor-tabs]', 'handleValueChanged', event);\n const { name, value } = event.detail;\n if (!name.startsWith('participant-availability-') && !name.startsWith('participant-specific-time-availability-')) {\n return;\n }\n\n // Parse the JSON value once - can contain { openHours: OpenHours[], timezone: string } or SpecificTimeAvailability[]\n let jsonValue;\n try {\n jsonValue = JSON.parse(value);\n } catch (error) {\n console.error(`Failed to parse JSON for participant ${name}:`, error);\n return;\n }\n\n // Validate the form\n if (this.isInternalsAvailable) {\n if (!this.participantFormRef.checkValidity()) {\n this.internals.setValidity({ customError: true }, 'Please fix the overlapping time ranges.');\n return;\n } else {\n this.internals.setValidity({});\n }\n }\n\n if (name.startsWith('participant-availability-')) {\n // Expected name format: \"participant-availability-{participantId}-{uniqueKey}\"\n // We extract the unique key (4th segment) to identify the specific participant\n const nameParts = name.split('-');\n if (nameParts.length < 4) {\n console.warn(`Malformed participant name format: ${name}. Expected format: \"participant-availability-{participantId}-{uniqueKey}\"`);\n return;\n }\n\n const key = nameParts[3];\n if (!this.selectedParticipants[key]) return;\n const existingOpenHours = jsonValue.openHours || [];\n const openHours = existingOpenHours?.length > 0 ? existingOpenHours : this.selectedConfiguration?.availability?.availability_rules?.default_open_hours || [];\n this.selectedParticipants[key]['openHours'] = openHours;\n this.selectedParticipants[key]['tab'] = 'availability';\n } else if (name.startsWith('participant-specific-time-availability')) {\n // Expected name format: \"participant-specific-time-availability-{index}-{uniqueKey}\"\n // Extract the unique key (6th segment) to identify the specific participant\n const nameParts = name.split('-');\n if (nameParts.length < 6) {\n console.warn(`Malformed participant specific date name format: ${name}. Expected format: \"participant-specific-time-availability-{index}-{uniqueKey}\"`);\n return;\n }\n\n const key = nameParts[5];\n if (!this.selectedParticipants[key]) return;\n const existingSpecificTimeAvailability = jsonValue || [];\n this.selectedParticipants[key]['specificTimesAvailability'] = existingSpecificTimeAvailability;\n this.selectedParticipants[key]['tab'] = 'specific-time-availability';\n }\n\n this.selectedParticipants = { ...this.selectedParticipants };\n\n this.updateFormValue();\n }\n\n updateFormValue() {\n const participantOpenHours = {};\n const participantSpecificTimeAvailability = {};\n const participantOnlySpecificTimeAvailability = {};\n Object.keys(this.selectedParticipants).forEach(key => {\n participantOpenHours[key] = this.selectedParticipants[key].openHours;\n participantSpecificTimeAvailability[key] = this.selectedParticipants[key].specificTimesAvailability || [];\n participantOnlySpecificTimeAvailability[key] = this.selectedParticipants[key].onlySpecificTimeAvailability || false;\n });\n\n // Validate that participants with \"only specific time availability\" have at least one specific time entry\n const invalidParticipants = Object.keys(this.selectedParticipants).filter(key => {\n const participant = this.selectedParticipants[key];\n return participant.onlySpecificTimeAvailability && (!participant.specificTimesAvailability || participant.specificTimesAvailability.length === 0);\n });\n\n if (invalidParticipants.length > 0) {\n const participantNames = invalidParticipants.map(key => this.selectedParticipants[key].name).join(', ');\n const errorMessage = i18next.t('nylasParticipantCustomAvailability.specificTimeRequired', { participantName: participantNames });\n this.validationError = errorMessage;\n if (this.isInternalsAvailable) {\n this.internals.setValidity({ customError: true }, errorMessage);\n }\n } else {\n this.validationError = '';\n if (this.isInternalsAvailable) {\n this.internals.setValidity({});\n }\n }\n\n this.isInternalsAvailable && this.internals.setFormValue(JSON.stringify(participantOpenHours), this.name);\n this.valueChanged.emit({ value: JSON.stringify(participantOpenHours), name: this.name });\n\n this.isInternalsAvailable && this.internals.setFormValue(JSON.stringify(participantSpecificTimeAvailability), `${this.name}-specific-time`);\n this.valueChanged.emit({ value: JSON.stringify(participantSpecificTimeAvailability), name: `${this.name}-specific-time` });\n\n this.isInternalsAvailable && this.internals.setFormValue(JSON.stringify(participantOnlySpecificTimeAvailability), `${this.name}-only-specific-time`);\n this.valueChanged.emit({ value: JSON.stringify(participantOnlySpecificTimeAvailability), name: `${this.name}-only-specific-time` });\n }\n\n setParticipants(participants: Participant[]) {\n const selectedParticipants = {};\n participants?.forEach(participant => {\n const onlySpecificTime = participant.only_specific_time_availability || false;\n const hasOpenHours = Boolean(participant.availability?.open_hours && participant.availability.open_hours.length > 0);\n const hasSpecificTime = Boolean(participant.specific_time_availability && participant.specific_time_availability.length > 0);\n const hasCustomAvailability = hasOpenHours || hasSpecificTime;\n\n selectedParticipants[participant.email] = {\n isOpen: hasCustomAvailability, // Open the section if custom availability is configured\n setCustom: hasOpenHours,\n openHours: participant.availability?.open_hours || [],\n name: participant.name || participant.email,\n availability: participant.availability,\n timezone: participant.timezone,\n specificTimesAvailability: participant.specific_time_availability || [],\n onlySpecificTimeAvailability: onlySpecificTime,\n // Default to specific-time-availability tab if only specific time is enabled\n tab: onlySpecificTime ? 'specific-time-availability' : 'availability',\n };\n });\n return selectedParticipants;\n }\n\n /**\n * This method is essentially a workaround to check if the internals are available because\n * the unit tests in stencil do not support the internals.\n * @returns boolean\n */\n get isInternalsAvailable() {\n return this.internals !== undefined && typeof this.internals.setFormValue === 'function' && typeof this.internals.setValidity === 'function';\n }\n\n @RegisterComponent<NylasParticipantsCustomAvailability, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-participants-custom-availability',\n stateToProps: new Map([\n ['schedulerConfig.selectedConfiguration', 'selectedConfiguration'],\n ['schedulerConfig.selectedLanguage', 'selectedLanguage'],\n ['schedulerConfig.themeConfig', 'themeConfig'],\n ]),\n eventToProps: {},\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <div class=\"nylas-participants-custom-availability\" part=\"npca\">\n <div class=\"header\" part=\"npca__header\">\n <h3>{i18next.t('nylasParticipantCustomAvailability.headerTitle')}</h3>\n <p>{i18next.t('nylasParticipantCustomAvailability.headerSubTitle')}</p>\n </div>\n {this.validationError && (\n <div class=\"validation-error\" part=\"npca__validation-error\">\n <span>{this.validationError}</span>\n </div>\n )}\n <div class=\"content\" part=\"npca__content\">\n <form ref={el => (this.participantFormRef = el as HTMLFormElement)}>\n {Object.keys(this.selectedParticipants).map((key, index) => {\n const participant = this.selectedParticipants[key];\n const participantOpenHours = participant.availability?.open_hours || [];\n if (!participant || !participant.name || !participant.availability) return;\n return (\n <div class=\"participant-container\" part=\"npca__participant-container\" key={`participant-conatiner-${index}`}>\n <div class=\"participant-title\" part=\"npca__participant-title\">\n <p>{i18next.t('nylasParticipantCustomAvailability.participantOpenHoursTitle', { participantName: participant.name })}</p>\n <div class=\"participant-toggle\" part=\"npca__participant-toggle--container\">\n <toggle-switch\n exportparts=\"ts_label: npca__toggle-label, ts_input: npca_toggle-input, ts_slider: npca_toggle-slider\"\n name={key}\n checked={!!participant?.openHours && participant?.openHours.length > 0}\n themeConfig={this.themeConfig}\n />\n <span\n class={`chevron ${participant.isOpen ? 'open' : 'closed'} ${participant.setCustom ? '' : 'disabled'}`}\n onClick={() => {\n if (!participant.setCustom) return;\n this.selectedParticipants[key].isOpen = !participant.isOpen;\n this.selectedParticipants[key].tab = 'availability';\n this.selectedParticipants = { ...this.selectedParticipants };\n }}\n >\n <chevron-icon width=\"24\" height=\"24\" />\n </span>\n </div>\n </div>\n {participant.isOpen && (\n <div class=\"participant-only-specific-time-container\">\n <div class=\"participant-only-specific-time-checkbox\">\n <label>\n <input\n type=\"checkbox\"\n checked={participant.onlySpecificTimeAvailability}\n onChange={(e: any) => {\n this.selectedParticipants[key]['onlySpecificTimeAvailability'] = e.target.checked;\n if (e.target.checked) {\n this.selectedParticipants[key]['tab'] = 'specific-time-availability';\n }\n this.selectedParticipants = { ...this.selectedParticipants };\n this.updateFormValue();\n }}\n />\n <span>{i18next.t('nylasParticipantCustomAvailability.onlySpecificTimeAvailability', { participantName: participant.name })}</span>\n <tooltip-component>\n <info-icon slot=\"tooltip-icon\" width=\"14\" height=\"14\" />\n <span slot=\"tooltip-content\">\n {i18next.t('nylasParticipantCustomAvailability.onlySpecificTimeAvailabilityTooltip', { participantName: participant.name })}\n </span>\n </tooltip-component>\n </label>\n </div>\n </div>\n )}\n {participant.isOpen && (\n <div class={`participant-tabs ${participant.onlySpecificTimeAvailability ? 'single-tab' : ''}`} part=\"npca__participant-tabs\">\n {!participant.onlySpecificTimeAvailability && (\n <div\n class={`participant-tab ${participant.tab === 'availability' ? 'active' : ''}`}\n part=\"npca__participant-tab\"\n onClick={() => {\n this.selectedParticipants[key].tab = 'availability';\n this.selectedParticipants = { ...this.selectedParticipants };\n }}\n >\n <span>{i18next.t('nylasParticipantCustomAvailability.participantAvailabilityTab')}</span>\n </div>\n )}\n <div\n class={`participant-tab ${participant.tab === 'specific-time-availability' ? 'active' : ''}`}\n part=\"npca__participant-tab\"\n onClick={() => {\n this.selectedParticipants[key].tab = 'specific-time-availability';\n this.selectedParticipants = { ...this.selectedParticipants };\n }}\n >\n <span>{i18next.t('nylasParticipantCustomAvailability.participantSpecificTimeAvailabilityTab')}</span>\n </div>\n </div>\n )}\n {participant.tab === 'availability' && participant.isOpen && !participant.onlySpecificTimeAvailability && (\n <nylas-availability-picker\n key={index}\n name={`participant-availability-${index}-${key}`}\n openHours={participantOpenHours}\n defaultTimezone={participant.timezone}\n hideHeader={true}\n />\n )}\n {participant.tab === 'specific-time-availability' && participant.isOpen && (\n <nylas-specific-time-availability-picker\n key={index}\n name={`participant-specific-time-availability-${index}-${key}`}\n specificTimesAvailability={participant.specificTimesAvailability}\n hideHeader={true}\n />\n )}\n </div>\n );\n })}\n </form>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"p-DKnp-SZi.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","i18next"],"sources":["src/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.scss?tag=nylas-participants-custom-availability&encapsulation=shadow","src/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n\n:host {\n display: block;\n @include default-css-variables;\n width: inherit;\n}\n\n.nylas-participants-custom-availability {\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 .header {\n padding: 1rem;\n h3 {\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 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 .validation-error {\n margin: 0;\n padding: 0.75rem 1rem;\n background-color: var(--nylas-color-red-50);\n\n span {\n font-size: 0.875rem;\n font-weight: 500;\n line-height: 20px;\n color: var(--nylas-error);\n display: block;\n }\n }\n .content {\n .participant-container {\n padding-top: 8px;\n border-top: 1px solid var(--nylas-base-200);\n color: var(--nylas-base-900);\n background-color: var(--nylas-base-25);\n\n .participant-title {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 4px 16px 12px;\n p {\n margin: 0;\n }\n .participant-toggle {\n display: flex;\n gap: 24px;\n align-items: center;\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 &:hover {\n color: var(--nylas-base-300);\n }\n }\n }\n }\n }\n nylas-availability-picker::part(nap) {\n margin: 0;\n border: none;\n }\n nylas-specific-time-availability-picker::part(nstap) {\n margin: 0;\n border: none;\n }\n .participant-only-specific-time-container {\n padding: 8px 16px;\n border-top: 1px solid var(--nylas-base-200);\n background-color: var(--nylas-base-50);\n\n .participant-only-specific-time-checkbox {\n label {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 14px;\n font-weight: 400;\n color: var(--nylas-base-900);\n cursor: pointer;\n\n input[type='checkbox'] {\n width: 16px;\n height: 16px;\n cursor: pointer;\n accent-color: var(--nylas-primary);\n }\n\n span {\n flex: 1;\n }\n\n tooltip-component {\n display: flex;\n align-items: center;\n }\n }\n }\n }\n }\n .participant-tabs {\n justify-content: space-between;\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 16px;\n padding: 8px 16px;\n border-top: 1px solid var(--nylas-base-200);\n\n &.single-tab {\n grid-template-columns: 1fr;\n }\n }\n .participant-tab {\n cursor: pointer;\n padding: 8px 16px;\n border-radius: var(--nylas-border-radius-2x);\n background-color: var(--nylas-base-100);\n text-align: center;\n font-size: 14px;\n font-weight: 500;\n line-height: 20px;\n color: var(--nylas-base-600);\n &.active {\n background-color: var(--nylas-primary);\n color: var(--nylas-base-100);\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { AttachInternals, Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport { Configuration, OpenHours, Participant, ParticipantAvailability, SpecificTimeAvailability, ThemeConfig } from '@nylas/core';\nimport { DEFAULT_OPEN_HOURS } from '@/common/constants';\nimport i18next from '@/utils/i18n';\nimport { LANGUAGE_CODE } from '@/common/constants';\n\n/**\n * The `nylas-participants-custom-availability` component is a form input for setting custom availability for participants.\n *\n * @part npca - The participants custom availability container\n * @part npca__header - The header of the participants custom availability\n * @part npca__validation-error - The validation error message container\n * @part npca__content - The content of the participants custom availability\n * @part npca__participant-container - The participant container\n * @part npca__participant-title - The title of the participant\n * @part npca__participant-toggle--container - The toggle container for the participant\n * @part npca__toggle-label - The label of the toggle\n * @part npca_toggle-input - The input of the toggle\n * @part npca_toggle-slider - The slider of the toggle\n */\n@Component({\n tag: 'nylas-participants-custom-availability',\n styleUrl: 'nylas-participants-custom-availability.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasParticipantsCustomAvailability {\n @Element() host!: HTMLNylasParticipantsCustomAvailabilityElement;\n private participantFormRef!: HTMLFormElement;\n /**\n * @standalone\n * The selected config\n */\n @Prop() selectedConfiguration?: Configuration;\n\n /**\n * @standalone\n * The name of the participants custom availability.\n */\n @Prop() name: string = 'participant-custom-availability';\n\n /**\n * @standalone\n * The participants selected in the add participants section.\n */\n @Prop() participants: Participant[] = this.selectedConfiguration?.participants || [];\n\n /**\n * The selected language.\n */\n @Prop() selectedLanguage?: LANGUAGE_CODE;\n\n /**\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: ThemeConfig;\n\n /**\n * This event is fired when the participants custom availability changes.\n */\n @Event() valueChanged!: EventEmitter<{\n value: string;\n name: string;\n }>;\n\n /**\n * The element internals.\n */\n @AttachInternals() internals!: ElementInternals;\n\n /**\n * The state to store the custom availability setting for participants.\n */\n @State() selectedParticipants: {\n [key: string]: {\n setCustom: boolean;\n tab: 'availability' | 'specific-time-availability';\n isOpen: boolean;\n openHours: OpenHours[];\n specificTimesAvailability: SpecificTimeAvailability[];\n name: string;\n availability?: ParticipantAvailability;\n timezone?: string;\n onlySpecificTimeAvailability?: boolean;\n };\n } = this.setParticipants(this.participants);\n\n /**\n * The validation error message for the component.\n */\n @State() validationError: string = '';\n\n // Watchers\n @Watch('name')\n elementNameChangedHandler(newValue: string) {\n debug('nylas-participants-custom-availability', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @Watch('participants')\n participantsChangedHandler(newValue: Participant[], oldValue: Participant[]) {\n debug('nylas-participants-custom-availability', 'participantsChangedHandler', newValue, oldValue);\n if (!newValue || !oldValue || JSON.stringify(newValue) === JSON.stringify(oldValue)) {\n return;\n }\n this.selectedParticipants = this.setParticipants(newValue);\n }\n\n @Watch('selectedConfiguration')\n selectedConfigurationChangedHandler(newValue: Configuration, oldValue: Configuration) {\n debug('nylas-participants-custom-availability', 'selectedConfigurationChangedHandler', newValue, oldValue);\n if (!newValue || !oldValue || JSON.stringify(newValue) === JSON.stringify(oldValue)) {\n return;\n }\n if (newValue?.participants) {\n this.selectedParticipants = this.setParticipants(newValue?.participants);\n }\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 // Lifecycle Methods\n connectedCallback() {\n debug('nylas-participants-custom-availability', 'connectedCallback');\n }\n\n disconnectedCallback() {\n debug('nylas-participants-custom-availability', 'disconnectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-participants-custom-availability', 'componentWillLoad');\n }\n\n componentDidLoad() {\n debug('nylas-participants-custom-availability', 'componentDidLoad');\n if (this.selectedConfiguration) {\n this.selectedParticipants = this.setParticipants(this.selectedConfiguration?.participants);\n } else {\n this.selectedParticipants = this.setParticipants(this.participants);\n }\n // Run validation on initial load\n this.updateFormValue();\n }\n\n // Event Handlers\n @Listen('nylasFormSwitchToggled')\n nylasFormSwitchToggledHandler(event: CustomEvent<{ checked: boolean; name: string; label: boolean }>) {\n debug('nylas-participants-custom-availability', 'nylasFormSwitchToggledHandler', event.detail);\n\n // Check if this is a toggle for \"only specific time availability\"\n if (event.detail.name.startsWith('only-specific-time-')) {\n const participantEmail = event.detail.name.replace('only-specific-time-', '');\n if (this.selectedParticipants[participantEmail]) {\n this.selectedParticipants[participantEmail]['onlySpecificTimeAvailability'] = event.detail.checked;\n // When enabling only specific time, switch to specific time tab\n if (event.detail.checked) {\n this.selectedParticipants[participantEmail]['tab'] = 'specific-time-availability';\n }\n this.selectedParticipants = { ...this.selectedParticipants };\n this.updateFormValue();\n }\n return;\n }\n\n const existingParticipant = this.selectedConfiguration?.participants.find(participant => participant.email === event.detail.name);\n const existingOpenHours = existingParticipant?.availability?.open_hours || [];\n const openHours = existingOpenHours?.length > 0 ? existingOpenHours : this.selectedConfiguration?.availability?.availability_rules?.default_open_hours || [];\n const timeZone =\n existingOpenHours && existingOpenHours.length > 0\n ? existingParticipant?.timezone\n : this.selectedConfiguration?.availability?.availability_rules?.default_open_hours?.at(0)?.timezone ||\n this.selectedConfiguration?.event_booking?.timezone ||\n window.Intl.DateTimeFormat().resolvedOptions().timeZone;\n\n const existingSpecificTimeAvailability = existingParticipant?.specific_time_availability || [];\n const specificTimesAvailability = existingSpecificTimeAvailability?.length > 0 ? existingSpecificTimeAvailability : [];\n this.selectedParticipants[event.detail.name]['isOpen'] = event.detail.checked;\n this.selectedParticipants[event.detail.name]['tab'] = 'availability';\n this.selectedParticipants[event.detail.name]['setCustom'] = event.detail.checked;\n this.selectedParticipants[event.detail.name]['openHours'] = event.detail.checked ? (openHours?.length > 0 ? openHours : DEFAULT_OPEN_HOURS) : [];\n this.selectedParticipants[event.detail.name]['timezone'] = event.detail.checked ? timeZone : undefined;\n this.selectedParticipants[event.detail.name]['specificTimesAvailability'] = event.detail.checked ? specificTimesAvailability : [];\n // Reset onlySpecificTimeAvailability to false when custom availability is turned off\n this.selectedParticipants[event.detail.name]['onlySpecificTimeAvailability'] = event.detail.checked\n ? this.selectedParticipants[event.detail.name]['onlySpecificTimeAvailability'] || false\n : false;\n this.selectedParticipants = { ...this.selectedParticipants };\n this.updateFormValue();\n }\n\n @Listen('valueChanged')\n handleValueChanged(event: CustomEvent) {\n debug('[nylas-editor-tabs]', 'handleValueChanged', event);\n const { name, value } = event.detail;\n if (!name.startsWith('participant-availability-') && !name.startsWith('participant-specific-time-availability-')) {\n return;\n }\n\n // Parse the JSON value once - can contain { openHours: OpenHours[], timezone: string } or SpecificTimeAvailability[]\n let jsonValue;\n try {\n jsonValue = JSON.parse(value);\n } catch (error) {\n console.error(`Failed to parse JSON for participant ${name}:`, error);\n return;\n }\n\n // Validate the form\n if (this.isInternalsAvailable) {\n if (!this.participantFormRef.checkValidity()) {\n this.internals.setValidity({ customError: true }, 'Please fix the overlapping time ranges.');\n return;\n } else {\n this.internals.setValidity({});\n }\n }\n\n if (name.startsWith('participant-availability-')) {\n // Expected name format: \"participant-availability-{participantId}-{uniqueKey}\"\n // We extract the unique key (4th segment) to identify the specific participant\n const nameParts = name.split('-');\n if (nameParts.length < 4) {\n console.warn(`Malformed participant name format: ${name}. Expected format: \"participant-availability-{participantId}-{uniqueKey}\"`);\n return;\n }\n\n const key = nameParts[3];\n if (!this.selectedParticipants[key]) return;\n const existingOpenHours = jsonValue.openHours || [];\n const openHours = existingOpenHours?.length > 0 ? existingOpenHours : this.selectedConfiguration?.availability?.availability_rules?.default_open_hours || [];\n this.selectedParticipants[key]['openHours'] = openHours;\n this.selectedParticipants[key]['tab'] = 'availability';\n } else if (name.startsWith('participant-specific-time-availability')) {\n // Expected name format: \"participant-specific-time-availability-{index}-{uniqueKey}\"\n // Extract the unique key (6th segment) to identify the specific participant\n const nameParts = name.split('-');\n if (nameParts.length < 6) {\n console.warn(`Malformed participant specific date name format: ${name}. Expected format: \"participant-specific-time-availability-{index}-{uniqueKey}\"`);\n return;\n }\n\n const key = nameParts[5];\n if (!this.selectedParticipants[key]) return;\n const existingSpecificTimeAvailability = jsonValue || [];\n this.selectedParticipants[key]['specificTimesAvailability'] = existingSpecificTimeAvailability;\n this.selectedParticipants[key]['tab'] = 'specific-time-availability';\n }\n\n this.selectedParticipants = { ...this.selectedParticipants };\n\n this.updateFormValue();\n }\n\n updateFormValue() {\n const participantOpenHours = {};\n const participantSpecificTimeAvailability = {};\n const participantOnlySpecificTimeAvailability = {};\n Object.keys(this.selectedParticipants).forEach(key => {\n participantOpenHours[key] = this.selectedParticipants[key].openHours;\n participantSpecificTimeAvailability[key] = this.selectedParticipants[key].specificTimesAvailability || [];\n participantOnlySpecificTimeAvailability[key] = this.selectedParticipants[key].onlySpecificTimeAvailability || false;\n });\n\n // Validate that participants with \"only specific time availability\" have at least one specific time entry\n const invalidParticipants = Object.keys(this.selectedParticipants).filter(key => {\n const participant = this.selectedParticipants[key];\n return participant.onlySpecificTimeAvailability && (!participant.specificTimesAvailability || participant.specificTimesAvailability.length === 0);\n });\n\n if (invalidParticipants.length > 0) {\n const participantNames = invalidParticipants.map(key => this.selectedParticipants[key].name).join(', ');\n const errorMessage = i18next.t('nylasParticipantCustomAvailability.specificTimeRequired', { participantName: participantNames });\n this.validationError = errorMessage;\n if (this.isInternalsAvailable) {\n this.internals.setValidity({ customError: true }, errorMessage);\n }\n } else {\n this.validationError = '';\n if (this.isInternalsAvailable) {\n this.internals.setValidity({});\n }\n }\n\n this.isInternalsAvailable && this.internals.setFormValue(JSON.stringify(participantOpenHours), this.name);\n this.valueChanged.emit({ value: JSON.stringify(participantOpenHours), name: this.name });\n\n this.isInternalsAvailable && this.internals.setFormValue(JSON.stringify(participantSpecificTimeAvailability), `${this.name}-specific-time`);\n this.valueChanged.emit({ value: JSON.stringify(participantSpecificTimeAvailability), name: `${this.name}-specific-time` });\n\n this.isInternalsAvailable && this.internals.setFormValue(JSON.stringify(participantOnlySpecificTimeAvailability), `${this.name}-only-specific-time`);\n this.valueChanged.emit({ value: JSON.stringify(participantOnlySpecificTimeAvailability), name: `${this.name}-only-specific-time` });\n }\n\n setParticipants(participants: Participant[]) {\n const selectedParticipants = {};\n participants?.forEach(participant => {\n const onlySpecificTime = participant.only_specific_time_availability || false;\n const hasOpenHours = Boolean(participant.availability?.open_hours && participant.availability.open_hours.length > 0);\n const hasSpecificTime = Boolean(participant.specific_time_availability && participant.specific_time_availability.length > 0);\n const hasCustomAvailability = hasOpenHours || hasSpecificTime;\n\n selectedParticipants[participant.email] = {\n isOpen: hasCustomAvailability, // Open the section if custom availability is configured\n setCustom: hasOpenHours,\n openHours: participant.availability?.open_hours || [],\n name: participant.name || participant.email,\n availability: participant.availability,\n timezone: participant.timezone,\n specificTimesAvailability: participant.specific_time_availability || [],\n onlySpecificTimeAvailability: onlySpecificTime,\n // Default to specific-time-availability tab if only specific time is enabled\n tab: onlySpecificTime ? 'specific-time-availability' : 'availability',\n };\n });\n return selectedParticipants;\n }\n\n /**\n * This method is essentially a workaround to check if the internals are available because\n * the unit tests in stencil do not support the internals.\n * @returns boolean\n */\n get isInternalsAvailable() {\n return this.internals !== undefined && typeof this.internals.setFormValue === 'function' && typeof this.internals.setValidity === 'function';\n }\n\n @RegisterComponent<NylasParticipantsCustomAvailability, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-participants-custom-availability',\n stateToProps: new Map([\n ['schedulerConfig.selectedConfiguration', 'selectedConfiguration'],\n ['schedulerConfig.selectedLanguage', 'selectedLanguage'],\n ['schedulerConfig.themeConfig', 'themeConfig'],\n ]),\n eventToProps: {},\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <div class=\"nylas-participants-custom-availability\" part=\"npca\">\n <div class=\"header\" part=\"npca__header\">\n <h3>{i18next.t('nylasParticipantCustomAvailability.headerTitle')}</h3>\n <p>{i18next.t('nylasParticipantCustomAvailability.headerSubTitle')}</p>\n </div>\n {this.validationError && (\n <div class=\"validation-error\" part=\"npca__validation-error\">\n <span>{this.validationError}</span>\n </div>\n )}\n <div class=\"content\" part=\"npca__content\">\n <form ref={el => (this.participantFormRef = el as HTMLFormElement)}>\n {Object.keys(this.selectedParticipants).map((key, index) => {\n const participant = this.selectedParticipants[key];\n const participantOpenHours = participant.availability?.open_hours || [];\n if (!participant || !participant.name || !participant.availability) return;\n return (\n <div class=\"participant-container\" part=\"npca__participant-container\" key={`participant-conatiner-${index}`}>\n <div class=\"participant-title\" part=\"npca__participant-title\">\n <p>{i18next.t('nylasParticipantCustomAvailability.participantOpenHoursTitle', { participantName: participant.name })}</p>\n <div class=\"participant-toggle\" part=\"npca__participant-toggle--container\">\n <toggle-switch\n exportparts=\"ts_label: npca__toggle-label, ts_input: npca_toggle-input, ts_slider: npca_toggle-slider\"\n name={key}\n checked={!!participant?.openHours && participant?.openHours.length > 0}\n themeConfig={this.themeConfig}\n />\n <span\n class={`chevron ${participant.isOpen ? 'open' : 'closed'} ${participant.setCustom ? '' : 'disabled'}`}\n onClick={() => {\n if (!participant.setCustom) return;\n this.selectedParticipants[key].isOpen = !participant.isOpen;\n this.selectedParticipants[key].tab = 'availability';\n this.selectedParticipants = { ...this.selectedParticipants };\n }}\n >\n <chevron-icon width=\"24\" height=\"24\" />\n </span>\n </div>\n </div>\n {participant.isOpen && (\n <div class=\"participant-only-specific-time-container\">\n <div class=\"participant-only-specific-time-checkbox\">\n <label>\n <input\n type=\"checkbox\"\n checked={participant.onlySpecificTimeAvailability}\n onChange={(e: any) => {\n this.selectedParticipants[key]['onlySpecificTimeAvailability'] = e.target.checked;\n if (e.target.checked) {\n this.selectedParticipants[key]['tab'] = 'specific-time-availability';\n }\n this.selectedParticipants = { ...this.selectedParticipants };\n this.updateFormValue();\n }}\n />\n <span>{i18next.t('nylasParticipantCustomAvailability.onlySpecificTimeAvailability', { participantName: participant.name })}</span>\n <tooltip-component>\n <info-icon slot=\"tooltip-icon\" width=\"14\" height=\"14\" />\n <span slot=\"tooltip-content\">\n {i18next.t('nylasParticipantCustomAvailability.onlySpecificTimeAvailabilityTooltip', { participantName: participant.name })}\n </span>\n </tooltip-component>\n </label>\n </div>\n </div>\n )}\n {participant.isOpen && (\n <div class={`participant-tabs ${participant.onlySpecificTimeAvailability ? 'single-tab' : ''}`} part=\"npca__participant-tabs\">\n {!participant.onlySpecificTimeAvailability && (\n <div\n class={`participant-tab ${participant.tab === 'availability' ? 'active' : ''}`}\n part=\"npca__participant-tab\"\n onClick={() => {\n this.selectedParticipants[key].tab = 'availability';\n this.selectedParticipants = { ...this.selectedParticipants };\n }}\n >\n <span>{i18next.t('nylasParticipantCustomAvailability.participantAvailabilityTab')}</span>\n </div>\n )}\n <div\n class={`participant-tab ${participant.tab === 'specific-time-availability' ? 'active' : ''}`}\n part=\"npca__participant-tab\"\n onClick={() => {\n this.selectedParticipants[key].tab = 'specific-time-availability';\n this.selectedParticipants = { ...this.selectedParticipants };\n }}\n >\n <span>{i18next.t('nylasParticipantCustomAvailability.participantSpecificTimeAvailabilityTab')}</span>\n </div>\n </div>\n )}\n {participant.tab === 'availability' && participant.isOpen && !participant.onlySpecificTimeAvailability && (\n <nylas-availability-picker\n key={index}\n name={`participant-availability-${index}-${key}`}\n openHours={participantOpenHours}\n defaultTimezone={participant.timezone}\n hideHeader={true}\n />\n )}\n {participant.tab === 'specific-time-availability' && participant.isOpen && (\n <nylas-specific-time-availability-picker\n key={index}\n name={`participant-specific-time-availability-${index}-${key}`}\n specificTimesAvailability={participant.specificTimesAvailability}\n hideHeader={true}\n />\n )}\n </div>\n );\n })}\n </form>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -1,9 +1,9 @@
|
|
|
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-
|
|
3
|
-
import { a as debug, b as instance } from './p-
|
|
2
|
+
import { R as RegisterComponent } from './p-BC9yeuRb.js';
|
|
3
|
+
import { a as debug, b as instance } from './p-BkzMJ4pV.js';
|
|
4
4
|
import { d as defineCustomElement$6 } from './p-yguTPRl_.js';
|
|
5
5
|
import { d as defineCustomElement$5 } from './p-u4gxSL05.js';
|
|
6
|
-
import { d as defineCustomElement$4 } from './p-
|
|
6
|
+
import { d as defineCustomElement$4 } from './p-BnrCrrsE.js';
|
|
7
7
|
import { d as defineCustomElement$3 } from './p-Dyl-GVi0.js';
|
|
8
8
|
import { d as defineCustomElement$2 } from './p-emUyDjNl.js';
|
|
9
9
|
import { d as defineCustomElement$1 } from './p-Di3WT0Ws.js';
|
|
@@ -273,6 +273,6 @@ function defineCustomElement() {
|
|
|
273
273
|
}
|
|
274
274
|
|
|
275
275
|
export { NylasParticipantBookingCalendars as N, defineCustomElement as d };
|
|
276
|
-
//# sourceMappingURL=p-
|
|
276
|
+
//# sourceMappingURL=p-DPeb4p0M.js.map
|
|
277
277
|
|
|
278
|
-
//# sourceMappingURL=p-
|
|
278
|
+
//# sourceMappingURL=p-DPeb4p0M.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"p-DPHPGDki.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","i18next"],"sources":["src/components/scheduler-editor/nylas-participant-booking-calendars/nylas-participant-booking-calendars.scss?tag=nylas-participant-booking-calendars&encapsulation=shadow","src/components/scheduler-editor/nylas-participant-booking-calendars/nylas-participant-booking-calendars.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n\n:host {\n display: block;\n @include default-css-variables;\n width: inherit;\n}\n\n.nylas-participant-booking-calendars {\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 color: var(--nylas-base-900);\n\n .header {\n padding: 1rem;\n\n h3 {\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 display: flex;\n align-items: center;\n gap: 4px;\n }\n }\n\n .content {\n .participant-container {\n padding-top: 12px;\n border-top: 1px solid var(--nylas-base-200);\n background-color: var(--nylas-base-25);\n\n .participant-title {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 4px 16px 16px;\n\n p {\n margin: 0;\n }\n\n .participant-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 }\n}\n\nnylas-booking-calendar-picker::part(nbcp) {\n margin: 0;\n border: none;\n border-top: 1px solid var(--nylas-base-200);\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } 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 { AdditionalParticipant, Calendar, Configuration, Participant, ThemeConfig } from '@nylas/core';\nimport i18next from '@/utils/i18n';\nimport { LANGUAGE_CODE } from '@/common/constants';\n\n/**\n * The `nylas-participant-booking-calendars` component is a form input for selecting calendars to check availability for participants.\n *\n * @part npbc - The participant booking calendars host.\n * @part npbc__header - The header.\n * @part npbc__content - The content.\n * @part npbc__participant-container - The participant container.\n * @part npbc__participant-title - The participant title.\n * @part npbc__participant-toggle-container - The participant toggle container.\n */\n@Component({\n tag: 'nylas-participant-booking-calendars',\n styleUrl: 'nylas-participant-booking-calendars.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasParticipantBookingCalendars {\n @Element() host!: HTMLNylasParticipantBookingCalendarsElement;\n private bookingCalendarsFormRef!: HTMLFormElement;\n /**\n * @standalone\n * The selected config\n */\n @Prop() selectedConfiguration?: Configuration;\n /**\n * @standalone\n * The name of the participants custom availability.\n */\n @Prop() name: string = 'participant-booking-calendars';\n\n /**\n * @standalone\n * The participants selected in the add participants section.\n */\n @Prop() participants: Participant[] = this.selectedConfiguration?.participants || [];\n\n /**\n * @standalone\n * The calendars to choose from for the organizer / logged in user.\n */\n @Prop() calendars?: Calendar[];\n\n /**\n * @standalone\n * The participant options passed in the additionalParticipants prop\n * from the nylas-scheduler-editor component.\n */\n @Prop() participantOptions?: AdditionalParticipant[];\n\n /**\n * The selected language.\n */\n @Prop() selectedLanguage?: LANGUAGE_CODE;\n\n /**\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: ThemeConfig;\n\n /**\n * This event is fired when the participants custom availability changes.\n */\n @Event() valueChanged!: EventEmitter<{\n value: string;\n name: string;\n }>;\n\n /**\n * The element internals.\n */\n @AttachInternals() internals!: ElementInternals;\n\n /**\n * The state to store the custom availability setting for participants.\n */\n @State() selectedCalendars: {\n [key: string]: {\n isOpen: boolean;\n name: string;\n calendar?: Calendar;\n };\n } = this.setParticipants(this.participants);\n\n /**\n * Participants calendar options.\n */\n @State() participantCalendars: {\n [key: string]: Calendar[];\n } = {};\n\n /**\n * The state to store the default selected calendars for each participant\n */\n @State() participantDefaultSelectedCalendar: {\n [key: string]: string;\n } = {};\n\n // Watchers\n @Watch('name')\n elementNameChangedHandler(newValue: string) {\n debug('nylas-participant-booking-calendars', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @Watch('calendars')\n calendarsChangedHandler(newValue: Calendar[]) {\n debug('nylas-participant-booking-calendars', 'calendarsChangedHandler', newValue);\n this.participantCalendars = this.getParticipantCalendarOptions(this.participants, this.participantOptions);\n }\n\n @Watch('participants')\n participantsChangedHandler(newValue: Participant[]) {\n debug('nylas-participant-booking-calendars', 'participantsChangedHandler', newValue);\n this.selectedCalendars = this.setParticipants(newValue);\n this.participantCalendars = this.getParticipantCalendarOptions(newValue, this.participantOptions);\n }\n\n @Watch('participantOptions')\n participantOptionsChangedHandler(newValue: AdditionalParticipant[]) {\n debug('nylas-calendar-picker', 'participantOptionsChangedHandler', newValue);\n this.participantCalendars = this.getParticipantCalendarOptions(this.participants, newValue);\n }\n\n @Watch('selectedConfiguration')\n selectedConfigurationChangedHandler(newValue: Configuration) {\n debug('nylas-participant-booking-calendars', 'selectedConfigurationChangedHandler', newValue);\n const participants = newValue?.participants || this.participants;\n if (participants && participants.length > 0) {\n this.selectedCalendars = this.setParticipants(participants);\n this.participantCalendars = this.getParticipantCalendarOptions(participants, this.participantOptions);\n }\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 getParticipantCalendarOptions(addedParticipants: Participant[], availableParticipantOptions: AdditionalParticipant[] | undefined) {\n // Get the participants from the availableParticipantOptions prop that are in the addedParticipants prop\n const organizer = addedParticipants?.find(participant => participant.is_organizer);\n const participantCalendars = {};\n const showAdditionalParticipantBookingCalendars = this.selectedConfiguration?.availability?.availability_rules?.availability_method !== 'collective';\n if (availableParticipantOptions && showAdditionalParticipantBookingCalendars) {\n const participants = addedParticipants?.filter(participant => availableParticipantOptions.some(availableParticipant => availableParticipant.email === participant.email));\n const remainingParticipants = addedParticipants?.filter(\n participant => !availableParticipantOptions.some(availableParticipant => availableParticipant.email === participant.email),\n );\n\n // Get the calendar options for each participant with email as the key\n participants?.forEach(participant => {\n const participantOption = availableParticipantOptions?.find(participantOption => participantOption.email === participant.email);\n if (!participantOption) return;\n this.participantDefaultSelectedCalendar[participant.email] = participant.booking?.calendar_id ?? 'primary';\n const calendars = participantOption.calendars ?? [];\n participantCalendars[participant.email] = calendars;\n });\n // If it is round robin config, add the remaining participant calendars to the participantCalendars\n // (Round-robin does not have an organizer, and we filtered out the participants not passed in the participantOptions prop,\n // so we need to add the remaining participants calendars to the participantCalendars)\n remainingParticipants?.forEach(participant => {\n if (participant?.booking?.calendar_id) {\n participantCalendars[participant.email] = this.calendars ?? [{ id: 'primary', name: participant.email }];\n this.participantDefaultSelectedCalendar[participant.email] = participant?.booking?.calendar_id ?? 'primary';\n }\n });\n }\n // Add the organizer's calendars to the participantCalendars\n if (organizer) {\n participantCalendars[organizer.email] = this.calendars ?? [{ id: 'primary', name: organizer.email }];\n this.participantDefaultSelectedCalendar[organizer.email] = organizer?.booking?.calendar_id ?? 'primary';\n }\n return participantCalendars;\n }\n\n // Lifecycle Methods\n connectedCallback() {\n debug('nylas-participant-booking-calendars', 'connectedCallback');\n }\n\n disconnectedCallback() {\n debug('nylas-participant-booking-calendars', 'disconnectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-participant-booking-calendars', 'componentWillLoad');\n }\n\n componentDidLoad() {\n debug('nylas-participant-booking-calendars', 'componentDidLoad');\n if (this.selectedConfiguration) {\n this.selectedCalendars = this.setParticipants(this.selectedConfiguration?.participants);\n this.participantCalendars = this.getParticipantCalendarOptions(this.selectedConfiguration?.participants, this.participantOptions);\n } else {\n this.selectedCalendars = this.setParticipants(this.participants);\n this.participantCalendars = this.getParticipantCalendarOptions(this.participants, this.participantOptions);\n }\n }\n\n @Listen('valueChanged')\n handleValueChanged(event: CustomEvent) {\n debug('[nylas-editor-tabs]', 'handleValueChanged', event);\n const { name, value } = event.detail;\n if (!name.startsWith('participant-booking-')) {\n return;\n }\n // Validate the form\n if (!this.bookingCalendarsFormRef.checkValidity()) {\n this.internals.setValidity({ customError: true }, i18next.t('nylasParticipantBookingCalendars.selectAtLeastOneCalendar'));\n return;\n } else {\n this.internals.setValidity({});\n }\n\n const key = name.split('participant-booking-')[1];\n if (!this.selectedCalendars[key]) return;\n this.selectedCalendars[key]['calendar'] = value;\n this.selectedCalendars = { ...this.selectedCalendars };\n\n const participantsCalendars = {};\n Object.keys(this.selectedCalendars).forEach(key => {\n participantsCalendars[key] = this.selectedCalendars[key]?.calendar;\n });\n this.internals.setFormValue(JSON.stringify(participantsCalendars), this.name);\n this.valueChanged.emit({ value: JSON.stringify(participantsCalendars), name: this.name });\n }\n\n setParticipants(participants: Participant[]) {\n const selectedParticipants = {};\n participants?.forEach(participant => {\n if (participant?.booking?.calendar_id) {\n const isOpen = participant.is_organizer ? true : false;\n selectedParticipants[participant.email] = {\n isOpen: isOpen,\n calendar: participant.booking?.calendar_id || 'primary',\n name: participant.name || participant.email,\n };\n }\n });\n return selectedParticipants;\n }\n @RegisterComponent<NylasParticipantBookingCalendars, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-participant-booking-calendars',\n stateToProps: new Map([\n ['schedulerConfig.additionalParticipants', 'participantOptions'],\n ['schedulerConfig.calendars', 'calendars'],\n ['schedulerConfig.selectedConfiguration', 'selectedConfiguration'],\n ['schedulerConfig.selectedLanguage', 'selectedLanguage'],\n ['schedulerConfig.themeConfig', 'themeConfig'],\n ]),\n eventToProps: {},\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <div class=\"nylas-participant-booking-calendars\" part=\"npbc\">\n <div class=\"header\" part=\"npbc__header\">\n <h3>{i18next.t('nylasParticipantBookingCalendars.headerTitle')}</h3>\n <p>{i18next.t('nylasParticipantBookingCalendars.headerSubTitle')}</p>\n </div>\n <div class=\"content\" part=\"npbc__content\">\n <form ref={el => (this.bookingCalendarsFormRef = el as HTMLFormElement)}>\n {this.participantCalendars &&\n Object.keys(this.participantCalendars).map((key, index) => {\n const participant = this.selectedCalendars[key];\n const participantCalendars = this.participantCalendars[key];\n\n if (!participant || !participant.name) return;\n return (\n <div class=\"participant-container\" part=\"npbc__participant-container\" key={`participant-conatiner-${index}`}>\n <div class=\"participant-title\" part=\"npbc__participant-title\">\n <p>{i18next.t('nylasParticipantBookingCalendars.participantBookingCalendarTitle', { participantName: participant.name })}</p>\n <div class=\"participant-toggle\" part=\"npbc__participant-toggle-container\">\n <span\n class={`chevron ${participant.isOpen ? 'open' : 'closed'}`}\n onClick={() => {\n this.selectedCalendars[key].isOpen = !participant.isOpen;\n this.selectedCalendars = { ...this.selectedCalendars };\n }}\n >\n <chevron-icon width=\"24\" height=\"24\" />\n </span>\n </div>\n </div>\n {participant.isOpen && (\n <nylas-booking-calendar-picker\n key={key}\n name={`participant-booking-${key}`}\n calendars={participantCalendars}\n hideHeader={true}\n defaultBookingCalendar={this.participantDefaultSelectedCalendar[key]}\n />\n )}\n </div>\n );\n })}\n </form>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"p-DPeb4p0M.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","i18next"],"sources":["src/components/scheduler-editor/nylas-participant-booking-calendars/nylas-participant-booking-calendars.scss?tag=nylas-participant-booking-calendars&encapsulation=shadow","src/components/scheduler-editor/nylas-participant-booking-calendars/nylas-participant-booking-calendars.tsx"],"sourcesContent":["@use '../../../common/styles/variables' as *;\n\n:host {\n display: block;\n @include default-css-variables;\n width: inherit;\n}\n\n.nylas-participant-booking-calendars {\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 color: var(--nylas-base-900);\n\n .header {\n padding: 1rem;\n\n h3 {\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 display: flex;\n align-items: center;\n gap: 4px;\n }\n }\n\n .content {\n .participant-container {\n padding-top: 12px;\n border-top: 1px solid var(--nylas-base-200);\n background-color: var(--nylas-base-25);\n\n .participant-title {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 4px 16px 16px;\n\n p {\n margin: 0;\n }\n\n .participant-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 }\n}\n\nnylas-booking-calendar-picker::part(nbcp) {\n margin: 0;\n border: none;\n border-top: 1px solid var(--nylas-base-200);\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } 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 { AdditionalParticipant, Calendar, Configuration, Participant, ThemeConfig } from '@nylas/core';\nimport i18next from '@/utils/i18n';\nimport { LANGUAGE_CODE } from '@/common/constants';\n\n/**\n * The `nylas-participant-booking-calendars` component is a form input for selecting calendars to check availability for participants.\n *\n * @part npbc - The participant booking calendars host.\n * @part npbc__header - The header.\n * @part npbc__content - The content.\n * @part npbc__participant-container - The participant container.\n * @part npbc__participant-title - The participant title.\n * @part npbc__participant-toggle-container - The participant toggle container.\n */\n@Component({\n tag: 'nylas-participant-booking-calendars',\n styleUrl: 'nylas-participant-booking-calendars.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class NylasParticipantBookingCalendars {\n @Element() host!: HTMLNylasParticipantBookingCalendarsElement;\n private bookingCalendarsFormRef!: HTMLFormElement;\n /**\n * @standalone\n * The selected config\n */\n @Prop() selectedConfiguration?: Configuration;\n /**\n * @standalone\n * The name of the participants custom availability.\n */\n @Prop() name: string = 'participant-booking-calendars';\n\n /**\n * @standalone\n * The participants selected in the add participants section.\n */\n @Prop() participants: Participant[] = this.selectedConfiguration?.participants || [];\n\n /**\n * @standalone\n * The calendars to choose from for the organizer / logged in user.\n */\n @Prop() calendars?: Calendar[];\n\n /**\n * @standalone\n * The participant options passed in the additionalParticipants prop\n * from the nylas-scheduler-editor component.\n */\n @Prop() participantOptions?: AdditionalParticipant[];\n\n /**\n * The selected language.\n */\n @Prop() selectedLanguage?: LANGUAGE_CODE;\n\n /**\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: ThemeConfig;\n\n /**\n * This event is fired when the participants custom availability changes.\n */\n @Event() valueChanged!: EventEmitter<{\n value: string;\n name: string;\n }>;\n\n /**\n * The element internals.\n */\n @AttachInternals() internals!: ElementInternals;\n\n /**\n * The state to store the custom availability setting for participants.\n */\n @State() selectedCalendars: {\n [key: string]: {\n isOpen: boolean;\n name: string;\n calendar?: Calendar;\n };\n } = this.setParticipants(this.participants);\n\n /**\n * Participants calendar options.\n */\n @State() participantCalendars: {\n [key: string]: Calendar[];\n } = {};\n\n /**\n * The state to store the default selected calendars for each participant\n */\n @State() participantDefaultSelectedCalendar: {\n [key: string]: string;\n } = {};\n\n // Watchers\n @Watch('name')\n elementNameChangedHandler(newValue: string) {\n debug('nylas-participant-booking-calendars', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @Watch('calendars')\n calendarsChangedHandler(newValue: Calendar[]) {\n debug('nylas-participant-booking-calendars', 'calendarsChangedHandler', newValue);\n this.participantCalendars = this.getParticipantCalendarOptions(this.participants, this.participantOptions);\n }\n\n @Watch('participants')\n participantsChangedHandler(newValue: Participant[]) {\n debug('nylas-participant-booking-calendars', 'participantsChangedHandler', newValue);\n this.selectedCalendars = this.setParticipants(newValue);\n this.participantCalendars = this.getParticipantCalendarOptions(newValue, this.participantOptions);\n }\n\n @Watch('participantOptions')\n participantOptionsChangedHandler(newValue: AdditionalParticipant[]) {\n debug('nylas-calendar-picker', 'participantOptionsChangedHandler', newValue);\n this.participantCalendars = this.getParticipantCalendarOptions(this.participants, newValue);\n }\n\n @Watch('selectedConfiguration')\n selectedConfigurationChangedHandler(newValue: Configuration) {\n debug('nylas-participant-booking-calendars', 'selectedConfigurationChangedHandler', newValue);\n const participants = newValue?.participants || this.participants;\n if (participants && participants.length > 0) {\n this.selectedCalendars = this.setParticipants(participants);\n this.participantCalendars = this.getParticipantCalendarOptions(participants, this.participantOptions);\n }\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 getParticipantCalendarOptions(addedParticipants: Participant[], availableParticipantOptions: AdditionalParticipant[] | undefined) {\n // Get the participants from the availableParticipantOptions prop that are in the addedParticipants prop\n const organizer = addedParticipants?.find(participant => participant.is_organizer);\n const participantCalendars = {};\n const showAdditionalParticipantBookingCalendars = this.selectedConfiguration?.availability?.availability_rules?.availability_method !== 'collective';\n if (availableParticipantOptions && showAdditionalParticipantBookingCalendars) {\n const participants = addedParticipants?.filter(participant => availableParticipantOptions.some(availableParticipant => availableParticipant.email === participant.email));\n const remainingParticipants = addedParticipants?.filter(\n participant => !availableParticipantOptions.some(availableParticipant => availableParticipant.email === participant.email),\n );\n\n // Get the calendar options for each participant with email as the key\n participants?.forEach(participant => {\n const participantOption = availableParticipantOptions?.find(participantOption => participantOption.email === participant.email);\n if (!participantOption) return;\n this.participantDefaultSelectedCalendar[participant.email] = participant.booking?.calendar_id ?? 'primary';\n const calendars = participantOption.calendars ?? [];\n participantCalendars[participant.email] = calendars;\n });\n // If it is round robin config, add the remaining participant calendars to the participantCalendars\n // (Round-robin does not have an organizer, and we filtered out the participants not passed in the participantOptions prop,\n // so we need to add the remaining participants calendars to the participantCalendars)\n remainingParticipants?.forEach(participant => {\n if (participant?.booking?.calendar_id) {\n participantCalendars[participant.email] = this.calendars ?? [{ id: 'primary', name: participant.email }];\n this.participantDefaultSelectedCalendar[participant.email] = participant?.booking?.calendar_id ?? 'primary';\n }\n });\n }\n // Add the organizer's calendars to the participantCalendars\n if (organizer) {\n participantCalendars[organizer.email] = this.calendars ?? [{ id: 'primary', name: organizer.email }];\n this.participantDefaultSelectedCalendar[organizer.email] = organizer?.booking?.calendar_id ?? 'primary';\n }\n return participantCalendars;\n }\n\n // Lifecycle Methods\n connectedCallback() {\n debug('nylas-participant-booking-calendars', 'connectedCallback');\n }\n\n disconnectedCallback() {\n debug('nylas-participant-booking-calendars', 'disconnectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-participant-booking-calendars', 'componentWillLoad');\n }\n\n componentDidLoad() {\n debug('nylas-participant-booking-calendars', 'componentDidLoad');\n if (this.selectedConfiguration) {\n this.selectedCalendars = this.setParticipants(this.selectedConfiguration?.participants);\n this.participantCalendars = this.getParticipantCalendarOptions(this.selectedConfiguration?.participants, this.participantOptions);\n } else {\n this.selectedCalendars = this.setParticipants(this.participants);\n this.participantCalendars = this.getParticipantCalendarOptions(this.participants, this.participantOptions);\n }\n }\n\n @Listen('valueChanged')\n handleValueChanged(event: CustomEvent) {\n debug('[nylas-editor-tabs]', 'handleValueChanged', event);\n const { name, value } = event.detail;\n if (!name.startsWith('participant-booking-')) {\n return;\n }\n // Validate the form\n if (!this.bookingCalendarsFormRef.checkValidity()) {\n this.internals.setValidity({ customError: true }, i18next.t('nylasParticipantBookingCalendars.selectAtLeastOneCalendar'));\n return;\n } else {\n this.internals.setValidity({});\n }\n\n const key = name.split('participant-booking-')[1];\n if (!this.selectedCalendars[key]) return;\n this.selectedCalendars[key]['calendar'] = value;\n this.selectedCalendars = { ...this.selectedCalendars };\n\n const participantsCalendars = {};\n Object.keys(this.selectedCalendars).forEach(key => {\n participantsCalendars[key] = this.selectedCalendars[key]?.calendar;\n });\n this.internals.setFormValue(JSON.stringify(participantsCalendars), this.name);\n this.valueChanged.emit({ value: JSON.stringify(participantsCalendars), name: this.name });\n }\n\n setParticipants(participants: Participant[]) {\n const selectedParticipants = {};\n participants?.forEach(participant => {\n if (participant?.booking?.calendar_id) {\n const isOpen = participant.is_organizer ? true : false;\n selectedParticipants[participant.email] = {\n isOpen: isOpen,\n calendar: participant.booking?.calendar_id || 'primary',\n name: participant.name || participant.email,\n };\n }\n });\n return selectedParticipants;\n }\n @RegisterComponent<NylasParticipantBookingCalendars, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-participant-booking-calendars',\n stateToProps: new Map([\n ['schedulerConfig.additionalParticipants', 'participantOptions'],\n ['schedulerConfig.calendars', 'calendars'],\n ['schedulerConfig.selectedConfiguration', 'selectedConfiguration'],\n ['schedulerConfig.selectedLanguage', 'selectedLanguage'],\n ['schedulerConfig.themeConfig', 'themeConfig'],\n ]),\n eventToProps: {},\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <div class=\"nylas-participant-booking-calendars\" part=\"npbc\">\n <div class=\"header\" part=\"npbc__header\">\n <h3>{i18next.t('nylasParticipantBookingCalendars.headerTitle')}</h3>\n <p>{i18next.t('nylasParticipantBookingCalendars.headerSubTitle')}</p>\n </div>\n <div class=\"content\" part=\"npbc__content\">\n <form ref={el => (this.bookingCalendarsFormRef = el as HTMLFormElement)}>\n {this.participantCalendars &&\n Object.keys(this.participantCalendars).map((key, index) => {\n const participant = this.selectedCalendars[key];\n const participantCalendars = this.participantCalendars[key];\n\n if (!participant || !participant.name) return;\n return (\n <div class=\"participant-container\" part=\"npbc__participant-container\" key={`participant-conatiner-${index}`}>\n <div class=\"participant-title\" part=\"npbc__participant-title\">\n <p>{i18next.t('nylasParticipantBookingCalendars.participantBookingCalendarTitle', { participantName: participant.name })}</p>\n <div class=\"participant-toggle\" part=\"npbc__participant-toggle-container\">\n <span\n class={`chevron ${participant.isOpen ? 'open' : 'closed'}`}\n onClick={() => {\n this.selectedCalendars[key].isOpen = !participant.isOpen;\n this.selectedCalendars = { ...this.selectedCalendars };\n }}\n >\n <chevron-icon width=\"24\" height=\"24\" />\n </span>\n </div>\n </div>\n {participant.isOpen && (\n <nylas-booking-calendar-picker\n key={key}\n name={`participant-booking-${key}`}\n calendars={participantCalendars}\n hideHeader={true}\n defaultBookingCalendar={this.participantDefaultSelectedCalendar[key]}\n />\n )}\n </div>\n );\n })}\n </form>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -1,14 +1,14 @@
|
|
|
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-
|
|
3
|
-
import { b as instance, a as debug } from './p-
|
|
2
|
+
import { R as RegisterComponent } from './p-BC9yeuRb.js';
|
|
3
|
+
import { b as instance, a as debug } from './p-BkzMJ4pV.js';
|
|
4
4
|
import { b as DEFAULT_FORM_FIELD_TYPES, F as FIELD_TYPES } from './p-DUCeQ1R4.js';
|
|
5
5
|
import { d as defineCustomElement$a } from './p-p1aiCEqo.js';
|
|
6
6
|
import { d as defineCustomElement$9 } from './p-yguTPRl_.js';
|
|
7
7
|
import { d as defineCustomElement$8 } from './p-BjvAaf0A.js';
|
|
8
8
|
import { d as defineCustomElement$7 } from './p-CisyBI8Y.js';
|
|
9
|
-
import { d as defineCustomElement$6 } from './p-
|
|
10
|
-
import { d as defineCustomElement$5 } from './p-
|
|
11
|
-
import { d as defineCustomElement$4 } from './p-
|
|
9
|
+
import { d as defineCustomElement$6 } from './p-DJv7tC9z.js';
|
|
10
|
+
import { d as defineCustomElement$5 } from './p-DbjQjOKi.js';
|
|
11
|
+
import { d as defineCustomElement$4 } from './p-UTtjPYki.js';
|
|
12
12
|
import { d as defineCustomElement$3 } from './p-5p7xZOmi.js';
|
|
13
13
|
import { d as defineCustomElement$2 } from './p-Dyl-GVi0.js';
|
|
14
14
|
import { d as defineCustomElement$1 } from './p-emUyDjNl.js';
|
|
@@ -3197,6 +3197,6 @@ function defineCustomElement() {
|
|
|
3197
3197
|
}
|
|
3198
3198
|
|
|
3199
3199
|
export { NylasBookingFormConfig as N, defineCustomElement as d };
|
|
3200
|
-
//# sourceMappingURL=p-
|
|
3200
|
+
//# sourceMappingURL=p-DRd9V7vZ.js.map
|
|
3201
3201
|
|
|
3202
|
-
//# sourceMappingURL=p-
|
|
3202
|
+
//# sourceMappingURL=p-DRd9V7vZ.js.map
|