@nylas/web-elements 1.1.0-canary.16 → 1.1.0-canary.18
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/cjs/add-circle-icon.cjs.entry.js +1 -1
- package/dist/cjs/add-circle-icon_2.cjs.entry.js +2 -2
- package/dist/cjs/archive-icon.cjs.entry.js +1 -1
- package/dist/cjs/archive-icon_7.cjs.entry.js +7 -7
- package/dist/cjs/arrow-icon.cjs.entry.js +1 -1
- package/dist/cjs/bold-icon.cjs.entry.js +1 -1
- package/dist/cjs/bold-icon_3.cjs.entry.js +3 -3
- package/dist/cjs/button-component.cjs.entry.js +1 -1
- package/dist/cjs/calendar-cancel-icon.cjs.entry.js +1 -1
- package/dist/cjs/calendar-check-icon.cjs.entry.js +1 -1
- package/dist/cjs/calendar-check-icon_2.cjs.entry.js +2 -2
- package/dist/cjs/calendar-icon.cjs.entry.js +1 -1
- package/dist/cjs/calendar-info-icon.cjs.entry.js +1 -1
- package/dist/cjs/{calendar-info-icon_27.cjs.entry.js → calendar-info-icon_28.cjs.entry.js} +304 -416
- package/dist/cjs/calendar-info-icon_28.cjs.entry.js.map +1 -0
- package/dist/cjs/calendar-patterns-icon.cjs.entry.js +1 -1
- package/dist/cjs/checkbox-component.cjs.entry.js +1 -1
- package/dist/cjs/checkbox-component.cjs.entry.js.map +1 -1
- package/dist/cjs/checkmark-circle-icon.cjs.entry.js +1 -1
- package/dist/cjs/chevron-icon.cjs.entry.js +1 -1
- package/dist/cjs/chevron-icon_3.cjs.entry.js +5 -5
- package/dist/cjs/chevron-icon_3.cjs.entry.js.map +1 -1
- package/dist/cjs/clock-icon.cjs.entry.js +1 -1
- package/dist/cjs/clock-icon_2.cjs.entry.js +2 -2
- package/dist/cjs/close-icon.cjs.entry.js +1 -1
- package/dist/cjs/document-refresh-icon.cjs.entry.js +1 -1
- package/dist/cjs/flow-icon.cjs.entry.js +1 -1
- package/dist/cjs/folder-icon.cjs.entry.js +1 -1
- package/dist/cjs/forward-icon.cjs.entry.js +1 -1
- package/dist/cjs/forward-icon_6.cjs.entry.js +7 -7
- package/dist/cjs/globe-icon.cjs.entry.js +1 -1
- package/dist/cjs/google-logo-icon.cjs.entry.js +1 -1
- package/dist/cjs/google-logo-icon_4.cjs.entry.js +112 -77
- package/dist/cjs/google-logo-icon_4.cjs.entry.js.map +1 -1
- package/dist/cjs/inbox-icon.cjs.entry.js +1 -1
- package/dist/cjs/index-7af03e3f.js +10 -10
- package/dist/cjs/index-c14ea8f5.js +18 -14
- package/dist/cjs/info-icon.cjs.entry.js +1 -1
- package/dist/cjs/info-icon_2.cjs.entry.js +2 -2
- package/dist/cjs/input-component.cjs.entry.js +1 -1
- package/dist/cjs/input-dropdown.cjs.entry.js +13 -3
- package/dist/cjs/input-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/input-dropdown_2.cjs.entry.js +14 -4
- package/dist/cjs/input-dropdown_2.cjs.entry.js.map +1 -1
- package/dist/cjs/italic-icon.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/loading-icon.cjs.entry.js +1 -1
- package/dist/cjs/location-icon.cjs.entry.js +1 -1
- package/dist/cjs/location-off-icon.cjs.entry.js +1 -1
- package/dist/cjs/microsoft-logo-icon.cjs.entry.js +1 -1
- package/dist/cjs/multi-select-dropdown.cjs.entry.js +2 -2
- package/dist/cjs/nylas-additional-participants.cjs.entry.js +16 -12
- package/dist/cjs/nylas-additional-participants.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-availability-picker.cjs.entry.js +27 -16
- package/dist/cjs/nylas-availability-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js +11 -11
- package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-booking-form.cjs.entry.js +2 -2
- package/dist/cjs/nylas-cancel-booking-form.cjs.entry.js +1 -1
- package/dist/cjs/nylas-cancellation-policy.cjs.entry.js +1 -1
- package/dist/cjs/nylas-cancelled-event-card.cjs.entry.js +1 -1
- package/dist/cjs/nylas-composer.cjs.entry.js +1 -1
- package/dist/cjs/nylas-custom-booking-flow.cjs.entry.js +1 -1
- package/dist/cjs/nylas-customize-booking-settings.cjs.entry.js +1 -1
- package/dist/cjs/nylas-date-picker.cjs.entry.js +1 -1
- package/dist/cjs/nylas-date-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-editor-tabs.cjs.entry.js +110 -75
- package/dist/cjs/nylas-editor-tabs.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-event-description.cjs.entry.js +1 -1
- package/dist/cjs/nylas-event-duration.cjs.entry.js +1 -1
- package/dist/cjs/nylas-event-info.cjs.entry.js +1 -1
- package/dist/cjs/nylas-event-limits.cjs.entry.js +1 -1
- package/dist/cjs/nylas-event-location.cjs.entry.js +3 -3
- package/dist/cjs/nylas-event-title.cjs.entry.js +2 -2
- package/dist/cjs/nylas-form-card.cjs.entry.js +1 -1
- package/dist/cjs/nylas-if-state.cjs.entry.js +1 -1
- package/dist/cjs/nylas-limit-future-bookings.cjs.entry.js +1 -1
- package/dist/cjs/nylas-list-folders.cjs.entry.js +1 -1
- package/dist/cjs/nylas-list-threads.cjs.entry.js +1 -1
- package/dist/cjs/nylas-locale-switch.cjs.entry.js +3 -3
- package/dist/cjs/nylas-login.cjs.entry.js +1 -1
- package/dist/cjs/nylas-logo.cjs.entry.js +1 -1
- package/dist/cjs/nylas-mailbox-toolbar-button.cjs.entry.js +1 -1
- package/dist/cjs/nylas-mailbox.cjs.entry.js +1 -1
- package/dist/cjs/nylas-min-booking-notice.cjs.entry.js +1 -1
- package/dist/cjs/nylas-min-cancellation-notice.cjs.entry.js +1 -1
- package/dist/cjs/nylas-notification.cjs.entry.js +1 -1
- package/dist/cjs/nylas-participants-custom-availability.cjs.entry.js +142 -0
- package/dist/cjs/nylas-participants-custom-availability.cjs.entry.js.map +1 -0
- package/dist/cjs/nylas-provider.cjs.entry.js +1 -1
- package/dist/cjs/nylas-scheduler-editor.cjs.entry.js +1 -1
- package/dist/cjs/nylas-selected-event-card.cjs.entry.js +1 -1
- package/dist/cjs/nylas-summarize-message-button.cjs.entry.js +2 -2
- package/dist/cjs/nylas-threads-refresh.cjs.entry.js +2 -2
- package/dist/cjs/nylas-threads-search.cjs.entry.js +1 -1
- package/dist/cjs/nylas-time-window-picker.cjs.entry.js +1 -1
- package/dist/cjs/nylas-timeslot-interval.cjs.entry.js +2 -2
- package/dist/cjs/nylas-view-email.cjs.entry.js +1 -1
- package/dist/cjs/nylas-view-thread.cjs.entry.js +1 -1
- package/dist/cjs/nylas-web-elements.cjs.js +1 -1
- package/dist/cjs/people-icon.cjs.entry.js +1 -1
- package/dist/cjs/person-icon.cjs.entry.js +1 -1
- package/dist/cjs/play-icon.cjs.entry.js +1 -1
- package/dist/cjs/play-icon_2.cjs.entry.js +2 -2
- package/dist/cjs/radio-button-group.cjs.entry.js +1 -1
- package/dist/cjs/refresh-icon.cjs.entry.js +1 -1
- package/dist/cjs/reply-all-icon.cjs.entry.js +1 -1
- package/dist/cjs/reply-icon.cjs.entry.js +1 -1
- package/dist/cjs/search-icon.cjs.entry.js +1 -1
- package/dist/cjs/select-dropdown.cjs.entry.js +3 -3
- package/dist/cjs/select-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/sent-icon.cjs.entry.js +1 -1
- package/dist/cjs/spam-icon.cjs.entry.js +1 -1
- package/dist/cjs/star-icon.cjs.entry.js +1 -1
- package/dist/cjs/stop-icon.cjs.entry.js +1 -1
- package/dist/cjs/textarea-component.cjs.entry.js +1 -1
- package/dist/cjs/time-period-selector.cjs.entry.js +1 -1
- package/dist/cjs/toggle-switch.cjs.entry.js +1 -1
- package/dist/cjs/toggle-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/tooltip-component.cjs.entry.js +1 -1
- package/dist/cjs/translate-icon.cjs.entry.js +1 -1
- package/dist/cjs/trash-icon.cjs.entry.js +1 -1
- package/dist/cjs/underline-icon.cjs.entry.js +1 -1
- package/dist/cjs/warning-icon.cjs.entry.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/common/icons/add-circle.js +1 -1
- package/dist/collection/common/icons/archive.js +1 -1
- package/dist/collection/common/icons/arrow.js +1 -1
- package/dist/collection/common/icons/bold.js +1 -1
- package/dist/collection/common/icons/calendar-cancel.js +1 -1
- package/dist/collection/common/icons/calendar-check.js +1 -1
- package/dist/collection/common/icons/calendar-info.js +1 -1
- package/dist/collection/common/icons/calendar-patterns.js +1 -1
- package/dist/collection/common/icons/calendar.js +1 -1
- package/dist/collection/common/icons/checkmark-circle.js +1 -1
- package/dist/collection/common/icons/chevron.js +1 -1
- package/dist/collection/common/icons/clock.js +1 -1
- package/dist/collection/common/icons/close.js +1 -1
- package/dist/collection/common/icons/document-refresh.js +1 -1
- package/dist/collection/common/icons/flow.js +1 -1
- package/dist/collection/common/icons/folder.js +1 -1
- package/dist/collection/common/icons/forward.js +1 -1
- package/dist/collection/common/icons/globe.js +1 -1
- package/dist/collection/common/icons/google-logo.js +1 -1
- package/dist/collection/common/icons/inbox.js +1 -1
- package/dist/collection/common/icons/info.js +1 -1
- package/dist/collection/common/icons/italic.js +1 -1
- package/dist/collection/common/icons/loading.js +1 -1
- package/dist/collection/common/icons/location-off.js +1 -1
- package/dist/collection/common/icons/location.js +1 -1
- package/dist/collection/common/icons/microsoft-logo.js +1 -1
- package/dist/collection/common/icons/nylas-logo.js +1 -1
- package/dist/collection/common/icons/people.js +1 -1
- package/dist/collection/common/icons/person.js +1 -1
- package/dist/collection/common/icons/play.js +1 -1
- package/dist/collection/common/icons/refresh.js +1 -1
- package/dist/collection/common/icons/reply-all.js +1 -1
- package/dist/collection/common/icons/reply.js +1 -1
- package/dist/collection/common/icons/search.js +1 -1
- package/dist/collection/common/icons/sent.js +1 -1
- package/dist/collection/common/icons/spam.js +1 -1
- package/dist/collection/common/icons/star.js +1 -1
- package/dist/collection/common/icons/stop.js +1 -1
- package/dist/collection/common/icons/translate.js +1 -1
- package/dist/collection/common/icons/trash.js +1 -1
- package/dist/collection/common/icons/underline.js +1 -1
- package/dist/collection/common/icons/warning.js +1 -1
- package/dist/collection/components/design-system/button-component/button-component.js +1 -1
- package/dist/collection/components/design-system/checkbox-component/checkbox-component.js +1 -1
- package/dist/collection/components/design-system/checkbox-component/checkbox-component.js.map +1 -1
- package/dist/collection/components/design-system/input-component/input-component.js +1 -1
- package/dist/collection/components/design-system/input-dropdown/input-dropdown.js +31 -3
- package/dist/collection/components/design-system/input-dropdown/input-dropdown.js.map +1 -1
- package/dist/collection/components/design-system/multi-select-dropdown/multi-select-dropdown.js +2 -2
- package/dist/collection/components/design-system/radio-button-group/radio-button-group.js +1 -1
- package/dist/collection/components/design-system/select-dropdown/select-dropdown.js +3 -3
- package/dist/collection/components/design-system/select-dropdown/select-dropdown.js.map +1 -1
- package/dist/collection/components/design-system/textarea-component/textarea-component.js +1 -1
- package/dist/collection/components/design-system/time-period-selector/time-period-selector.js +1 -1
- package/dist/collection/components/design-system/toggle-switch/toggle-switch.js +1 -1
- package/dist/collection/components/design-system/toggle-switch/toggle-switch.js.map +1 -1
- package/dist/collection/components/design-system/tooltip-component/toolitp-component.js +1 -1
- package/dist/collection/components/mailbox/nylas-composer/nylas-composer.js +1 -1
- package/dist/collection/components/mailbox/nylas-list-folders/nylas-list-folders.js +1 -1
- package/dist/collection/components/mailbox/nylas-list-threads/nylas-list-threads.js +1 -1
- package/dist/collection/components/mailbox/nylas-mailbox/nylas-mailbox.js +1 -1
- package/dist/collection/components/mailbox/nylas-mailbox-toolbar-button/nylas-mailbox-toolbar-button.js +1 -1
- package/dist/collection/components/mailbox/nylas-summarize-message-button/nylas-summarize-message-button.js +2 -2
- package/dist/collection/components/mailbox/nylas-threads-refresh/nylas-threads-refresh.js +2 -2
- package/dist/collection/components/mailbox/nylas-threads-search/nylas-threads-search.js +1 -1
- package/dist/collection/components/mailbox/nylas-view-email/nylas-view-email.js +1 -1
- package/dist/collection/components/mailbox/nylas-view-thread/nylas-view-thread.js +1 -1
- package/dist/collection/components/nylas-if-state/nylas-if-state.js +1 -1
- package/dist/collection/components/nylas-login/nylas-login.js +1 -1
- package/dist/collection/components/nylas-provider/nylas-provider.js +1 -1
- package/dist/collection/components/scheduler/nylas-booking-form/nylas-booking-form.js +2 -2
- package/dist/collection/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.js +1 -1
- package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js +1 -1
- package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.js +1 -1
- package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.js.map +1 -1
- package/dist/collection/components/scheduler/nylas-locale-switch/nylas-locale-switch.js +3 -3
- package/dist/collection/components/scheduler/nylas-notification/nylas-notification.js +1 -1
- package/dist/collection/components/scheduler/nylas-selected-event-card/nylas-selected-event-card.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.js +33 -12
- package/dist/collection/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.css +1 -1
- package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js +48 -25
- package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-cancellation-policy/nylas-cancellation-policy.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-custom-booking-flow/nylas-custom-booking-flow.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-customize-booking-settings/nylas-customize-booking-settings.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js +108 -74
- package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-editor-tabs/tab-contents.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-event-description/nylas-event-description.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-event-duration/nylas-event-duration.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-event-info/nylas-event-info.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-event-limits/nylas-event-limits.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-event-location/nylas-event-location.js +3 -3
- package/dist/collection/components/scheduler-editor/nylas-event-title/nylas-event-title.js +2 -2
- package/dist/collection/components/scheduler-editor/nylas-form-card/nylas-form-card.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-min-booking-notice/nylas-min-booking-notice.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.css +98 -0
- package/dist/collection/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.js +219 -0
- package/dist/collection/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.js.map +1 -0
- package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js +2 -2
- package/dist/collection/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-timeslot-interval/nylas-timeslot-interval.js +2 -2
- package/dist/components/add-circle.js +1 -1
- package/dist/components/archive.js +1 -1
- package/dist/components/arrow.js +1 -1
- package/dist/components/bold.js +1 -1
- package/dist/components/button-component2.js +1 -1
- package/dist/components/calendar-cancel.js +1 -1
- package/dist/components/calendar-check.js +1 -1
- package/dist/components/calendar-info.js +1 -1
- package/dist/components/calendar-patterns.js +1 -1
- package/dist/components/calendar.js +1 -1
- package/dist/components/checkbox-component2.js +1 -1
- package/dist/components/checkbox-component2.js.map +1 -1
- package/dist/components/checkmark-circle.js +1 -1
- package/dist/components/chevron.js +1 -1
- package/dist/components/clock.js +1 -1
- package/dist/components/close.js +1 -1
- package/dist/components/document-refresh-icon.js +1 -1
- package/dist/components/flow.js +1 -1
- package/dist/components/folder.js +1 -1
- package/dist/components/forward.js +1 -1
- package/dist/components/globe.js +1 -1
- package/dist/components/google-logo.js +1 -1
- package/dist/components/inbox.js +1 -1
- package/dist/components/info.js +1 -1
- package/dist/components/input-component2.js +1 -1
- package/dist/components/input-dropdown2.js +14 -3
- package/dist/components/input-dropdown2.js.map +1 -1
- package/dist/components/italic.js +1 -1
- package/dist/components/loading.js +1 -1
- package/dist/components/location-off.js +1 -1
- package/dist/components/location.js +1 -1
- package/dist/components/microsoft-logo.js +1 -1
- package/dist/components/multi-select-dropdown2.js +2 -2
- package/dist/components/nylas-additional-participants2.js +17 -13
- package/dist/components/nylas-additional-participants2.js.map +1 -1
- package/dist/components/nylas-availability-picker2.js +28 -16
- package/dist/components/nylas-availability-picker2.js.map +1 -1
- package/dist/components/nylas-booking-form2.js +2 -2
- package/dist/components/nylas-cancel-booking-form2.js +1 -1
- package/dist/components/nylas-cancellation-policy2.js +1 -1
- package/dist/components/nylas-cancelled-event-card2.js +1 -1
- package/dist/components/nylas-composer2.js +1 -1
- package/dist/components/nylas-custom-booking-flow.js +1 -1
- package/dist/components/nylas-customize-booking-settings2.js +1 -1
- package/dist/components/nylas-date-picker2.js +1 -1
- package/dist/components/nylas-date-picker2.js.map +1 -1
- package/dist/components/nylas-editor-tabs2.js +200 -153
- package/dist/components/nylas-editor-tabs2.js.map +1 -1
- package/dist/components/nylas-event-description2.js +1 -1
- package/dist/components/nylas-event-duration2.js +1 -1
- package/dist/components/nylas-event-info2.js +1 -1
- package/dist/components/nylas-event-limits2.js +1 -1
- package/dist/components/nylas-event-location2.js +3 -3
- package/dist/components/nylas-event-title2.js +2 -2
- package/dist/components/nylas-form-card2.js +1 -1
- package/dist/components/nylas-if-state.js +1 -1
- package/dist/components/nylas-limit-future-bookings2.js +1 -1
- package/dist/components/nylas-list-folders.js +1 -1
- package/dist/components/nylas-list-threads.js +1 -1
- package/dist/components/nylas-locale-switch2.js +3 -3
- package/dist/components/nylas-login.js +1 -1
- package/dist/components/nylas-logo2.js +1 -1
- package/dist/components/nylas-mailbox-toolbar-button.js +1 -1
- package/dist/components/nylas-mailbox.js +1 -1
- package/dist/components/nylas-min-booking-notice2.js +1 -1
- package/dist/components/nylas-min-cancellation-notice2.js +1 -1
- package/dist/components/nylas-notification2.js +1 -1
- package/dist/components/nylas-participants-custom-availability.d.ts +11 -0
- package/dist/components/nylas-participants-custom-availability.js +8 -0
- package/dist/components/nylas-participants-custom-availability.js.map +1 -0
- package/dist/components/nylas-participants-custom-availability2.js +218 -0
- package/dist/components/nylas-participants-custom-availability2.js.map +1 -0
- package/dist/components/nylas-provider.js +1 -1
- package/dist/components/nylas-scheduler-editor.js +101 -89
- package/dist/components/nylas-scheduler-editor.js.map +1 -1
- package/dist/components/nylas-selected-event-card2.js +1 -1
- package/dist/components/nylas-summarize-message-button2.js +2 -2
- package/dist/components/nylas-threads-refresh.js +2 -2
- package/dist/components/nylas-threads-search.js +1 -1
- package/dist/components/nylas-time-window-picker2.js +1 -1
- package/dist/components/nylas-timeslot-interval2.js +2 -2
- package/dist/components/nylas-view-email2.js +1 -1
- package/dist/components/nylas-view-thread.js +1 -1
- package/dist/components/people.js +1 -1
- package/dist/components/person.js +1 -1
- package/dist/components/play.js +1 -1
- package/dist/components/radio-button-group2.js +1 -1
- package/dist/components/refresh.js +1 -1
- package/dist/components/reply-all.js +1 -1
- package/dist/components/reply.js +1 -1
- package/dist/components/search.js +1 -1
- package/dist/components/select-dropdown2.js +3 -3
- package/dist/components/select-dropdown2.js.map +1 -1
- package/dist/components/sent.js +1 -1
- package/dist/components/spam.js +1 -1
- package/dist/components/star.js +1 -1
- package/dist/components/stop.js +1 -1
- package/dist/components/textarea-component.js +1 -1
- package/dist/components/time-period-selector2.js +1 -1
- package/dist/components/toggle-switch.js +1 -49
- package/dist/components/toggle-switch.js.map +1 -1
- package/dist/components/toggle-switch2.js +53 -0
- package/dist/components/toggle-switch2.js.map +1 -0
- package/dist/components/toolitp-component.js +1 -1
- package/dist/components/translate.js +1 -1
- package/dist/components/trash.js +1 -1
- package/dist/components/underline.js +1 -1
- package/dist/components/warning.js +1 -1
- package/dist/esm/add-circle-icon.entry.js +1 -1
- package/dist/esm/add-circle-icon_2.entry.js +2 -2
- package/dist/esm/archive-icon.entry.js +1 -1
- package/dist/esm/archive-icon_7.entry.js +7 -7
- package/dist/esm/arrow-icon.entry.js +1 -1
- package/dist/esm/bold-icon.entry.js +1 -1
- package/dist/esm/bold-icon_3.entry.js +3 -3
- package/dist/esm/button-component.entry.js +1 -1
- package/dist/esm/calendar-cancel-icon.entry.js +1 -1
- package/dist/esm/calendar-check-icon.entry.js +1 -1
- package/dist/esm/calendar-check-icon_2.entry.js +2 -2
- package/dist/esm/calendar-icon.entry.js +1 -1
- package/dist/esm/calendar-info-icon.entry.js +1 -1
- package/dist/esm/{calendar-info-icon_27.entry.js → calendar-info-icon_28.entry.js} +304 -417
- package/dist/esm/calendar-info-icon_28.entry.js.map +1 -0
- package/dist/esm/calendar-patterns-icon.entry.js +1 -1
- package/dist/esm/checkbox-component.entry.js +1 -1
- package/dist/esm/checkbox-component.entry.js.map +1 -1
- package/dist/esm/checkmark-circle-icon.entry.js +1 -1
- package/dist/esm/chevron-icon.entry.js +1 -1
- package/dist/esm/chevron-icon_3.entry.js +5 -5
- package/dist/esm/chevron-icon_3.entry.js.map +1 -1
- package/dist/esm/clock-icon.entry.js +1 -1
- package/dist/esm/clock-icon_2.entry.js +2 -2
- package/dist/esm/close-icon.entry.js +1 -1
- package/dist/esm/document-refresh-icon.entry.js +1 -1
- package/dist/esm/flow-icon.entry.js +1 -1
- package/dist/esm/folder-icon.entry.js +1 -1
- package/dist/esm/forward-icon.entry.js +1 -1
- package/dist/esm/forward-icon_6.entry.js +7 -7
- package/dist/esm/globe-icon.entry.js +1 -1
- package/dist/esm/google-logo-icon.entry.js +1 -1
- package/dist/esm/google-logo-icon_4.entry.js +112 -77
- package/dist/esm/google-logo-icon_4.entry.js.map +1 -1
- package/dist/esm/inbox-icon.entry.js +1 -1
- package/dist/esm/index-582cfc93.js +18 -14
- package/dist/esm/index-7cb0dd3d.js +10 -10
- package/dist/esm/{index.es-896126fc.js → index.es-c5a8a1ac.js} +2 -2
- package/dist/esm/{index.es-896126fc.js.map → index.es-c5a8a1ac.js.map} +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/info-icon.entry.js +1 -1
- package/dist/esm/info-icon_2.entry.js +2 -2
- package/dist/esm/input-component.entry.js +1 -1
- package/dist/esm/input-dropdown.entry.js +13 -3
- package/dist/esm/input-dropdown.entry.js.map +1 -1
- package/dist/esm/input-dropdown_2.entry.js +14 -4
- package/dist/esm/input-dropdown_2.entry.js.map +1 -1
- package/dist/esm/italic-icon.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/loading-icon.entry.js +1 -1
- package/dist/esm/location-icon.entry.js +1 -1
- package/dist/esm/location-off-icon.entry.js +1 -1
- package/dist/esm/{mailbox-store-c9b2a4fd.js → mailbox-store-94133e15.js} +3 -3
- package/dist/esm/{mailbox-store-c9b2a4fd.js.map → mailbox-store-94133e15.js.map} +1 -1
- package/dist/esm/microsoft-logo-icon.entry.js +1 -1
- package/dist/esm/multi-select-dropdown.entry.js +3 -3
- package/dist/esm/nylas-additional-participants.entry.js +19 -15
- package/dist/esm/nylas-additional-participants.entry.js.map +1 -1
- package/dist/esm/{nylas-api-request-27e81d64.js → nylas-api-request-5ac7887c.js} +2 -2
- package/dist/esm/{nylas-api-request-27e81d64.js.map → nylas-api-request-5ac7887c.js.map} +1 -1
- package/dist/esm/nylas-availability-picker.entry.js +29 -18
- package/dist/esm/nylas-availability-picker.entry.js.map +1 -1
- package/dist/esm/nylas-booked-event-card.entry.js +2 -2
- package/dist/esm/nylas-booked-event-card_10.entry.js +11 -11
- package/dist/esm/nylas-booked-event-card_10.entry.js.map +1 -1
- package/dist/esm/nylas-booking-calendar-picker.entry.js +2 -2
- package/dist/esm/nylas-booking-form.entry.js +4 -4
- package/dist/esm/nylas-buffer-time.entry.js +2 -2
- package/dist/esm/nylas-calendar-picker.entry.js +2 -2
- package/dist/esm/nylas-cancel-booking-form.entry.js +3 -3
- package/dist/esm/nylas-cancellation-policy.entry.js +3 -3
- package/dist/esm/nylas-cancelled-event-card.entry.js +3 -3
- package/dist/esm/nylas-composer.entry.js +2 -2
- package/dist/esm/nylas-custom-booking-flow.entry.js +3 -3
- package/dist/esm/nylas-customize-booking-settings.entry.js +3 -3
- package/dist/esm/nylas-date-picker.entry.js +3 -3
- package/dist/esm/nylas-date-picker.entry.js.map +1 -1
- package/dist/esm/nylas-editor-tabs.entry.js +112 -77
- package/dist/esm/nylas-editor-tabs.entry.js.map +1 -1
- package/dist/esm/nylas-event-description.entry.js +3 -3
- package/dist/esm/nylas-event-duration.entry.js +3 -3
- package/dist/esm/nylas-event-info.entry.js +3 -3
- package/dist/esm/nylas-event-limits.entry.js +3 -3
- package/dist/esm/nylas-event-location.entry.js +5 -5
- package/dist/esm/nylas-event-title.entry.js +4 -4
- package/dist/esm/nylas-form-card.entry.js +3 -3
- package/dist/esm/nylas-if-state.entry.js +3 -3
- package/dist/esm/nylas-limit-future-bookings.entry.js +3 -3
- package/dist/esm/nylas-list-configurations.entry.js +2 -2
- package/dist/esm/nylas-list-folders.entry.js +3 -3
- package/dist/esm/nylas-list-threads.entry.js +3 -3
- package/dist/esm/nylas-locale-switch.entry.js +5 -5
- package/dist/esm/nylas-login.entry.js +3 -3
- package/dist/esm/nylas-logo.entry.js +1 -1
- package/dist/esm/nylas-mailbox-pagination.entry.js +2 -2
- package/dist/esm/nylas-mailbox-toolbar-button.entry.js +3 -3
- package/dist/esm/nylas-mailbox.entry.js +4 -4
- package/dist/esm/nylas-min-booking-notice.entry.js +3 -3
- package/dist/esm/nylas-min-cancellation-notice.entry.js +3 -3
- package/dist/esm/nylas-notification.entry.js +2 -2
- package/dist/esm/nylas-participants-custom-availability.entry.js +138 -0
- package/dist/esm/nylas-participants-custom-availability.entry.js.map +1 -0
- package/dist/esm/nylas-provider.entry.js +5 -5
- package/dist/esm/nylas-scheduler-editor.entry.js +4 -4
- package/dist/esm/nylas-scheduling.entry.js +3 -3
- package/dist/esm/nylas-selected-event-card.entry.js +3 -3
- package/dist/esm/nylas-summarize-message-button.entry.js +4 -4
- package/dist/esm/nylas-threads-refresh.entry.js +4 -4
- package/dist/esm/nylas-threads-search.entry.js +3 -3
- package/dist/esm/nylas-time-window-picker.entry.js +2 -2
- package/dist/esm/nylas-timeslot-interval.entry.js +4 -4
- package/dist/esm/nylas-timeslot-picker.entry.js +2 -2
- package/dist/esm/nylas-view-email.entry.js +2 -2
- package/dist/esm/nylas-view-thread.entry.js +3 -3
- package/dist/esm/nylas-web-elements.js +1 -1
- package/dist/esm/people-icon.entry.js +1 -1
- package/dist/esm/person-icon.entry.js +1 -1
- package/dist/esm/play-icon.entry.js +1 -1
- package/dist/esm/play-icon_2.entry.js +2 -2
- package/dist/esm/radio-button-group.entry.js +1 -1
- package/dist/esm/refresh-icon.entry.js +1 -1
- package/dist/esm/{register-component-6ae95538.js → register-component-aef40ec4.js} +2 -2
- package/dist/esm/{register-component-6ae95538.js.map → register-component-aef40ec4.js.map} +1 -1
- package/dist/esm/reply-all-icon.entry.js +1 -1
- package/dist/esm/reply-icon.entry.js +1 -1
- package/dist/esm/{scheduler-store-17f7f1c8.js → scheduler-store-6c4866d6.js} +2 -2
- package/dist/{nylas-web-elements/scheduler-store-17f7f1c8.js.map → esm/scheduler-store-6c4866d6.js.map} +1 -1
- package/dist/esm/search-icon.entry.js +1 -1
- package/dist/esm/select-dropdown.entry.js +3 -3
- package/dist/esm/select-dropdown.entry.js.map +1 -1
- package/dist/esm/sent-icon.entry.js +1 -1
- package/dist/esm/spam-icon.entry.js +1 -1
- package/dist/esm/star-icon.entry.js +1 -1
- package/dist/esm/stop-icon.entry.js +1 -1
- package/dist/esm/textarea-component.entry.js +1 -1
- package/dist/esm/time-period-selector.entry.js +2 -2
- package/dist/esm/toggle-switch.entry.js +1 -1
- package/dist/esm/toggle-switch.entry.js.map +1 -1
- package/dist/esm/tooltip-component.entry.js +1 -1
- package/dist/esm/translate-icon.entry.js +1 -1
- package/dist/esm/trash-icon.entry.js +1 -1
- package/dist/esm/underline-icon.entry.js +1 -1
- package/dist/{nylas-web-elements/utils-49a1d17b.js → esm/utils-04c10cbd.js} +2 -2
- package/dist/esm/{utils-49a1d17b.js.map → utils-04c10cbd.js.map} +1 -1
- package/dist/esm/warning-icon.entry.js +1 -1
- package/dist/nylas-web-elements/add-circle-icon.entry.js +1 -1
- package/dist/nylas-web-elements/archive-icon.entry.js +1 -1
- package/dist/nylas-web-elements/arrow-icon.entry.js +1 -1
- package/dist/nylas-web-elements/bold-icon.entry.js +1 -1
- package/dist/nylas-web-elements/button-component.entry.js +1 -1
- package/dist/nylas-web-elements/calendar-cancel-icon.entry.js +1 -1
- package/dist/nylas-web-elements/calendar-check-icon.entry.js +1 -1
- package/dist/nylas-web-elements/calendar-icon.entry.js +1 -1
- package/dist/nylas-web-elements/calendar-info-icon.entry.js +1 -1
- package/dist/nylas-web-elements/calendar-patterns-icon.entry.js +1 -1
- package/dist/nylas-web-elements/checkbox-component.entry.js +1 -1
- package/dist/nylas-web-elements/checkbox-component.entry.js.map +1 -1
- package/dist/nylas-web-elements/checkmark-circle-icon.entry.js +1 -1
- package/dist/nylas-web-elements/chevron-icon.entry.js +1 -1
- package/dist/nylas-web-elements/clock-icon.entry.js +1 -1
- package/dist/nylas-web-elements/close-icon.entry.js +1 -1
- package/dist/nylas-web-elements/document-refresh-icon.entry.js +1 -1
- package/dist/nylas-web-elements/flow-icon.entry.js +1 -1
- package/dist/nylas-web-elements/folder-icon.entry.js +1 -1
- package/dist/nylas-web-elements/forward-icon.entry.js +1 -1
- package/dist/nylas-web-elements/globe-icon.entry.js +1 -1
- package/dist/nylas-web-elements/google-logo-icon.entry.js +1 -1
- package/dist/nylas-web-elements/inbox-icon.entry.js +1 -1
- package/dist/nylas-web-elements/{index.es-896126fc.js → index.es-c5a8a1ac.js} +2 -2
- package/dist/nylas-web-elements/{index.es-896126fc.js.map → index.es-c5a8a1ac.js.map} +1 -1
- package/dist/nylas-web-elements/index.esm.js +2 -2
- package/dist/nylas-web-elements/info-icon.entry.js +1 -1
- package/dist/nylas-web-elements/input-component.entry.js +1 -1
- package/dist/nylas-web-elements/input-dropdown.entry.js +13 -3
- package/dist/nylas-web-elements/input-dropdown.entry.js.map +1 -1
- package/dist/nylas-web-elements/italic-icon.entry.js +1 -1
- package/dist/nylas-web-elements/loading-icon.entry.js +1 -1
- package/dist/nylas-web-elements/location-icon.entry.js +1 -1
- package/dist/nylas-web-elements/location-off-icon.entry.js +1 -1
- package/dist/nylas-web-elements/{mailbox-store-c9b2a4fd.js → mailbox-store-94133e15.js} +3 -3
- package/dist/nylas-web-elements/{mailbox-store-c9b2a4fd.js.map → mailbox-store-94133e15.js.map} +1 -1
- package/dist/nylas-web-elements/microsoft-logo-icon.entry.js +1 -1
- package/dist/nylas-web-elements/multi-select-dropdown.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-additional-participants.entry.js +19 -15
- package/dist/nylas-web-elements/nylas-additional-participants.entry.js.map +1 -1
- package/dist/nylas-web-elements/{nylas-api-request-27e81d64.js → nylas-api-request-5ac7887c.js} +2 -2
- package/dist/nylas-web-elements/{nylas-api-request-27e81d64.js.map → nylas-api-request-5ac7887c.js.map} +1 -1
- package/dist/nylas-web-elements/nylas-availability-picker.entry.js +29 -18
- package/dist/nylas-web-elements/nylas-availability-picker.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-booked-event-card.entry.js +2 -2
- package/dist/nylas-web-elements/nylas-booking-calendar-picker.entry.js +2 -2
- package/dist/nylas-web-elements/nylas-booking-form.entry.js +4 -4
- package/dist/nylas-web-elements/nylas-buffer-time.entry.js +2 -2
- package/dist/nylas-web-elements/nylas-calendar-picker.entry.js +2 -2
- package/dist/nylas-web-elements/nylas-cancel-booking-form.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-cancellation-policy.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-cancelled-event-card.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-composer.entry.js +2 -2
- package/dist/nylas-web-elements/nylas-custom-booking-flow.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-customize-booking-settings.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-date-picker.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-date-picker.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-editor-tabs.entry.js +112 -77
- package/dist/nylas-web-elements/nylas-editor-tabs.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-event-description.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-event-duration.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-event-info.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-event-limits.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-event-location.entry.js +5 -5
- package/dist/nylas-web-elements/nylas-event-title.entry.js +4 -4
- package/dist/nylas-web-elements/nylas-form-card.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-if-state.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-limit-future-bookings.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-list-configurations.entry.js +2 -2
- package/dist/nylas-web-elements/nylas-list-folders.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-list-threads.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-locale-switch.entry.js +5 -5
- package/dist/nylas-web-elements/nylas-login.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-logo.entry.js +1 -1
- package/dist/nylas-web-elements/nylas-mailbox-pagination.entry.js +2 -2
- package/dist/nylas-web-elements/nylas-mailbox-toolbar-button.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-mailbox.entry.js +4 -4
- package/dist/nylas-web-elements/nylas-min-booking-notice.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-min-cancellation-notice.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-notification.entry.js +2 -2
- package/dist/nylas-web-elements/nylas-participants-custom-availability.entry.js +138 -0
- package/dist/nylas-web-elements/nylas-participants-custom-availability.entry.js.map +1 -0
- package/dist/nylas-web-elements/nylas-provider.entry.js +5 -5
- package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js +4 -4
- package/dist/nylas-web-elements/nylas-scheduling.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-selected-event-card.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-summarize-message-button.entry.js +4 -4
- package/dist/nylas-web-elements/nylas-threads-refresh.entry.js +4 -4
- package/dist/nylas-web-elements/nylas-threads-search.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-time-window-picker.entry.js +2 -2
- package/dist/nylas-web-elements/nylas-timeslot-interval.entry.js +4 -4
- package/dist/nylas-web-elements/nylas-timeslot-picker.entry.js +2 -2
- package/dist/nylas-web-elements/nylas-view-email.entry.js +2 -2
- package/dist/nylas-web-elements/nylas-view-thread.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-web-elements.esm.js +1 -1
- package/dist/nylas-web-elements/{p-4b84ab3f.entry.js → p-061d0ae2.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-de63bc35.entry.js → p-08d75d35.entry.js} +2 -2
- package/dist/nylas-web-elements/p-0d98c728.entry.js +2 -0
- package/dist/nylas-web-elements/p-0d98c728.entry.js.map +1 -0
- package/dist/nylas-web-elements/p-12b83ea9.entry.js +2 -0
- package/dist/nylas-web-elements/{p-0dbc0c01.entry.js.map → p-12b83ea9.entry.js.map} +1 -1
- package/dist/nylas-web-elements/{p-98a2f588.entry.js → p-16a3bfb2.entry.js} +2 -2
- package/dist/nylas-web-elements/p-246983ed.entry.js +2 -0
- package/dist/nylas-web-elements/p-246983ed.entry.js.map +1 -0
- package/dist/nylas-web-elements/{p-4b1466b3.entry.js → p-25c97a60.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-395f49eb.entry.js → p-28512ab6.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-b27e34a9.entry.js → p-2f148064.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-120d2c72.entry.js → p-3175cae0.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-4fdc6122.entry.js → p-34f0d1fe.entry.js} +2 -2
- package/dist/nylas-web-elements/p-37f41a90.entry.js +2 -0
- package/dist/nylas-web-elements/{p-2f656fb3.entry.js → p-39160c0d.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-da21471c.entry.js → p-3f435fab.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-27db7b0b.entry.js → p-5231fc13.entry.js} +3 -3
- package/dist/nylas-web-elements/{p-deafc6bc.entry.js → p-5c3c1888.entry.js} +2 -2
- package/dist/nylas-web-elements/p-60b03f86.entry.js +2 -0
- package/dist/nylas-web-elements/{p-09fec39c.entry.js → p-65097f45.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-e4a7746d.entry.js → p-6ce66add.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-ec26560f.entry.js → p-6ef1024f.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-ace74b9d.entry.js → p-7a95bc3f.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-bfd3b5f0.entry.js → p-7ce048c0.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-a7dd4c24.entry.js → p-8e63b66c.entry.js} +2 -2
- package/dist/nylas-web-elements/p-958746a1.entry.js +2 -0
- package/dist/nylas-web-elements/{p-53da3000.entry.js.map → p-958746a1.entry.js.map} +1 -1
- package/dist/nylas-web-elements/{p-11f94952.entry.js → p-a800e7af.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-13b003b5.entry.js → p-a85408e0.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-c8c737ed.entry.js → p-aeb1c91c.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-6e888067.entry.js → p-b0c8021f.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-6891ad5d.entry.js → p-b2aca6c4.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-b9064de4.entry.js → p-b334d63b.entry.js} +2 -2
- package/dist/nylas-web-elements/p-b4d09fcf.entry.js +2 -0
- package/dist/nylas-web-elements/p-b4d09fcf.entry.js.map +1 -0
- package/dist/nylas-web-elements/{p-470536e0.entry.js → p-b9559f06.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-470536e0.entry.js.map → p-b9559f06.entry.js.map} +1 -1
- package/dist/nylas-web-elements/{p-4f548e66.entry.js → p-c1ff6499.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-32682655.entry.js → p-cb03e4d4.entry.js} +2 -2
- package/dist/nylas-web-elements/p-de7b0878.entry.js +2 -0
- package/dist/nylas-web-elements/p-e8cde784.entry.js +2 -0
- package/dist/nylas-web-elements/p-e8cde784.entry.js.map +1 -0
- package/dist/nylas-web-elements/p-f2d1b1a6.entry.js +2 -0
- package/dist/nylas-web-elements/{p-24082558.entry.js.map → p-f2d1b1a6.entry.js.map} +1 -1
- package/dist/nylas-web-elements/p-f6fafe86.entry.js +2 -0
- package/dist/nylas-web-elements/p-f6fafe86.entry.js.map +1 -0
- package/dist/nylas-web-elements/{p-d5146511.entry.js → p-f8653b9b.entry.js} +2 -2
- package/dist/nylas-web-elements/people-icon.entry.js +1 -1
- package/dist/nylas-web-elements/person-icon.entry.js +1 -1
- package/dist/nylas-web-elements/play-icon.entry.js +1 -1
- package/dist/nylas-web-elements/radio-button-group.entry.js +1 -1
- package/dist/nylas-web-elements/refresh-icon.entry.js +1 -1
- package/dist/nylas-web-elements/{register-component-6ae95538.js → register-component-aef40ec4.js} +2 -2
- package/dist/nylas-web-elements/{register-component-6ae95538.js.map → register-component-aef40ec4.js.map} +1 -1
- package/dist/nylas-web-elements/reply-all-icon.entry.js +1 -1
- package/dist/nylas-web-elements/reply-icon.entry.js +1 -1
- package/dist/nylas-web-elements/{scheduler-store-17f7f1c8.js → scheduler-store-6c4866d6.js} +2 -2
- package/dist/{esm/scheduler-store-17f7f1c8.js.map → nylas-web-elements/scheduler-store-6c4866d6.js.map} +1 -1
- package/dist/nylas-web-elements/search-icon.entry.js +1 -1
- package/dist/nylas-web-elements/select-dropdown.entry.js +3 -3
- package/dist/nylas-web-elements/select-dropdown.entry.js.map +1 -1
- package/dist/nylas-web-elements/sent-icon.entry.js +1 -1
- package/dist/nylas-web-elements/spam-icon.entry.js +1 -1
- package/dist/nylas-web-elements/star-icon.entry.js +1 -1
- package/dist/nylas-web-elements/stop-icon.entry.js +1 -1
- package/dist/nylas-web-elements/textarea-component.entry.js +1 -1
- package/dist/nylas-web-elements/time-period-selector.entry.js +2 -2
- package/dist/nylas-web-elements/toggle-switch.entry.js +1 -1
- package/dist/nylas-web-elements/toggle-switch.entry.js.map +1 -1
- package/dist/nylas-web-elements/tooltip-component.entry.js +1 -1
- package/dist/nylas-web-elements/translate-icon.entry.js +1 -1
- package/dist/nylas-web-elements/trash-icon.entry.js +1 -1
- package/dist/nylas-web-elements/underline-icon.entry.js +1 -1
- package/dist/{esm/utils-49a1d17b.js → nylas-web-elements/utils-04c10cbd.js} +2 -2
- package/dist/nylas-web-elements/{utils-49a1d17b.js.map → utils-04c10cbd.js.map} +1 -1
- package/dist/nylas-web-elements/warning-icon.entry.js +1 -1
- package/dist/types/components/design-system/input-dropdown/input-dropdown.d.ts +2 -0
- package/dist/types/components/scheduler-editor/nylas-additional-participants/nylas-additional-participants.d.ts +6 -1
- package/dist/types/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.d.ts +2 -4
- package/dist/types/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.d.ts +12 -5
- package/dist/types/components/scheduler-editor/nylas-participants-custom-availability/nylas-participants-custom-availability.d.ts +36 -0
- package/dist/types/components.d.ts +122 -9
- package/package.json +1 -1
- package/dist/cjs/calendar-info-icon_27.cjs.entry.js.map +0 -1
- package/dist/esm/calendar-info-icon_27.entry.js.map +0 -1
- package/dist/nylas-web-elements/p-0dbc0c01.entry.js +0 -2
- package/dist/nylas-web-elements/p-24082558.entry.js +0 -2
- package/dist/nylas-web-elements/p-3fd63454.entry.js +0 -2
- package/dist/nylas-web-elements/p-3fd63454.entry.js.map +0 -1
- package/dist/nylas-web-elements/p-427548f5.entry.js +0 -2
- package/dist/nylas-web-elements/p-427548f5.entry.js.map +0 -1
- package/dist/nylas-web-elements/p-53da3000.entry.js +0 -2
- package/dist/nylas-web-elements/p-7fac2bba.entry.js +0 -2
- package/dist/nylas-web-elements/p-96418bc6.entry.js +0 -2
- package/dist/nylas-web-elements/p-9acfea5f.entry.js +0 -2
- package/dist/nylas-web-elements/p-9acfea5f.entry.js.map +0 -1
- package/dist/nylas-web-elements/p-c170c56d.entry.js +0 -2
- package/dist/nylas-web-elements/p-efd5b80a.entry.js +0 -2
- package/dist/nylas-web-elements/p-efd5b80a.entry.js.map +0 -1
- package/dist/nylas-web-elements/p-fbac3865.entry.js +0 -2
- package/dist/nylas-web-elements/p-fbac3865.entry.js.map +0 -1
- /package/dist/nylas-web-elements/{p-4b84ab3f.entry.js.map → p-061d0ae2.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-de63bc35.entry.js.map → p-08d75d35.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-98a2f588.entry.js.map → p-16a3bfb2.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-4b1466b3.entry.js.map → p-25c97a60.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-395f49eb.entry.js.map → p-28512ab6.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-b27e34a9.entry.js.map → p-2f148064.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-120d2c72.entry.js.map → p-3175cae0.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-4fdc6122.entry.js.map → p-34f0d1fe.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-c170c56d.entry.js.map → p-37f41a90.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-2f656fb3.entry.js.map → p-39160c0d.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-da21471c.entry.js.map → p-3f435fab.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-27db7b0b.entry.js.map → p-5231fc13.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-deafc6bc.entry.js.map → p-5c3c1888.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-7fac2bba.entry.js.map → p-60b03f86.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-09fec39c.entry.js.map → p-65097f45.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-e4a7746d.entry.js.map → p-6ce66add.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-ec26560f.entry.js.map → p-6ef1024f.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-ace74b9d.entry.js.map → p-7a95bc3f.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-bfd3b5f0.entry.js.map → p-7ce048c0.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-a7dd4c24.entry.js.map → p-8e63b66c.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-11f94952.entry.js.map → p-a800e7af.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-13b003b5.entry.js.map → p-a85408e0.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-c8c737ed.entry.js.map → p-aeb1c91c.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-6e888067.entry.js.map → p-b0c8021f.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-6891ad5d.entry.js.map → p-b2aca6c4.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-b9064de4.entry.js.map → p-b334d63b.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-4f548e66.entry.js.map → p-c1ff6499.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-32682655.entry.js.map → p-cb03e4d4.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-96418bc6.entry.js.map → p-de7b0878.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-d5146511.entry.js.map → p-f8653b9b.entry.js.map} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as t,h as o}from"./p-68c2fadf.js";const n="button.sc-button-component{height:48px;border:none;border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;cursor:pointer;font-family:var(--nylas-font-family);font-weight:600}@media screen and (max-width: 768px){button.sc-button-component{width:100%}}button.button-primary.sc-button-component{background:var(--nylas-primary);color:var(--nylas-base-0);height:48px;border:none;border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;cursor:pointer}button.button-primary.sc-button-component:hover{background:var(--nylas-base-600)}button.button-primary.sc-button-component:active{background:var(--nylas-base-800)}button.button-primary.sc-button-component:disabled{background:var(--nylas-base-300);cursor:not-allowed}button.button-basic.sc-button-component{border:1px solid var(--nylas-base-300);color:var(--nylas-base-700);background:transparent}button.button-basic.sc-button-component:hover{background:transparent;border-color:var(--nylas-primary)}button.button-basic.sc-button-component:active{background:transparent;border-color:var(--nylas-base-600);border-width:2px}button.button-basic.sc-button-component:disabled{background:transparent;border-color:var(--nylas-base-300);color:var(--nylas-base-300);cursor:not-allowed}button.button-destructive.sc-button-component{border:1px solid var(--nylas-base-300);color:var(--nylas-error);background:transparent}button.button-destructive.sc-button-component:hover{background:transparent;border-color:var(--nylas-error)}button.button-destructive.sc-button-component:active{background:transparent;border-color:var(--nylas-error-pressed);border-width:2px;color:var(--nylas-error-pressed)}button.button-destructive.sc-button-component:disabled{background:transparent;border-color:var(--nylas-base-300);color:var(--nylas-base-300);cursor:not-allowed}button.button-invisible.sc-button-component{background:transparent;color:var(--nylas-base-800);border:none}button.button-invisible.sc-button-component:hover{background:var(--nylas-base-50);color:var(--nylas-primary)}button.button-invisible.sc-button-component:active{background:var(--nylas-base-50);color:var(--nylas-base-850)}button.button-invisible.sc-button-component:disabled{background:transparent;color:var(--nylas-base-300);cursor:not-allowed}";const r=n;const a=class{constructor(o){t(this,o);this.variant="primary";this.disabled=false;this.type="button";this.clickHandler=undefined;this.mouseOverHandler=undefined;this.mouseOutHandler=undefined;this.focusHandler=undefined;this.blurHandler=undefined}render(){const t=`button-${this.variant}`+(this.disabled?" disabled":"");return o("button",{key:"
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as t,h as o}from"./p-68c2fadf.js";const n="button.sc-button-component{height:48px;border:none;border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;cursor:pointer;font-family:var(--nylas-font-family);font-weight:600}@media screen and (max-width: 768px){button.sc-button-component{width:100%}}button.button-primary.sc-button-component{background:var(--nylas-primary);color:var(--nylas-base-0);height:48px;border:none;border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;cursor:pointer}button.button-primary.sc-button-component:hover{background:var(--nylas-base-600)}button.button-primary.sc-button-component:active{background:var(--nylas-base-800)}button.button-primary.sc-button-component:disabled{background:var(--nylas-base-300);cursor:not-allowed}button.button-basic.sc-button-component{border:1px solid var(--nylas-base-300);color:var(--nylas-base-700);background:transparent}button.button-basic.sc-button-component:hover{background:transparent;border-color:var(--nylas-primary)}button.button-basic.sc-button-component:active{background:transparent;border-color:var(--nylas-base-600);border-width:2px}button.button-basic.sc-button-component:disabled{background:transparent;border-color:var(--nylas-base-300);color:var(--nylas-base-300);cursor:not-allowed}button.button-destructive.sc-button-component{border:1px solid var(--nylas-base-300);color:var(--nylas-error);background:transparent}button.button-destructive.sc-button-component:hover{background:transparent;border-color:var(--nylas-error)}button.button-destructive.sc-button-component:active{background:transparent;border-color:var(--nylas-error-pressed);border-width:2px;color:var(--nylas-error-pressed)}button.button-destructive.sc-button-component:disabled{background:transparent;border-color:var(--nylas-base-300);color:var(--nylas-base-300);cursor:not-allowed}button.button-invisible.sc-button-component{background:transparent;color:var(--nylas-base-800);border:none}button.button-invisible.sc-button-component:hover{background:var(--nylas-base-50);color:var(--nylas-primary)}button.button-invisible.sc-button-component:active{background:var(--nylas-base-50);color:var(--nylas-base-850)}button.button-invisible.sc-button-component:disabled{background:transparent;color:var(--nylas-base-300);cursor:not-allowed}";const r=n;const a=class{constructor(o){t(this,o);this.variant="primary";this.disabled=false;this.type="button";this.clickHandler=undefined;this.mouseOverHandler=undefined;this.mouseOutHandler=undefined;this.focusHandler=undefined;this.blurHandler=undefined}render(){const t=`button-${this.variant}`+(this.disabled?" disabled":"");return o("button",{key:"bee09000c1e5c4fd748032ed56db6f36d307ce77",class:t,disabled:this.disabled,type:"type",onClick:this.clickHandler,onMouseOver:this.mouseOverHandler,onMouseOut:this.mouseOutHandler,onFocus:this.focusHandler,onBlur:this.blurHandler},o("slot",{key:"bedb527775bf845d865d7abb47cc409fe1245a27"}))}};a.style=r;export{a as button_component};
|
|
2
|
+
//# sourceMappingURL=p-c1ff6499.entry.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{h as e,F as s,r as a,c as t,H as r,a as o}from"./p-68c2fadf.js";import{R as i}from"./p-795b324a.js";import{j as n,b as l,k as d,a as c,t as h}from"./p-6c11737d.js";import"./p-02aa5f03.js";import"./p-cb65c223.js";function m(e,s,a,t,r){if(!t){return}if(!a){return}if(a.children.length>0){return}c(`[nylas-view-thread] Rendering email`,{message:e,attachments:s,viewEmailElement:t});const o=t.cloneNode(true);o.message=e.data;o.parent=r;a.appendChild(o)}const p=({viewEmailElement:a,message:t,attachments:r,onMessageClick:o,onShowContactDataClick:i,parent:c})=>e(s,null,e("div",{key:t.id,class:"message"},e("div",{class:"sub-header","data-id":t.data.id,onClick:o},e("div",{class:"avatar"},t.data.from&&t.data.from[0]?.name&&t.data.from[0]?.name[0]?.toUpperCase()),e("div",{class:"from"},e("span",{class:"name"},t.data.from&&t.data.from[0]?.name)," ",e("span",{class:"email"},t.data.from&&t.data.from[0]?.email)),e("div",{class:"date"},new Date(t.data.date*1e3).toLocaleTimeString(undefined,{timeStyle:"short"})," ","(",n(new Date(t.data.date*1e3)),")"),e("sp-button-group",{class:"buttons"},e("nylas-summarize-message-button",{message:t.data})),t.collapse&&e("div",{class:"snippet"},t.data.snippet),!t.collapse&&t.data.to&&e("div",{class:"to"},e("span",null,"to")," ",l(t.data.to)," ",e("button",{type:"button",value:t.data.id,onClick:i,class:{expand:true,"expand--showContactData":t.showContactData}},e("chevron-icon",null)))),t.showContactData&&e("div",{class:"address-info"},e("div",{class:"label"},"From"),e("div",{class:"value"},d(t.data?.from?t?.data?.from[0]:{name:"",email:""})),t.data.to&&e(s,null,e("div",{class:"label"},"To"),e("div",{class:"value"},t.data.to.map((s=>e("div",null,d(s)))))),typeof t.data.cc!=="undefined"&&t.data.cc.length>0&&e(s,null,e("div",{class:"label"},"CC"),e("div",{class:"value"},t.data.cc.map((s=>e("div",null,d(s))))))),!t.collapse&&a&&e("div",{key:t.id,ref:e=>m(t,r,e,a,c)}),!t.collapse&&!a&&e("nylas-view-email",{key:t.id,message:t.data,parent:c})),e("hr",null));const u=':host{display:block;font-size:inherit}.avatar{z-index:1;border-radius:100%;background-color:var(--nylas-color-primary-200);height:40px;width:40px;align-items:center;display:flex;justify-content:center;border:1px solid var(--nylas-color-primary-200)}.view-thread{display:grid;grid-auto-flow:row;width:100%}.view-thread .header{display:grid;grid-gap:1rem;align-items:center;margin-bottom:1rem}.view-thread .header .subject{font-size:1.25rem;font-weight:600;line-height:1.5rem}.view-thread .header .folders{display:grid;grid-auto-flow:column;grid-auto-columns:min-content;overflow-x:auto;gap:1rem}.view-thread .header .folders .folder{padding:0 0.5rem;font-size:0.9rem;color:var(--nylas-color-primary-900);background-color:var(--nylas-color-primary-300)}.view-thread .messages{display:grid;gap:1rem}.view-thread .messages hr{margin:0;width:100%;border:1px solid var(--nylas-color-primary-200)}.view-thread .messages hr:last-of-type{display:none}.view-thread .messages .message{display:grid;grid-auto-flow:row;gap:1rem}.view-thread .messages .message:last-of-type .sub-header{cursor:default}.view-thread .messages .message .sub-header{display:grid;grid-template:"avatar from date buttons" "avatar to to buttons";grid-column-gap:1rem;grid-template-columns:auto 1fr auto auto;cursor:pointer}.view-thread .messages .message .sub-header>*{pointer-events:none}.view-thread .messages .message .sub-header .avatar{grid-area:avatar}.view-thread .messages .message .sub-header .from{grid-area:from}.view-thread .messages .message .sub-header .from span.email{display:none;color:var(--nylas-color-primary-400);font-weight:600}.view-thread .messages .message .sub-header .buttons{grid-area:buttons;align-self:center}.view-thread .messages .message .sub-header .buttons *{pointer-events:all}.view-thread .messages .message .sub-header .date{grid-area:date;align-self:center;color:var(--nylas-color-primary-400)}.view-thread .messages .message .sub-header .snippet{width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--nylas-color-primary-600)}.view-thread .messages .message .sub-header .to{grid-area:to;color:var(--nylas-color-primary-400)}.view-thread .messages .message .sub-header .to>span{color:var(--nylas-color-primary-400)}.view-thread .messages .message .sub-header .to button{border:0;background-color:transparent;cursor:pointer;pointer-events:all;padding:0;margin:0}.view-thread .messages .message .sub-header .to button>*{pointer-events:none}.view-thread .messages .message .sub-header .to button chevron-icon{display:inline-table;fill:var(--nylas-color-primary-400);width:15px;height:15px;vertical-align:middle}.view-thread .messages .message .sub-header .to button chevron-icon svg{width:15px;height:15px;transform:rotate(90deg)}.view-thread .messages .message .sub-header .to button.expand--showContactData chevron-icon svg{transform:rotate(270deg)}.view-thread .messages .message .address-info{display:grid;column-gap:1rem;row-gap:0.5rem;grid-template-columns:auto 1fr;grid-template-rows:1fr;padding:1rem 2rem;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-color-primary-200);align-items:flex-start;color:var(--nylas-color-primary-600)}.view-thread .messages .message .address-info .label{color:var(--nylas-color-primary-400);font-weight:600}.show-more{position:relative;display:flex;width:100%}.show-more .sr-only{display:none}.show-more button{position:relative;display:inline-flex;width:100%;padding:0;border:0;background-color:transparent;cursor:pointer;text-align:left;overflow:hidden}.show-more button span{border:1px solid var(--nylas-color-primary-400)}.show-more button:hover span{background-color:var(--nylas-color-primary-700)}.show-more button::after{border-top:1px solid rgba(100, 121, 143, 0.122);border-bottom:1px solid rgba(100, 121, 143, 0.122);content:"";height:4px;width:100%;position:absolute;top:50%}.loading{position:absolute;width:100%;height:100%;background-color:var(--loading__background-color);top:0;bottom:0;left:0;z-index:1;display:grid;justify-content:center;align-items:center;font-weight:600;overflow:hidden}.reply-buttons{display:grid;grid-auto-flow:column;grid-auto-columns:min-content;gap:1rem;margin-top:1rem}.reply-buttons sp-button{border-radius:var(--nylas-border-radius);background-color:var(--nylas-color-primary-400);color:var(--nylas-color-primary-900);fill:var(--nylas-color-primary-900)}.reply-buttons sp-button:hover{background-color:var(--nylas-color-primary-500)}.reply-buttons sp-button:disabled{background-color:var(--nylas-color-primary-200);color:var(--nylas-color-primary-600);cursor:not-allowed}.reply-buttons sp-button chevron-icon{display:inline-block}@media only screen and (min-width: 768px){.view-thread .messages .message .sub-header .from span.email{display:inline}}';const g=u;var v=undefined&&undefined.__decorate||function(e,s,a,t){var r=arguments.length,o=r<3?s:t===null?t=Object.getOwnPropertyDescriptor(s,a):t,i;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")o=Reflect.decorate(e,s,a,t);else for(var n=e.length-1;n>=0;n--)if(i=e[n])o=(r<3?i(o):r>3?i(s,a,o):i(s,a))||o;return r>3&&o&&Object.defineProperty(s,a,o),o};var y=undefined&&undefined.__metadata||function(e,s){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,s)};const f=class{constructor(e){a(this,e);this.threadSelected=t(this,"threadSelected",7);this.showContactDataClicked=t(this,"showContactDataClicked",7);this.messageClicked=t(this,"messageClicked",7);this.nylasViewEmailElement=null;this.nylasComposerElement=null;this.onShowContactDataClick=e=>{e.stopPropagation();const s=e.target;const a=s.value;const t=this.internalMessages.find((e=>e.data.id===a));if(!t){c(`[nylas-view-thread] Could not find message ${a}`);return}const r=this.showContactDataClicked.emit(t.data);if(!r.defaultPrevented){t.showContactData=!t.showContactData;this.internalMessages=[...this.internalMessages]}c(`[nylas-view-thread] show contact data clicked ${a} ${t.showContactData?"collapsed":"expanded"}`)};this.onMessageClick=e=>{const s=e.target;const a=s.dataset.id;const t=this.internalMessages.find((e=>e.data.id===a));if(!t){c(`[nylas-view-thread] Could not find message ${a}`);return}const r=this.messageClicked.emit(t.data);if(!r.defaultPrevented){if(t.id!==this.internalMessages[this.internalMessages.length-1]?.id){t.collapse=!t.collapse;if(t.collapse){t.showContactData=false}}this.internalMessages=[...this.internalMessages]}c(`[nylas-view-thread] message clicked ${a} ${t.collapse?"collapsed":"expanded"}`)};this.onShowAllEmailsClick=()=>{this.showAllEmails=!this.showAllEmails};this.showComposerClick=()=>{this.showComposer=!this.showComposer};this.draft=undefined;this.thread=undefined;this.messages=[];this.attachments=[];this.state="loading";this.internalMessages=[];this.showAllEmails=false;this.showComposer=false}connectedCallback(){}disconnectedCallback(){}async componentWillLoad(){c(`[nylas-view-thread] Component will load`);this.updateInternalMessages(this.messages);const e=this.host.querySelector("template.nylas-view-email");if(!e){c(`[nylas-view-thread] Could not find template`);return}const s=document.importNode(e.content,true);this.nylasViewEmailElement=s.querySelector("nylas-view-email");const a=this.host.querySelector("template.nylas-composer");if(!a){c(`[nylas-view-thread] Could not find composer template`);return}const t=document.importNode(a.content,true);this.nylasComposerElement=t.querySelector("nylas-composer")}async componentDidLoad(){c(`[nylas-view-thread] Component did load`)}async threadChanged(e){c(`[nylas-view-thread] Thread changed`,{thread:e});this.internalMessages=[];const s=this.threadSelected.emit(e);if(!s.defaultPrevented){c(`[nylas-view-thread] Default event not prevented, initializing`)}}updateInternalMessages(e){c(`[nylas-view-thread] Updating internal messages`,{messages:e});const s=e.sort(((e,s)=>e.date>s.date?1:-1)).map(((s,a)=>({id:s.id,data:s,collapse:a===e.length-1?false:true,showContactData:false})));this.internalMessages=s}render(){const a=this.internalMessages.length>2?this.internalMessages[0]:null;const t=this.internalMessages.slice(this.internalMessages.length-2,this.internalMessages.length);const o=this.internalMessages.slice(1,this.internalMessages.length-2);const i=this.internalMessages[this.internalMessages.length-1];return e(r,{key:"d23da82f6e20bdd064fe7401ec7132546af2f45b"},e("sp-theme",{key:"7af6f252ef74d89e3dc791dfe8323b13df9a9f92",scale:"medium",color:"dark"},e("div",{key:"3feeeb134b11d39ff6530e911c305211f18b134f",class:"view-thread"},e("div",{key:"235b80ce3983526e0544eb1a07c0b309187b9a38",class:"header"},e("div",{key:"b78c5f6e8eb8d4733c8a1cf131df8682a5a18469",class:"subject"},this.thread?.subject),e("div",{key:"2297fb41c56a1bba769e0a60289f48b3c5f47ce2",class:"folders"},this.thread?.folders?.map((s=>e("sp-tag",{size:"s"},h(s.replace("CATEGORY_","").replace("_"," "))))))),e("div",{key:"2a22974a7b7bcc878c30d47f11e296bfdf728b0b",class:"messages"},a&&e(p,{message:a,attachments:this.attachments.filter((e=>e.messageId===a.id)),onMessageClick:this.onMessageClick,onShowContactDataClick:this.onShowContactDataClick,parent:this.host,viewEmailElement:this.nylasViewEmailElement,composerElement:this.nylasComposerElement}),o.length>0&&this.messages.length>1&&!this.showAllEmails&&t.length>0&&e(s,null,e("div",{class:"show-more"},e("button",{type:"button",onClick:this.onShowAllEmailsClick},e("span",{class:"avatar"},o.length)," ",e("span",{class:"sr-only"},"Show ",o.length," more emails"))),e("hr",null)),o.length>0&&this.showAllEmails&&this.messages.length>2&&o.map((s=>e(p,{message:s,attachments:this.attachments.filter((e=>e.messageId===a?.id)),onMessageClick:this.onMessageClick,onShowContactDataClick:this.onShowContactDataClick,parent:this.host,viewEmailElement:this.nylasViewEmailElement,composerElement:this.nylasComposerElement}))),t.length>0&&t.map((s=>e(p,{message:s,attachments:this.attachments.filter((e=>e.messageId===a?.id)),onMessageClick:this.onMessageClick,onShowContactDataClick:this.onShowContactDataClick,parent:this.host,viewEmailElement:this.nylasViewEmailElement,composerElement:this.nylasComposerElement})))),!(this.showComposer&&i)&&e("div",{class:"reply-buttons"},e("sp-button",{variant:"cta",type:"button",onClick:this.showComposerClick},e("span",{slot:"icon"},e("reply-icon",null)),e("span",null,"Reply")),e("sp-button",{variant:"cta",type:"button"},e("span",{slot:"icon"},e("reply-all-icon",null)),e("span",null,"Reply All")),e("sp-button",{variant:"cta",type:"button"},e("span",{slot:"icon"},e("forward-icon",null)),e("span",null,"Forward"))),this.showComposer&&i&&e("div",{class:"composer"},e("nylas-composer",{message:i.data,onClose:this.showComposerClick,onSend:e=>{c(`[nylas-view-thread] Send event`,{message:e.detail.message,replyBody:e.detail.replyBody})}})))))}get host(){return o(this)}static get watchers(){return{thread:["threadChanged"],messages:["updateInternalMessages"]}}};v([i({name:"nylas-view-thread",stateToProps:new Map([["mailbox.selectedThread","thread"],["mailbox.messages","messages"],["mailbox.state","state"]]),eventToProps:{threadSelected:async(e,s)=>{c(`[nylas-view-thread] Nylas init event. Fetching thread messages.`,{event:e});const a=e.detail;if(a&&a.id){await s.messages.getThreadMessages(a.id)}}},fireRegisterEvent:true}),y("design:type",Function),y("design:paramtypes",[]),y("design:returntype",void 0)],f.prototype,"render",null);f.style=g;export{f as nylas_view_thread};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{h as e,F as s,r as a,c as t,H as r,a as o}from"./p-68c2fadf.js";import{R as i}from"./p-795b324a.js";import{j as n,b as l,k as d,a as c,t as h}from"./p-6c11737d.js";import"./p-02aa5f03.js";import"./p-cb65c223.js";function m(e,s,a,t,r){if(!t){return}if(!a){return}if(a.children.length>0){return}c(`[nylas-view-thread] Rendering email`,{message:e,attachments:s,viewEmailElement:t});const o=t.cloneNode(true);o.message=e.data;o.parent=r;a.appendChild(o)}const p=({viewEmailElement:a,message:t,attachments:r,onMessageClick:o,onShowContactDataClick:i,parent:c})=>e(s,null,e("div",{key:t.id,class:"message"},e("div",{class:"sub-header","data-id":t.data.id,onClick:o},e("div",{class:"avatar"},t.data.from&&t.data.from[0]?.name&&t.data.from[0]?.name[0]?.toUpperCase()),e("div",{class:"from"},e("span",{class:"name"},t.data.from&&t.data.from[0]?.name)," ",e("span",{class:"email"},t.data.from&&t.data.from[0]?.email)),e("div",{class:"date"},new Date(t.data.date*1e3).toLocaleTimeString(undefined,{timeStyle:"short"})," ","(",n(new Date(t.data.date*1e3)),")"),e("sp-button-group",{class:"buttons"},e("nylas-summarize-message-button",{message:t.data})),t.collapse&&e("div",{class:"snippet"},t.data.snippet),!t.collapse&&t.data.to&&e("div",{class:"to"},e("span",null,"to")," ",l(t.data.to)," ",e("button",{type:"button",value:t.data.id,onClick:i,class:{expand:true,"expand--showContactData":t.showContactData}},e("chevron-icon",null)))),t.showContactData&&e("div",{class:"address-info"},e("div",{class:"label"},"From"),e("div",{class:"value"},d(t.data?.from?t?.data?.from[0]:{name:"",email:""})),t.data.to&&e(s,null,e("div",{class:"label"},"To"),e("div",{class:"value"},t.data.to.map((s=>e("div",null,d(s)))))),typeof t.data.cc!=="undefined"&&t.data.cc.length>0&&e(s,null,e("div",{class:"label"},"CC"),e("div",{class:"value"},t.data.cc.map((s=>e("div",null,d(s))))))),!t.collapse&&a&&e("div",{key:t.id,ref:e=>m(t,r,e,a,c)}),!t.collapse&&!a&&e("nylas-view-email",{key:t.id,message:t.data,parent:c})),e("hr",null));const u=':host{display:block;font-size:inherit}.avatar{z-index:1;border-radius:100%;background-color:var(--nylas-color-primary-200);height:40px;width:40px;align-items:center;display:flex;justify-content:center;border:1px solid var(--nylas-color-primary-200)}.view-thread{display:grid;grid-auto-flow:row;width:100%}.view-thread .header{display:grid;grid-gap:1rem;align-items:center;margin-bottom:1rem}.view-thread .header .subject{font-size:1.25rem;font-weight:600;line-height:1.5rem}.view-thread .header .folders{display:grid;grid-auto-flow:column;grid-auto-columns:min-content;overflow-x:auto;gap:1rem}.view-thread .header .folders .folder{padding:0 0.5rem;font-size:0.9rem;color:var(--nylas-color-primary-900);background-color:var(--nylas-color-primary-300)}.view-thread .messages{display:grid;gap:1rem}.view-thread .messages hr{margin:0;width:100%;border:1px solid var(--nylas-color-primary-200)}.view-thread .messages hr:last-of-type{display:none}.view-thread .messages .message{display:grid;grid-auto-flow:row;gap:1rem}.view-thread .messages .message:last-of-type .sub-header{cursor:default}.view-thread .messages .message .sub-header{display:grid;grid-template:"avatar from date buttons" "avatar to to buttons";grid-column-gap:1rem;grid-template-columns:auto 1fr auto auto;cursor:pointer}.view-thread .messages .message .sub-header>*{pointer-events:none}.view-thread .messages .message .sub-header .avatar{grid-area:avatar}.view-thread .messages .message .sub-header .from{grid-area:from}.view-thread .messages .message .sub-header .from span.email{display:none;color:var(--nylas-color-primary-400);font-weight:600}.view-thread .messages .message .sub-header .buttons{grid-area:buttons;align-self:center}.view-thread .messages .message .sub-header .buttons *{pointer-events:all}.view-thread .messages .message .sub-header .date{grid-area:date;align-self:center;color:var(--nylas-color-primary-400)}.view-thread .messages .message .sub-header .snippet{width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--nylas-color-primary-600)}.view-thread .messages .message .sub-header .to{grid-area:to;color:var(--nylas-color-primary-400)}.view-thread .messages .message .sub-header .to>span{color:var(--nylas-color-primary-400)}.view-thread .messages .message .sub-header .to button{border:0;background-color:transparent;cursor:pointer;pointer-events:all;padding:0;margin:0}.view-thread .messages .message .sub-header .to button>*{pointer-events:none}.view-thread .messages .message .sub-header .to button chevron-icon{display:inline-table;fill:var(--nylas-color-primary-400);width:15px;height:15px;vertical-align:middle}.view-thread .messages .message .sub-header .to button chevron-icon svg{width:15px;height:15px;transform:rotate(90deg)}.view-thread .messages .message .sub-header .to button.expand--showContactData chevron-icon svg{transform:rotate(270deg)}.view-thread .messages .message .address-info{display:grid;column-gap:1rem;row-gap:0.5rem;grid-template-columns:auto 1fr;grid-template-rows:1fr;padding:1rem 2rem;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-color-primary-200);align-items:flex-start;color:var(--nylas-color-primary-600)}.view-thread .messages .message .address-info .label{color:var(--nylas-color-primary-400);font-weight:600}.show-more{position:relative;display:flex;width:100%}.show-more .sr-only{display:none}.show-more button{position:relative;display:inline-flex;width:100%;padding:0;border:0;background-color:transparent;cursor:pointer;text-align:left;overflow:hidden}.show-more button span{border:1px solid var(--nylas-color-primary-400)}.show-more button:hover span{background-color:var(--nylas-color-primary-700)}.show-more button::after{border-top:1px solid rgba(100, 121, 143, 0.122);border-bottom:1px solid rgba(100, 121, 143, 0.122);content:"";height:4px;width:100%;position:absolute;top:50%}.loading{position:absolute;width:100%;height:100%;background-color:var(--loading__background-color);top:0;bottom:0;left:0;z-index:1;display:grid;justify-content:center;align-items:center;font-weight:600;overflow:hidden}.reply-buttons{display:grid;grid-auto-flow:column;grid-auto-columns:min-content;gap:1rem;margin-top:1rem}.reply-buttons sp-button{border-radius:var(--nylas-border-radius);background-color:var(--nylas-color-primary-400);color:var(--nylas-color-primary-900);fill:var(--nylas-color-primary-900)}.reply-buttons sp-button:hover{background-color:var(--nylas-color-primary-500)}.reply-buttons sp-button:disabled{background-color:var(--nylas-color-primary-200);color:var(--nylas-color-primary-600);cursor:not-allowed}.reply-buttons sp-button chevron-icon{display:inline-block}@media only screen and (min-width: 768px){.view-thread .messages .message .sub-header .from span.email{display:inline}}';const g=u;var v=undefined&&undefined.__decorate||function(e,s,a,t){var r=arguments.length,o=r<3?s:t===null?t=Object.getOwnPropertyDescriptor(s,a):t,i;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")o=Reflect.decorate(e,s,a,t);else for(var n=e.length-1;n>=0;n--)if(i=e[n])o=(r<3?i(o):r>3?i(s,a,o):i(s,a))||o;return r>3&&o&&Object.defineProperty(s,a,o),o};var y=undefined&&undefined.__metadata||function(e,s){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,s)};const f=class{constructor(e){a(this,e);this.threadSelected=t(this,"threadSelected",7);this.showContactDataClicked=t(this,"showContactDataClicked",7);this.messageClicked=t(this,"messageClicked",7);this.nylasViewEmailElement=null;this.nylasComposerElement=null;this.onShowContactDataClick=e=>{e.stopPropagation();const s=e.target;const a=s.value;const t=this.internalMessages.find((e=>e.data.id===a));if(!t){c(`[nylas-view-thread] Could not find message ${a}`);return}const r=this.showContactDataClicked.emit(t.data);if(!r.defaultPrevented){t.showContactData=!t.showContactData;this.internalMessages=[...this.internalMessages]}c(`[nylas-view-thread] show contact data clicked ${a} ${t.showContactData?"collapsed":"expanded"}`)};this.onMessageClick=e=>{const s=e.target;const a=s.dataset.id;const t=this.internalMessages.find((e=>e.data.id===a));if(!t){c(`[nylas-view-thread] Could not find message ${a}`);return}const r=this.messageClicked.emit(t.data);if(!r.defaultPrevented){if(t.id!==this.internalMessages[this.internalMessages.length-1]?.id){t.collapse=!t.collapse;if(t.collapse){t.showContactData=false}}this.internalMessages=[...this.internalMessages]}c(`[nylas-view-thread] message clicked ${a} ${t.collapse?"collapsed":"expanded"}`)};this.onShowAllEmailsClick=()=>{this.showAllEmails=!this.showAllEmails};this.showComposerClick=()=>{this.showComposer=!this.showComposer};this.draft=undefined;this.thread=undefined;this.messages=[];this.attachments=[];this.state="loading";this.internalMessages=[];this.showAllEmails=false;this.showComposer=false}connectedCallback(){}disconnectedCallback(){}async componentWillLoad(){c(`[nylas-view-thread] Component will load`);this.updateInternalMessages(this.messages);const e=this.host.querySelector("template.nylas-view-email");if(!e){c(`[nylas-view-thread] Could not find template`);return}const s=document.importNode(e.content,true);this.nylasViewEmailElement=s.querySelector("nylas-view-email");const a=this.host.querySelector("template.nylas-composer");if(!a){c(`[nylas-view-thread] Could not find composer template`);return}const t=document.importNode(a.content,true);this.nylasComposerElement=t.querySelector("nylas-composer")}async componentDidLoad(){c(`[nylas-view-thread] Component did load`)}async threadChanged(e){c(`[nylas-view-thread] Thread changed`,{thread:e});this.internalMessages=[];const s=this.threadSelected.emit(e);if(!s.defaultPrevented){c(`[nylas-view-thread] Default event not prevented, initializing`)}}updateInternalMessages(e){c(`[nylas-view-thread] Updating internal messages`,{messages:e});const s=e.sort(((e,s)=>e.date>s.date?1:-1)).map(((s,a)=>({id:s.id,data:s,collapse:a===e.length-1?false:true,showContactData:false})));this.internalMessages=s}render(){const a=this.internalMessages.length>2?this.internalMessages[0]:null;const t=this.internalMessages.slice(this.internalMessages.length-2,this.internalMessages.length);const o=this.internalMessages.slice(1,this.internalMessages.length-2);const i=this.internalMessages[this.internalMessages.length-1];return e(r,{key:"b9bcde80e7ee15061bfc217d99bb9422dfbe1d04"},e("sp-theme",{key:"965e53796323e3e13983447abb4ac1b3a8651daa",scale:"medium",color:"dark"},e("div",{key:"9efc644121efd09a2e837c23f9f8da80589f870b",class:"view-thread"},e("div",{key:"c1479929b6679a1b47f03dfe6d5cc1128484b703",class:"header"},e("div",{key:"00c6788a461f9f6ca4532fb2acb2bf08e0f0c118",class:"subject"},this.thread?.subject),e("div",{key:"2e114754a9dd830e4a124cd9079ad4cf725908bd",class:"folders"},this.thread?.folders?.map((s=>e("sp-tag",{size:"s"},h(s.replace("CATEGORY_","").replace("_"," "))))))),e("div",{key:"136d6a314c647991218dfe4090fa97c8d98b210d",class:"messages"},a&&e(p,{message:a,attachments:this.attachments.filter((e=>e.messageId===a.id)),onMessageClick:this.onMessageClick,onShowContactDataClick:this.onShowContactDataClick,parent:this.host,viewEmailElement:this.nylasViewEmailElement,composerElement:this.nylasComposerElement}),o.length>0&&this.messages.length>1&&!this.showAllEmails&&t.length>0&&e(s,null,e("div",{class:"show-more"},e("button",{type:"button",onClick:this.onShowAllEmailsClick},e("span",{class:"avatar"},o.length)," ",e("span",{class:"sr-only"},"Show ",o.length," more emails"))),e("hr",null)),o.length>0&&this.showAllEmails&&this.messages.length>2&&o.map((s=>e(p,{message:s,attachments:this.attachments.filter((e=>e.messageId===a?.id)),onMessageClick:this.onMessageClick,onShowContactDataClick:this.onShowContactDataClick,parent:this.host,viewEmailElement:this.nylasViewEmailElement,composerElement:this.nylasComposerElement}))),t.length>0&&t.map((s=>e(p,{message:s,attachments:this.attachments.filter((e=>e.messageId===a?.id)),onMessageClick:this.onMessageClick,onShowContactDataClick:this.onShowContactDataClick,parent:this.host,viewEmailElement:this.nylasViewEmailElement,composerElement:this.nylasComposerElement})))),!(this.showComposer&&i)&&e("div",{class:"reply-buttons"},e("sp-button",{variant:"cta",type:"button",onClick:this.showComposerClick},e("span",{slot:"icon"},e("reply-icon",null)),e("span",null,"Reply")),e("sp-button",{variant:"cta",type:"button"},e("span",{slot:"icon"},e("reply-all-icon",null)),e("span",null,"Reply All")),e("sp-button",{variant:"cta",type:"button"},e("span",{slot:"icon"},e("forward-icon",null)),e("span",null,"Forward"))),this.showComposer&&i&&e("div",{class:"composer"},e("nylas-composer",{message:i.data,onClose:this.showComposerClick,onSend:e=>{c(`[nylas-view-thread] Send event`,{message:e.detail.message,replyBody:e.detail.replyBody})}})))))}get host(){return o(this)}static get watchers(){return{thread:["threadChanged"],messages:["updateInternalMessages"]}}};v([i({name:"nylas-view-thread",stateToProps:new Map([["mailbox.selectedThread","thread"],["mailbox.messages","messages"],["mailbox.state","state"]]),eventToProps:{threadSelected:async(e,s)=>{c(`[nylas-view-thread] Nylas init event. Fetching thread messages.`,{event:e});const a=e.detail;if(a&&a.id){await s.messages.getThreadMessages(a.id)}}},fireRegisterEvent:true}),y("design:type",Function),y("design:paramtypes",[]),y("design:returntype",void 0)],f.prototype,"render",null);f.style=g;export{f as nylas_view_thread};
|
|
2
|
+
//# sourceMappingURL=p-cb03e4d4.entry.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as a,h as c}from"./p-68c2fadf.js";const e=".sc-add-circle-icon-h{display:flex}";const s=e;const t=class{constructor(c){a(this,c);this.width="24";this.height="25"}render(){return c("svg",{key:"61927c69799c46729dc3fd834e12d85039949e97",width:this.width,height:this.height,fill:"none",xmlns:"http://www.w3.org/2000/svg"},c("path",{key:"9dda19a5a0521e3f26a5198af34e4a0b63778d57",d:"M12 2.5c5.523 0 10 4.477 10 10s-4.477 10-10 10-10-4.477-10-10 4.477-10 10-10ZM12 4a8.5 8.5 0 1 0 0 17 8.5 8.5 0 0 0 0-17Zm0 3.5a.75.75 0 0 1 .75.75v3.5h3.5a.75.75 0 0 1 0 1.5h-3.5v3.5a.75.75 0 0 1-1.5 0v-3.5h-3.5a.75.75 0 0 1 0-1.5h3.5v-3.5A.75.75 0 0 1 12 7.5Z",fill:"currentColor"}))}};t.style=s;const f=".sc-close-icon-h{display:flex}";const d=f;const l=class{constructor(c){a(this,c);this.width="16";this.height="16"}render(){return c("svg",{key:"0f4877401be56f05c3e078f1787090f1d4ef1828",width:"21",height:"21",fill:"none",xmlns:"http://www.w3.org/2000/svg"},c("g",{key:"1de897afab65499f15dc52a688c0979688a0e1e6","clip-path":"url(#a)"},c("path",{key:"a845971a716788575a41b7baa3cb3112c6b101dd",d:"M5.73 4.574a.75.75 0 1 0-1.061 1.06l4.419 4.42-4.42 4.42a.75.75 0 1 0 1.061 1.06l4.42-4.42 4.419 4.42a.75.75 0 0 0 1.06-1.06l-4.419-4.42 4.42-4.42a.75.75 0 1 0-1.061-1.06l-4.42 4.42-4.419-4.42Z",fill:"currentColor"})),c("defs",{key:"53535e0937ab07c5a668dd03286a54048f8486d7"},c("clipPath",{key:"cfc1b69ea9a3f2c77fbc1f639b083f89a53e69f5",id:"a"},c("path",{key:"88c774bf4d75f09fbc2754feac3dfa293297b3a2",fill:"#fff",transform:"translate(.148 .054)",d:"M0 0h20v20H0z"}))))}};l.style=d;export{t as add_circle_icon,l as close_icon};
|
|
2
|
+
//# sourceMappingURL=p-de7b0878.entry.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,c as i,h as s,H as e,a as n}from"./p-68c2fadf.js";import{F as r,G as a,H as h,I as o,J as l}from"./p-6c11737d.js";import{c}from"./p-cb65c223.js";import"./p-02aa5f03.js";var f={exports:{}};(function(t,i){!function(i,s){t.exports=s()}(c,(function(){var t={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},i=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,s=/\d\d/,e=/\d\d?/,n=/\d*[^-_:/,()\s\d]+/,r={},a=function(t){return(t=+t)+(t>68?1900:2e3)};var h=function(t){return function(i){this[t]=+i}},o=[/[+-]\d\d:?(\d\d)?|Z/,function(t){(this.zone||(this.zone={})).offset=function(t){if(!t)return 0;if("Z"===t)return 0;var i=t.match(/([+-]|\d\d)/g),s=60*i[1]+(+i[2]||0);return 0===s?0:"+"===i[0]?-s:s}(t)}],l=function(t){var i=r[t];return i&&(i.indexOf?i:i.s.concat(i.f))},c=function(t,i){var s,e=r.meridiem;if(e){for(var n=1;n<=24;n+=1)if(t.indexOf(e(n,0,i))>-1){s=n>12;break}}else s=t===(i?"pm":"PM");return s},f={A:[n,function(t){this.afternoon=c(t,!1)}],a:[n,function(t){this.afternoon=c(t,!0)}],S:[/\d/,function(t){this.milliseconds=100*+t}],SS:[s,function(t){this.milliseconds=10*+t}],SSS:[/\d{3}/,function(t){this.milliseconds=+t}],s:[e,h("seconds")],ss:[e,h("seconds")],m:[e,h("minutes")],mm:[e,h("minutes")],H:[e,h("hours")],h:[e,h("hours")],HH:[e,h("hours")],hh:[e,h("hours")],D:[e,h("day")],DD:[s,h("day")],Do:[n,function(t){var i=r.ordinal,s=t.match(/\d+/);if(this.day=s[0],i)for(var e=1;e<=31;e+=1)i(e).replace(/\[|\]/g,"")===t&&(this.day=e)}],M:[e,h("month")],MM:[s,h("month")],MMM:[n,function(t){var i=l("months"),s=(l("monthsShort")||i.map((function(t){return t.slice(0,3)}))).indexOf(t)+1;if(s<1)throw new Error;this.month=s%12||s}],MMMM:[n,function(t){var i=l("months").indexOf(t)+1;if(i<1)throw new Error;this.month=i%12||i}],Y:[/[+-]?\d+/,h("year")],YY:[s,function(t){this.year=a(t)}],YYYY:[/\d{4}/,h("year")],Z:o,ZZ:o};function d(s){var e,n;e=s,n=r&&r.formats;for(var a=(s=e.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(i,s,e){var r=e&&e.toUpperCase();return s||n[e]||t[e]||n[r].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(t,i,s){return i||s.slice(1)}))}))).match(i),h=a.length,o=0;o<h;o+=1){var l=a[o],c=f[l],d=c&&c[0],m=c&&c[1];a[o]=m?{regex:d,parser:m}:l.replace(/^\[|\]$/g,"")}return function(t){for(var i={},s=0,e=0;s<h;s+=1){var n=a[s];if("string"==typeof n)e+=n.length;else{var r=n.regex,o=n.parser,l=t.slice(e),c=r.exec(l)[0];o.call(i,c),t=t.replace(c,"")}}return function(t){var i=t.afternoon;if(void 0!==i){var s=t.hours;i?s<12&&(t.hours+=12):12===s&&(t.hours=0),delete t.afternoon}}(i),i}}return function(t,i,s){s.p.customParseFormat=!0,t&&t.parseTwoDigitYear&&(a=t.parseTwoDigitYear);var e=i.prototype,n=e.parse;e.parse=function(t){var i=t.date,e=t.utc,a=t.args;this.$u=e;var h=a[1];if("string"==typeof h){var o=!0===a[2],l=!0===a[3],c=o||l,f=a[2];l&&(f=a[2]),r=this.$locale(),!o&&f&&(r=s.Ls[f]),this.$d=function(t,i,s){try{if(["x","X"].indexOf(i)>-1)return new Date(("X"===i?1e3:1)*t);var e=d(i)(t),n=e.year,r=e.month,a=e.day,h=e.hours,o=e.minutes,l=e.seconds,c=e.milliseconds,f=e.zone,m=new Date,u=a||(n||r?1:m.getDate()),p=n||m.getFullYear(),b=0;n&&!r||(b=r>0?r-1:m.getMonth());var y=h||0,v=o||0,x=l||0,g=c||0;return f?new Date(Date.UTC(p,b,u,y,v,x,g+60*f.offset*1e3)):s?new Date(Date.UTC(p,b,u,y,v,x,g)):new Date(p,b,u,y,v,x,g)}catch(t){return new Date("")}}(i,h,e),this.init(),f&&!0!==f&&(this.$L=this.locale(f).$L),c&&i!=this.format(h)&&(this.$d=new Date("")),r={}}else if(h instanceof Array)for(var m=h.length,u=1;u<=m;u+=1){a[1]=h[u-1];var p=s.apply(this,a);if(p.isValid()){this.$d=p.$d,this.$L=p.$L,this.init();break}u===m&&(this.$d=new Date(""))}else n.call(this,t)}}}))})(f);const d=f.exports;const m=':host{display:block;position:relative;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}.time-picker{display:inline-block;width:150px;font-family:var(--nylas-font-family);position:relative}@media screen and (max-width: 768px){.time-picker{width:auto}}.time-picker input{width:150px;height:48px;text-align:center;font-size:16px;font-family:inherit;cursor:pointer;background:transparent;border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x)}@media screen and (max-width: 768px){.time-picker input{width:88px}}@media screen and (max-width: 504px){.time-picker input{width:68px;font-size:15px}}.time-picker input.focus{background:transparent}.time-picker input:hover,.time-picker input:active{border:1px solid var(--nylas-primary)}.time-picker input:active{outline:2px solid var(--nylas-primary)}.time-picker input span.open{transform:rotate(90deg)}.time-picker input span.closed{transform:rotate(270deg)}.time-picker input.error{border:1px solid var(--nylas-error)}.time-picker p.error{color:var(--nylas-error);font-size:0.875rem;margin:0}.times{display:block;margin-top:0.5rem;background-color:var(--nylas-base-0);width:100%;max-height:336px;overflow:auto;border:1px solid #ddd;z-index:1;border-radius:4px;position:absolute;box-shadow:0px 4px 6px -2px rgba(0, 0, 0, 0.0509803922);box-shadow:0px 10px 15px -3px rgba(0, 0, 0, 0.1019607843)}.times ul{padding:0;list-style-type:none;color:var(--nylas-base-900);max-height:336px}.times ul li{padding:16px, 12px, 16px, 12px;color:black;padding:12px 16px;text-decoration:none;display:block;font-family:inherit;font-size:14px;font-weight:400;line-height:20px;letter-spacing:0px;text-align:center;cursor:pointer}.times ul li.focused{background-color:var(--nylas-base-100)}.times ul li:hover,.times ul li:focus{background-color:var(--nylas-base-100)}.times ul li label{display:flex;align-items:center;gap:0.5rem}.times ul li label input{margin:0}';const u=m;r.extend(d);const p=class{constructor(s){t(this,s);this.timeChange=i(this,"timeChange",7);this.formError=i(this,"formError",7);this.time=undefined;this.minimumStartTime=null;this.placeholder="hh:mmam/pm";this.name=undefined;this.hasError=false;this.err="";this.showTimes=false;this.ariaActivedescendant="";this.times=this.generateTimes();this.shouldAutoScroll=false}handleOutsideClick(t){const i=t.composedPath();const s=i.includes(this.el);if(!s&&this.showTimes){this.showTimes=false}}minimumStartTimeChangedHandler(){if(this.minimumStartTime){let t=r().hour(parseInt(this.minimumStartTime)).minute(parseInt(this.minimumStartTime.slice(-4,-2)));if(this.minimumStartTime.slice(-2).toLowerCase()==="pm"&&parseInt(this.minimumStartTime)!==12){t=t.add(12,"hour")}else if(this.minimumStartTime.slice(-2).toLowerCase()==="am"&&parseInt(this.minimumStartTime)===12){t=t.subtract(12,"hour")}this.times=this.generateTimes();const i=r(this.times[0].value,"hh:mma");let s=r(this.time,"hh:mma");if(s.isBefore(i)){this.err="Invalid";this.formError.emit({key:this.el.id,message:"Invalid"})}}}componentDidRender(){if(this.showTimes&&this.shouldAutoScroll){const t=a(this.time);const i=this.times.findIndex((i=>i.value===t));if(i>-1){this.shouldAutoScroll=false;this.scrollToViewWithinParent(i)}return}}handleTimeChange(t,i){const s=i.split(":");if(s[0]==="00"&&s[1].slice(-2)=="pm"){this.err="Invalid";this.formError.emit({key:this.el.id,message:"Invalid"})}if(!h(i)){this.err="Invalid";this.formError.emit({key:this.el.id,message:"Invalid"})}else{this.err="";this.formError.emit({key:this.el.id,message:""})}this.timeChange.emit({key:this.el.id,value:i})}handleTimeAutocomplete(t){const i=t.target?.value;if(!h(i)){this.err="Invalid";this.formError.emit({key:this.el.id,message:"Invalid"});return}if(i===""){const t=o().format("hh:mma");this.timeChange.emit({key:this.el.id,value:t});return}if(!l(i)){const t=a(i);this.timeChange.emit({key:this.el.id,value:t});return}this.timeChange.emit({key:this.el.id,value:i})}handleOnInput(t){const i=t.target?.value;if(!h(i)){return}if(i===""){const t=o().format("hh:mma");const i=this.times.findIndex((i=>i.value===t));if(i>-1){this.scrollToViewWithinParent(i)}return}if(!l(i)){const t=a(i);const s=this.times.findIndex((i=>i.value===t));if(s>-1){this.scrollToViewWithinParent(s)}return}}generateTimes(){const t=[];let i=r().set("hour",0).set("minute",0).set("second",0);if(this.minimumStartTime){i=r(this.minimumStartTime,"hh:mma")}const s=i.endOf("day").diff(i,"minutes");const e=Math.round(s/15);for(let s=0;s<e+1;s++){const n=i.add(s*15,"minute");if(s==e&&n.format("hh:mma").includes("am")){break}t.push({id:s,value:n.format("hh:mma")})}return t}handleComboboxKeyDown(t){if(t.key==="ArrowDown"){t.preventDefault();if(!this.showTimes){this.showTimes=true;this.shouldAutoScroll=true;return}if(this.ariaActivedescendant===""){this.ariaActivedescendant=this.times[0].id.toString();this.focusOption(0)}else{const t=this.times.findIndex((t=>t.id.toString()===this.ariaActivedescendant));const i=t+1<this.times.length?t+1:0;this.ariaActivedescendant=this.times[i].id.toString();this.focusOption(i)}}else if(t.key==="ArrowUp"){t.preventDefault();if(this.ariaActivedescendant===""){this.ariaActivedescendant=this.times[this.times.length-1].id.toString();this.focusOption(this.times.length-1)}else{const t=this.times.findIndex((t=>t.id.toString()===this.ariaActivedescendant));const i=t-1>=0?t-1:this.times.length-1;this.ariaActivedescendant=this.times[i].id.toString();this.focusOption(i)}}else if(t.key==="Escape"){this.showTimes=false;this.timeInput.focus()}}handleListboxKeydown(t){const i=this.times;const s=i.findIndex((t=>t.id.toString()===this.ariaActivedescendant));if(t.key==="ArrowDown"||t.key==="Tab"&&!t.shiftKey){t.preventDefault();const e=s+1<i.length?s+1:0;this.ariaActivedescendant=i[e].id.toString();this.focusOption(e)}else if(t.key==="ArrowUp"||t.key==="Tab"&&t.shiftKey){t.preventDefault();const e=s-1>=0?s-1:i.length-1;this.ariaActivedescendant=i[e].id.toString();this.focusOption(e)}else if(t.key==="Enter"){t.preventDefault();if(this.ariaActivedescendant){const e=i[s];this.handleTimeChange(t,e.value);this.showTimes=false;this.ariaActivedescendant="";this.timeInput.focus()}}else if(t.key==="Escape"){this.showTimes=false;this.timeInput.focus()}}scrollToViewWithinParent(t){const i=this.times[t];const s=this.el.shadowRoot?.getElementById(i.id.toString());const e=this.timeMenu;this.ariaActivedescendant=i.id.toString();const n=s.getBoundingClientRect();const r=e.getBoundingClientRect();if(n.top<r.top){e.scrollTop-=r.top-n.top}else if(n.bottom>r.bottom){e.scrollTop+=n.bottom-r.bottom}if(n.left<r.left){e.scrollLeft-=r.left-n.left}else if(n.right>r.right){e.scrollLeft+=n.right-r.right}}focusOption(t){const i=this.times[t];if(!i)return;const s=i.id.toString();const e=this.el.shadowRoot?.getElementById(s);if(e){e.focus();e.scrollIntoView({behavior:"smooth",block:"nearest"})}}render(){return s(e,{key:"e6e899509659691432e600fb64b1f4964d737e8f"},s("div",{key:"6f177a2b2963e2462b842c26553f0059518dd713",class:"time-picker",part:"time-picker"},s("input",{key:"4d290b135afdb54edcadb2279b5c18f9b1ed6ee1",type:"text",name:this.name,id:this.name,part:"time-input",class:{"time-input":true,error:!!this.err||this.hasError},ref:t=>this.timeInput=t,value:this.time,onClick:()=>{this.showTimes=!this.showTimes;this.shouldAutoScroll=true},"aria-haspopup":"listbox","aria-label":this.name,"aria-expanded":this.showTimes?"true":"false",placeholder:this.placeholder,onKeyDown:t=>this.handleComboboxKeyDown(t),onInput:t=>this.handleOnInput(t),onBlur:t=>this.handleTimeAutocomplete(t)}),this.err&&s("div",{class:"invalid-time-icon"}),this.showTimes&&s("div",{class:"times",part:"times",ref:t=>this.timeMenu=t},s("ul",{tabindex:"-1",role:"listbox","aria-label":this.name,"aria-activedescendant":this.ariaActivedescendant,onKeyDown:t=>this.handleListboxKeydown(t)},this.times.map((t=>s("li",{tabindex:"0",key:t.id,id:t.id.toString(),class:{focused:this.ariaActivedescendant===t.id.toString()},onClick:i=>{this.handleTimeChange(i,t.value);this.showTimes=false;this.timeInput.focus()},role:"option"},`${t.value}`))))),!this.showTimes&&this.err&&s("p",{class:"error",id:"email-error"},this.err)))}get el(){return n(this)}static get watchers(){return{minimumStartTime:["minimumStartTimeChangedHandler"]}}};p.style=u;export{p as nylas_time_window_picker};
|
|
2
|
+
//# sourceMappingURL=p-e8cde784.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["e","t","module","exports","this","LTS","LT","L","LL","LLL","LLLL","n","r","i","o","s","a","f","zone","offset","match","h","indexOf","concat","u","meridiem","d","A","afternoon","S","milliseconds","SS","SSS","ss","m","mm","H","HH","hh","D","DD","Do","ordinal","day","replace","M","MM","MMM","map","slice","Error","month","MMMM","Y","YY","year","YYYY","Z","ZZ","c","formats","toUpperCase","length","l","regex","parser","exec","call","hours","p","customParseFormat","parseTwoDigitYear","prototype","parse","date","utc","args","$u","$locale","Ls","$d","Date","minutes","seconds","getDate","getFullYear","getMonth","v","g","UTC","init","$L","locale","format","Array","apply","isValid","nylasTimeWindowPickerCss","NylasTimeWindowPickerStyle0","dayjs","extend","TimeInput","generateTimes","handleOutsideClick","event","path","composedPath","isClickInside","includes","el","showTimes","minimumStartTimeChangedHandler","minimumStartTime","formattedTime","hour","parseInt","minute","toLowerCase","add","subtract","times","firstTime","value","selectedTimeFormatted","time","isBefore","err","formError","emit","key","id","message","componentDidRender","shouldAutoScroll","autocompletedTime","autocompleteTimeFormat","optionIndex","findIndex","scrollToViewWithinParent","handleTimeChange","_e","input","timePart","split","validateTimeFormatInput","timeChange","handleTimeAutocomplete","target","newTime","roundToNearest15Minutes","validateExactTimeFormat","handleOnInput","startTime","set","diff","endOf","iterations","Math","round","push","handleComboboxKeyDown","preventDefault","ariaActivedescendant","toString","focusOption","currentIndex","nextIndex","prevIndex","timeInput","focus","handleListboxKeydown","items","item","shiftKey","option","childElement","shadowRoot","getElementById","parentElement","timeMenu","childRect","getBoundingClientRect","parentRect","top","scrollTop","bottom","left","scrollLeft","right","index","elementId","element","scrollIntoView","behavior","block","render","Host","class","part","type","name","error","hasError","ref","onClick","placeholder","onKeyDown","onInput","onBlur","tabindex","role","focused"],"sources":["../../node_modules/.pnpm/dayjs@1.11.7/node_modules/dayjs/plugin/customParseFormat.js","src/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.scss?tag=nylas-time-window-picker&encapsulation=shadow","src/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.tsx"],"sourcesContent":["!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_customParseFormat=t()}(this,(function(){\"use strict\";var e={LTS:\"h:mm:ss A\",LT:\"h:mm A\",L:\"MM/DD/YYYY\",LL:\"MMMM D, YYYY\",LLL:\"MMMM D, YYYY h:mm A\",LLLL:\"dddd, MMMM D, YYYY h:mm A\"},t=/(\\[[^[]*\\])|([-_:/.,()\\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\\d\\d/,r=/\\d\\d?/,i=/\\d*[^-_:/,()\\s\\d]+/,o={},s=function(e){return(e=+e)+(e>68?1900:2e3)};var a=function(e){return function(t){this[e]=+t}},f=[/[+-]\\d\\d:?(\\d\\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if(\"Z\"===e)return 0;var t=e.match(/([+-]|\\d\\d)/g),n=60*t[1]+(+t[2]||0);return 0===n?0:\"+\"===t[0]?-n:n}(e)}],h=function(e){var t=o[e];return t&&(t.indexOf?t:t.s.concat(t.f))},u=function(e,t){var n,r=o.meridiem;if(r){for(var i=1;i<=24;i+=1)if(e.indexOf(r(i,0,t))>-1){n=i>12;break}}else n=e===(t?\"pm\":\"PM\");return n},d={A:[i,function(e){this.afternoon=u(e,!1)}],a:[i,function(e){this.afternoon=u(e,!0)}],S:[/\\d/,function(e){this.milliseconds=100*+e}],SS:[n,function(e){this.milliseconds=10*+e}],SSS:[/\\d{3}/,function(e){this.milliseconds=+e}],s:[r,a(\"seconds\")],ss:[r,a(\"seconds\")],m:[r,a(\"minutes\")],mm:[r,a(\"minutes\")],H:[r,a(\"hours\")],h:[r,a(\"hours\")],HH:[r,a(\"hours\")],hh:[r,a(\"hours\")],D:[r,a(\"day\")],DD:[n,a(\"day\")],Do:[i,function(e){var t=o.ordinal,n=e.match(/\\d+/);if(this.day=n[0],t)for(var r=1;r<=31;r+=1)t(r).replace(/\\[|\\]/g,\"\")===e&&(this.day=r)}],M:[r,a(\"month\")],MM:[n,a(\"month\")],MMM:[i,function(e){var t=h(\"months\"),n=(h(\"monthsShort\")||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(n<1)throw new Error;this.month=n%12||n}],MMMM:[i,function(e){var t=h(\"months\").indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t}],Y:[/[+-]?\\d+/,a(\"year\")],YY:[n,function(e){this.year=s(e)}],YYYY:[/\\d{4}/,a(\"year\")],Z:f,ZZ:f};function c(n){var r,i;r=n,i=o&&o.formats;for(var s=(n=r.replace(/(\\[[^\\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var o=r&&r.toUpperCase();return n||i[r]||e[r]||i[o].replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,n){return t||n.slice(1)}))}))).match(t),a=s.length,f=0;f<a;f+=1){var h=s[f],u=d[h],c=u&&u[0],l=u&&u[1];s[f]=l?{regex:c,parser:l}:h.replace(/^\\[|\\]$/g,\"\")}return function(e){for(var t={},n=0,r=0;n<a;n+=1){var i=s[n];if(\"string\"==typeof i)r+=i.length;else{var o=i.regex,f=i.parser,h=e.slice(r),u=o.exec(h)[0];f.call(t,u),e=e.replace(u,\"\")}}return function(e){var t=e.afternoon;if(void 0!==t){var n=e.hours;t?n<12&&(e.hours+=12):12===n&&(e.hours=0),delete e.afternoon}}(t),t}}return function(e,t,n){n.p.customParseFormat=!0,e&&e.parseTwoDigitYear&&(s=e.parseTwoDigitYear);var r=t.prototype,i=r.parse;r.parse=function(e){var t=e.date,r=e.utc,s=e.args;this.$u=r;var a=s[1];if(\"string\"==typeof a){var f=!0===s[2],h=!0===s[3],u=f||h,d=s[2];h&&(d=s[2]),o=this.$locale(),!f&&d&&(o=n.Ls[d]),this.$d=function(e,t,n){try{if([\"x\",\"X\"].indexOf(t)>-1)return new Date((\"X\"===t?1e3:1)*e);var r=c(t)(e),i=r.year,o=r.month,s=r.day,a=r.hours,f=r.minutes,h=r.seconds,u=r.milliseconds,d=r.zone,l=new Date,m=s||(i||o?1:l.getDate()),M=i||l.getFullYear(),Y=0;i&&!o||(Y=o>0?o-1:l.getMonth());var p=a||0,v=f||0,D=h||0,g=u||0;return d?new Date(Date.UTC(M,Y,m,p,v,D,g+60*d.offset*1e3)):n?new Date(Date.UTC(M,Y,m,p,v,D,g)):new Date(M,Y,m,p,v,D,g)}catch(e){return new Date(\"\")}}(t,a,r),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),u&&t!=this.format(a)&&(this.$d=new Date(\"\")),o={}}else if(a instanceof Array)for(var l=a.length,m=1;m<=l;m+=1){s[1]=a[m-1];var M=n.apply(this,s);if(M.isValid()){this.$d=M.$d,this.$L=M.$L,this.init();break}m===l&&(this.$d=new Date(\"\"))}else i.call(this,e)}}}));","@import '../../../common/styles/variables.scss';\n:host {\n display: block;\n position: relative;\n @include default-css-variables;\n}\n\n.time-picker {\n display: inline-block;\n width: 150px;\n font-family: var(--nylas-font-family);\n @media #{$mobile} {\n width: auto;\n }\n position: relative;\n input {\n width: 150px;\n height: 48px;\n text-align: center;\n font-size: 16px;\n font-family: inherit;\n @media #{$mobile} {\n width: 88px;\n }\n @media #{$small-mobile} {\n width: 68px;\n font-size: 15px;\n }\n cursor: pointer;\n background: transparent;\n border: 1px solid var(--nylas-base-200);\n border-radius: var(--nylas-border-radius-2x);\n &.focus {\n background: transparent;\n }\n &:hover,\n &:active {\n border: 1px solid var(--nylas-primary);\n }\n &:active {\n outline: 2px solid var(--nylas-primary);\n }\n span {\n &.open {\n transform: rotate(90deg);\n }\n &.closed {\n transform: rotate(270deg);\n }\n }\n &.error {\n border: 1px solid var(--nylas-error);\n }\n }\n p.error {\n color: var(--nylas-error);\n font-size: 0.875rem;\n margin: 0;\n }\n}\n.times {\n display: block;\n margin-top: 0.5rem;\n background-color: var(--nylas-base-0);\n width: 100%;\n max-height: 336px;\n overflow: auto;\n border: 1px solid #ddd;\n z-index: 1;\n border-radius: 4px;\n position: absolute;\n box-shadow: 0px 4px 6px -2px #0000000d;\n box-shadow: 0px 10px 15px -3px #0000001a;\n ul {\n padding: 0;\n list-style-type: none;\n color: var(--nylas-base-900);\n max-height: 336px;\n li {\n padding: 16px, 12px, 16px, 12px;\n color: black;\n padding: 12px 16px;\n text-decoration: none;\n display: block;\n font-family: inherit;\n font-size: 14px;\n font-weight: 400;\n line-height: 20px;\n letter-spacing: 0px;\n text-align: center;\n cursor: pointer;\n &.focused {\n background-color: var(--nylas-base-100);\n }\n &:hover,\n &:focus {\n background-color: var(--nylas-base-100);\n }\n label {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n input {\n margin: 0;\n }\n }\n }\n }\n}\n","import { autocompleteTimeFormat, roundToNearest15Minutes, validateExactTimeFormat, validateTimeFormatInput } from '@/utils/utils';\nimport { Component, h, State, Prop, Event, EventEmitter, Listen, Element, Host, Watch } from '@stencil/core';\nimport dayjs from 'dayjs';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\n\ndayjs.extend(customParseFormat);\n\ntype Time = { id: number; value: string };\n\n/**\n * The `nylas-time-window-picker` component is a time picker that can be used to select a time.\n * @part time-picker - The time picker container\n * @part time-input - The time input\n * @part times - The list of times\n */\n@Component({\n tag: 'nylas-time-window-picker',\n styleUrl: 'nylas-time-window-picker.scss',\n shadow: true,\n})\nexport class TimeInput {\n @Element() el!: HTMLElement;\n private timeInput!: HTMLInputElement;\n private timeMenu!: HTMLElement;\n\n /**\n * The time to display in the input.\n * This is passed by the parent component and can be updated\n * using the setTime prop function provided by the parent component.\n */\n @Prop() time!: string;\n /**\n * This is the start time value if one is set by the parent component.\n * It is useful if this component is used to render an end time which\n * should not be before the start time, defining the earliest selectable time.\n */\n @Prop() minimumStartTime: string | null = null;\n\n /**\n * The placeholder text for the input.\n */\n @Prop() placeholder: string = 'hh:mmam/pm';\n /**\n * The name of the input.\n */\n @Prop() name!: string;\n /**\n * This sets the error state of the input.\n */\n @Prop() hasError: boolean = false;\n\n /**\n * The error message to display if the time is invalid.\n */\n @State() err: string = '';\n /**\n * Toggle to show the list of times.\n */\n @State() showTimes: boolean = false;\n /**\n * The aria-activedescendant attribute for the listbox element to indicate the currently active\n * option in the list box to screen readers. The value of aria-activedescendant is the ID of\n * the active option.\n */\n @State() ariaActivedescendant: string = '';\n /**\n * The list of times to display in the dropdown.\n */\n @State() times: Time[] = this.generateTimes();\n /**\n * This is used to scroll to the selected time when the time is changed.\n */\n @State() shouldAutoScroll: boolean = false;\n\n /**\n * This event is fired when the time is changed.\n */\n @Event() timeChange!: EventEmitter<{\n key: string;\n value: string;\n }>;\n\n /**\n * This event is fired when the form has an error. The parent component\n * can listen for this event and display an error message or set form validity.\n */\n @Event() formError!: EventEmitter<{\n key: string;\n message: string;\n }>;\n\n // Event listeners\n @Listen('click', { target: 'document', capture: true })\n handleOutsideClick(event: MouseEvent) {\n // Get the path of the event\n const path = event.composedPath();\n\n // Check if the path includes the host element\n const isClickInside = path.includes(this.el);\n\n if (!isClickInside && this.showTimes) {\n this.showTimes = false;\n }\n }\n\n @Watch('minimumStartTime')\n minimumStartTimeChangedHandler() {\n if (this.minimumStartTime) {\n let formattedTime = dayjs()\n .hour(parseInt(this.minimumStartTime))\n .minute(parseInt(this.minimumStartTime.slice(-4, -2)));\n if (this.minimumStartTime.slice(-2).toLowerCase() === 'pm' && parseInt(this.minimumStartTime) !== 12) {\n formattedTime = formattedTime.add(12, 'hour');\n } else if (this.minimumStartTime.slice(-2).toLowerCase() === 'am' && parseInt(this.minimumStartTime) === 12) {\n formattedTime = formattedTime.subtract(12, 'hour');\n }\n\n this.times = this.generateTimes();\n const firstTime = dayjs(this.times[0].value, 'hh:mma');\n let selectedTimeFormatted = dayjs(this.time, 'hh:mma');\n if (selectedTimeFormatted.isBefore(firstTime)) {\n this.err = 'Invalid';\n this.formError.emit({\n key: this.el.id,\n message: 'Invalid',\n });\n }\n }\n }\n\n componentDidRender() {\n if (this.showTimes && this.shouldAutoScroll) {\n const autocompletedTime = autocompleteTimeFormat(this.time);\n const optionIndex = this.times.findIndex(time => time.value === autocompletedTime);\n if (optionIndex > -1) {\n this.shouldAutoScroll = false;\n this.scrollToViewWithinParent(optionIndex);\n }\n return;\n }\n }\n\n private handleTimeChange(_e: Event, input: string) {\n const timePart = input.split(':');\n if (timePart[0] === '00' && timePart[1].slice(-2) == 'pm') {\n this.err = 'Invalid';\n this.formError.emit({\n key: this.el.id,\n message: 'Invalid',\n });\n }\n if (!validateTimeFormatInput(input)) {\n this.err = 'Invalid';\n this.formError.emit({\n key: this.el.id,\n message: 'Invalid',\n });\n } else {\n this.err = '';\n this.formError.emit({\n key: this.el.id,\n message: '',\n });\n }\n this.timeChange.emit({\n key: this.el.id,\n value: input,\n });\n }\n\n private handleTimeAutocomplete(event: Event) {\n const input = (event.target as HTMLInputElement)?.value;\n if (!validateTimeFormatInput(input)) {\n this.err = 'Invalid';\n this.formError.emit({\n key: this.el.id,\n message: 'Invalid',\n });\n return;\n }\n if (input === '') {\n const newTime = roundToNearest15Minutes().format('hh:mma');\n this.timeChange.emit({\n key: this.el.id,\n value: newTime,\n });\n return;\n }\n if (!validateExactTimeFormat(input)) {\n const autocompletedTime = autocompleteTimeFormat(input);\n this.timeChange.emit({\n key: this.el.id,\n value: autocompletedTime,\n });\n return;\n }\n this.timeChange.emit({\n key: this.el.id,\n value: input,\n });\n }\n\n private handleOnInput(event: Event) {\n const input = (event.target as HTMLInputElement)?.value;\n if (!validateTimeFormatInput(input)) {\n return;\n }\n if (input === '') {\n const newTime = roundToNearest15Minutes().format('hh:mma');\n const optionIndex = this.times.findIndex(time => time.value === newTime);\n if (optionIndex > -1) {\n this.scrollToViewWithinParent(optionIndex);\n }\n return;\n }\n if (!validateExactTimeFormat(input)) {\n const autocompletedTime = autocompleteTimeFormat(input);\n const optionIndex = this.times.findIndex(time => time.value === autocompletedTime);\n if (optionIndex > -1) {\n this.scrollToViewWithinParent(optionIndex);\n }\n return;\n }\n }\n\n private generateTimes() {\n const times: Time[] = [];\n let startTime = dayjs().set('hour', 0).set('minute', 0).set('second', 0); // Set to 12:00 am\n if (this.minimumStartTime) {\n startTime = dayjs(this.minimumStartTime, 'hh:mma');\n }\n const diff = startTime.endOf('day').diff(startTime, 'minutes');\n const iterations = Math.round(diff / 15);\n for (let i = 0; i < iterations + 1; i++) {\n // 96 represents the total number of 15-minute increments in a day (24 hours * 60 minutes / 15 minutes)\n const time = startTime.add(i * 15, 'minute');\n if (i == iterations && time.format('hh:mma').includes('am')) {\n break;\n }\n times.push({ id: i, value: time.format('hh:mma') });\n }\n return times;\n }\n\n private handleComboboxKeyDown(event: KeyboardEvent): void {\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n if (!this.showTimes) {\n this.showTimes = true;\n this.shouldAutoScroll = true;\n return;\n }\n if (this.ariaActivedescendant === '') {\n this.ariaActivedescendant = this.times[0].id.toString();\n this.focusOption(0);\n } else {\n const currentIndex = this.times.findIndex(time => time.id.toString() === this.ariaActivedescendant);\n const nextIndex = currentIndex + 1 < this.times.length ? currentIndex + 1 : 0;\n this.ariaActivedescendant = this.times[nextIndex].id.toString();\n this.focusOption(nextIndex);\n }\n } else if (event.key === 'ArrowUp') {\n event.preventDefault();\n if (this.ariaActivedescendant === '') {\n this.ariaActivedescendant = this.times[this.times.length - 1].id.toString();\n this.focusOption(this.times.length - 1);\n } else {\n const currentIndex = this.times.findIndex(time => time.id.toString() === this.ariaActivedescendant);\n const prevIndex = currentIndex - 1 >= 0 ? currentIndex - 1 : this.times.length - 1;\n this.ariaActivedescendant = this.times[prevIndex].id.toString();\n this.focusOption(prevIndex);\n }\n } else if (event.key === 'Escape') {\n this.showTimes = false;\n this.timeInput.focus();\n }\n }\n\n private handleListboxKeydown(e: KeyboardEvent) {\n const items = this.times;\n const currentIndex = items.findIndex(item => item.id.toString() === this.ariaActivedescendant);\n\n if (e.key === 'ArrowDown' || (e.key === 'Tab' && !e.shiftKey)) {\n e.preventDefault();\n const nextIndex = currentIndex + 1 < items.length ? currentIndex + 1 : 0;\n this.ariaActivedescendant = items[nextIndex].id.toString();\n this.focusOption(nextIndex);\n } else if (e.key === 'ArrowUp' || (e.key === 'Tab' && e.shiftKey)) {\n e.preventDefault();\n const prevIndex = currentIndex - 1 >= 0 ? currentIndex - 1 : items.length - 1;\n this.ariaActivedescendant = items[prevIndex].id.toString();\n this.focusOption(prevIndex);\n } else if (e.key === 'Enter') {\n e.preventDefault();\n if (this.ariaActivedescendant) {\n const option = items[currentIndex];\n this.handleTimeChange(e, option.value);\n this.showTimes = false;\n this.ariaActivedescendant = '';\n this.timeInput.focus();\n }\n } else if (e.key === 'Escape') {\n this.showTimes = false;\n this.timeInput.focus();\n }\n }\n\n scrollToViewWithinParent(optionIndex: number) {\n const option = this.times[optionIndex];\n const childElement = this.el.shadowRoot?.getElementById(option.id.toString()) as HTMLLIElement;\n const parentElement = this.timeMenu;\n\n this.ariaActivedescendant = option.id.toString();\n\n // Scroll child into view within parent\n const childRect = childElement.getBoundingClientRect();\n const parentRect = parentElement.getBoundingClientRect();\n\n if (childRect.top < parentRect.top) {\n // Child is above the visible area of the parent\n parentElement.scrollTop -= parentRect.top - childRect.top;\n } else if (childRect.bottom > parentRect.bottom) {\n // Child is below the visible area of the parent\n parentElement.scrollTop += childRect.bottom - parentRect.bottom;\n }\n\n if (childRect.left < parentRect.left) {\n // Child is to the left of the visible area of the parent\n parentElement.scrollLeft -= parentRect.left - childRect.left;\n } else if (childRect.right > parentRect.right) {\n // Child is to the right of the visible area of the parent\n parentElement.scrollLeft += childRect.right - parentRect.right;\n }\n }\n\n focusOption(index: number) {\n const option = this.times[index];\n if (!option) return; // Guard clause in case index is out of bounds\n\n const elementId = option.id.toString();\n const element = this.el.shadowRoot?.getElementById(elementId) as HTMLLIElement;\n\n if (element) {\n element.focus(); // Set focus on the element\n element.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\n }\n }\n\n render() {\n return (\n <Host>\n <div class=\"time-picker\" part=\"time-picker\">\n <input\n type=\"text\"\n name={this.name}\n id={this.name}\n part=\"time-input\"\n class={{\n 'time-input': true,\n 'error': !!this.err || this.hasError,\n }}\n ref={el => (this.timeInput = el as HTMLInputElement)}\n value={this.time}\n onClick={() => {\n this.showTimes = !this.showTimes;\n this.shouldAutoScroll = true;\n }}\n aria-haspopup=\"listbox\"\n aria-label={this.name}\n aria-expanded={this.showTimes ? 'true' : 'false'}\n placeholder={this.placeholder}\n onKeyDown={e => this.handleComboboxKeyDown(e)}\n onInput={event => this.handleOnInput(event)}\n onBlur={event => this.handleTimeAutocomplete(event)}\n />\n {this.err && <div class=\"invalid-time-icon\">{/* Icon here */}</div>}\n {this.showTimes && (\n <div class=\"times\" part=\"times\" ref={el => (this.timeMenu = el as HTMLElement)}>\n <ul tabindex=\"-1\" role=\"listbox\" aria-label={this.name} aria-activedescendant={this.ariaActivedescendant} onKeyDown={e => this.handleListboxKeydown(e)}>\n {this.times.map(option => (\n <li\n tabindex=\"0\"\n key={option.id}\n id={option.id.toString()}\n class={{\n focused: this.ariaActivedescendant === option.id.toString(),\n }}\n onClick={e => {\n this.handleTimeChange(e, option.value);\n this.showTimes = false;\n this.timeInput.focus();\n }}\n role=\"option\"\n >\n {`${option.value}`}\n </li>\n ))}\n </ul>\n </div>\n )}\n {!this.showTimes && this.err && (\n <p class=\"error\" id=\"email-error\">\n {this.err}\n </p>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,c as e,h as s,H as i}from"./p-68c2fadf.js";import{R as r}from"./p-795b324a.js";import{a as n}from"./p-6c11737d.js";import"./p-02aa5f03.js";import"./p-cb65c223.js";const a=":host{display:contents}.container{width:100%;overflow:auto;-webkit-overflow-scrolling:touch}.pull-to-refresh{display:none;border:0;background-color:transparent;text-align:center;width:100%;justify-content:center}.pulling{position:relative;display:flex;margin:0 auto;padding:1rem}.pulling svg{width:24px;height:24px;color:var(--nylas-color-primary-500);transform:rotate(90deg)}.refreshing{position:relative;display:flex;margin:0 auto;padding:1rem}.refreshing svg{width:24px;height:24px;fill:var(--nylas-color-primary-500);animation:rotate 1s linear infinite}@keyframes rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}";const o=a;var h=undefined&&undefined.__decorate||function(t,e,s,i){var r=arguments.length,n=r<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,s):i,a;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")n=Reflect.decorate(t,e,s,i);else for(var o=t.length-1;o>=0;o--)if(a=t[o])n=(r<3?a(n):r>3?a(e,s,n):a(e,s))||n;return r>3&&n&&Object.defineProperty(e,s,n),n};var c=undefined&&undefined.__metadata||function(t,e){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(t,e)};const d=class{constructor(s){t(this,s);this.refresh=e(this,"refresh",7);this.threshold=100;this.onTouchStart=t=>{n(`[nylas-threads-refresh] Touch start`,t.touches[0].pageY,this.containerElement?.scrollTop,this.containerElement?.offsetHeight,this.contentElement?.scrollTop);if(this.containerElement?.scrollTop===0){this.start=t.touches[0].pageY}else{this.start=0}};this.onTouchMove=t=>{if(this.start){const e=t.touches[0].pageY-this.start;if(e>this.threshold){this.pulling=true}else{this.pulling=false}}};this.onTouchEnd=t=>{if(this.start){const e=t.changedTouches[0].pageY-this.start;if(e>this.threshold){this.pulling=false;this.refresh.emit({updateState:this.updateState})}this.start=0}};this.start=0;this.state="ready";this.pulling=false;n(`[nylas-threads-refresh] Constructor`);this.updateState=this.updateState.bind(this)}connectedCallback(){}async componentWillLoad(){n(`[nylas-threads-refresh] Component will load`)}componentDidLoad(){n(`[nylas-threads-refresh] Component did load`);this.containerElement?.addEventListener("touchstart",this.onTouchStart);this.containerElement?.addEventListener("touchmove",this.onTouchMove);this.containerElement?.addEventListener("touchend",this.onTouchEnd)}disconnectedCallback(){n(`[nylas-threads-refresh] Component disconnected`);this.containerElement?.removeEventListener("touchstart",this.onTouchStart);this.containerElement?.removeEventListener("touchmove",this.onTouchMove);this.containerElement?.removeEventListener("touchend",this.onTouchEnd)}async updateState(t){this.state=t}render(){return s(i,{key:"fd0b82f21c069806d697d1997925fd01c2574594"},s("div",{key:"653737af280d1a4a75433b47edc5455b1eaf61cd",class:"container",ref:t=>this.containerElement=t},s("button",{key:"835dbcdf5cfd24069258564b9e23cd3a7c03b8c6",class:{"pull-to-refresh":true,pulling:this.pulling,refreshing:this.state==="loading"},"aria-label":"Refreshing..."},this.state==="loading"&&s("refresh-icon",{slot:"icon"}),this.state!=="loading"&&s("arrow-icon",{slot:"icon"})),s("div",{key:"b3e3db22c04e261b39c2ed53dd4bd4d33932ffe7",class:"content",ref:t=>this.contentElement=t},s("slot",{key:"01f37b6814fae9494dcd4c76c736034c6cc4f392"}))))}};h([r({name:"nylas-threads-refresh",eventToProps:{refresh:async(t,e)=>{n(`[nylas-threads-refresh] Refreshing threads`);const{updateState:s}=t.detail;await s("loading");await e.threads.getThreads(undefined,"overwrite",false);await s("ready")}},fireRegisterEvent:true}),c("design:type",Function),c("design:paramtypes",[]),c("design:returntype",void 0)],d.prototype,"render",null);d.style=o;export{d as nylas_threads_refresh};
|
|
2
|
+
//# sourceMappingURL=p-f2d1b1a6.entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["nylasThreadsRefreshCss","NylasThreadsRefreshStyle0","NylasThreadsRefresh","constructor","hostRef","this","threshold","onTouchStart","e","debug","touches","pageY","containerElement","scrollTop","offsetHeight","contentElement","start","onTouchMove","distance","pulling","onTouchEnd","changedTouches","refresh","emit","updateState","bind","connectedCallback","componentWillLoad","componentDidLoad","addEventListener","disconnectedCallback","removeEventListener","state","render","h","Host","key","class","ref","r","refreshing","slot","__decorate","RegisterComponent","name","eventToProps","async","event","nylasConnector","detail","threads","getThreads","undefined","fireRegisterEvent"],"sources":["src/components/mailbox/nylas-threads-refresh/nylas-threads-refresh.scss?tag=nylas-threads-refresh&encapsulation=shadow","src/components/mailbox/nylas-threads-refresh/nylas-threads-refresh.tsx"],"sourcesContent":[":host {\n display: contents;\n}\n\n.container {\n width: 100%;\n overflow: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.pull-to-refresh {\n display: none;\n border: 0;\n background-color: transparent;\n text-align: center;\n width: 100%;\n justify-content: center;\n}\n\n.pulling {\n position: relative;\n display: flex;\n margin: 0 auto;\n padding: 1rem;\n svg {\n width: 24px;\n height: 24px;\n color: var(--nylas-color-primary-500);\n transform: rotate(90deg);\n }\n}\n\n.refreshing {\n position: relative;\n display: flex;\n margin: 0 auto;\n padding: 1rem;\n svg {\n width: 24px;\n height: 24px;\n fill: var(--nylas-color-primary-500);\n animation: rotate 1s linear infinite;\n }\n}\n\n@keyframes rotate {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { Component, Event, EventEmitter, Host, Method, State, h } from '@stencil/core';\nimport { NylasMailboxConnector } from '../../../components';\nimport { NylasMailbox } from '../nylas-mailbox/nylas-mailbox';\nimport { debug } from '@/utils/utils';\n\nexport type RefreshEvent = {\n updateState: (state: 'ready' | 'loading' | 'error') => Promise<void>;\n};\n\n@Component({\n tag: 'nylas-threads-refresh',\n styleUrl: 'nylas-threads-refresh.scss',\n shadow: true,\n})\nexport class NylasThreadsRefresh {\n private readonly threshold: number = 100;\n\n @State() start: number = 0;\n\n @State() state: 'ready' | 'loading' | 'error' = 'ready';\n\n @State() pulling: boolean = false;\n\n @Event() refresh!: EventEmitter<RefreshEvent>;\n\n private containerElement?: HTMLElement;\n private contentElement?: HTMLElement;\n\n constructor() {\n debug(`[nylas-threads-refresh] Constructor`);\n this.updateState = this.updateState.bind(this);\n }\n\n connectedCallback() {}\n\n async componentWillLoad() {\n debug(`[nylas-threads-refresh] Component will load`);\n }\n\n componentDidLoad() {\n debug(`[nylas-threads-refresh] Component did load`);\n this.containerElement?.addEventListener('touchstart', this.onTouchStart);\n this.containerElement?.addEventListener('touchmove', this.onTouchMove);\n this.containerElement?.addEventListener('touchend', this.onTouchEnd);\n }\n\n disconnectedCallback() {\n debug(`[nylas-threads-refresh] Component disconnected`);\n this.containerElement?.removeEventListener('touchstart', this.onTouchStart);\n this.containerElement?.removeEventListener('touchmove', this.onTouchMove);\n this.containerElement?.removeEventListener('touchend', this.onTouchEnd);\n }\n\n @Method()\n public async updateState(state: 'ready' | 'loading' | 'error') {\n this.state = state;\n }\n\n private onTouchStart = (e: TouchEvent) => {\n debug(`[nylas-threads-refresh] Touch start`, e.touches[0].pageY, this.containerElement?.scrollTop, this.containerElement?.offsetHeight, this.contentElement?.scrollTop);\n if (this.containerElement?.scrollTop === 0) {\n this.start = e.touches[0].pageY;\n } else {\n this.start = 0;\n }\n };\n\n private onTouchMove = (e: TouchEvent) => {\n if (this.start) {\n const distance = e.touches[0].pageY - this.start;\n if (distance > this.threshold) {\n this.pulling = true;\n } else {\n this.pulling = false;\n }\n }\n };\n\n private onTouchEnd = (e: TouchEvent) => {\n if (this.start) {\n const distance = e.changedTouches[0].pageY - this.start;\n if (distance > this.threshold) {\n this.pulling = false;\n this.refresh.emit({\n updateState: this.updateState,\n });\n }\n this.start = 0;\n }\n };\n @RegisterComponent<NylasThreadsRefresh, NylasMailboxConnector, Exclude<NylasMailbox['stores'], undefined>>({\n name: 'nylas-threads-refresh',\n eventToProps: {\n refresh: async (event: CustomEvent<RefreshEvent>, nylasConnector: NylasMailboxConnector) => {\n debug(`[nylas-threads-refresh] Refreshing threads`);\n const { updateState } = event.detail;\n await updateState('loading');\n await nylasConnector.threads.getThreads(undefined, 'overwrite', false);\n await updateState('ready');\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <div class=\"container\" ref={r => (this.containerElement = r)}>\n <button\n class={{\n 'pull-to-refresh': true,\n 'pulling': this.pulling,\n 'refreshing': this.state === 'loading',\n }}\n aria-label=\"Refreshing...\"\n >\n {this.state === 'loading' && <refresh-icon slot=\"icon\" />}\n {this.state !== 'loading' && <arrow-icon slot=\"icon\" />}\n </button>\n <div class=\"content\" ref={r => (this.contentElement = r)}>\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["nylasThreadsRefreshCss","NylasThreadsRefreshStyle0","NylasThreadsRefresh","constructor","hostRef","this","threshold","onTouchStart","e","debug","touches","pageY","containerElement","scrollTop","offsetHeight","contentElement","start","onTouchMove","distance","pulling","onTouchEnd","changedTouches","refresh","emit","updateState","bind","connectedCallback","componentWillLoad","componentDidLoad","addEventListener","disconnectedCallback","removeEventListener","state","render","h","Host","key","class","ref","r","refreshing","slot","__decorate","RegisterComponent","name","eventToProps","async","event","nylasConnector","detail","threads","getThreads","undefined","fireRegisterEvent"],"sources":["src/components/mailbox/nylas-threads-refresh/nylas-threads-refresh.scss?tag=nylas-threads-refresh&encapsulation=shadow","src/components/mailbox/nylas-threads-refresh/nylas-threads-refresh.tsx"],"sourcesContent":[":host {\n display: contents;\n}\n\n.container {\n width: 100%;\n overflow: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.pull-to-refresh {\n display: none;\n border: 0;\n background-color: transparent;\n text-align: center;\n width: 100%;\n justify-content: center;\n}\n\n.pulling {\n position: relative;\n display: flex;\n margin: 0 auto;\n padding: 1rem;\n svg {\n width: 24px;\n height: 24px;\n color: var(--nylas-color-primary-500);\n transform: rotate(90deg);\n }\n}\n\n.refreshing {\n position: relative;\n display: flex;\n margin: 0 auto;\n padding: 1rem;\n svg {\n width: 24px;\n height: 24px;\n fill: var(--nylas-color-primary-500);\n animation: rotate 1s linear infinite;\n }\n}\n\n@keyframes rotate {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { Component, Event, EventEmitter, Host, Method, State, h } from '@stencil/core';\nimport { NylasMailboxConnector } from '../../../components';\nimport { NylasMailbox } from '../nylas-mailbox/nylas-mailbox';\nimport { debug } from '@/utils/utils';\n\nexport type RefreshEvent = {\n updateState: (state: 'ready' | 'loading' | 'error') => Promise<void>;\n};\n\n@Component({\n tag: 'nylas-threads-refresh',\n styleUrl: 'nylas-threads-refresh.scss',\n shadow: true,\n})\nexport class NylasThreadsRefresh {\n private readonly threshold: number = 100;\n\n @State() start: number = 0;\n\n @State() state: 'ready' | 'loading' | 'error' = 'ready';\n\n @State() pulling: boolean = false;\n\n @Event() refresh!: EventEmitter<RefreshEvent>;\n\n private containerElement?: HTMLElement;\n private contentElement?: HTMLElement;\n\n constructor() {\n debug(`[nylas-threads-refresh] Constructor`);\n this.updateState = this.updateState.bind(this);\n }\n\n connectedCallback() {}\n\n async componentWillLoad() {\n debug(`[nylas-threads-refresh] Component will load`);\n }\n\n componentDidLoad() {\n debug(`[nylas-threads-refresh] Component did load`);\n this.containerElement?.addEventListener('touchstart', this.onTouchStart);\n this.containerElement?.addEventListener('touchmove', this.onTouchMove);\n this.containerElement?.addEventListener('touchend', this.onTouchEnd);\n }\n\n disconnectedCallback() {\n debug(`[nylas-threads-refresh] Component disconnected`);\n this.containerElement?.removeEventListener('touchstart', this.onTouchStart);\n this.containerElement?.removeEventListener('touchmove', this.onTouchMove);\n this.containerElement?.removeEventListener('touchend', this.onTouchEnd);\n }\n\n @Method()\n public async updateState(state: 'ready' | 'loading' | 'error') {\n this.state = state;\n }\n\n private onTouchStart = (e: TouchEvent) => {\n debug(`[nylas-threads-refresh] Touch start`, e.touches[0].pageY, this.containerElement?.scrollTop, this.containerElement?.offsetHeight, this.contentElement?.scrollTop);\n if (this.containerElement?.scrollTop === 0) {\n this.start = e.touches[0].pageY;\n } else {\n this.start = 0;\n }\n };\n\n private onTouchMove = (e: TouchEvent) => {\n if (this.start) {\n const distance = e.touches[0].pageY - this.start;\n if (distance > this.threshold) {\n this.pulling = true;\n } else {\n this.pulling = false;\n }\n }\n };\n\n private onTouchEnd = (e: TouchEvent) => {\n if (this.start) {\n const distance = e.changedTouches[0].pageY - this.start;\n if (distance > this.threshold) {\n this.pulling = false;\n this.refresh.emit({\n updateState: this.updateState,\n });\n }\n this.start = 0;\n }\n };\n @RegisterComponent<NylasThreadsRefresh, NylasMailboxConnector, Exclude<NylasMailbox['stores'], undefined>>({\n name: 'nylas-threads-refresh',\n eventToProps: {\n refresh: async (event: CustomEvent<RefreshEvent>, nylasConnector: NylasMailboxConnector) => {\n debug(`[nylas-threads-refresh] Refreshing threads`);\n const { updateState } = event.detail;\n await updateState('loading');\n await nylasConnector.threads.getThreads(undefined, 'overwrite', false);\n await updateState('ready');\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <div class=\"container\" ref={r => (this.containerElement = r)}>\n <button\n class={{\n 'pull-to-refresh': true,\n 'pulling': this.pulling,\n 'refreshing': this.state === 'loading',\n }}\n aria-label=\"Refreshing...\"\n >\n {this.state === 'loading' && <refresh-icon slot=\"icon\" />}\n {this.state !== 'loading' && <arrow-icon slot=\"icon\" />}\n </button>\n <div class=\"content\" ref={r => (this.contentElement = r)}>\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"iLAAA,MAAMA,EAAyB,2nBAC/B,MAAAC,EAAeD,E,ugBCcFE,EAAmB,MAc9B,WAAAC,CAAAC,G,2CAbiBC,KAAAC,UAAoB,IA2C7BD,KAAAE,aAAgBC,IACtBC,EAAM,sCAAuCD,EAAEE,QAAQ,GAAGC,MAAON,KAAKO,kBAAkBC,UAAWR,KAAKO,kBAAkBE,aAAcT,KAAKU,gBAAgBF,WAC7J,GAAIR,KAAKO,kBAAkBC,YAAc,EAAG,CAC1CR,KAAKW,MAAQR,EAAEE,QAAQ,GAAGC,K,KACrB,CACLN,KAAKW,MAAQ,C,GAITX,KAAAY,YAAeT,IACrB,GAAIH,KAAKW,MAAO,CACd,MAAME,EAAWV,EAAEE,QAAQ,GAAGC,MAAQN,KAAKW,MAC3C,GAAIE,EAAWb,KAAKC,UAAW,CAC7BD,KAAKc,QAAU,I,KACV,CACLd,KAAKc,QAAU,K,IAKbd,KAAAe,WAAcZ,IACpB,GAAIH,KAAKW,MAAO,CACd,MAAME,EAAWV,EAAEa,eAAe,GAAGV,MAAQN,KAAKW,MAClD,GAAIE,EAAWb,KAAKC,UAAW,CAC7BD,KAAKc,QAAU,MACfd,KAAKiB,QAAQC,KAAK,CAChBC,YAAanB,KAAKmB,a,CAGtBnB,KAAKW,MAAQ,C,cAtEQ,E,WAEuB,Q,aAEpB,MAQ1BP,EAAM,uCACNJ,KAAKmB,YAAcnB,KAAKmB,YAAYC,KAAKpB,K,CAG3C,iBAAAqB,GAAiB,CAEjB,uBAAMC,GACJlB,EAAM,8C,CAGR,gBAAAmB,GACEnB,EAAM,8CACNJ,KAAKO,kBAAkBiB,iBAAiB,aAAcxB,KAAKE,cAC3DF,KAAKO,kBAAkBiB,iBAAiB,YAAaxB,KAAKY,aAC1DZ,KAAKO,kBAAkBiB,iBAAiB,WAAYxB,KAAKe,W,CAG3D,oBAAAU,GACErB,EAAM,kDACNJ,KAAKO,kBAAkBmB,oBAAoB,aAAc1B,KAAKE,cAC9DF,KAAKO,kBAAkBmB,oBAAoB,YAAa1B,KAAKY,aAC7DZ,KAAKO,kBAAkBmB,oBAAoB,WAAY1B,KAAKe,W,CAIvD,iBAAMI,CAAYQ,GACvB3B,KAAK2B,MAAQA,C,CAgDf,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,OAAAE,IAAA,2CAAKC,MAAM,YAAYC,IAAKC,GAAMlC,KAAKO,iBAAmB2B,GACxDL,EAAA,UAAAE,IAAA,2CACEC,MAAO,CACL,kBAAmB,KACnBlB,QAAWd,KAAKc,QAChBqB,WAAcnC,KAAK2B,QAAU,WAC9B,aACU,iBAEV3B,KAAK2B,QAAU,WAAaE,EAAA,gBAAcO,KAAK,SAC/CpC,KAAK2B,QAAU,WAAaE,EAAA,cAAYO,KAAK,UAEhDP,EAAA,OAAAE,IAAA,2CAAKC,MAAM,UAAUC,IAAKC,GAAMlC,KAAKU,eAAiBwB,GACpDL,EAAA,QAAAE,IAAA,+C,GAhBVM,EAAA,CAbCC,EAA0G,CACzGC,KAAM,wBACNC,aAAc,CACZvB,QAASwB,MAAOC,EAAkCC,KAChDvC,EAAM,8CACN,MAAMe,YAAEA,GAAgBuB,EAAME,aACxBzB,EAAY,iBACZwB,EAAeE,QAAQC,WAAWC,UAAW,YAAa,aAC1D5B,EAAY,QAAQ,GAG9B6B,kBAAmB,O"}
|