@nylas/web-elements 1.1.0-canary.10 → 1.1.0-canary.11
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_21.cjs.entry.js +73 -40
- package/dist/cjs/add-circle-icon_21.cjs.entry.js.map +1 -1
- package/dist/cjs/google-logo-icon_4.cjs.entry.js +5 -4
- package/dist/cjs/google-logo-icon_4.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/nylas-api-request-05f1e068.js.map +1 -1
- package/dist/cjs/nylas-api-request-de316f1a.js.map +1 -1
- package/dist/cjs/nylas-availability-picker.cjs.entry.js +14 -7
- package/dist/cjs/nylas-availability-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-booked-event-card.cjs.entry.js +1 -1
- package/dist/cjs/nylas-booked-event-card_10.cjs.entry.js +9 -9
- package/dist/cjs/nylas-booking-calendar-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-booking-form.cjs.entry.js +3 -3
- package/dist/cjs/nylas-buffer-time.cjs.entry.js +7 -6
- package/dist/cjs/nylas-buffer-time.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-calendar-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-date-picker.cjs.entry.js +1 -1
- package/dist/cjs/nylas-editor-tabs.cjs.entry.js +5 -4
- package/dist/cjs/nylas-editor-tabs.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-event-description.cjs.entry.js +2 -2
- package/dist/cjs/nylas-event-description.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-event-duration.cjs.entry.js +1 -1
- package/dist/cjs/nylas-event-duration.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-event-info.cjs.entry.js +1 -1
- package/dist/cjs/nylas-event-info.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-event-limits.cjs.entry.js +1 -1
- package/dist/cjs/nylas-event-limits.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-event-title.cjs.entry.js +2 -2
- 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-limit-future-bookings.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-locale-switch.cjs.entry.js +3 -3
- package/dist/cjs/nylas-location-component.cjs.entry.js +4 -4
- package/dist/cjs/nylas-location-component.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-min-cancellation-notice.cjs.entry.js +1 -1
- package/dist/cjs/nylas-min-cancellation-notice.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-scheduler-editor.cjs.entry.js +1 -1
- package/dist/cjs/nylas-scheduler-editor.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-selected-event-card.cjs.entry.js +1 -1
- package/dist/cjs/nylas-time-window-picker.cjs.entry.js +39 -14
- package/dist/cjs/nylas-time-window-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-web-elements.cjs.js +1 -1
- package/dist/cjs/scheduler-config-store-918c20d5.js.map +1 -1
- package/dist/cjs/scheduler-config-store-a5b7c08b.js.map +1 -1
- package/dist/collection/collection-manifest.json +3 -3
- package/dist/collection/common/nylas-api-request.js.map +1 -1
- package/dist/collection/components/nylas-if-state/nylas-if-state.js +1 -1
- package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.js +1 -1
- package/dist/collection/components/scheduler/nylas-booking-form/nylas-booking-form.js +3 -3
- package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.js +1 -1
- package/dist/collection/components/scheduler/nylas-locale-switch/nylas-locale-switch.js +3 -3
- package/dist/collection/components/scheduler/nylas-selected-event-card/nylas-selected-event-card.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js +35 -14
- package/dist/collection/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-booking-calendar-picker/nylas-booking-calendar-picker.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-booking-calendar-picker/nylas-booking-calendar-picker.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-buffer-time/nylas-buffer-time.css +1 -1
- package/dist/collection/components/scheduler-editor/nylas-buffer-time/nylas-buffer-time.js +6 -5
- package/dist/collection/components/scheduler-editor/nylas-buffer-time/nylas-buffer-time.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-buffer-time/test/nylas-buffer-time.spec.js +2 -2
- package/dist/collection/components/scheduler-editor/nylas-buffer-time/test/nylas-buffer-time.spec.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-calendar-picker/nylas-calendar-picker.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-calendar-picker/nylas-calendar-picker.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js +6 -5
- package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-event-description/nylas-event-description.js +5 -5
- package/dist/collection/components/scheduler-editor/nylas-event-description/nylas-event-description.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-event-duration/nylas-event-duration.js +4 -4
- package/dist/collection/components/scheduler-editor/nylas-event-duration/nylas-event-duration.js.map +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-info/nylas-event-info.js.map +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-limits/nylas-event-limits.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-event-title/nylas-event-title.js +2 -2
- package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.js +4 -4
- package/dist/collection/components/scheduler-editor/nylas-limit-future-bookings/nylas-limit-future-bookings.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-location-component/nylas-location-component.js +23 -23
- package/dist/collection/components/scheduler-editor/nylas-location-component/nylas-location-component.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.js +3 -3
- package/dist/collection/components/scheduler-editor/nylas-min-cancellation-notice/nylas-min-cancellation-notice.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js +9 -9
- package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.js +56 -57
- package/dist/collection/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.js.map +1 -1
- package/dist/collection/stores/scheduler-config-store.js.map +1 -1
- package/dist/collection/types/index.js +6 -0
- package/dist/collection/types/index.js.map +1 -0
- package/dist/components/nylas-api-request.js.map +1 -1
- package/dist/components/nylas-availability-picker2.js +15 -8
- package/dist/components/nylas-availability-picker2.js.map +1 -1
- package/dist/components/nylas-booked-event-card2.js +1 -1
- package/dist/components/nylas-booking-calendar-picker2.js.map +1 -1
- package/dist/components/nylas-booking-form2.js +3 -3
- package/dist/components/nylas-buffer-time2.js +7 -6
- package/dist/components/nylas-buffer-time2.js.map +1 -1
- package/dist/components/nylas-calendar-picker2.js.map +1 -1
- package/dist/components/nylas-date-picker2.js +1 -1
- package/dist/components/nylas-editor-tabs2.js +5 -4
- package/dist/components/nylas-editor-tabs2.js.map +1 -1
- package/dist/components/nylas-event-description2.js +2 -2
- package/dist/components/nylas-event-description2.js.map +1 -1
- package/dist/components/nylas-event-duration2.js +1 -1
- package/dist/components/nylas-event-duration2.js.map +1 -1
- package/dist/components/nylas-event-info2.js +1 -1
- package/dist/components/nylas-event-info2.js.map +1 -1
- package/dist/components/nylas-event-limits2.js +1 -1
- package/dist/components/nylas-event-limits2.js.map +1 -1
- package/dist/components/nylas-event-title2.js +2 -2
- package/dist/components/nylas-if-state.js +1 -1
- package/dist/components/nylas-limit-future-bookings2.js +1 -1
- package/dist/components/nylas-limit-future-bookings2.js.map +1 -1
- package/dist/components/nylas-locale-switch2.js +3 -3
- package/dist/components/nylas-location-component2.js +5 -5
- package/dist/components/nylas-location-component2.js.map +1 -1
- package/dist/components/nylas-min-cancellation-notice2.js +1 -1
- package/dist/components/nylas-min-cancellation-notice2.js.map +1 -1
- package/dist/components/nylas-scheduler-editor.js +1 -1
- package/dist/components/nylas-scheduler-editor.js.map +1 -1
- package/dist/components/nylas-selected-event-card2.js +1 -1
- package/dist/components/nylas-time-window-picker2.js +39 -16
- package/dist/components/nylas-time-window-picker2.js.map +1 -1
- package/dist/components/scheduler-config-store.js.map +1 -1
- package/dist/esm/add-circle-icon_21.entry.js +73 -40
- package/dist/esm/add-circle-icon_21.entry.js.map +1 -1
- package/dist/esm/google-logo-icon_4.entry.js +5 -4
- package/dist/esm/google-logo-icon_4.entry.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/nylas-api-request-59738f8c.js.map +1 -1
- package/dist/esm/nylas-api-request-ff2869d7.js.map +1 -1
- package/dist/esm/nylas-availability-picker.entry.js +14 -7
- package/dist/esm/nylas-availability-picker.entry.js.map +1 -1
- package/dist/esm/nylas-booked-event-card.entry.js +1 -1
- package/dist/esm/nylas-booked-event-card_10.entry.js +9 -9
- package/dist/esm/nylas-booking-calendar-picker.entry.js.map +1 -1
- package/dist/esm/nylas-booking-form.entry.js +3 -3
- package/dist/esm/nylas-buffer-time.entry.js +7 -6
- package/dist/esm/nylas-buffer-time.entry.js.map +1 -1
- package/dist/esm/nylas-calendar-picker.entry.js.map +1 -1
- package/dist/esm/nylas-date-picker.entry.js +1 -1
- package/dist/esm/nylas-editor-tabs.entry.js +5 -4
- package/dist/esm/nylas-editor-tabs.entry.js.map +1 -1
- package/dist/esm/nylas-event-description.entry.js +2 -2
- package/dist/esm/nylas-event-description.entry.js.map +1 -1
- package/dist/esm/nylas-event-duration.entry.js +1 -1
- package/dist/esm/nylas-event-duration.entry.js.map +1 -1
- package/dist/esm/nylas-event-info.entry.js +1 -1
- package/dist/esm/nylas-event-info.entry.js.map +1 -1
- package/dist/esm/nylas-event-limits.entry.js +1 -1
- package/dist/esm/nylas-event-limits.entry.js.map +1 -1
- package/dist/esm/nylas-event-title.entry.js +2 -2
- package/dist/esm/nylas-if-state.entry.js +1 -1
- package/dist/esm/nylas-limit-future-bookings.entry.js +1 -1
- package/dist/esm/nylas-limit-future-bookings.entry.js.map +1 -1
- package/dist/esm/nylas-locale-switch.entry.js +3 -3
- package/dist/esm/nylas-location-component.entry.js +4 -4
- package/dist/esm/nylas-location-component.entry.js.map +1 -1
- package/dist/esm/nylas-min-cancellation-notice.entry.js +1 -1
- package/dist/esm/nylas-min-cancellation-notice.entry.js.map +1 -1
- package/dist/esm/nylas-scheduler-editor.entry.js +1 -1
- package/dist/esm/nylas-scheduler-editor.entry.js.map +1 -1
- package/dist/esm/nylas-selected-event-card.entry.js +1 -1
- package/dist/esm/nylas-time-window-picker.entry.js +39 -14
- package/dist/esm/nylas-time-window-picker.entry.js.map +1 -1
- package/dist/esm/nylas-web-elements.js +1 -1
- package/dist/esm/scheduler-config-store-8ccc8dc7.js.map +1 -1
- package/dist/esm/scheduler-config-store-ec3b6190.js.map +1 -1
- package/dist/nylas-web-elements/nylas-api-request-ff2869d7.js.map +1 -1
- package/dist/nylas-web-elements/nylas-availability-picker.entry.js +14 -7
- package/dist/nylas-web-elements/nylas-availability-picker.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-booked-event-card.entry.js +1 -1
- package/dist/nylas-web-elements/nylas-booking-calendar-picker.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-booking-form.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-buffer-time.entry.js +7 -6
- package/dist/nylas-web-elements/nylas-buffer-time.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-calendar-picker.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-date-picker.entry.js +1 -1
- package/dist/nylas-web-elements/nylas-editor-tabs.entry.js +5 -4
- package/dist/nylas-web-elements/nylas-editor-tabs.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-event-description.entry.js +2 -2
- package/dist/nylas-web-elements/nylas-event-description.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-event-duration.entry.js +1 -1
- package/dist/nylas-web-elements/nylas-event-duration.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-event-info.entry.js +1 -1
- package/dist/nylas-web-elements/nylas-event-info.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-event-limits.entry.js +1 -1
- package/dist/nylas-web-elements/nylas-event-limits.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-event-title.entry.js +2 -2
- package/dist/nylas-web-elements/nylas-if-state.entry.js +1 -1
- package/dist/nylas-web-elements/nylas-limit-future-bookings.entry.js +1 -1
- package/dist/nylas-web-elements/nylas-limit-future-bookings.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-locale-switch.entry.js +3 -3
- package/dist/nylas-web-elements/nylas-location-component.entry.js +4 -4
- package/dist/nylas-web-elements/nylas-location-component.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-min-cancellation-notice.entry.js +1 -1
- package/dist/nylas-web-elements/nylas-min-cancellation-notice.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js +1 -1
- package/dist/nylas-web-elements/nylas-scheduler-editor.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-selected-event-card.entry.js +1 -1
- package/dist/nylas-web-elements/nylas-time-window-picker.entry.js +39 -14
- package/dist/nylas-web-elements/nylas-time-window-picker.entry.js.map +1 -1
- package/dist/nylas-web-elements/nylas-web-elements.esm.js +1 -1
- package/dist/nylas-web-elements/p-0dabcb4d.js.map +1 -1
- package/dist/nylas-web-elements/{p-933c6d32.entry.js → p-181654f5.entry.js} +3 -3
- package/dist/nylas-web-elements/{p-933c6d32.entry.js.map → p-181654f5.entry.js.map} +1 -1
- package/dist/nylas-web-elements/{p-b1b3eb52.entry.js → p-1871c702.entry.js} +2 -2
- package/dist/nylas-web-elements/p-4f4e83d0.entry.js +2 -0
- package/dist/nylas-web-elements/p-4f4e83d0.entry.js.map +1 -0
- package/dist/nylas-web-elements/p-a219b2c7.entry.js +2 -0
- package/dist/nylas-web-elements/p-a219b2c7.entry.js.map +1 -0
- package/dist/nylas-web-elements/{p-a002b4cf.entry.js → p-e92690a2.entry.js} +2 -2
- package/dist/nylas-web-elements/p-ee91a2a0.js.map +1 -1
- package/dist/nylas-web-elements/scheduler-config-store-8ccc8dc7.js.map +1 -1
- package/dist/types/components/scheduler-editor/nylas-availability-picker/nylas-availability-picker.d.ts +10 -5
- package/dist/types/components/scheduler-editor/nylas-event-description/nylas-event-description.d.ts +2 -2
- package/dist/types/components/scheduler-editor/nylas-location-component/nylas-location-component.d.ts +2 -2
- package/dist/types/components/scheduler-editor/nylas-time-window-picker/nylas-time-window-picker.d.ts +8 -3
- package/dist/types/components.d.ts +125 -32
- package/dist/types/stores/scheduler-config-store.d.ts +5 -1
- package/dist/types/types/index.d.ts +73 -0
- package/package.json +4 -2
- package/dist/nylas-web-elements/p-74492776.entry.js +0 -2
- package/dist/nylas-web-elements/p-74492776.entry.js.map +0 -1
- package/dist/nylas-web-elements/p-76461af6.entry.js +0 -2
- package/dist/nylas-web-elements/p-76461af6.entry.js.map +0 -1
- /package/dist/nylas-web-elements/{p-b1b3eb52.entry.js.map → p-1871c702.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-a002b4cf.entry.js.map → p-e92690a2.entry.js.map} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["iconCss","GoogleLogoIconStyle0","GoogleLogoIcon","render","h","key","width","this","height","viewBox","fill","xmlns","d","id","MicrosoftLogoIconStyle0","MicrosoftLogoIcon","TabContents","formState","activeTab","calendars","eventTitle","title","eventDescription","description","eventDuration","parseInt","duration","location","slot","name","exportparts","eventDurationMinutes","eventLocation","openHours","availability","timezone","Intl","DateTimeFormat","resolvedOptions","timeZone","organizer","participants","find","p","is_organizer","organizerEmail","email","selectedCalendars","calendarIds","length","bookingCalendar","defaultBookingCalendar","defaultSelectedCalendars","defaultTimezone","buffer","availableDaysInFuture","minCancellationNotice","nylasEditorTabsCss","NylasEditorTabsStyle0","NylasEditorTabs","setError","error","message","formSubmissionHandler","async","event","preventDefault","formSubmitted","emit","valid","formRef","checkValidity","isLoading","hasUnsavedChanges","updateFormState","bookingType","selectedConfiguration","configObject","version","duration_minutes","availability_rules","availability_method","before","after","default_open_hours","DEFAULT_OPEN_HOURS","round_robin_group_id","currentUser","calendar_ids","open_hours","booking","calendar_id","event_booking","toString","booking_type","scheduler","available_days_in_future","min_cancellation_notice","configObjectWithDeveloperSettings","mergeDeep","requires_session_auth","defaultRequiresSessionAuth","finalConfig","action","resetLoadingState","_e","changesSaved","setTimeout","schedulerConfigChanged","config","configChangedHandler","newConfig","debug","getFormStateFromConfig","connectedCallback","componentWillLoad","componentDidLoad","disconnectedCallback","handleValueChanged","value","detail","organizerParticipant","undefined","formData","FormData","forEach","JSON","parse","split","setActiveTab","e","tabName","Host","onSubmit","class","ref","el","noValidate","mode","tab","active","onClick","schedulerPreviewLink","type","disabled","clickHandler","previewEvent","previewButtonClicked","host","defaultPrevented","window","open","parsePreviewLink","variant","cancelButtonClick","__decorate","RegisterComponent","stateToProps","Map","eventToProps","nylasSchedulerConfigConnector","checkForErrors","response","data","schedulerConfig","updateConfiguration","createConfiguration","_","schedulerConfigStore","state","localPropsToProp","fireRegisterEvent","nylasListConfigurationsCss","NylasListConfigurationsStyle0","NylasListConfigurations","configurations","initListConfigurations","getState","setState","createButtonClick","hide","colSpan","map","editButtonClick","configuration","deleteButtonClick","connector","getConfigurations","resetSelectedConfiguration","deleteConfiguration"],"sources":["src/common/icons/icon.css?tag=google-logo-icon&encapsulation=scoped","src/common/icons/google-logo.tsx","src/common/icons/icon.css?tag=microsoft-logo-icon&encapsulation=scoped","src/common/icons/microsoft-logo.tsx","src/components/scheduler-editor/nylas-editor-tabs/tab-contents.tsx","src/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.scss?tag=nylas-editor-tabs&encapsulation=scoped","src/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.tsx","src/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.scss?tag=nylas-list-configurations&encapsulation=shadow","src/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.tsx"],"sourcesContent":[":host {\n display: flex;\n}\n","import { Component, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'google-logo-icon',\n styleUrl: 'icon.css',\n scoped: true,\n})\nexport class GoogleLogoIcon {\n @Prop() width: string = '24';\n @Prop() height: string = '24';\n\n render() {\n // Spam icon svg\n return (\n <svg width={this.width} height={this.height} viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g clip-path=\"url(#clip0_959_12452)\">\n <path\n d=\"M23.745 12.27C23.745 11.48 23.675 10.73 23.555 10H12.255V14.51H18.725C18.435 15.99 17.585 17.24 16.325 18.09V21.09H20.185C22.445 19 23.745 15.92 23.745 12.27Z\"\n fill=\"#4285F4\"\n />\n <path\n d=\"M12.255 24C15.495 24 18.205 22.92 20.185 21.09L16.325 18.09C15.245 18.81 13.875 19.25 12.255 19.25C9.12504 19.25 6.47505 17.14 5.52505 14.29H1.54504V17.38C3.51504 21.3 7.56504 24 12.255 24Z\"\n fill=\"#34A853\"\n />\n <path\n d=\"M5.52501 14.2901C5.27501 13.5701 5.145 12.8001 5.145 12.0001C5.145 11.2001 5.28501 10.4301 5.52501 9.71012V6.62012H1.545C0.725004 8.24012 0.255005 10.0601 0.255005 12.0001C0.255005 13.9401 0.725004 15.7601 1.545 17.3801L5.52501 14.2901Z\"\n fill=\"#FBBC05\"\n />\n <path\n d=\"M12.255 4.75C14.025 4.75 15.605 5.36 16.855 6.55L20.275 3.13C18.205 1.19 15.495 0 12.255 0C7.56504 0 3.51504 2.7 1.54504 6.62L5.52505 9.71C6.47505 6.86 9.12504 4.75 12.255 4.75Z\"\n fill=\"#EA4335\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_959_12452\">\n <rect width={24} height={24} fill=\"white\" />\n </clipPath>\n </defs>\n </svg>\n );\n }\n}\n",":host {\n display: flex;\n}\n","import { Component, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'microsoft-logo-icon',\n styleUrl: 'icon.css',\n scoped: true,\n})\nexport class MicrosoftLogoIcon {\n @Prop() width: string = '22';\n @Prop() height: string = '22';\n\n render() {\n // Spam icon svg\n return (\n <svg width={this.width} height={this.height} viewBox=\"0 0 22 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M0.043457 0.043457H10.4782V10.4782H0.043457V0.043457Z\" fill=\"#F35325\" />\n <path d=\"M11.5217 0.043457H21.9565V10.4782H11.5217V0.043457Z\" fill=\"#81BC06\" />\n <path d=\"M0.043457 11.5217H10.4782V21.9565H0.043457V11.5217Z\" fill=\"#05A6F0\" />\n <path d=\"M11.5217 11.5217H21.9565V21.9565H11.5217V11.5217Z\" fill=\"#FFBA08\" />\n </svg>\n );\n }\n}\n","import { h } from '@stencil/core';\n\nexport type TabContentsProps = {\n id: string;\n formState: any;\n activeTab: string;\n calendars?: any[];\n};\n\nexport default function TabContents({ id, formState, activeTab, calendars }: TabContentsProps) {\n switch (activeTab) {\n case 'eventInfo':\n const eventTitle = formState.title;\n const eventDescription = formState.description;\n const eventDuration = parseInt(formState.duration);\n const location = formState.location;\n // const eventParticipants = formState.participants;\n\n return (\n <div key={id}>\n <nylas-event-info>\n <div slot=\"inputs\">\n <nylas-event-title name=\"title\" eventTitle={eventTitle} exportparts=\"net, net__title, net__dropdown-content\" />\n <nylas-event-duration\n name=\"duration\"\n eventDurationMinutes={eventDuration}\n exportparts=\"ned, ned__input, ned__dropdown, ned__dropdown-button, ned__dropdown-content\"\n />\n <nylas-location-component name=\"location\" eventLocation={location} exportparts=\"nel, nel__location, nel__dropdown, nel__dropdown-button, nel__dropdown-content\" />\n <nylas-event-description name=\"description\" eventDescription={eventDescription} exportparts=\"nedesc, nedesc__textarea\" />\n </div>\n </nylas-event-info>\n {/* <nylas-additional-participants\n name=\"participants\"\n eventParticipants={eventParticipants}\n exportparts={'nap__title, nap__subtitle, nap__content, nap__input_group, nap__input_wrapper, nap__input, nap__remove-participant, nap__add-participant'}\n /> */}\n </div>\n );\n case 'availability':\n const openHours = formState.availability.openHours;\n const timezone = formState.availability.timezone ? formState.availability.timezone : Intl.DateTimeFormat().resolvedOptions().timeZone;\n const organizer = formState.participants?.find(p => p.is_organizer);\n const organizerEmail = organizer?.email ?? 'primary';\n const selectedCalendars = formState.calendarIds.length > 0 ? formState.calendarIds : [organizerEmail];\n const bookingCalendar = formState.bookingCalendar == 'primary' ? organizerEmail : formState.bookingCalendar;\n return (\n <div key={id}>\n <nylas-booking-calendar-picker\n name=\"booking-calendar\"\n calendars={calendars ?? []}\n defaultBookingCalendar={bookingCalendar}\n exportparts={'nbcp, nbcp__header, nbcp__input-label, nbcp__dropdown, nbcp__dropdown-button, nbcp__dropdown-content'}\n />\n <nylas-calendar-picker\n name=\"calendars\"\n calendars={calendars ?? []}\n defaultSelectedCalendars={selectedCalendars}\n exportparts={'ncp ncp__header, ncp__dropdown, ncp__dropdown-button, ncp__dropdown-content'}\n />\n <nylas-availability-picker\n name=\"availability\"\n openHours={openHours}\n defaultTimezone={timezone}\n exportparts={\n 'nap__header, nap__select-timezone, nap__select-timezone-button, nap__select-timezone-dropdown-content, nap__availability, nap__day, nap__time-ranges, nap__time-range, nap__add-time-range, nap__time-picker-container, nap__time-picker-input, nap__time-picker-times'\n }\n />\n </div>\n );\n case 'bookingOptions':\n return (\n <div key={id}>\n <nylas-buffer-time\n name=\"buffer-time\"\n buffer={formState.buffer}\n exportparts={\n 'nbt, nbt__header, nbt__body, nbt__dropdown-before, nbt__dropdown-button-before, nbt__dropdown-content-before, nbt__dropdown-after, nbt__dropdown-button-after, nbt__dropdown-content-after, nbt__preview'\n }\n />\n {/* <nylas-custom-booking-flow\n name=\"booking-type\"\n bookingType={formState.bookingType}\n exportparts={'ncbf, ncbf__header, ncbf__dropdown, ncbf__dropdown-button, ncbf__dropdown-content'}\n /> */}\n <nylas-event-limits>\n <div slot=\"inputs\">\n <nylas-limit-future-bookings\n name=\"limit-future-bookings\"\n availableDaysInFuture={formState.availableDaysInFuture}\n exportparts=\"nlfb, nlfb__number-dropdown, nlfb__number-dropdown-button, nlfb__number-dropdown-content, nlfb__period-dropdown, nlfb__period-dropdown-button, nlfb__period-dropdown-content\"\n />\n <nylas-min-cancellation-notice\n name=\"min-cancellation-notice\"\n minCancellationNotice={formState.minCancellationNotice}\n exportparts=\"nmcn, nmcn__number-dropdown, nmcn__number-dropdown-button, nmcn__number-dropdown-content, nmcn__period-dropdown, nmcn__period-dropdown-button, nmcn__period-dropdown-content\"\n />\n </div>\n </nylas-event-limits>\n </div>\n );\n }\n}\n","@import '../../../common/styles/variables.scss';\n@import '../../../common/mixins/buttons.scss';\n\n:host {\n display: block;\n @include default-css-variables;\n}\n\n.scheduler-editor {\n display: flex;\n flex-direction: column;\n .form-contents {\n height: 554px;\n display: grid;\n grid-template-columns: minmax(224px, 25%) 1fr;\n @media #{$mobile} {\n display: table-column-group;\n height: auto;\n }\n .tabs {\n display: flex;\n flex-direction: column;\n border-right: 1px solid var(--nylas-base-200);\n background-color: var(--nylas-base-25);\n .tab {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.5rem 1rem;\n color: var(--nylas-base-900);\n background: var(--nylas-base-0);\n border: none;\n height: 56px;\n font-family: var(--nylas-font-family);\n font-size: 16px;\n font-weight: 500;\n line-height: 24px;\n cursor: pointer;\n &:not(:first-of-type) {\n margin-top: 0.25rem;\n }\n &.active {\n font-weight: 600;\n background: var(--nylas-base-0);\n color: var(--nylas-primary);\n border-left: 4px solid var(--nylas-primary);\n box-shadow: 0px 1px 2px 0px #0000000f;\n box-shadow: 0px 1px 3px 0px #0000001a;\n }\n }\n }\n .tab-content {\n max-width: 692px;\n overflow-y: auto;\n nylas-event-info,\n nylas-event-limits {\n width: inherit;\n div[slot='inputs'] {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n }\n }\n }\n }\n}\n\n.footer {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 1rem;\n min-height: 80px;\n padding: 0 1rem;\n border-top: 1px solid var(--nylas-base-200);\n @media #{$mobile} {\n flex-direction: column;\n height: auto;\n }\n .preview {\n @media #{$mobile} {\n margin-top: 1rem;\n width: 100%;\n }\n }\n .buttons {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n justify-self: flex-end;\n gap: 1rem;\n @media #{$mobile} {\n flex-direction: column-reverse;\n width: 100%;\n }\n p {\n max-width: 524px;\n &.unsaved-changes {\n color: var(--nylas-base-600);\n }\n &.saved-changes {\n color: var(--nylas-success);\n }\n &.error {\n color: var(--nylas-error);\n }\n &.error-full-width {\n max-width: 660px;\n }\n }\n\n button-component {\n @media #{$mobile} {\n width: 100%;\n }\n }\n button {\n @include primary-button;\n width: 148px;\n span {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug, mergeDeep, parsePreviewLink } from '@/utils/utils';\nimport { BookingType, Calendar, Configuration, OpenHours } from '@nylas/core';\nimport { Component, Element, Event, EventEmitter, Host, Listen, Prop, State, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport TabContents from './tab-contents';\nimport { User } from '@/common/nylas-api-request';\nimport { DEFAULT_OPEN_HOURS } from '@/common/constants';\nimport { DataResponseReturnType } from '@/common/types';\n\ntype SchedulerEventDetail = {\n config: Partial<Configuration>;\n action: 'create' | 'edit';\n resetLoadingState?: (e: CustomEvent) => void;\n setError?: (error: Error) => void;\n};\n\n/**\n * The `nylas-editor-tabs` component is a UI component that displays the editor tabs for the scheduler editor.\n * @part nap__title - [nylas-additional-participants] The title of the component.\n * @part nap__subtitle - [nylas-additional-participants] The subtitle of the component.\n * @part nap__content - [nylas-additional-participants] The content of the component.\n * @part nap__input - [nylas-additional-participants] The input of the component.\n * @part nap__remove-participant - [nylas-additional-participants] The remove participant button of the component.\n * @part nap__add-participant - [nylas-additional-participants] The add participant button of the component.\n * @part nap__header - [nylas-availability-picker] The header of the availability picker\n * @part nap__select-timezone - [nylas-availability-picker] The timezone selection container\n * @part nap__select-timezone-button -[nylas-availability-picker] The timezone selection button\n * @part nap__select-timezone-dropdown-content -[nylas-availability-picker] The timezone selection dropdown content\n * @part nap__availability - [nylas-availability-picker] The availability container\n * @part nap__day - [nylas-availability-picker] The day container\n * @part nap__time-ranges - [nylas-availability-picker] The time ranges container\n * @part nap__time-range - [nylas-availability-picker] The time range container\n * @part nap__add-time-range - [nylas-availability-picker] The add time range button\n * @part nap__time-picker-container -[nylas-availability-picker] The time picker container\n * @part nap__time-picker-input - [nylas-availability-picker] The time picker input\n * @part nap__time-picker-times - [nylas-availability-picker] The time picker times\n * @part nbcp - [nylas-booking-calendar-picker] The booking calendar picker container\n * @part nbcp__header - [nylas-booking-calendar-picker] The header of the booking calendar picker\n * @part nbcp__input-label - [nylas-booking-calendar-picker] The input label of the booking calendar picker\n * @part nbcp__dropdown - [nylas-booking-calendar-picker] The dropdown container\n * @part nbcp__dropdown-button - [nylas-booking-calendar-picker] The dropdown button\n * @part nbcp__dropdown-content - [nylas-booking-calendar-picker] The dropdown content\n * @part nbt - [nylas-buffer-time] The buffer time container\n * @part nbt__header - [nylas-buffer-time] The header of the buffer time\n * @part nbt__body - [nylas-buffer-time] The body of the buffer time\n * @part nbt__dropdown-before - [nylas-buffer-time] The before buffer dropdown container\n * @part nbt__dropdown-button-before - [nylas-buffer-time] The before buffer dropdown button\n * @part nbt__dropdown-content-before - [nylas-buffer-time] The before buffer dropdown content\n * @part nbt__dropdown-after - [nylas-buffer-time] The after buffer dropdown container\n * @part nbt__dropdown-button-after - [nylas-buffer-time] The after buffer dropdown button\n * @part nbt__dropdown-content-after - [nylas-buffer-time] The after buffer dropdown content\n * @part nbt__preview - [nylas-buffer-time] The buffer time preview\n * @part ncp - [nylas-calendar-picker] The calendar picker container\n * @part ncp__header - [nylas-calendar-picker] The header of the calendar picker\n * @part ncp__dropdown - [nylas-calendar-picker] The dropdown container\n * @part ncp__dropdown-button - [nylas-calendar-picker] The dropdown button\n * @part ncp__dropdown-content - [nylas-calendar-picker] The dropdown content\n * @part ncbf - [nylas-custom-booking-flow] The custom booking flow container\n * @part ncbf__header - [nylas-custom-booking-flow] The header of the custom booking flow\n * @part ncbf__dropdown - [nylas-custom-booking-flow] The dropdown container\n * @part ncbf__dropdown-button - [nylas-custom-booking-flow] The dropdown button\n * @part ncbf__dropdown-content - [nylas-custom-booking-flow] The dropdown content\n * @part nedesc - [nylas-event-description] The event description container\n * @part nedesc__textarea - [nylas-event-description] The event description textarea\n * @part ned - [nylas-event-duration] The event duration container\n * @part ned__input - [nylas-event-duration] The event duration input\n * @part ned__dropdown - [nylas-event-duration] The event duration dropdown\n * @part ned__dropdown-button - [nylas-event-duration] The event duration dropdown button\n * @part ned__dropdown-content - [nylas-event-duration] The event duration dropdown content\n * @part net - [nylas-event-title] The event title container\n * @part net__title - [nylas-event-title] The event title input\n * @part net__dropdown-content - [nylas-event-title] The token options container\n * @part nlfb - [nylas-limit-future-bookings] The limit future bookings container\n * @part nlfb__number-dropdown - [nylas-limit-future-bookings] The number dropdown container\n * @part nlfb__number-dropdown-button - [nylas-limit-future-bookings] The number dropdown button\n * @part nlfb__number-dropdown-content - [nylas-limit-future-bookings] The number dropdown content\n * @part nlfb__period-dropdown - [nylas-limit-future-bookings] The period dropdown container\n * @part nlfb__period-dropdown-button - [nylas-limit-future-bookings] The period dropdown button\n * @part nlfb__period-dropdown-content - [nylas-limit-future-bookings] The period dropdown content\n * @part nel - [nylas-location-component] The event location container\n * @part nel__location - [nylas-location-component] The event location input\n * @part nel__dropdown - [nylas-location-component] The dropdown container\n * @part nel__dropdown-button - [nylas-location-component] The dropdown button\n * @part nel__dropdown-content - [nylas-location-component] The dropdown content\n * @part nmcn - [nylas-min-cancellation-notice] The minimum cancellation notice container\n * @part nmcn__number-dropdown - [nylas-min-cancellation-notice] The number dropdown container\n * @part nmcn__number-dropdown-button - [nylas-min-cancellation-notice] The number dropdown button\n * @part nmcn__number-dropdown-content - [nylas-min-cancellation-notice] The number dropdown content\n * @part nmcn__period-dropdown - [nylas-min-cancellation-notice] The period dropdown container\n * @part nmcn__period-dropdown-button - [nylas-min-cancellation-notice] The period dropdown button\n * @part nmcn__period-dropdown-content - [nylas-min-cancellation-notice] The period dropdown content\n */\n@Component({\n tag: 'nylas-editor-tabs',\n styleUrl: 'nylas-editor-tabs.scss',\n scoped: true,\n})\nexport class NylasEditorTabs {\n /**\n * The form reference to access the form data.\n */\n private formRef!: HTMLFormElement;\n /**\n * The host element.\n */\n @Element() host!: HTMLNylasEditorTabsElement;\n /**\n * The list of calendars to use in the editor when configuring availability.\n */\n @Prop() calendars?: Calendar[];\n /**\n * The selected configuration to use in the editor when editing an existing configuration or creating a new one.\n */\n @Prop() selectedConfiguration?: Configuration;\n /**\n * The default require session auth flag to used to set the default value for the requireSessionAuth\n * property when creating a configuration. If set to true, then a session token must be provided\n * to the <nylas-scheduling/> component. If set to false, then a session token is not required\n * and the configuration id can passed to the <nylas-scheduling/> component instead.\n */\n @Prop() defaultRequiresSessionAuth: boolean = true;\n /**\n * The current user to use in the editor.\n */\n @Prop() currentUser?: User;\n /**\n * The scheduler preview link to use when the user clicks on the preview button.\n * You can use a placeholder `{config.id}` to replace the configuration id anywhere in the link.\n */\n @Prop({ attribute: 'scheduler-preview-link' }) schedulerPreviewLink: string = '';\n /**\n * The mode of the editor.\n * - `app`: The editor is used as a standalone app.\n * - `composable`: The editor is used as a composable component.\n */\n @Prop() mode?: 'app' | 'composable' = 'app';\n /**\n * The action to perform in the editor.\n * - `create`: Create a new configuration.\n * - `edit`: Edit an existing configuration.\n */\n @State() action: 'create' | 'edit' = 'create';\n /**\n * The active tab in the editor.\n */\n @State() activeTab: string = 'eventInfo';\n /**\n * The loading state of the editor.\n */\n @State() isLoading: boolean = false;\n /**\n * The unsaved changes state of the editor.\n */\n @State() hasUnsavedChanges: boolean = false;\n /**\n * The changes saved state of the editor.\n */\n @State() changesSaved: boolean = false;\n /**\n * The form state of the editor.\n */\n @State() formState: Partial<{\n title: string;\n description: string;\n duration: string;\n availability?: {\n timezone: string;\n openHours?: OpenHours[];\n };\n calendarIds: string[];\n participants?: any[];\n bookingCalendar?: string;\n location?: string;\n bookingType?: string;\n buffer?: { before: number; after: number };\n availableDaysInFuture?: number;\n minCancellationNotice?: number;\n }> = {};\n /**\n * The error state of the editor.\n */\n @State() error?: string = '';\n /**\n * Event emitted when the configuration is changed.\n */\n @Event() schedulerConfigChanged!: EventEmitter<SchedulerEventDetail>;\n /**\n * Event emitted when the user clicks the cancel button.\n */\n @Event() cancelButtonClick!: EventEmitter<void>;\n /**\n * Event emitted on form submission.\n */\n @Event() formSubmitted!: EventEmitter<void>;\n /**\n * Event emitted when the user clicks the cancel button.\n */\n @Event() previewButtonClicked!: EventEmitter<HTMLNylasEditorTabsElement>;\n\n @Watch('selectedConfiguration')\n configChangedHandler(newConfig: Configuration) {\n debug('[nylas-editor-tabs]', 'configChangedHandler', newConfig, this.selectedConfiguration);\n this.formState = {\n ...this.getFormStateFromConfig(newConfig),\n };\n\n if (newConfig.id) {\n this.action = 'edit';\n } else {\n this.action = 'create';\n }\n }\n\n connectedCallback() {\n debug('[nylas-editor-tabs]', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('[nylas-editor-tabs]', 'componentWillLoad');\n this.formState = this.getFormStateFromConfig(this.selectedConfiguration);\n }\n\n componentDidLoad() {\n debug('[nylas-editor-tabs]', 'componentDidLoad');\n }\n\n disconnectedCallback() {\n debug('[nylas-editor-tabs]', 'disconnectedCallback');\n }\n\n @Listen('valueChanged')\n handleValueChanged(event: CustomEvent) {\n debug('[nylas-editor-tabs]', 'handleValueChanged', event);\n const { name, value } = event.detail;\n this.formState = { ...this.formState, [name]: value };\n this.hasUnsavedChanges = true;\n this.error = '';\n }\n\n getFormStateFromConfig(config?: Configuration) {\n const organizerParticipant = config?.participants?.find(p => p.is_organizer);\n return {\n title: config?.event_booking?.title ?? '',\n description: config?.event_booking?.description ?? '',\n duration: config?.availability?.duration_minutes?.toString() ?? '10',\n availability: {\n timezone: config?.event_booking?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n open_hours: organizerParticipant?.availability?.open_hours ?? undefined,\n },\n calendarIds: organizerParticipant?.availability?.calendar_ids ?? [],\n participants: config?.participants ?? [],\n bookingCalendar: organizerParticipant?.booking?.calendar_id ?? organizerParticipant?.email ?? '',\n location: this.selectedConfiguration?.event_booking?.location ?? '',\n bookingType: this.selectedConfiguration?.event_booking?.booking_type ?? 'booking',\n buffer: this.selectedConfiguration?.availability?.availability_rules?.buffer ?? { before: 0, after: 0 },\n availableDaysInFuture: this.selectedConfiguration?.scheduler?.available_days_in_future ?? 30,\n minCancellationNotice: this.selectedConfiguration?.scheduler?.min_cancellation_notice ?? 0,\n };\n }\n\n updateFormState() {\n const formData = new FormData(this.formRef);\n formData.forEach((value, key) => {\n switch (key) {\n case 'title':\n this.formState.title = value.toString();\n break;\n case 'description':\n this.formState.description = value.toString();\n break;\n case 'duration':\n this.formState.duration = value.toString();\n break;\n case 'availability':\n this.formState.availability = JSON.parse(value.toString());\n break;\n case 'participants':\n this.formState.participants = JSON.parse(value.toString());\n break;\n case 'calendars':\n this.formState.calendarIds = value.toString().split(',');\n break;\n case 'booking-calendar':\n this.formState.bookingCalendar = value.toString();\n break;\n case 'location':\n this.formState.location = value.toString();\n break;\n case 'booking-type':\n this.formState.bookingType = value.toString();\n break;\n case 'buffer-time':\n this.formState.buffer = JSON.parse(value.toString());\n break;\n case 'limit-future-bookings':\n this.formState.availableDaysInFuture = parseInt(value.toString());\n break;\n case 'min-cancellation-notice':\n this.formState.minCancellationNotice = parseInt(value.toString());\n break;\n }\n });\n\n this.formState = { ...this.formState };\n return this.formState;\n }\n\n setActiveTab(e: Event, tabName: string) {\n e.preventDefault();\n this.updateFormState();\n this.activeTab = tabName;\n }\n\n setError = (error: Error) => {\n this.error = error.message;\n };\n\n formSubmissionHandler = async (event: Event) => {\n event.preventDefault();\n this.formSubmitted.emit();\n const valid = this.formRef.checkValidity();\n if (!valid) {\n return;\n }\n this.isLoading = true;\n this.hasUnsavedChanges = false;\n const formState = this.updateFormState();\n const { title, description, duration, availability, calendarIds, bookingCalendar, location, bookingType, buffer, availableDaysInFuture, minCancellationNotice } = formState;\n const organizer = this.selectedConfiguration?.participants?.find(p => p.is_organizer);\n const configObject: Partial<Configuration> = {\n ...(this.selectedConfiguration?.id && { id: this.selectedConfiguration.id }),\n version: this.selectedConfiguration?.version ?? '1.0.0',\n availability: {\n duration_minutes: duration ? parseInt(duration) : 0,\n availability_rules: {\n availability_method: this.selectedConfiguration?.availability?.availability_rules?.availability_method ?? 'collective',\n buffer: buffer || { before: 0, after: 0 },\n default_open_hours: this.selectedConfiguration?.availability?.availability_rules?.default_open_hours ?? DEFAULT_OPEN_HOURS,\n round_robin_group_id: this.selectedConfiguration?.availability?.availability_rules?.round_robin_group_id ?? '',\n },\n },\n participants: [\n {\n name: organizer?.name ?? organizer?.email ?? this.currentUser?.name ?? this.currentUser?.email ?? '',\n email: organizer?.email ?? this.currentUser?.email ?? '',\n is_organizer: true,\n availability: {\n calendar_ids: calendarIds?.length ? calendarIds : ['primary'],\n open_hours: availability?.openHours ?? [],\n },\n booking: {\n calendar_id: bookingCalendar && bookingCalendar !== '' ? bookingCalendar : 'primary',\n },\n },\n ],\n event_booking: {\n title: title?.toString() ?? '',\n description: description?.toString() ?? '',\n location: location?.toString() ?? '',\n booking_type: (bookingType?.toString() as BookingType) ?? 'booking',\n timezone: availability?.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,\n },\n scheduler: {\n available_days_in_future: availableDaysInFuture ?? 30,\n min_cancellation_notice: minCancellationNotice ?? 0,\n },\n };\n\n const configObjectWithDeveloperSettings = mergeDeep(configObject, this.selectedConfiguration);\n // Set the requires_session_auth flag to the default value for new configurations\n configObjectWithDeveloperSettings.requires_session_auth = this.defaultRequiresSessionAuth;\n\n const finalConfig = this.action === 'create' ? configObjectWithDeveloperSettings : configObject;\n\n const resetLoadingState = (_e: CustomEvent) => {\n this.isLoading = false;\n this.changesSaved = true;\n setTimeout(() => {\n this.changesSaved = false;\n }, 5000);\n };\n this.schedulerConfigChanged.emit({ config: finalConfig, resetLoadingState, setError: this.setError, action: this.action });\n };\n\n @RegisterComponent<NylasEditorTabs, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-editor-tabs',\n stateToProps: new Map([\n ['schedulerConfig.calendars', 'calendars'],\n ['schedulerConfig.selectedConfiguration', 'selectedConfiguration'],\n ['schedulerConfig.currentUser', 'currentUser'],\n ]),\n eventToProps: {\n schedulerConfigChanged: async (event: CustomEvent<SchedulerEventDetail>, nylasSchedulerConfigConnector: NylasSchedulerConfigConnector) => {\n const { resetLoadingState, setError, action, config } = event.detail;\n const checkForErrors = (response: DataResponseReturnType) => {\n const [data, error] = response;\n if (!data && error && setError) {\n setError(error as Error);\n }\n if (resetLoadingState) {\n resetLoadingState(event);\n }\n };\n\n // If we have an ID, we are updating an existing configuration\n if (action === 'edit') {\n const response = await nylasSchedulerConfigConnector.schedulerConfig.updateConfiguration(config);\n checkForErrors(response);\n } else {\n const response = await nylasSchedulerConfigConnector.schedulerConfig.createConfiguration(config);\n checkForErrors(response);\n }\n },\n cancelButtonClick: async (_, nylasSchedulerConfigConnector) => {\n nylasSchedulerConfigConnector.schedulerConfigStore.state.action = null;\n },\n },\n localPropsToProp: new Map([\n ['schedulerPreviewLink', 'schedulerPreviewLink'],\n ['defaultRequiresSessionAuth', 'defaultRequiresSessionAuth'],\n ]),\n fireRegisterEvent: true,\n })\n render() {\n debug('[nylas-editor-tabs]', 'render', this.formState);\n return (\n <Host>\n <form onSubmit={this.formSubmissionHandler} class=\"scheduler-editor\" ref={el => (this.formRef = el as HTMLFormElement)} noValidate>\n {this.mode === 'app' ? (\n <div class=\"form-contents\">\n <div class=\"tabs\">\n <button class={{ tab: true, active: this.activeTab == 'eventInfo' }} onClick={e => this.setActiveTab(e, 'eventInfo')}>\n <calendar-info-icon width=\"16\" height=\"16\" />\n Event Info\n </button>\n <button class={{ tab: true, active: this.activeTab == 'availability' }} onClick={e => this.setActiveTab(e, 'availability')}>\n <calendar-patterns-icon width=\"16\" height=\"16\" />\n Availability\n </button>\n <button class={{ tab: true, active: this.activeTab == 'bookingOptions' }} onClick={e => this.setActiveTab(e, 'bookingOptions')}>\n <flow-icon width=\"16\" height=\"16\" />\n Booking Options\n </button>\n </div>\n <div class=\"tab-content\">\n <TabContents formState={this.formState} activeTab={this.activeTab} calendars={this.calendars} id={this.selectedConfiguration?.id ?? 'new'} />\n </div>\n </div>\n ) : (\n <slot></slot>\n )}\n\n <div class=\"footer\">\n <div class=\"preview\">\n {this.schedulerPreviewLink !== '' && this.action === 'edit' && (\n <button-component\n type=\"button\"\n disabled={this.isLoading}\n clickHandler={event => {\n event.preventDefault();\n const previewEvent = this.previewButtonClicked.emit(this.host);\n if (!previewEvent.defaultPrevented) {\n window.open(parsePreviewLink(this.schedulerPreviewLink, this.selectedConfiguration), '_blank');\n }\n }}\n variant={'basic'}\n >\n Preview\n </button-component>\n )}\n </div>\n <div class=\"buttons\">\n <p\n class={{\n 'unsaved-changes': this.hasUnsavedChanges && !this.changesSaved,\n 'saved-changes': this.changesSaved,\n 'error': this.error !== '',\n 'error-full-width': this.error !== '' && this.action === 'create',\n }}\n >\n {this.error !== '' ? this.error : ''}\n {this.error == '' && this.hasUnsavedChanges && !this.changesSaved ? 'Unsaved changes' : this.error == '' && this.changesSaved ? 'Changes saved!' : ''}\n </p>\n <button-component\n type=\"button\"\n disabled={this.isLoading}\n clickHandler={event => {\n event.preventDefault();\n this.cancelButtonClick.emit();\n this.error = '';\n }}\n variant={'basic'}\n >\n Cancel\n </button-component>\n <button-component type=\"submit\" disabled={this.isLoading}>\n {this.isLoading ? (\n <span>\n Saving\n <loading-icon />{' '}\n </span>\n ) : this.action == 'create' ? (\n 'Create'\n ) : (\n 'Save changes'\n )}\n </button-component>\n </div>\n </div>\n </form>\n </Host>\n );\n }\n}\n","@import '../../../common/styles/variables.scss';\n@import '../../../common/mixins/buttons.scss';\n\n:host {\n display: grid;\n grid-auto-flow: row;\n width: 100%;\n font-family: inherit;\n font-optical-sizing: auto;\n @include default-css-variables;\n}\n\n.header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 1rem;\n gap: 1rem;\n @media #{$mobile} {\n flex-direction: column;\n gap: 0.5rem;\n align-items: unset;\n }\n h2 {\n margin: 0;\n font-size: 1.25rem;\n color: var(--nylas-base-900);\n font-weight: 600;\n }\n\n p {\n margin: 0;\n font-size: 1rem;\n color: var(--nylas-base-700);\n }\n\n .actions {\n justify-self: end;\n\n @media #{$mobile} {\n width: 100%;\n }\n }\n}\n\n.configurations {\n border: 1px solid var(--nylas-base-200);\n border-radius: var(--nylas-border-radius-2x);\n background: var(--nylas-base-0);\n height: 100%;\n display: flex;\n overflow-y: auto;\n table {\n width: 100%;\n border-spacing: 0;\n border-collapse: collapse;\n font-family: inherit;\n height: max-content;\n\n &.no-configurations {\n height: 100%;\n }\n\n tr {\n color: var(--nylas-base-800);\n border-bottom: 1px solid var(--nylas-base-200);\n font-family: inherit;\n &:last-of-type {\n border-bottom: 0;\n }\n\n &.hide {\n display: none;\n }\n }\n\n th {\n font-weight: 600;\n text-transform: uppercase;\n &.actions-header {\n text-align: right;\n }\n }\n\n tr.no-configurations {\n td {\n > div {\n display: flex;\n height: 100%;\n justify-content: center;\n align-items: center;\n flex-direction: column;\n\n padding: var(--nylas-border-radius-3x);\n\n h3 {\n margin: 0 0 1rem 0;\n color: var(--nylas-base-700);\n }\n\n p {\n margin: 0 0 1rem 0;\n color: var(--nylas-base-600);\n }\n\n calendar-icon {\n margin-bottom: 1rem;\n color: var(--nylas-base-200);\n }\n }\n }\n }\n\n th,\n td {\n text-align: left;\n padding: 1rem;\n font-family: inherit;\n }\n\n .actions {\n text-align: right;\n }\n\n .actions {\n display: flex;\n justify-content: flex-end;\n gap: 1rem;\n @media #{$mobile} {\n flex-direction: column;\n gap: 0.5rem;\n }\n }\n\n .title {\n display: flex;\n flex-direction: column;\n\n .config-event-title {\n font-weight: 600;\n }\n\n .config-event-description {\n font-size: 0.75rem;\n }\n }\n }\n}\n\n.error-container {\n margin-top: 1.5rem;\n .error {\n color: var(--nylas-error);\n padding: 0.5rem 0;\n margin: 1rem 0 0;\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug, parsePreviewLink } from '@/utils/utils';\nimport { Component, Element, Event, EventEmitter, Host, Method, Prop, State, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport { Configuration } from '@nylas/core';\n\n/**\n * The `nylas-list-configurations` component displays a list of scheduling pages.\n */\n@Component({\n tag: 'nylas-list-configurations',\n styleUrl: 'nylas-list-configurations.scss',\n shadow: true,\n})\nexport class NylasListConfigurations {\n /**\n * The host element.\n */\n @Element() host!: HTMLNylasListConfigurationsElement;\n\n /**\n * The list of configurations to display.\n */\n @Prop() configurations: Configuration[] = [];\n\n /**\n * The scheduler preview link to use when the user clicks on the preview button.\n * You can use a placeholder `{config.id}` to replace the configuration id anywhere in the link.\n */\n @Prop({ attribute: 'scheduler-preview-link' }) schedulerPreviewLink: string = '';\n\n /**\n * Event emitted when the component is initialized.\n */\n @Event() initListConfigurations!: EventEmitter<HTMLNylasListConfigurationsElement>;\n\n /**\n * Event emitted when the user clicks the create event button.\n */\n @Event() createButtonClick!: EventEmitter<HTMLNylasListConfigurationsElement>;\n\n /**\n * Event emitted when the user clicks the edit event button.\n */\n @Event() editButtonClick!: EventEmitter<{\n host: HTMLNylasListConfigurationsElement;\n configuration: Configuration;\n }>;\n\n /**\n * Event emitted when the user clicks the delete event button.\n */\n @Event() deleteButtonClick!: EventEmitter<{\n host: HTMLNylasListConfigurationsElement;\n configuration: Configuration;\n }>;\n\n /**\n * The current state of the component.\n */\n @State() private state: 'loading' | 'loaded' | 'error' = 'loading';\n\n /**\n * The error message to display.\n */\n @State() private error: string = '';\n\n connectedCallback() {\n debug('[nylas-list-configurations]', 'connectedCallback');\n }\n\n componentWillLoad() {\n debug('[nylas-list-configurations]', 'componentWillLoad');\n\n // If we have configurations, we will set the state to loaded.\n if (this.configurations && this.configurations.length > 0) {\n this.state = 'loaded';\n }\n }\n\n componentDidLoad() {\n debug('[nylas-list-configurations]', 'componentDidLoad');\n\n // Fire the init event. By default, we will fetch the configurations.\n // This is defined in the eventToProps object in the RegisterComponent decorator.\n this.initListConfigurations.emit(this.host);\n }\n\n disconnectedCallback() {\n debug('[nylas-list-configurations]', 'disconnectedCallback');\n }\n\n @Method()\n async getState() {\n return this.state;\n }\n\n @Method()\n async setState(state: 'loading' | 'loaded' | 'error') {\n this.state = state;\n }\n\n @Method()\n async setError(error: string) {\n this.error = error;\n }\n\n @RegisterComponent<NylasListConfigurations, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-list-configurations',\n stateToProps: new Map([['schedulerConfig.configurations', 'configurations']]),\n localPropsToProp: new Map([['schedulerPreviewLink', 'schedulerPreviewLink']]),\n eventToProps: {\n initListConfigurations: async (event, connector) => {\n const host = event.detail;\n await host.setState('loading');\n const [data, error] = await connector.schedulerConfig.getConfigurations();\n if (!data && error && error.message) {\n await host.setState('error');\n await host.setError(error.message);\n return;\n }\n await host.setState('loaded');\n },\n createButtonClick: async (_, connector) => {\n connector.schedulerConfigStore.resetSelectedConfiguration();\n connector.schedulerConfigStore.state.action = 'create';\n },\n deleteButtonClick: async (event, connector) => {\n const { host, configuration } = event.detail;\n const [data, error] = await connector.schedulerConfig.deleteConfiguration(configuration.id);\n if (!data && error && error.message) {\n await host.setState('error');\n await host.setError(error.message);\n }\n },\n editButtonClick: async (event, connector) => {\n const { configuration } = event.detail;\n connector.schedulerConfigStore.state.selectedConfiguration = configuration;\n connector.schedulerConfigStore.state.action = 'edit';\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host>\n <div class=\"header\">\n <div class=\"description\">\n <h2>All scheduling pages</h2>\n <p>Create, edit and manage all your scheduling pages.</p>\n </div>\n {this.configurations && this.configurations.length > 0 && (\n <div class=\"actions\">\n <button-component\n clickHandler={() => {\n this.createButtonClick.emit(this.host);\n }}\n >\n Create new\n </button-component>\n </div>\n )}\n </div>\n <div class=\"configurations\">\n <table\n class={{\n 'no-configurations': this.state !== 'loading' && (!this.configurations || this.configurations.length === 0),\n }}\n >\n <tr\n class={{\n hide: this.state === 'loading' || (this.configurations && this.configurations.length === 0),\n }}\n >\n <th>Scheduling page event title</th>\n <th>Duration</th>\n <th class=\"actions-header\">Actions</th>\n </tr>\n {this.state === 'loading' && (\n <tr class=\"no-configurations\">\n <td colSpan={3}>\n <div>\n <h3>Loading...</h3>\n <p>Please wait while we fetch the scheduling pages</p>\n </div>\n </td>\n </tr>\n )}\n {this.state !== 'loading' && (!this.configurations || this.configurations.length === 0) && (\n <tr class=\"no-configurations\">\n <td colSpan={3}>\n <div>\n <calendar-icon width=\"48\" height=\"48\"></calendar-icon>\n <h3>No scheduling pages found</h3>\n <p>Get started with creating your first scheduling page</p>\n <button-component\n clickHandler={() => {\n this.createButtonClick.emit(this.host);\n }}\n >\n Create new\n </button-component>\n </div>\n </td>\n </tr>\n )}\n {this.state !== 'loading' &&\n this.configurations.map(config => (\n <tr key={config.id}>\n <td>\n <div class=\"title\">\n <span class={'config-event-title'}>{config.event_booking.title}</span>\n <span class={'config-event-description'}>{config.event_booking.description}</span>\n </div>\n </td>\n <td>\n <div>{config.availability.duration_minutes} mins</div>\n </td>\n <td>\n <div class=\"actions\">\n <button-component\n variant={'basic'}\n clickHandler={event => {\n event.preventDefault();\n window.open(parsePreviewLink(this.schedulerPreviewLink, config), '_blank');\n }}\n >\n Preview\n </button-component>\n <button-component\n variant={'basic'}\n clickHandler={event => {\n event.preventDefault();\n this.editButtonClick.emit({ host: this.host, configuration: config });\n }}\n >\n Edit\n </button-component>\n <button-component\n variant={'basic'}\n clickHandler={event => {\n event.preventDefault();\n this.deleteButtonClick.emit({ host: this.host, configuration: config });\n }}\n >\n Delete\n </button-component>\n </div>\n </td>\n </tr>\n ))}\n </table>\n </div>\n {this.state === 'error' && (\n <div class=\"error-container\">\n <p class={'error'}>{this.error}</p>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as e,h as n,c as t,H as a,a as i}from"./p-68c2fadf.js";import{a as s,x as o,y as l,z as r,A as d,B as c,C as f,D as p,E as b,F as h,G as y,H as u}from"./p-01e86103.js";import{R as m}from"./p-8b53becf.js";import{T as g,E as v}from"./p-49f716ed.js";import{c as k}from"./p-cb65c223.js";const x=".sc-add-circle-icon-h{display:flex}";const w=x;const _=class{constructor(n){e(this,n);this.width="24";this.height="25"}render(){return n("svg",{key:"58ce81214aeed7ddc1ce5f76d674aba576422d48",width:this.width,height:this.height,fill:"none",xmlns:"http://www.w3.org/2000/svg"},n("path",{key:"2a47ed74601a5370f0300da06295a2b5969d7e5f",d:"M12 2.5c5.523 0 10 4.477 10 10s-4.477 10-10 10-10-4.477-10-10 4.477-10 10-10ZM12 4a8.5 8.5 0 1 0 0 17 8.5 8.5 0 0 0 0-17Zm0 3.5a.75.75 0 0 1 .75.75v3.5h3.5a.75.75 0 0 1 0 1.5h-3.5v3.5a.75.75 0 0 1-1.5 0v-3.5h-3.5a.75.75 0 0 1 0-1.5h3.5v-3.5A.75.75 0 0 1 12 7.5Z",fill:"currentColor"}))}};_.style=w;const C="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}";const L=C;const H=class{constructor(n){e(this,n);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 e=`button-${this.variant}`+(this.disabled?" disabled":"");return n("button",{key:"3ac840e8b65854c2e4bdabe93b21b5bcda99e4db",class:e,disabled:this.disabled,type:"type",onClick:this.clickHandler,onMouseOver:this.mouseOverHandler,onMouseOut:this.mouseOutHandler,onFocus:this.focusHandler,onBlur:this.blurHandler},n("slot",{key:"110df0711566be0df89f2e04aed008dcaf91e9f3"}))}};H.style=L;const R=".sc-calendar-info-icon-h{display:flex}";const D=R;const M=class{constructor(n){e(this,n);this.width="20";this.height="20"}render(){return n("svg",{key:"4c290eae1d55ec9df96cbe6d9ba85d5d8b7ee102",width:this.width,height:this.height,fill:"none",xmlns:"http://www.w3.org/2000/svg"},n("path",{key:"a2a76a5d0183952d59f1d2f448dc7c460694e410",d:"M12 0C13.3807 0 14.5 1.11929 14.5 2.5V6.59971C14.1832 6.43777 13.8486 6.30564 13.5 6.20703V4H1.5V11.5C1.5 12.3284 2.17157 13 3 13H6.70703C6.80564 13.3486 6.93777 13.6832 7.09971 14H3C1.61929 14 0.5 12.8807 0.5 11.5V2.5C0.5 1.11929 1.61929 0 3 0H12ZM12 1H3C2.17157 1 1.5 1.67157 1.5 2.5V3H13.5V2.5C13.5 1.67157 12.8284 1 12 1ZM11.375 9.5C11.375 9.15482 11.6548 8.875 12 8.875C12.3452 8.875 12.625 9.15482 12.625 9.5C12.625 9.84518 12.3452 10.125 12 10.125C11.6548 10.125 11.375 9.84518 11.375 9.5ZM12.5 13.5C12.5 13.7761 12.2761 14 12 14C11.7239 14 11.5 13.7761 11.5 13.5V11.5C11.5 11.2239 11.7239 11 12 11C12.2761 11 12.5 11.2239 12.5 11.5V13.5ZM7.5 11.5C7.5 9.01472 9.51472 7 12 7C14.4853 7 16.5 9.01472 16.5 11.5C16.5 13.9853 14.4853 16 12 16C9.51472 16 7.5 13.9853 7.5 11.5ZM8.5 11.5C8.5 13.433 10.067 15 12 15C13.933 15 15.5 13.433 15.5 11.5C15.5 9.567 13.933 8 12 8C10.067 8 8.5 9.567 8.5 11.5Z",fill:"currentColor"}))}};M.style=D;const j=".sc-calendar-patterns-icon-h{display:flex}";const O=j;const z=class{constructor(n){e(this,n);this.width="20";this.height="20"}render(){return n("svg",{key:"cf8071f578ad04793f5bd5b446dccaa1f6d4c1a3",width:this.width,height:this.height,fill:"none",xmlns:"http://www.w3.org/2000/svg"},n("path",{key:"8e8a3c7d87bc41c6d6973a34863d05d996155c1d",d:"M3.25 0H11.75C13.2688 0 14.5 1.23122 14.5 2.75V11.25C14.5 12.7688 13.2688 14 11.75 14H3.25C1.73122 14 0.5 12.7688 0.5 11.25V2.75C0.5 1.23122 1.73122 0 3.25 0ZM2 2.75V4H13V2.75C13 2.05964 12.4404 1.5 11.75 1.5H3.25C2.55964 1.5 2 2.05964 2 2.75ZM12.2071 5L8.20711 9H10.7929L13 6.79289V5H12.2071ZM10.7929 5H8.20711L4.20711 9H6.79289L10.7929 5ZM2.79289 9L6.79289 5H4.20711L2 7.20711V9H2.79289ZM2 5.79289L2.79289 5H2V5.79289ZM12.2071 9H13V8.20711L12.2071 9Z",fill:"currentColor"}))}};z.style=O;const E=".sc-flow-icon-h{display:flex}";const S=E;const T=class{constructor(n){e(this,n);this.width="16";this.height="12"}render(){return n("svg",{key:"e0f4da46b751754406e8b0551890a1bffb1100e4",width:this.width,height:this.height,fill:"none",xmlns:"http://www.w3.org/2000/svg"},n("path",{key:"21997cb261d91c8589c3e87a01036dc8f91a8d9b",d:"M13 1.66211C11.8954 1.66211 11 2.55754 11 3.66211C11 4.76668 11.8954 5.66211 13 5.66211C14.1046 5.66211 15 4.76668 15 3.66211C15 2.55754 14.1046 1.66211 13 1.66211ZM10.0407 3.16678C10.2768 1.74563 11.5119 0.662109 13 0.662109C14.6569 0.662109 16 2.00526 16 3.66211C16 5.31896 14.6569 6.66211 13 6.66211C11.5162 6.66211 10.2839 5.58482 10.0428 4.16971C9.37629 4.23688 8.82682 4.7426 8.71466 5.41551L8.27173 8.07311C8.07929 9.22776 7.11428 10.087 5.9593 10.1574C5.72319 11.5786 4.48813 12.6621 3 12.6621C1.34315 12.6621 0 11.319 0 9.66211C0 8.00526 1.34315 6.66211 3 6.66211C4.48384 6.66211 5.71607 7.73939 5.95724 9.15451C6.62371 9.08734 7.17318 8.58162 7.28534 7.90871L7.72827 5.25111C7.92071 4.09646 8.88571 3.23718 10.0407 3.16678ZM3 7.66211C1.89543 7.66211 1 8.55754 1 9.66211C1 10.7667 1.89543 11.6621 3 11.6621C4.10457 11.6621 5 10.7667 5 9.66211C5 8.55754 4.10457 7.66211 3 7.66211Z",fill:"currentColor"}))}};T.style=S;const I=".sc-location-icon-h{display:flex}";const F=I;const N=class{constructor(n){e(this,n);this.width="16";this.height="18"}render(){return n("svg",{key:"4888ed340800392ac9bb38eb4b868fca595db537",width:this.width,height:this.height,fill:"none",xmlns:"http://www.w3.org/2000/svg"},n("path",{key:"20cfaacf5cb828569e0b4ec6d2e83fe3b5264b32",d:"M10 7.66211C10 9.31896 8.65685 10.6621 7 10.6621C5.34315 10.6621 4 9.31896 4 7.66211C4 6.00526 5.34315 4.66211 7 4.66211C8.65685 4.66211 10 6.00526 10 7.66211ZM9 7.66211C9 6.55754 8.10457 5.66211 7 5.66211C5.89543 5.66211 5 6.55754 5 7.66211C5 8.76668 5.89543 9.66211 7 9.66211C8.10457 9.66211 9 8.76668 9 7.66211ZM11.9497 12.6171C14.6834 9.88221 14.6834 5.44812 11.9497 2.71326C9.21608 -0.0216067 4.78392 -0.0216067 2.05025 2.71326C-0.683418 5.44812 -0.683418 9.88221 2.05025 12.6171L3.57128 14.1159L5.61408 16.101L5.74691 16.2188C6.52168 16.8468 7.65623 16.8076 8.38611 16.1012L10.8223 13.7312L11.9497 12.6171ZM2.75499 3.4183C5.09944 1.07282 8.90055 1.07282 11.245 3.4183C13.5294 5.70364 13.5879 9.3725 11.4207 11.7288L11.245 11.912L9.92371 13.216L7.69315 15.3846L7.60016 15.4642C7.24594 15.732 6.7543 15.732 6.40012 15.4642L6.30713 15.3845L3.3263 12.4791L2.75499 11.912L2.57927 11.7288C0.412077 9.3725 0.47065 5.70364 2.75499 3.4183Z",fill:"currentColor"}))}};N.style=F;const A=".sc-location-off-icon-h{display:flex}";const W=A;const P=class{constructor(n){e(this,n);this.width="16";this.height="18"}render(){return n("svg",{key:"b61c56b0a012359592a4c2575f130ece6fd412c6",width:this.width,height:this.height,fill:"none",xmlns:"http://www.w3.org/2000/svg"},n("path",{key:"6be791c9a59fa3634f65881dfbca7adc5e3355d3",d:"M0.146447 0.808556C0.341709 0.613294 0.658291 0.613294 0.853553 0.808556L15.8536 15.8086C16.0488 16.0038 16.0488 16.3204 15.8536 16.5157C15.6583 16.7109 15.3417 16.7109 15.1464 16.5157L12.0938 13.463L11.8223 13.7312L9.38611 16.1012C8.65623 16.8076 7.52168 16.8468 6.74691 16.2188L6.61408 16.101L4.57128 14.1159L3.05025 12.6171C0.607421 10.1732 0.347525 6.37239 2.27056 3.63976L0.146447 1.51566C-0.0488155 1.3204 -0.0488155 1.00382 0.146447 0.808556ZM9.07768 10.4469C8.74346 10.576 8.38024 10.6468 8.0005 10.6468C6.34839 10.6468 5.00909 9.30689 5.00909 7.65406C5.00909 7.27461 5.07967 6.91166 5.20843 6.57763L2.98793 4.35713C1.49206 6.62038 1.68917 9.67377 3.57927 11.7288L3.75499 11.912L4.3263 12.4791L7.30713 15.3845L7.40012 15.4642C7.7543 15.732 8.24594 15.732 8.60016 15.4642L8.69315 15.3846L10.9237 13.216L11.3883 12.7575L9.07768 10.4469ZM9.85409 8.39486L10.5983 9.13904C10.8487 8.70143 10.9919 8.19447 10.9919 7.65406C10.9919 6.00122 9.65261 4.66134 8.0005 4.66134C7.45986 4.66134 6.95271 4.80482 6.51504 5.05581L7.25921 5.79998C7.48839 5.70819 7.73855 5.6577 8.0005 5.6577C9.10258 5.6577 9.99599 6.5515 9.99599 7.65406C9.99599 7.91581 9.94564 8.16581 9.85409 8.39486ZM4.35291 2.89368C6.70671 1.08827 10.0908 1.26314 12.245 3.4183C14.3986 5.57283 14.5739 8.95702 12.771 11.3118L13.4812 12.022C15.6702 9.27273 15.493 5.25762 12.9497 2.71326C10.4058 0.168159 6.39081 -0.00843871 3.64269 2.18347L4.35291 2.89368Z",fill:"currentColor"}))}};P.style=W;const Z=':host{display:block;width:inherit;--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}.dropdown{display:inline-block;width:100%;position:relative}.dropdown .dropdown-label{display:flex;align-items:center;gap:0.25rem;color:var(--nylas-base-800)}.dropbtn{width:inherit;height:48px;color:black;padding:0.5rem;font-size:1rem;cursor:pointer;display:flex;gap:0.5rem;justify-content:space-between;align-items:center;background:transparent;border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x)}.dropbtn.focus{background:transparent}.dropbtn:hover,.dropbtn:active{border:1px solid var(--nylas-primary)}.dropbtn:active{outline:2px solid var(--nylas-primary)}.dropbtn span.open{transform:rotate(90deg)}.dropbtn span.closed{transform:rotate(270deg)}.dropdown-content{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)}.dropdown-content ul{padding:0;list-style-type:none;color:var(--nylas-base-900);max-height:336px}.dropdown-content 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:left;cursor:pointer}.dropdown-content ul li:hover,.dropdown-content ul li:focus{background-color:var(--nylas-base-100)}.dropdown-content ul li label{display:flex;align-items:center;gap:0.5rem}.dropdown-content ul li label input{margin:0}.selected-options{display:flex;flex-wrap:wrap;gap:0.5rem;padding:0.5rem 0;margin-top:0.25rem;background:var(--nylas-base-0)}.selected-options .selected-option{display:flex;align-items:center;gap:0.5rem;padding:4px 8px;border-radius:var(--nylas-border-radius-2x);background:var(--nylas-base-100);color:var(--nylas-base-800);font-size:16px;font-weight:500;line-height:1.5rem;letter-spacing:0.5px}.selected-options .selected-option button{background:transparent;border:none;cursor:pointer;padding:0}.selected-options .selected-option button:hover{color:var(--nylas-primary)}';const U=Z;const Y=class{constructor(n){e(this,n);this.selectedOptionsChanged=t(this,"selectedOptionsChanged",7);this.name=undefined;this.label=undefined;this.options=[];this.availableOptions=this.options;this.isOpen=false;this.ariaActivedescendant="";this.shouldFocusFirstOption=false}componentDidRender(){s("multi-select-dropdown","componentDidRender");if(this.isOpen&&this.shouldFocusFirstOption){this.ariaActivedescendant=this.availableOptions[0].value;this.focusOption(0);this.shouldFocusFirstOption=false}}handleOutsideClick(e){const n=e.composedPath();const t=n.includes(this.el);if(!t&&this.isOpen){this.isOpen=false}}selectOption(e){this.availableOptions=this.availableOptions.map((n=>{if(n.value===e.value){n.selected=e.selected?false:true}return n}));const n=this.availableOptions.filter((e=>e.selected)).map((e=>e.value));this.selectedOptionsChanged.emit({value:n,name:this.name})}toggleDropdown(){this.isOpen=!this.isOpen;if(this.isOpen){this.shouldFocusFirstOption=true}else{this.ariaActivedescendant=""}}handleSelectButtonKeyDown(e){switch(e.key){case"ArrowDown":case"Enter":e.preventDefault();if(!this.isOpen){this.toggleDropdown()}break;case"Escape":this.isOpen=false;break}}handleListboxKeydown(e){const n=this.availableOptions;const t=n.findIndex((e=>e.value===this.ariaActivedescendant));switch(e.key){case"ArrowDown":case"Tab":if(!e.shiftKey){e.preventDefault();const a=t+1<n.length?t+1:0;this.ariaActivedescendant=n[a].value;this.focusOption(a)}else{e.preventDefault();const a=t-1>=0?t-1:n.length-1;this.ariaActivedescendant=n[a].value;this.focusOption(a)}break;case"ArrowUp":e.preventDefault();const a=t-1>=0?t-1:n.length-1;this.ariaActivedescendant=n[a].value;this.focusOption(a);break;case"Enter":e.preventDefault();if(this.ariaActivedescendant){this.selectOption(n[t])}break;case"Escape":this.isOpen=false;break}}focusOption(e){const n=this.availableOptions[e];if(!n)return;const t=n.value;const a=this.el.shadowRoot?.getElementById(t);if(a){a.focus();a.scrollIntoView({behavior:"smooth",block:"nearest"})}}getSelectedOptions(){return this.availableOptions.filter((e=>e.selected))}renderOption(e){return n("li",{key:e.value,id:e.value,role:"option",tabindex:"0","aria-selected":e.selected?"true":"false",onClick:n=>{n.stopImmediatePropagation();this.selectOption(e)},class:{selected:!!e.selected}},n("label",{htmlFor:e.value},n("input",{"aria-hidden":"true",id:e.value,type:"checkbox",checked:e.selected}),n("span",null,e.label)))}render(){return n(a,{key:"4ef13670e3dfbf55e023ac7532d93c48d21f3004"},n("div",{key:"8626f138f5be677421697067460ef76d0a7cc697",class:"dropdown",part:"msd_dropdown"},n("label",{key:"b723c488dac91c39f285aae1a3f7928844753bf1",class:"dropdown-label"},this.label,n("slot",{key:"5bdec320647a41de57671c75523a453ccb07af2a",name:"label-icon","aria-hidden":"true"})),n("button",{key:"f7d7cf144ac2fec93171b5ac6cd42be4be6b5c93",part:"msd_dropdown-button",class:{dropbtn:true,open:this.isOpen},onClick:()=>this.toggleDropdown(),"aria-haspopup":"listbox","aria-expanded":this.isOpen?"true":"false","aria-label":this.name,onKeyDown:e=>this.handleSelectButtonKeyDown(e)},n("slot",{key:"021e59628b8da260b308819614297c177a666334",name:"select-icon","aria-hidden":"true"}),n("span",{key:"4a8c921538a23abe4c7efbeb176fb806587092c9",class:"selected-option",part:"msd_dropdown-button-selected-label"},this.getSelectedOptions().length>1?`Multiple ${this.name}s selected`:this.availableOptions.filter((e=>e.selected))[0]?.label??this.availableOptions[0]?.label),n("span",{key:"fc771549d102fb27e33d128504d09fa6151154e9",class:this.isOpen?"open":"closed","aria-hidden":"true"},n("chevron-icon",{key:"bd8282695d11bcfb617da05a75d0a2335650f705",width:"16",height:"16"}))),this.isOpen?null:n("div",{class:"selected-options"},this.getSelectedOptions().map((e=>n("span",{class:"selected-option"},e.label,n("button",{key:e.label,onClick:()=>this.selectOption(e)},n("close-icon",null)))))),this.isOpen?n("div",{class:"dropdown-content",part:"msd_dropdown-content"},n("ul",{tabindex:"-1",role:"listbox","aria-label":this.name,"aria-multiselectable":true,"aria-activedescendant":this.ariaActivedescendant,onKeyDown:e=>this.handleListboxKeydown(e)},this.availableOptions.map((e=>this.renderOption(e))))):null))}get el(){return i(this)}};Y.style=U;const $=':host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif;width:inherit}.nylas-availability-picker{width:inherit;display:flex;flex-direction:column;margin:1rem;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-200)}.nylas-availability-picker .header{padding:1rem;border-bottom:1px solid var(--nylas-base-200)}.nylas-availability-picker .header h3{margin:0;font-size:16px;font-weight:600;line-height:20px;color:var(--nylas-base-900);text-align:left}.nylas-availability-picker .header p{margin:0.25rem 0 0 0;font-size:0.875rem;font-weight:400;line-height:20px;color:var(--nylas-base-600);text-align:left}.nylas-availability-picker .content{padding:1rem;color:var(--nylas-base-900);font-size:16px;font-family:var(--nylas-font-family)}@media screen and (max-width: 504px){.nylas-availability-picker .content{font-size:15px}}.nylas-availability-picker .content .select-timezone{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--nylas-base-200);padding-bottom:1rem;gap:1rem}.nylas-availability-picker .content .select-timezone h4{display:flex;gap:0.5rem;align-items:center;margin:0;font-size:16px;font-weight:500;line-height:20px}@media screen and (max-width: 504px){.nylas-availability-picker .content .select-timezone h4{font-size:15px}}.nylas-availability-picker .content .select-timezone select-dropdown{border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x)}.nylas-availability-picker .content .availability{display:flex;flex-direction:column;gap:1rem;padding:0 0.5rem;margin:1rem 0}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability{gap:0.5rem;padding:0}}.nylas-availability-picker .content .availability .availability-day{display:grid;grid-template-columns:minmax(auto, 65px) 1fr minmax(auto, 40px);gap:1rem;align-items:baseline}@media screen and (max-width: 768px){.nylas-availability-picker .content .availability .availability-day{grid-template-columns:78px 1fr auto}}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day{display:inline-grid;gap:8px;grid-template-columns:60px 1fr auto}}.nylas-availability-picker .content .availability .availability-day .day{display:flex;gap:0.5rem;align-items:center}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day .day{gap:0.25rem}}.nylas-availability-picker .content .availability .availability-day .day input[type=checkbox]{transform:scale(1.3)}.nylas-availability-picker .content .availability .availability-day .time-ranges span.unavailable{height:48px;display:flex;align-items:center;justify-content:center}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range{display:flex;gap:1.5rem;justify-content:space-between;align-items:baseline}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range{justify-content:unset;gap:0.5rem}}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range .pickers{display:flex;gap:1rem}@media screen and (max-width: 504px){.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range .pickers{gap:0.5rem}}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range .pickers span{margin-top:0.75rem}.nylas-availability-picker .content .availability .availability-day .time-ranges .time-range:not(:last-of-type){margin-bottom:1rem}.nylas-availability-picker .content .availability .availability-day .time-ranges p.error{color:var(--nylas-error)}.nylas-availability-picker .content .availability .availability-day button{border:none;background:transparent;height:40px;cursor:pointer;color:var(--nylas-base-800)}.nylas-availability-picker .content .availability .availability-day button:hover,.nylas-availability-picker .content .availability .availability-day button:active{color:var(--nylas-primary)}';const V=$;var B=undefined&&undefined.__decorate||function(e,n,t,a){var i=arguments.length,s=i<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,t):a,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,n,t,a);else for(var l=e.length-1;l>=0;l--)if(o=e[l])s=(i<3?o(s):i>3?o(n,t,s):o(n,t))||s;return i>3&&s&&Object.defineProperty(n,t,s),s};var K=undefined&&undefined.__metadata||function(e,n){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,n)};const q=class{constructor(n){e(this,n);this.valueChanged=t(this,"valueChanged",7);if(n.$hostElement$["s-ei"]){this.internals=n.$hostElement$["s-ei"]}else{this.internals=n.$hostElement$.attachInternals();n.$hostElement$["s-ei"]=this.internals}this.selectedConfiguration=undefined;this.openHours=undefined;this.name="availability";this.defaultTimezone=Intl.DateTimeFormat().resolvedOptions().timeZone;this.schedule={SUN:[],MON:[{start:"09:00am",end:"05:00pm"}],TUE:[{start:"09:00am",end:"05:00pm"}],WED:[{start:"09:00am",end:"05:00pm"}],THU:[{start:"09:00am",end:"05:00pm"}],FRI:[{start:"09:00am",end:"05:00pm"}],SAT:[]};this.timezone=Intl.DateTimeFormat().resolvedOptions().timeZone;this.overlapDays={}}elementNameChangedHandler(e){s("nylas-calendar-picker","elementNameChangedHandler",e);this.host.setAttribute("name",e)}configChangedHandler(e){const n=e?.participants?.find((e=>e.is_organizer));if(n&&n?.availability?.open_hours){this.openHoursToSchedule(n?.availability?.open_hours)}}scheduleChanged(e,n){if(e!==n){this.valueChanged.emit({value:{openHours:this.scheduleToOpenHours(e),timezone:this.timezone},name:this.name});let n={};Object.keys(e).forEach((t=>{const a=e[t];if(a.length>0){const e=this.getOverlaps(a);if(e.length>0){n[t]=e}}}));this.overlapDays=n;if(typeof this.internals.setFormValue!=="function"){return}if(Object.keys(n).length>0){const e=this.host.shadowRoot?.getElementById(Object.keys(n)[0]);if(e){this.internals.setValidity({customError:true},"Overlapping time ranges found",e)}}else{this.internals.setValidity({customError:false});this.internals.setFormValue(JSON.stringify({openHours:this.scheduleToOpenHours(this.schedule),timezone:this.timezone}))}}}selectedOptionChangedHandler(e){const{name:n,value:t}=e.detail;if(n==="timezone"){this.timezone=t;if(typeof this.internals.setFormValue!=="function"){return}this.internals.setFormValue(JSON.stringify({openHours:this.scheduleToOpenHours(this.schedule),timezone:this.timezone}))}}connectedCallback(){s("nylas-availability-picker","connectedCallback")}disconnectedCallback(){s("nylas-availability-picker","disconnectedCallback")}componentWillLoad(){s("nylas-availability-picker","componentWillLoad");this.host.setAttribute("name",this.name)}componentDidLoad(){s("nylas-availability-picker","componentDidLoad");if(this.openHours&&this.openHours.length>0){this.openHoursToSchedule(this.openHours)}if(typeof this.internals.setFormValue!=="function"){return}this.internals.setFormValue(JSON.stringify({openHours:this.scheduleToOpenHours(this.schedule),timezone:this.timezone}))}getOverlaps(e){let n=e.map(((e,n)=>({start:o(e.start),end:o(e.end),originalIndex:n})));n.sort(((e,n)=>e.start-n.start));let t=[];for(let e=1;e<n.length;e++){if(n[e].start<n[e-1].end){if(!t.includes(n[e].originalIndex)){t.push(n[e].originalIndex)}if(!t.includes(n[e-1].originalIndex)){t.push(n[e-1].originalIndex)}}}return t.sort(((e,n)=>e-n))}addTimeRange(e){const n=this.schedule[e];const t=0;const a=1425;if(n.length===0){this.schedule[e]=[{start:"09:00am",end:"05:00pm"}]}else{const i=n.map((e=>({start:o(e.start),end:o(e.end)}))).sort(((e,n)=>e.start-n.start));const s=i[i.length-1].end;if(s+60<=a){this.schedule[e].push({start:l(d(s)),end:l(d(s+60))})}else{let n=false;if(i[0].start>t+60){this.schedule[e].push({start:l(d(t)),end:l(d(t+60))});n=true}if(!n){for(let n=0;n<i.length-1;n++){const t=i[n].end;const a=i[n+1].start;if(a-t>=60){this.schedule[e].push({start:l(d(t)),end:l(d(t+60))});break}}}}}this.schedule[e].sort(((e,n)=>o(e.start)-o(n.start)));this.schedule={...this.schedule}}removeTimeRange(e,n){this.schedule[e].splice(n,1);this.schedule={...this.schedule}}setTime(e,n,t){const[a,i]=e.split("_");const[s,o]=a.split(":");if(i==="start"){this.schedule[s][o].start=t}else if(i==="end"){this.schedule[s][o].end=t}this.internals.setValidity({customError:false});this.schedule={...this.schedule}}setFormError(e,n,t){const[a,i]=e.split("_");const s=this.host.shadowRoot?.getElementById(e);if(s){this.internals.setValidity({customError:true},`Invalid ${i} time`,s)}}openHoursToSchedule(e){const n={SUN:[],MON:[],TUE:[],WED:[],THU:[],FRI:[],SAT:[]};e.forEach((e=>{e.days.forEach((t=>{const a=this.getDayKey(t);const i=l(e.start);const s=l(e.end);const o={start:i,end:s};let r=false;if(n[a]){r=n[a].some((e=>e.start===o.start&&e.end===o.end))}if(!r){if(n[a]){n[a].push(o)}else{n[a]=[o]}}}))}));this.timezone=this.defaultTimezone;this.schedule=n}getDayKey(e){const n=["SUN","MON","TUE","WED","THU","FRI","SAT"];return n[e]}scheduleToOpenHours(e){const n=["SUN","MON","TUE","WED","THU","FRI","SAT"];let t=new Map;n.forEach(((n,a)=>{if(e[n]){e[n].forEach((e=>{const n=r(e.start);const i=r(e.end);const s=`${n}-${i}`;if(!t.has(s)){t.set(s,{days:[a],start:n,end:i})}else{let e=t.get(s);if(e){e.days.push(a);t.set(s,e)}}}))}}));let a=[];t.forEach(((e,n)=>{a.push({days:e.days,start:e.start,end:e.end,timezone:this.timezone})}));return a}render(){const e=Object.keys(g).map((e=>({label:g[e],value:e})));return n(a,{key:"ba1266dfd7debd6f7efa1f5ddc48052806e8f594"},n("div",{key:"34a52a728438348052f5159d347ff43071742bd4",class:"nylas-availability-picker"},n("div",{key:"3a5e39e6e3d3ceaef4ce85fba1d2b1e5e7a52cda",class:"header",part:"nap__header"},n("h3",{key:"4aad60a39b816631b0c9cb89741ceca1da22e05b"},"General availability"),n("p",{key:"71755be3b152af545828336c3601c24434f764b4"},"Set your availability for scheduling meetings.")),n("div",{key:"db86358f996a6b7f75572f65ad469c1c80dee5a2",class:"content"},n("div",{key:"63a90d8094f600815e2b7e8a13c9cbd25a8a14c1",class:"select-timezone",part:"nap__select-timezone"},n("h4",{key:"612b2808fe828cf8867c98ea0f80f5a3b3a5ab52",class:"sub-header"},"Select timezone",n("span",{key:"467c6940b46b12101074211216c920d4c7db40af",class:"icon"},n("tooltip-component",{key:"8f98c2efd0ebe318854857bcb5a0d56794f5d454"},n("info-icon",{key:"e35b77bdd317ff9f25e0c1157acfe734ea81541f",slot:"tooltip-icon"}),n("span",{key:"4fb700e4030ae345e872f2da8352ca00078b57a6",slot:"tooltip-content"},"Select your timezone for displaying availability.")))),n("select-dropdown",{key:"78270f32b150107baf43fbd7b2a882221ecf33f6",name:"timezone",exportparts:"sd_dropdown: nap__timezone-container, sd_dropdown-button: nap__timezone-button, sd_dropdown-content: nap__timezone-dropdown-content",options:e,defaultSelectedOption:e.find((e=>e.value===this.defaultTimezone))},n("span",{key:"8c76fd5d2396e75a07a2b922d9b44a27a6b4baf0",slot:"select-icon"},n("globe-icon",{key:"885b683dd6496ed199d576d6a8139609b04ad661",width:"20",height:"20"})))),n("div",{key:"e6541508d6d99ab9ba7b752c5eb14be33bd517d9",class:"availability",part:"nap__availability"},Object.keys(this.schedule).map((e=>{const t=e;const a=this.schedule[e];return n("div",{class:"availability-day"},n("div",{class:"day",part:"nap__day"},n("input",{type:"checkbox",name:t,id:t,checked:a.length>0,onClick:()=>{if(a.length>0){this.schedule[t]=[]}else{this.schedule[t]=[{start:"09:00am",end:"05:00pm"}]}this.schedule={...this.schedule}}}),n("label",{htmlFor:t,"aria-label":"Select day"},t)),n("div",{class:"time-ranges",part:"nap__time-ranges"},a.length?null:n("span",{class:"unavailable"},"Unavailable"),a.length>0&&a.map(((a,i)=>{const s=`${e}:${i}_start`;const o=`${e}:${i}_end`;return n("div",{class:"time-range",part:"nap__time-range"},n("div",{class:"pickers"},n("nylas-time-window-picker",{id:s,hasError:this.overlapDays[t]?.includes(i),time:a.start,name:s,key:s,exportparts:"time-picker: nap__time-picker-container, time-input: nap__time-picker-input, times: nap__time-picker-times",setTime:(e,n)=>this.setTime(s,e,n),setFormError:(e,n)=>this.setFormError(s,e,n)}),n("span",null," - "),n("nylas-time-window-picker",{id:o,hasError:this.overlapDays[t]?.includes(i),time:a.end,name:o,key:o,minimumStartTime:a.start,exportparts:"time-picker: nap__time-picker-container, time-input: nap__time-picker-input, times: nap__time-picker-times",setTime:(e,n)=>this.setTime(o,e,n),setFormError:(e,n)=>this.setFormError(o,e,n)})),n("button",{onClick:()=>this.removeTimeRange(t,i)},n("close-icon",null)))})),n("p",{class:"error"},this.overlapDays[t]?"Overlapping time ranges":"")),n("div",null,a.length>0?n("button",{onClick:()=>this.addTimeRange(t),part:"nap__add-time-range"},n("add-circle-icon",null)):null))}))))))}static get formAssociated(){return true}get host(){return i(this)}static get watchers(){return{name:["elementNameChangedHandler"],selectedConfiguration:["configChangedHandler"],schedule:["scheduleChanged"]}}};B([m({name:"nylas-availability-picker",stateToProps:new Map([["schedulerConfig.selectedConfiguration","selectedConfiguration"]]),fireRegisterEvent:true}),K("design:type",Function),K("design:paramtypes",[]),K("design:returntype",void 0)],q.prototype,"render",null);q.style=V;const J=':host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif;width:inherit}.nylas-booking-calendar-picker{width:inherit;display:flex;flex-direction:column;margin:1rem;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-200)}.nylas-booking-calendar-picker .header{padding:1rem;border-bottom:1px solid var(--nylas-base-200)}.nylas-booking-calendar-picker .header h3{margin:0;font-size:1rem;font-weight:600;line-height:20px;color:var(--nylas-base-900);text-align:left}.nylas-booking-calendar-picker .header p{margin:0.25rem 0 0 0;font-size:0.875rem;font-weight:400;line-height:20px;color:var(--nylas-base-600);text-align:left}.nylas-booking-calendar-picker .nylas-booking-calendar-picker__loading{padding-bottom:1rem;display:flex;flex-direction:column;gap:4px}.nylas-booking-calendar-picker .nylas-booking-calendar-picker__loading .label{display:flex;align-items:center;gap:0.5rem;margin:1rem 1rem 0;color:var(--nylas-base-800)}.nylas-booking-calendar-picker .nylas-booking-calendar-picker__loading .loading-button{margin:0 1rem;padding:0;width:inherit;height:48px;color:black;font-size:1rem;cursor:not-allowed;display:flex;gap:0.5rem;justify-content:space-between;align-items:center;background:transparent;border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x)}.nylas-booking-calendar-picker .nylas-booking-calendar-picker__loading .loading-button span{padding:0 1rem}.nylas-booking-calendar-picker .nylas-booking-calendar-picker__dropdown{padding:1rem;display:flex;flex-direction:column;gap:4px}.nylas-booking-calendar-picker .nylas-booking-calendar-picker__dropdown span.label{display:flex;align-items:center;gap:4px;color:var(--nylas-base-800)}.nylas-booking-calendar-picker .nylas-booking-calendar-picker__dropdown span.label tooltip-component{display:flex}.nylas-booking-calendar-picker .nylas-booking-calendar-picker__dropdown select-dropdown::part(sd_dropdown){width:100%}.nylas-booking-calendar-picker .nylas-booking-calendar-picker__dropdown select-dropdown::part(sd_dropdown-content){width:100%;max-width:unset}.nylas-booking-calendar-picker .nylas-booking-calendar-picker__dropdown select-dropdown::part(sd_dropdown-button){width:100%;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);padding:1rem}.nylas-booking-calendar-picker .nylas-booking-calendar-picker__dropdown select-dropdown::part(sd_dropdown-button-selected-label){max-width:calc(100% - 2rem);font-family:var(--nylas-font-family);font-size:16px;line-height:24px}';const G=J;var X=undefined&&undefined.__decorate||function(e,n,t,a){var i=arguments.length,s=i<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,t):a,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,n,t,a);else for(var l=e.length-1;l>=0;l--)if(o=e[l])s=(i<3?o(s):i>3?o(n,t,s):o(n,t))||s;return i>3&&s&&Object.defineProperty(n,t,s),s};var Q=undefined&&undefined.__metadata||function(e,n){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,n)};const ee=class{constructor(n){e(this,n);this.valueChanged=t(this,"valueChanged",7);if(n.$hostElement$["s-ei"]){this.internals=n.$hostElement$["s-ei"]}else{this.internals=n.$hostElement$.attachInternals();n.$hostElement$["s-ei"]=this.internals}this.calendars=undefined;this.currentUser=undefined;this.name="booking-calendar";this.defaultBookingCalendar="";this.selectedCalendar=""}connectedCallback(){s("nylas-booking-calendar-picker","connectedCallback")}disconnectedCallback(){s("nylas-booking-calendar-picker","disconnectedCallback")}componentWillLoad(){s("nylas-booking-calendar-picker","componentWillLoad");this.host.setAttribute("name",this.name)}componentDidLoad(){s("nylas-booking-calendar-picker","componentDidLoad");this.defaultBookingCalendar=this.defaultBookingCalendar||this.currentUser?.email||"";if(typeof this.internals.setFormValue==="function"){this.internals.setFormValue(this.defaultBookingCalendar.toString(),"booking-calendar")}this.selectedCalendar=this.defaultBookingCalendar||this.currentUser?.email||""}componentWillUpdate(){s("nylas-booking-calendar-picker","componentWillUpdate")}componentDidUpdate(){s("nylas-booking-calendar-picker","componentDidUpdate")}componentWillRender(){s("nylas-booking-calendar-picker","componentWillRender")}componentDidRender(){s("nylas-booking-calendar-picker","componentDidRender")}elementNameChangedHandler(e){s("nylas-booking-calendar-picker","elementNameChangedHandler",e);this.host.setAttribute("name",e)}selectedOptionChangedHandler(e){s("nylas-booking-calendar-picker","selectedOptionChangedHandler",e.detail);const n=e=>{const{value:n}=e.detail;this.selectedCalendar=n;this.internals.setFormValue(n.toString(),this.name)};this.valueChanged.emit({value:e.detail.value,name:this.name,valueChanged:n})}render(){const e=this.calendars?.map((e=>({value:e.id,label:e.name})))??[];return n(a,null,n("div",{class:"nylas-booking-calendar-picker",part:"nbcp"},n("div",{class:"header",part:"nbcp__header"},n("h3",null,"Calendar booking"),n("p",null,"Choose calendar where you’d like the event bookings to show up.")),e.length>0?n("div",{class:"nylas-booking-calendar-picker__dropdown"},n("span",{class:"label",part:"nbcp__input-label"},"Select a calendar to book meetings on",n("tooltip-component",null,n("info-icon",{slot:"tooltip-icon"}),n("span",{slot:"tooltip-content"},"Check availability across one or multiple calendars. If multiple calendars are selected, you must be available across all of them to be considered available."))),n("select-dropdown",{name:"booking-calendar",options:e,withSearch:false,exportparts:"sd_dropdown: nbcp__dropdown, sd_dropdown-button: nbcp__dropdown-button, sd_dropdown-content: nbcp__dropdown-content",defaultSelectedOption:e.find((e=>e.value==this.defaultBookingCalendar))??e[0]})):n("div",{class:"nylas-booking-calendar-picker__loading"},n("span",{class:"label"},"Select a calendar to book meetings on ",n("info-icon",null)),n("div",{class:"loading-button"},n("span",null,"Loading...")))))}static get formAssociated(){return true}get host(){return i(this)}static get watchers(){return{name:["elementNameChangedHandler"]}}};X([m({name:"nylas-booking-calendar-picker",stateToProps:new Map([["schedulerConfig.calendars","calendars"],["schedulerConfig.currentUser","currentUser"]]),eventToProps:{valueChanged:async(e,n)=>{const{valueChanged:t}=e.detail;if(t){t(e)}}},fireRegisterEvent:true}),Q("design:type",Function),Q("design:paramtypes",[]),Q("design:returntype",void 0)],ee.prototype,"render",null);ee.style=G;const ne=':host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif;width:inherit}.nylas-buffer-time{width:inherit;display:flex;flex-direction:column;margin:1rem;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-200);text-align:left}.nylas-buffer-time .header{padding:1rem;border-bottom:1px solid var(--nylas-base-200)}.nylas-buffer-time .header h3{margin:0;font-size:1rem;font-weight:600;line-height:20px;color:var(--nylas-base-900);text-align:left}.nylas-buffer-time .header p{margin:0.25rem 0 0 0;font-size:0.875rem;font-weight:400;line-height:20px;color:var(--nylas-base-600);text-align:left}.nylas-buffer-time .nylas-buffer-time__body{display:grid;grid-template-columns:1fr auto}@media screen and (max-width: 768px){.nylas-buffer-time .nylas-buffer-time__body{grid-template-columns:1fr}}.nylas-buffer-time .nylas-buffer-time__body .nylas-buffer-time__dropdown{padding:1rem;display:flex;flex-direction:column;gap:1rem;border-right:1px solid var(--nylas-base-200);color:var(--nylas-base-800)}@media screen and (max-width: 768px){.nylas-buffer-time .nylas-buffer-time__body .nylas-buffer-time__dropdown{border:none}}.nylas-buffer-time .nylas-buffer-time__body .nylas-buffer-time__dropdown .nylas-buffer-time__row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1rem}.nylas-buffer-time .nylas-buffer-time__body .nylas-buffer-time__dropdown .nylas-buffer-time__row label{width:200px}.nylas-buffer-time .nylas-buffer-time__body .nylas-buffer-time__dropdown .nylas-buffer-time__row .dropdown-container{display:flex;gap:1rem;align-items:center;justify-content:flex-end}.nylas-buffer-time .nylas-buffer-time__body .nylas-buffer-time__preview{width:208px;background:var(--nylas-base-25);border-bottom-right-radius:var(--nylas-border-radius-2x)}@media screen and (max-width: 768px){.nylas-buffer-time .nylas-buffer-time__body .nylas-buffer-time__preview{width:inherit;border-bottom-left-radius:var(--nylas-border-radius-2x)}}.nylas-buffer-time .nylas-buffer-time__body .nylas-buffer-time__preview h4{font-size:14px;line-height:24px;color:var(--nylas-base-600);font-family:var(--nylas-font-family);font-weight:500;text-align:center}.nylas-buffer-time .nylas-buffer-time__body .nylas-buffer-time__preview .preview-container{padding:0 2rem 1rem}.nylas-buffer-time .nylas-buffer-time__body .nylas-buffer-time__preview .preview-container .slot{background-color:transparent;border-top:1px solid var(--nylas-base-300)}.nylas-buffer-time .nylas-buffer-time__body .nylas-buffer-time__preview .preview-container .slot.active{background-color:var(--nylas-base-100)}.nylas-buffer-time .nylas-buffer-time__body .nylas-buffer-time__preview .preview-container .slot:last-of-type{border-bottom:1px solid var(--nylas-base-300)}.nylas-buffer-time .nylas-buffer-time__body .nylas-buffer-time__preview .preview-container .event-slot{background-color:var(--nylas-base-600);border-top:1px solid var(--nylas-base-300);border-bottom:1px solid var(--nylas-base-300)}.nylas-buffer-time .nylas-buffer-time__dropdown select-dropdown::part(sd_dropdown-button){width:104px;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);padding:1rem}.nylas-buffer-time .nylas-buffer-time__dropdown select-dropdown::part(sd_dropdown-content){width:100%}.nylas-buffer-time .nylas-buffer-time__dropdown select-dropdown::part(sd_dropdown-button-selected-label){max-width:calc(100% - 2rem);font-family:var(--nylas-font-family);font-size:16px;line-height:24px}';const te=ne;var ae=undefined&&undefined.__decorate||function(e,n,t,a){var i=arguments.length,s=i<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,t):a,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,n,t,a);else for(var l=e.length-1;l>=0;l--)if(o=e[l])s=(i<3?o(s):i>3?o(n,t,s):o(n,t))||s;return i>3&&s&&Object.defineProperty(n,t,s),s};var ie=undefined&&undefined.__metadata||function(e,n){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,n)};const se=class{constructor(n){e(this,n);this.valueChanged=t(this,"valueChanged",7);if(n.$hostElement$["s-ei"]){this.internals=n.$hostElement$["s-ei"]}else{this.internals=n.$hostElement$.attachInternals();n.$hostElement$["s-ei"]=this.internals}this.name="buffer-time";this.buffer={before:0,after:0};this.selectedBeforeBufferTime=this.buffer.before;this.selectedAfterBufferTime=this.buffer.after}connectedCallback(){s("nylas-buffer-time","connectedCallback")}disconnectedCallback(){s("nylas-buffer-time","disconnectedCallback")}componentWillLoad(){s("nylas-buffer-time","componentWillLoad");this.host.setAttribute("name",this.name)}componentDidLoad(){s("nylas-buffer-time","componentDidLoad");if(typeof this.internals.setFormValue==="function"){const e={before:this.selectedBeforeBufferTime,after:this.selectedAfterBufferTime};this.internals.setFormValue(JSON.stringify(e),this.name)}this.selectedAfterBufferTime=this.buffer.after;this.selectedBeforeBufferTime=this.buffer.before}componentWillUpdate(){s("nylas-buffer-time","componentWillUpdate")}componentDidUpdate(){s("nylas-buffer-time","componentDidUpdate")}componentWillRender(){s("nylas-buffer-time","componentWillRender")}componentDidRender(){s("nylas-buffer-time","componentDidRender")}elementNameChangedHandler(e){s("nylas-buffer-time","elementNameChangedHandler",e);this.host.setAttribute("name",e)}selectedOptionChangedHandler(e){s("nylas-buffer-time","selectedOptionChangedHandler",e.detail);const n=e=>{const{value:n,name:t}=e.detail;if(t==="before-buffer-time"){this.selectedBeforeBufferTime=parseInt(n)}else if(t==="after-buffer-time"){this.selectedAfterBufferTime=parseInt(n)}const a={before:this.selectedBeforeBufferTime,after:this.selectedAfterBufferTime};this.internals.setFormValue(JSON.stringify(a),"booking-calendar")};this.valueChanged.emit({...e.detail,valueChanged:n})}renderPreview(){const e=4;const t=16;const a=t*2;const i=e=>{const n=Math.floor(e/30);const a=e%30/30*t;return{fullSlots:n,partialFillHeight:a}};const s=()=>{const{fullSlots:a,partialFillHeight:s}=i(this.selectedBeforeBufferTime);return Array.from({length:e},((i,o)=>{const l=this.selectedBeforeBufferTime>0&&o>e-a-1;const r=this.selectedBeforeBufferTime>0&&o===e-a-1&&s>0;let d={};if(l&&!r){d.backgroundColor="var(--nylas-base-100)"}else if(r){d.background=`linear-gradient(to top, var(--nylas-base-100) ${s}px, transparent 0)`}return n("div",{key:o,class:`slot ${l?"active":""}`,style:{height:`${t}px`,...d}})}))};const o=()=>{const{fullSlots:a,partialFillHeight:s}=i(this.selectedAfterBufferTime);return Array.from({length:e},((e,i)=>{const o=this.selectedAfterBufferTime>0&&i<a;const l=i===a&&s>0;let r={};if(o&&!l){r.backgroundColor="var(--nylas-base-100)"}else if(l){r.background=`linear-gradient(to bottom, var(--nylas-base-100) ${s}px, transparent 0)`}return n("div",{key:i,class:`slot ${o?"active":""}`,style:{height:`${t}px`,...r}})}))};return n("div",{class:"preview-container"},s(),n("div",{class:"event-slot",style:{height:`${a}px`}}),o())}render(){const e=Array.from({length:121},((e,n)=>({label:n.toString(),value:n})));return n(a,null,n("div",{class:"nylas-buffer-time",part:"nbt"},n("div",{class:"header",part:"nbt__header"},n("h3",null,"Buffer time"),n("p",null,"Add buffer time before and after the event.")),n("div",{class:"nylas-buffer-time__body",part:"nbt__body"},n("div",{class:"nylas-buffer-time__dropdown"},n("div",{class:"nylas-buffer-time__row"},n("label",null,"Before the event"),n("div",{class:"dropdown-container"},n("select-dropdown",{id:"before-buffer-time",name:"before-buffer-time",exportparts:"sd_dropdown: nbt__dropdown-before, sd_dropdown-button: nbt__dropdown-button-before, sd_dropdown-content: nbt__dropdown-content-before",options:e,defaultSelectedOption:e.find((e=>e.value==this.selectedBeforeBufferTime))??e[0]}),n("span",null,"mins"))),n("div",{class:"nylas-buffer-time__row"},n("label",null,"After the event"),n("div",{class:"dropdown-container"},n("select-dropdown",{id:"after-buffer-time",name:"after-buffer-time",exportparts:"sd_dropdown: nbt__dropdown-after, sd_dropdown-button: nbt__dropdown-button-after, sd_dropdown-content: nbt__dropdown-content-after",options:e,defaultSelectedOption:e.find((e=>e.value==this.selectedAfterBufferTime))??e[0]}),n("span",null,"mins")))),n("div",{class:"nylas-buffer-time__preview",part:"nbt__preview"},n("h4",null,"PREVIEW"),this.renderPreview()))))}static get formAssociated(){return true}get host(){return i(this)}static get watchers(){return{name:["elementNameChangedHandler"]}}};ae([m({name:"nylas-buffer-time",eventToProps:{valueChanged:async(e,n)=>{const{valueChanged:t}=e.detail;if(t){t(e)}}},fireRegisterEvent:true}),ie("design:type",Function),ie("design:paramtypes",[]),ie("design:returntype",void 0)],se.prototype,"render",null);se.style=te;const oe=':host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif;width:inherit}.nylas-calendar-picker{width:inherit;display:flex;flex-direction:column;margin:1rem;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-200)}.nylas-calendar-picker .header{padding:1rem;border-bottom:1px solid var(--nylas-base-200)}.nylas-calendar-picker .header h3{margin:0;font-size:1rem;font-weight:600;line-height:20px;color:var(--nylas-base-900);text-align:left}.nylas-calendar-picker .header p{margin:0.25rem 0 0 0;font-size:0.875rem;font-weight:400;line-height:20px;color:var(--nylas-base-600);text-align:left}.nylas-calendar-picker .nylas-calendar-picker__loading{padding-bottom:1rem;display:flex;flex-direction:column;gap:4px}.nylas-calendar-picker .nylas-calendar-picker__loading .label{display:flex;align-items:center;gap:0.5rem;margin:1rem 1rem 0;color:var(--nylas-base-800)}.nylas-calendar-picker .nylas-calendar-picker__loading .label tooltip-component{display:flex}.nylas-calendar-picker .nylas-calendar-picker__loading .loading-button{margin:0 1rem;padding:0;width:inherit;height:48px;color:black;font-size:1rem;cursor:not-allowed;display:flex;gap:0.5rem;justify-content:space-between;align-items:center;background:transparent;border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x)}.nylas-calendar-picker .nylas-calendar-picker__loading .loading-button span{padding:0 1rem}.nylas-calendar-picker .nylas-calendar-picker__dropdown{padding:1rem}.nylas-calendar-picker .nylas-calendar-picker__dropdown multi-select-dropdown::part(msd_dropdown){width:100%;display:flex;flex-direction:column;gap:4px}.nylas-calendar-picker .nylas-calendar-picker__dropdown multi-select-dropdown::part(msd_dropdown-button){width:100%;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);padding:1rem}.nylas-calendar-picker .nylas-calendar-picker__dropdown multi-select-dropdown::part(msd_dropdown-content){width:100%;max-width:unset}.nylas-calendar-picker .nylas-calendar-picker__dropdown multi-select-dropdown::part(msd_dropdown-button-selected-label){max-width:calc(100% - 2rem);font-family:var(--nylas-font-family);font-size:16px;line-height:24px}';const le=oe;var re=undefined&&undefined.__decorate||function(e,n,t,a){var i=arguments.length,s=i<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,t):a,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,n,t,a);else for(var l=e.length-1;l>=0;l--)if(o=e[l])s=(i<3?o(s):i>3?o(n,t,s):o(n,t))||s;return i>3&&s&&Object.defineProperty(n,t,s),s};var de=undefined&&undefined.__metadata||function(e,n){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,n)};const ce=class{constructor(n){e(this,n);this.valueChanged=t(this,"valueChanged",7);if(n.$hostElement$["s-ei"]){this.internals=n.$hostElement$["s-ei"]}else{this.internals=n.$hostElement$.attachInternals();n.$hostElement$["s-ei"]=this.internals}this.calendars=undefined;this.currentUser=undefined;this.name="calendar";this.defaultSelectedCalendars=[];this.selectedCalendars=[]}elementNameChangedHandler(e){s("nylas-calendar-picker","elementNameChangedHandler",e);this.host.setAttribute("name",e)}connectedCallback(){s("nylas-calendar-picker","connectedCallback")}disconnectedCallback(){s("nylas-calendar-picker","disconnectedCallback")}componentWillLoad(){s("nylas-calendar-picker","componentWillLoad");this.host.setAttribute("name",this.name)}componentDidLoad(){s("nylas-calendar-picker","componentDidLoad");if(typeof this.internals.setFormValue==="function"){this.internals.setFormValue(this.defaultSelectedCalendars.toString(),"calendar")}}componentWillUpdate(){s("nylas-calendar-picker","componentWillUpdate")}componentDidUpdate(){s("nylas-calendar-picker","componentDidUpdate")}componentWillRender(){s("nylas-calendar-picker","componentWillRender")}componentDidRender(){s("nylas-calendar-picker","componentDidRender")}selectedOptionsChangedHandler(e){s("nylas-calendar-picker","selectedOptionChangedHandler",e.detail);const n=e=>{const{value:n}=e.detail;this.selectedCalendars=[...n];this.internals.setFormValue(n.toString(),"calendar")};this.valueChanged.emit({...e.detail,name:this.name,valueChangedHandler:n})}render(){const e=this.calendars?.map((e=>({value:e.id,label:e.name,selected:this.defaultSelectedCalendars?.includes(e.id)||(this.defaultSelectedCalendars?.includes("primary")||this.defaultSelectedCalendars?.length===0?e.id===this.currentUser?.email:false)})))??[];return n(a,null,n("div",{class:"nylas-calendar-picker",part:"ncp"},n("div",{class:"header",part:"ncp__header"},n("h3",null,"Calendar availability"),n("p",null,"Select calendars that you’d like to use for checking your availability.")),e.length>0?n("div",{class:"nylas-calendar-picker__dropdown"},n("multi-select-dropdown",{name:"calendar",label:"Select calendars that will be checked for availability",options:e,exportparts:"msd__dropdown: ncp__dropdown, msd__dropdown-button: ncp__dropdown-button, msd__dropdown-content: ncp__dropdown-content"},n("span",{slot:"label-icon"},n("tooltip-component",null,n("info-icon",{slot:"tooltip-icon"}),n("span",{slot:"tooltip-content"},"Check availability across one or multiple calendars. If multiple calendars are selected, you must be available across all of them to be considered available. The default is your primary calendar if none are selected."))))):n("div",{class:"nylas-calendar-picker__loading"},n("span",{class:"label"},"Select calendars that will be checked for availability ",n("info-icon",null)),n("div",{class:"loading-button"},n("span",null,"Loading...")))))}static get formAssociated(){return true}get host(){return i(this)}static get watchers(){return{name:["elementNameChangedHandler"]}}};re([m({name:"nylas-calendar-picker",stateToProps:new Map([["schedulerConfig.calendars","calendars"],["schedulerConfig.currentUser","currentUser"]]),eventToProps:{valueChanged:async(e,n)=>{const{valueChangedHandler:t}=e.detail;if(t){t(e)}}},fireRegisterEvent:true}),de("design:type",Function),de("design:paramtypes",[]),de("design:returntype",void 0)],ce.prototype,"render",null);ce.style=le;const fe=':host{--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}.nylas-event-description{display:flex;flex-direction:column;gap:4px}.nylas-event-description label{display:flex;align-items:center;color:var(--nylas-base-800);font-size:16px;font-style:normal;font-weight:400;line-height:150%;}.nylas-event-description label span.label-icon{margin-left:4px}.nylas-event-description label span.label-icon tooltip-component{display:flex}.nylas-event-description textarea{padding:12px 16px;border-width:1;resize:vertical;border-radius:8px;font-family:var(--nylas-font-family);font-size:16px;line-height:24px;border:1px solid var(--nylas-base-200)}.nylas-event-description textarea::-webkit-resizer{display:none}';const pe=fe;var be=undefined&&undefined.__decorate||function(e,n,t,a){var i=arguments.length,s=i<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,t):a,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,n,t,a);else for(var l=e.length-1;l>=0;l--)if(o=e[l])s=(i<3?o(s):i>3?o(n,t,s):o(n,t))||s;return i>3&&s&&Object.defineProperty(n,t,s),s};var he=undefined&&undefined.__metadata||function(e,n){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,n)};const ye=class{constructor(n){e(this,n);this.valueChanged=t(this,"valueChanged",7);if(n.$hostElement$["s-ei"]){this.internals=n.$hostElement$["s-ei"]}else{this.internals=n.$hostElement$.attachInternals();n.$hostElement$["s-ei"]=this.internals}this.selectedConfiguration=undefined;this.eventDescription=undefined;this.description=this.eventDescription||this.selectedConfiguration?.event_booking?.description||"";this.name="description"}elementNameChangedHandler(e){s("nylas-event-description","elementNameChangedHandler",e);this.host.setAttribute("name",e)}selectedConfigurationChangedHandler(e,n){s("nylas-custom-booking-flow","selectedConfigurationChangedHandler",e,n);if(e?.event_booking?.description){this.description=e?.event_booking?.description}}connectedCallback(){s("nylas-event-description","connectedCallback")}componentWillLoad(){s("nylas-event-description","componentWillLoad");this.host.setAttribute("name",this.name)}componentDidLoad(){s("nylas-event-description","componentDidLoad")}disconnectedCallback(){s("nylas-event-description","disconnectedCallback")}handleChange(e){this.description=e.target.value;this.internals.setFormValue(e.target.value,"description");this.valueChanged.emit({value:e.target.value,name:this.name})}render(){return n(a,{key:"08b8a3b8865cc09c467b5b8abc36d2d0f7039fcd"},n("div",{key:"b906947588ca23a2edec4f31f04935cdc82bad96",class:"nylas-event-description",part:"nedesc"},n("label",{key:"144ddfc7a8eb64434981122cc3df24dc89a00c63",htmlFor:"description"},"Event description",n("span",{key:"6effc462e60a48b4eb55e325baf24f51f7c25854",class:"label-icon"},n("tooltip-component",{key:"ee1d7faad42bdae393e4a20b9ec499c217aa21fc"},n("info-icon",{key:"aecfd40dca5604d491e085be8fedb92e75276547",slot:"tooltip-icon"}),n("span",{key:"ce7cfceffe163a4c231813ed85ff7ebc80c8515d",slot:"tooltip-content"},"Provide any additional details for your event.")))),n("textarea",{key:"0445a874c8d219548447a56780e435b986e159bc",id:"description",part:"nedesc__textarea",name:"description",value:this.description,maxlength:"8192",onInput:e=>this.handleChange(e)})))}static get formAssociated(){return true}get host(){return i(this)}static get watchers(){return{name:["elementNameChangedHandler"],selectedConfiguration:["selectedConfigurationChangedHandler"]}}};be([m({name:"nylas-event-description",stateToProps:new Map([["schedulerConfig.selectedConfiguration","selectedConfiguration"]]),eventToProps:{},fireRegisterEvent:true}),he("design:type",Function),he("design:paramtypes",[]),he("design:returntype",void 0)],ye.prototype,"render",null);ye.style=pe;const ue=':host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}.nylas-event-duration{display:flex;flex-direction:column;gap:4px}.nylas-event-duration label{display:flex;align-items:center;color:var(--nylas-base-800);font-size:16px;font-style:normal;font-weight:400;line-height:150%;}.nylas-event-duration label span.required{color:var(--nylas-error, #cc4841)}.nylas-event-duration label span.label-icon{margin-left:4px}.nylas-event-duration label span.label-icon tooltip-component{display:flex}.nylas-event-duration__wrapper{display:flex;align-items:center;gap:0.5rem}.nylas-event-duration__wrapper input{padding:12px 16px;border-width:1;border-radius:8px;border:1px solid var(--nylas-base-200);font-family:var(--nylas-font-family);font-size:16px;line-height:24px;width:48px}.nylas-event-duration__wrapper select-dropdown::part(sd_dropdown-button){border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);padding:12px 16px}.nylas-event-duration__wrapper select-dropdown::part(sd_dropdown-button-selected-label){font-family:var(--nylas-font-family);font-size:16px;line-height:24px}';const me=ue;var ge=undefined&&undefined.__decorate||function(e,n,t,a){var i=arguments.length,s=i<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,t):a,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,n,t,a);else for(var l=e.length-1;l>=0;l--)if(o=e[l])s=(i<3?o(s):i>3?o(n,t,s):o(n,t))||s;return i>3&&s&&Object.defineProperty(n,t,s),s};var ve=undefined&&undefined.__metadata||function(e,n){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,n)};const ke=class{constructor(n){e(this,n);this.valueChanged=t(this,"valueChanged",7);if(n.$hostElement$["s-ei"]){this.internals=n.$hostElement$["s-ei"]}else{this.internals=n.$hostElement$.attachInternals();n.$hostElement$["s-ei"]=this.internals}this.selectedConfiguration=undefined;this.name="duration";this.eventDurationMinutes=undefined;this.duration=this.eventDurationMinutes?this.eventDurationMinutes>=60?this.eventDurationMinutes/60:this.eventDurationMinutes:5;this.durationMinutes=this.eventDurationMinutes??5;this.durationIncrement=this.eventDurationMinutes?this.eventDurationMinutes>=60?60:1:1}elementNameChangedHandler(e){s("nylas-event-duration","elementNameChangedHandler",e);this.host.setAttribute("name",e)}selectedConfigurationChangedHandler(e){const n=e?.availability?.duration_minutes;if(n){this.duration=n>=60?n/60:n;this.durationMinutes=n??5;this.durationIncrement=n>=60?60:1}}durationMinutesChangedHandler(e,n){s("nylas-event-duration","durationMinutesChangedHandler",e);if(e===n){return}this.valueChanged.emit({value:e.toString(),name:this.name})}connectedCallback(){s("nylas-event-duration","connectedCallback")}componentWillLoad(){s("nylas-event-duration","componentWillLoad");this.host.setAttribute("name",this.name)}componentDidLoad(){s("nylas-event-duration","componentDidLoad");this.internals.setFormValue(this.durationMinutes.toString(),"duration")}disconnectedCallback(){s("nylas-event-duration","disconnectedCallback")}handleChange(e){this.duration=e.target.value;this.durationMinutes=this.duration*this.durationIncrement;this.internals.setFormValue(this.durationMinutes.toString(),this.name)}handleBlur(){if((this.duration===null||this.duration===undefined)&&this.durationIncrement===1){this.duration=5}if((this.duration<=0||this.duration===null||this.duration===undefined)&&this.durationIncrement===60){this.duration=1}if(this.duration<5&&this.durationIncrement===1){this.duration=5}this.durationMinutes=this.duration*this.durationIncrement;this.internals.setFormValue(this.durationMinutes.toString(),"duration")}selectedOptionChangedHandler(e){s("nylas-calendar-picker","selectedOptionChangedHandler",e.detail);const{value:n}=e.detail;this.durationIncrement=parseInt(n);if(this.durationIncrement===1){this.duration=5}else{this.duration=1}this.durationMinutes=this.duration*this.durationIncrement;this.internals.setFormValue(this.durationMinutes.toString(),"duration")}render(){const e=[{value:1,label:"minutes"},{value:60,label:"hours"}];return n(a,{key:"ff6384009f8323807da45260c85f9a833ca78605"},n("div",{key:"9a495df4f19b186fb856b96b2165cf16f633c1d3",class:"nylas-event-duration",part:"ned"},n("label",{key:"ddd0d777d526ebe86fb0353c74fb59d0acc9bb0c",htmlFor:"duration"},"Event duration",n("span",{key:"4d4a72dcd4d5eb94065b92f680143837bacdf064",class:"required"},"*"),n("span",{key:"0b4bf5ea22e494b579deeb5eb94b33e19f7805d7",class:"label-icon"},n("tooltip-component",{key:"7ba13f0936a66b5d5ce8abdddaa2719ee944a53c"},n("info-icon",{key:"c27304efca28e235f150d421b88ebb09b68705fd",slot:"tooltip-icon"}),n("span",{key:"f86eaf51c1360414af98ce557128fafb3c02b6d4",slot:"tooltip-content"},"Set the duration of your event.")))),n("div",{key:"be06a61abc967a09375fb1cb4e634409f4b51909",class:"nylas-event-duration__wrapper"},n("input",{key:"f89c51721313e11ead928cfa70b7a2953b8daaa5",type:"number",part:"ned_input",id:"duration",name:"duration",value:this.duration,onBlur:()=>this.handleBlur(),onInput:e=>this.handleChange(e),min:5}),n("select-dropdown",{key:"aed386f87a5b232f8b65a110d167e342f009a420",name:"event-duration",options:e,exportparts:"sd__dropdown: ned__dropdown, sd__dropdown-button: ned__dropdown-button, sd__dropdown-content: ned__dropdown-content",defaultSelectedOption:e.find((e=>e.value==this.durationIncrement))??e[0],withSearch:false}))))}static get formAssociated(){return true}get host(){return i(this)}static get watchers(){return{name:["elementNameChangedHandler"],selectedConfiguration:["selectedConfigurationChangedHandler"],durationMinutes:["durationMinutesChangedHandler"]}}};ge([m({name:"nylas-event-duration",stateToProps:new Map([["schedulerConfig.selectedConfiguration","selectedConfiguration"]]),eventToProps:{},fireRegisterEvent:true}),ve("design:type",Function),ve("design:paramtypes",[]),ve("design:returntype",void 0)],ke.prototype,"render",null);ke.style=me;const xe=':host{display:block;margin:1rem;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}.nylas-event-info__title{color:var(--nylas-base-900);font-size:16px;font-style:normal;font-weight:600;line-height:20px;margin:0;text-align:left}.nylas-event-info__subtitle{color:var(--nylas-base-600);font-size:14px;font-style:normal;font-weight:400;line-height:20px;margin:0.25rem 0px 0px;text-align:left}.nylas-event-info__content{padding:1rem;display:flex;flex-direction:column;gap:1rem}.nylas-event-info__block{display:flex;justify-content:space-between;gap:0.5rem}';const we=xe;var _e=undefined&&undefined.__decorate||function(e,n,t,a){var i=arguments.length,s=i<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,t):a,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,n,t,a);else for(var l=e.length-1;l>=0;l--)if(o=e[l])s=(i<3?o(s):i>3?o(n,t,s):o(n,t))||s;return i>3&&s&&Object.defineProperty(n,t,s),s};var Ce=undefined&&undefined.__metadata||function(e,n){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,n)};const Le=class{constructor(n){e(this,n);if(n.$hostElement$["s-ei"]){this.internals=n.$hostElement$["s-ei"]}else{this.internals=n.$hostElement$.attachInternals();n.$hostElement$["s-ei"]=this.internals}}connectedCallback(){s("nylas-event-info","connectedCallback")}componentWillLoad(){s("nylas-event-info","componentWillLoad")}componentDidLoad(){s("nylas-event-info","componentDidLoad")}disconnectedCallback(){s("nylas-event-info","disconnectedCallback")}render(){return n(a,{key:"457f3d049f6a14d618ef40112be0edee12d65a2d"},n("nylas-form-card",{key:"b44f094aa09d25ca21a04181d1ae6e66d0a85610"},n("h1",{key:"60ce63fea2cb8871a7680b903af74aca3b6a65ca",slot:"header-title",class:"nylas-event-info__title"},"Event information"),n("h3",{key:"174984461cc3acfe3fca921f8578f9066405f209",slot:"header-subtitle",class:"nylas-event-info__subtitle"},"Enter all event information."),n("div",{key:"7b256c5bf099d277450242fae4b8d7d866249ef8",slot:"content",class:"nylas-event-info__content"},n("slot",{key:"429339b55f9f729202d37e1bf1ffc39f851545ba",name:"inputs"}))))}static get formAssociated(){return true}};_e([m({name:"nylas-event-info",eventToProps:{},fireRegisterEvent:true}),Ce("design:type",Function),Ce("design:paramtypes",[]),Ce("design:returntype",void 0)],Le.prototype,"render",null);Le.style=we;const He=':host{display:block;margin:1rem;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}.nylas-event-limits__title{color:var(--nylas-base-900);font-size:16px;font-style:normal;font-weight:600;line-height:20px;margin:0;text-align:left}.nylas-event-limits__subtitle{color:var(--nylas-base-600);font-size:14px;font-style:normal;font-weight:400;line-height:20px;margin:0.25rem 0px 0px;text-align:left}.nylas-event-limits__content{padding:1rem;display:flex;flex-direction:column;gap:1rem}.nylas-event-limits__block{display:flex;justify-content:space-between;gap:0.5rem}';const Re=He;var De=undefined&&undefined.__decorate||function(e,n,t,a){var i=arguments.length,s=i<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,t):a,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,n,t,a);else for(var l=e.length-1;l>=0;l--)if(o=e[l])s=(i<3?o(s):i>3?o(n,t,s):o(n,t))||s;return i>3&&s&&Object.defineProperty(n,t,s),s};var Me=undefined&&undefined.__metadata||function(e,n){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,n)};const je=class{constructor(n){e(this,n);if(n.$hostElement$["s-ei"]){this.internals=n.$hostElement$["s-ei"]}else{this.internals=n.$hostElement$.attachInternals();n.$hostElement$["s-ei"]=this.internals}}connectedCallback(){s("nylas-event-limits","connectedCallback")}componentWillLoad(){s("nylas-event-limits","componentWillLoad")}componentDidLoad(){s("nylas-event-limits","componentDidLoad")}disconnectedCallback(){s("nylas-event-limits","disconnectedCallback")}render(){return n(a,{key:"5842b0e121d5e2939d95ae584eb70ef7cbae6b1f"},n("nylas-form-card",{key:"57141d607074889e5daa1b00ff124cbb4fbfd33d"},n("h1",{key:"4be5625d740dd7f04d50151ff1af48d175262ec9",slot:"header-title",class:"nylas-event-limits__title"},"Set event limits"),n("h3",{key:"6eb7607dcaf1e7bc344a5fd06ff5555543927aa7",slot:"header-subtitle",class:"nylas-event-limits__subtitle"},"Customize event limits for the event."),n("div",{key:"b3ca5e1a7d63a3d4b79be46536f19a22ec54e95e",slot:"content",class:"nylas-event-limits__content"},n("slot",{key:"452c3dce511c89c4e07fd54bf325264d686c83d6",name:"inputs"}))))}static get formAssociated(){return true}};De([m({name:"nylas-event-limits",eventToProps:{},fireRegisterEvent:true}),Me("design:type",Function),Me("design:paramtypes",[]),Me("design:returntype",void 0)],je.prototype,"render",null);je.style=Re;const Oe=':host{display:block;--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}.nylas-event-title{display:flex;flex-direction:column;gap:4px;position:relative;text-align:left}.nylas-event-title div.title{padding:12px 16px;border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);overflow:scroll;white-space:nowrap;scrollbar-width:thin}.nylas-event-title div.title::-webkit-scrollbar{width:6px;height:6px}.nylas-event-title div.title.error{border-color:var(--nylas-error);outline:none}.nylas-event-title input{padding:12px 16px;border-width:1;border-radius:8px;border:1px solid var(--nylas-base-200)}.nylas-event-title span.help-text{color:var(--nylas-base-800);font-size:14px;font-style:normal;font-weight:400;line-height:21px}.nylas-event-title span.error-message{color:var(--nylas-error)}.nylas-event-title label{display:flex;align-items:center;color:var(--nylas-base-800);font-size:16px;font-style:normal;font-weight:400;line-height:150%;}.nylas-event-title label span.required{color:var(--nylas-error, #cc4841)}.nylas-event-title label span.label-icon{margin-left:4px}.nylas-event-title label span.label-icon tooltip-component{display:flex}.highlighted-tag{background-color:var(--nylas-base-200);border-radius:var(--nylas-border-radius);padding:5px;margin-left:4px}.token-options{display:block;background-color:var(--nylas-base-0);width:100%;max-height:336px;overflow:auto;z-index:1;border-radius:4px;position:absolute;top:80px;box-shadow:0px 4px 6px -2px rgba(0, 0, 0, 0.0509803922);box-shadow:0px 10px 15px -3px rgba(0, 0, 0, 0.1019607843)}@media screen and (max-width: 768px){.token-options{right:0;width:325px;max-width:unset}}.token-options ul{padding:0;list-style-type:none;color:var(--nylas-base-900);max-height:336px;margin:0}.token-options 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:left;cursor:pointer}.token-options ul li .token-label{display:flex;flex-direction:column;font-weight:400}.token-options ul li .token-label .token{color:var(--nylas-abse-900);font-size:16px;line-height:24px}.token-options ul li .token-label .description{color:var(--nylas-base-600);font-size:14px;line-height:21px}.token-options ul li:hover,.token-options ul li:focus,.token-options ul li:active,.token-options ul li.active{background-color:var(--nylas-base-100)}.token-options ul li:hover .token-label .token,.token-options ul li:focus .token-label .token,.token-options ul li:active .token-label .token,.token-options ul li.active .token-label .token{color:var(--nylas-primary)}.token-options .selected{background-color:var(--nylas-base-100)}';const ze=Oe;var Ee=undefined&&undefined.__decorate||function(e,n,t,a){var i=arguments.length,s=i<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,t):a,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,n,t,a);else for(var l=e.length-1;l>=0;l--)if(o=e[l])s=(i<3?o(s):i>3?o(n,t,s):o(n,t))||s;return i>3&&s&&Object.defineProperty(n,t,s),s};var Se=undefined&&undefined.__metadata||function(e,n){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,n)};const Te=class{constructor(n){e(this,n);this.valueChanged=t(this,"valueChanged",7);if(n.$hostElement$["s-ei"]){this.internals=n.$hostElement$["s-ei"]}else{this.internals=n.$hostElement$.attachInternals();n.$hostElement$["s-ei"]=this.internals}this.selectedConfiguration=undefined;this.eventTitle=this.selectedConfiguration?.event_booking?.title;this.name="title";this.showTokens=false;this.availableTokens=v.map((e=>({label:e.token,value:e.value,labelHTML:e})));this.filteredTokens=this.availableTokens;this.ariaActivedescendant="";this.currentWord={$value:"",fullText:"",index:-1,focusOffset:-1};this.validationError=""}elementNameChangedHandler(e){s("nylas-event-title","elementNameChangedHandler",e);this.host.setAttribute("name",e)}ariaActivedescendantChangedHandler(e){s("nylas-event-title","ariaActivedescendantChangedHandler",e);if(e!==""){const n=this.host.shadowRoot?.getElementById(e);n?.classList.add("active")}else{const e=this.host.shadowRoot?.querySelectorAll(".token-options li.active");e?.forEach((e=>e.classList.remove("active")))}}configChangedHandler(e){const n=e?.event_booking?.title;if(n){this.updateEventTitleFromProp(n)}}connectedCallback(){s("nylas-event-title","connectedCallback")}componentWillLoad(){s("nylas-event-title","componentWillLoad");this.host.setAttribute("name",this.name)}componentDidLoad(){s("nylas-event-title","componentDidLoad");this.updateEventTitleFromProp(this.eventTitle||"")}disconnectedCallback(){s("nylas-event-title","disconnectedCallback")}formSubmittedHandler(e){s("nylas-event-title","formSubmittedHandler",e);if(!this.internals?.validity?.valid){this.validationError="Event title is required"}else{this.validationError=""}}updateEventTitleFromProp(e){s("nylas-event-title","eventTitleChangedHandler",e);if(this.titleRef){this.titleRef.innerHTML=this.highlightTokens(e);this.titleRef.focus();if(typeof this.internals.setValidity==="function"){if(e===""){this.internals?.setValidity({customError:true},`Event title is required`,this.titleRef)}else{this.internals?.setValidity({customError:false})}}}}highlightTokens(e){let n=e;v.forEach((e=>{const t=e.value;const a=new RegExp(`(\\${t})(?!\\w)`,"g");n=n.replace(a,'<span class="highlighted-tag">$1</span>')}));return n}getCurrentSelectionForBrowser(){const e=(e,n,t,a)=>{const i=e.replace(/[\u200B-\u200D\uFEFF]/g,"");const s=i.lastIndexOf("$");const o=i.substring(s).split(" ")[0];return{focusOffset:n,dollarIndex:s,lastWord:o,currentText:i,node:t,allSelected:a}};const n=e=>e.anchorOffset===0&&e.focusOffset===e.focusNode?.nodeValue?.length;const t=c();switch(t){case"Chrome":const t=this.host.shadowRoot?.getSelection();const a=t?.focusNode;const i=a?.nodeValue||"";const s=t&&n(t);return e(i,t?.focusOffset||-1,a,s);case"Firefox":const o=document.getSelection();const l=o?.anchorNode?.nodeValue||"";const r=o&&n(o);return e(l,o?.focusOffset||-1,o?.anchorNode,r);case"Safari":const d=window.getSelection();const c=d?.getComposedRanges(this.host.shadowRoot)[0];const f=c?.startContainer?.nodeValue||"";const p=d&&n(d);return e(f,c?.endOffset||-1,c?.startContainer,p);default:console.warn("Browser not supported");return null}}handleChange(e){const n=e.target.textContent||"";const t=this.getCurrentSelectionForBrowser();if(!t){this.updateEventTitle(n);this.resetDropdown();return}const{focusOffset:a,dollarIndex:i,lastWord:s,currentText:o}=t;if(i===-1||a<i){this.updateEventTitle(n);this.resetDropdown();return}if(s.startsWith("$")){this.showTokens=true;this.currentWord={$value:s,fullText:o,index:i,focusOffset:a};this.populateSuggestionsDropdown(s)}else{this.resetDropdown()}this.updateEventTitle(n)}handleInputKeyDown(e){const n=this.getCurrentSelectionForBrowser();if(n?.allSelected&&!f(e)){this.titleRef.innerHTML=""}if(e.key==="Enter"){e.preventDefault();const n=this.host.shadowRoot?.getElementById(this.ariaActivedescendant);if(n){n.click();this.ariaActivedescendant=""}}else if(e.key==="ArrowDown"){e.preventDefault();const n=this.host.shadowRoot?.getElementById(this.ariaActivedescendant);if(n){const e=n.nextElementSibling;if(e){this.ariaActivedescendant=e.id}else{this.ariaActivedescendant=this.filteredTokens[0].label}}else{this.ariaActivedescendant=this.filteredTokens[0].label}}else if(e.key==="ArrowUp"){e.preventDefault();const n=this.host.shadowRoot?.getElementById(this.ariaActivedescendant);if(n){const e=n.previousElementSibling;if(e){this.ariaActivedescendant=e.id}else{this.ariaActivedescendant=this.filteredTokens[this.filteredTokens.length-1].label}}else{this.ariaActivedescendant=this.filteredTokens[this.filteredTokens.length-1].label}}else if(e.key==="Escape"){e.preventDefault();this.resetDropdown()}else if(e.key==="Backspace"||e.key==="Delete"){if(n?.currentText.startsWith("${")){n?.node?.parentNode&&n.node.parentNode.removeChild(n.node)}if(this.titleRef.textContent===""||n?.currentText===""||n?.allSelected){this.titleRef.innerHTML=""}}}selectOption(e,n){e.preventDefault();const t=this.currentWord.fullText;const a=this.currentWord.$value;let i=this.titleRef.firstChild;let s=null;while(i){if(i.nodeType===3){const e=i.textContent?.replace(/[\u200B-\u200D\uFEFF]/g,"")||"";const n=t.replace(/[\u200B-\u200D\uFEFF]/g,"");if(e.includes(n)){s=i;break}}i=i.nextSibling}if(!s){return}const o=s.textContent||"";const l=o.indexOf(a);const r=o.substring(0,l);const d=o.substring(l+a.length);const c=document.createTextNode(r);const f=document.createRange();const p=document.createElement("span");p.classList.add("highlighted-tag");p.textContent=`${n.value}`;const b=document.createTextNode(d);if(d!==""){s.replaceWith(c,p,b);f.setStart(b,1)}else{const e=document.createTextNode("");s.replaceWith(c,p,e);f.setStart(e,1)}this.resetDropdown();this.titleRef.focus();const h=window.getSelection();f.collapse(true);h?.removeAllRanges();h?.addRange(f);this.updateEventTitle(this.titleRef.textContent||"")}populateSuggestionsDropdown(e=""){this.filteredTokens=this.availableTokens.filter((n=>n.label.startsWith(e.toString())||n.value.startsWith(e.toString())));if(this.filteredTokens.length>0){this.ariaActivedescendant=this.filteredTokens[0].label}}updateEventTitle(e){const n=e.replace(/ +/g," ");if(n===""){this.internals?.setValidity({customError:true},`Event title is required`,this.titleRef);this.validationError="Event title is required"}else{this.internals?.setValidity({customError:false});this.validationError=""}this.internals?.setFormValue(n,this.name);this.valueChanged.emit({value:n,name:this.name})}resetDropdown(){this.showTokens=false;this.ariaActivedescendant=""}getLabelHTML(e){return n("div",{class:"token-label"},n("span",{class:"token"},e.token),n("span",{class:"description"},e.description))}render(){return n(a,{key:"e0ddf6c13a5a0c0d2e0db9188365418fb7484dcf"},n("div",{key:"a3b8e594c8d9632709e777891f04df0aaaf7c5c3",class:"nylas-event-title",part:"net"},n("label",{key:"e5794d2cd8be0b1666bfa67c3ea657da5dc8d45d",htmlFor:"title"},"Event title",n("span",{key:"1210caceb7bf824f01559460e1c5e572cb2dad92",class:"required"},"*"),n("span",{key:"4280ec285221e6db76ca08723fe3888a1d2643e3",class:"label-icon"},n("tooltip-component",{key:"d6c05fb79cf39656af7589a2e9de9ef832d7a2f8"},n("info-icon",{key:"a4659d97d60d00dfcc2c993e70da5cfd05904f78",slot:"tooltip-icon"}),n("span",{key:"738bfa669eec42b417be02fbad0584af34044c83",slot:"tooltip-content"},"Enter a title for your event.")))),n("div",{key:"df102dc899f8de91154689d9cdaae28465380622",class:{title:true,error:this.validationError!==""},part:"net__title",ref:e=>this.titleRef=e,contentEditable:"true",onInput:e=>this.handleChange(e),onKeyDown:e=>this.handleInputKeyDown(e)}),this.showTokens&&this.filteredTokens?.length>0&&n("div",{class:"token-options",part:"net__dropdown-content"},n("ul",{tabindex:"-1",role:"listbox","aria-label":this.name,"aria-activedescendant":this.ariaActivedescendant},this.filteredTokens.map((e=>n("li",{tabindex:"0",key:e.label,id:e.label,class:{active:this.ariaActivedescendant===e.label},onClick:n=>this.selectOption(n,e),role:"option"},this.getLabelHTML(e.labelHTML)))))),n("span",{key:"ec769eea7e2e3ff6d64bef0f5099540c93ba80ab",class:"help-text"},"Create a dynamic templated event title by typing $. Learn more"),this.validationError!=""&&n("span",{class:"error-message"},this.validationError)))}static get formAssociated(){return true}get host(){return i(this)}static get watchers(){return{name:["elementNameChangedHandler"],ariaActivedescendant:["ariaActivedescendantChangedHandler"],selectedConfiguration:["configChangedHandler"]}}};Ee([m({name:"nylas-event-title",stateToProps:new Map([["schedulerConfig.selectedConfiguration","selectedConfiguration"]]),eventToProps:{},fireRegisterEvent:true}),Se("design:type",Function),Se("design:paramtypes",[]),Se("design:returntype",void 0)],Te.prototype,"render",null);Te.style=ze;const Ie=':host{--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}.nylas-limit-future-bookings{display:flex;justify-content:space-between;font-family:var(--nylas-font-family)}@media screen and (max-width: 768px){.nylas-limit-future-bookings{flex-direction:column;gap:0.5rem}}.nylas-limit-future-bookings label{display:flex;align-items:center;color:var(--nylas-base-800);font-size:16px;font-style:normal;font-weight:400;line-height:150%;}.nylas-limit-future-bookings label span.label-icon{margin-left:4px}.nylas-limit-future-bookings label span.label-icon tooltip-component{display:flex}';const Fe=Ie;var Ne=undefined&&undefined.__decorate||function(e,n,t,a){var i=arguments.length,s=i<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,t):a,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,n,t,a);else for(var l=e.length-1;l>=0;l--)if(o=e[l])s=(i<3?o(s):i>3?o(n,t,s):o(n,t))||s;return i>3&&s&&Object.defineProperty(n,t,s),s};var Ae=undefined&&undefined.__metadata||function(e,n){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,n)};const We=class{constructor(n){e(this,n);this.valueChanged=t(this,"valueChanged",7);if(n.$hostElement$["s-ei"]){this.internals=n.$hostElement$["s-ei"]}else{this.internals=n.$hostElement$.attachInternals();n.$hostElement$["s-ei"]=this.internals}this.selectedConfiguration=undefined;this.availableDaysInFuture=undefined;this.name="limit-future-bookings";this.selectedNumber=1;this.selectedPeriod="day"}elementNameChangedHandler(e){s("nylas-limit-future-bookings","elementNameChangedHandler",e);this.host.setAttribute("name",e)}selectedConfigurationChangedHandler(e){const n=e?.scheduler?.available_days_in_future;if(n){this.updateNumberAndPeriodFromDays(n)}}availableDaysInFutureChanged(e){this.updateNumberAndPeriodFromDays(e)}connectedCallback(){s("nylas-limit-future-bookings","connectedCallback")}componentWillLoad(){s("nylas-limit-future-bookings","componentWillLoad");this.host.setAttribute("name",this.name)}componentDidLoad(){s("nylas-limit-future-bookings","componentDidLoad");this.availableDaysInFutureChanged(this.availableDaysInFuture??1);if(typeof this.internals.setFormValue!=="function"){return}this.internals.setFormValue(this.availableDaysInFuture?.toString()??"1",this.name)}disconnectedCallback(){s("nylas-limit-future-bookings","disconnectedCallback")}timePeriodChangedHandler(e){const{number:n,period:t}=e.detail;let a;if(t==="day"){a=n}else if(t==="week"){a=n*7}else{a=n*30}this.valueChanged.emit({value:a,name:"availableDaysInFuture"});if(typeof this.internals.setFormValue!=="function"){return}this.internals.setFormValue(a.toString(),this.name)}updateNumberAndPeriodFromDays(e){let n,t;if(e>=30&&e%30===0){n=e/30;t="month"}else if(e>=7&&e%7===0){n=e/7;t="week"}else{n=e;t="day"}this.selectedNumber=n;this.selectedPeriod=t}render(){return n(a,{key:"1bb30d8045366579b327f32f954d64c3360efa11"},n("div",{key:"2594946bd35a01a0ab64288c54fe886f4577d8b5",class:"nylas-limit-future-bookings",part:"nlfb"},n("label",{key:"cf955eb319e09617dd95037d66a387122238d17c"},"Limit future bookings",n("span",{key:"4f5658353873122f083faec5504856902bdba106",class:"label-icon"},n("tooltip-component",{key:"ee20b3543178702592b83e70a5a85988d0c3cd29"},n("info-icon",{key:"dfe75e502418b3f00a29d3d0fb76338056089266",slot:"tooltip-icon"}),n("span",{key:"c7226da2491e6c3beda2f9739afda6220c37c0e1",slot:"tooltip-content"},"Set a limit on how far in the future bookings can be made.")))),n("time-period-selector",{key:"5ad178b3d7158738a2882cb5a6554727de34a23d",id:"limit-future-bookings",timePeriods:["day","week","month"],exportparts:"tps__number-dropdown: nlfb__number-dropdown, tps__number-dropdown-button: nlfb__number-dropdown-button, tps__number-dropdown-content: nlfb__number-dropdown-content, tps__period-dropdown: nlfb__period-dropdown, tps__period-dropdown-button: nlfb__period-dropdown-button, tps__period-dropdown-content: nlfb__period-dropdown-content",defaultSelectedNumber:this.selectedNumber,defaultSelectedPeriod:this.selectedPeriod})))}static get formAssociated(){return true}get host(){return i(this)}static get watchers(){return{name:["elementNameChangedHandler"],selectedConfiguration:["selectedConfigurationChangedHandler"],availableDaysInFuture:["availableDaysInFutureChanged"]}}};Ne([m({name:"nylas-limit-future-bookings",stateToProps:new Map([["schedulerConfig.selectedConfiguration","selectedConfiguration"]]),eventToProps:{},fireRegisterEvent:true}),Ae("design:type",Function),Ae("design:paramtypes",[]),Ae("design:returntype",void 0)],We.prototype,"render",null);We.style=Fe;const Pe=':host{--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}.nylas-event-location{display:flex;flex-direction:column;gap:4px;font-family:var(--nylas-font-family)}.nylas-event-location label{display:flex;align-items:center;color:var(--nylas-base-800);font-size:16px;font-style:normal;font-weight:400;line-height:150%;}.nylas-event-location label span.label-icon{margin-left:4px}.nylas-event-location label span.label-icon tooltip-component{display:flex}.nylas-event-location span[slot=select-icon]{border-right:1px solid var(--nylas-base-200);padding:16px 0.75rem 16px 0.5rem;border-radius:var(--nylas-border-radius-2x);border-bottom-right-radius:0;border-top-right-radius:0;height:20px}.nylas-event-location div.location-input{display:grid;grid-template-columns:auto 1fr;width:100%;gap:0.5rem}@media screen and (max-width: 768px){.nylas-event-location div.location-input{grid-template-columns:1fr}}.nylas-event-location div.location-input input{border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);padding:12px 16px;font-family:var(--nylas-font-family);font-size:16px;line-height:24px}.nylas-event-location select-dropdown{width:208px}@media screen and (max-width: 768px){.nylas-event-location select-dropdown{width:100%}}.nylas-event-location select-dropdown::part(sd_dropdown){width:100%}.nylas-event-location select-dropdown::part(sd_dropdown-content){left:calc(35px + 0.5rem)}.nylas-event-location select-dropdown::part(sd_dropdown-button){display:flex;justify-content:space-between;width:100%;border:1px solid var(--nylas-base-200);padding:0 0.5rem}.nylas-event-location select-dropdown::part(sd_dropdown-button-selected-label){display:inline-flex;align-self:center;padding:14px 0;font-family:var(--nylas-font-family);font-size:16px;line-height:24px}';const Ze=Pe;var Ue=undefined&&undefined.__decorate||function(e,n,t,a){var i=arguments.length,s=i<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,t):a,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,n,t,a);else for(var l=e.length-1;l>=0;l--)if(o=e[l])s=(i<3?o(s):i>3?o(n,t,s):o(n,t))||s;return i>3&&s&&Object.defineProperty(n,t,s),s};var Ye=undefined&&undefined.__metadata||function(e,n){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,n)};const $e=class{constructor(n){e(this,n);this.valueChanged=t(this,"valueChanged",7);if(n.$hostElement$["s-ei"]){this.internals=n.$hostElement$["s-ei"]}else{this.internals=n.$hostElement$.attachInternals();n.$hostElement$["s-ei"]=this.internals}this.selectedConfiguration=undefined;this.eventLocation=undefined;this.location=this.eventLocation??"";this.selectedLocationOption=this.eventLocation?"custom":"none";this.name="location"}elementNameChangedHandler(e){s("nylas-location-component","elementNameChangedHandler",e);this.host.setAttribute("name",e)}selectedConfigurationChangedHandler(e,n){s("nylas-custom-booking-flow","selectedConfigurationChangedHandler",e,n);const t=e?.event_booking?.location;if(t){this.selectedLocationOption=t?"custom":"none";this.location=t}}eventLocationChangedHandler(e,n){s("nylas-location-component","eventLocationChangedHandler",e);if(e===n){return}this.selectedLocationOption=e?"custom":"none"}connectedCallback(){s("nylas-location-component","connectedCallback")}componentWillLoad(){s("nylas-location-component","componentWillLoad");this.host.setAttribute("name",this.name)}componentDidLoad(){s("nylas-location-component","componentDidLoad")}disconnectedCallback(){s("nylas-location-component","disconnectedCallback")}selectedOptionChangedHandler(e){this.selectedLocationOption=e.detail.value;if(this.selectedLocationOption==="none"){this.location="";this.setFormValue("","location");this.valueChanged.emit({value:"",name:this.name})}}setFormValue(e,n){if(typeof this.internals.setFormValue==="function"){this.internals.setFormValue(e,n)}}handleChange(e){this.location=e.target.value;this.setFormValue(e.target.value,"location");this.valueChanged.emit({value:e.target.value,name:this.name})}render(){const e=[{value:"none",label:"None"},{value:"custom",label:"Custom location"}];const t={none:n("location-off-icon",{key:"5344819790f0d245e78de8808b05005eaa610991"}),custom:n("location-icon",{key:"6d931006f7ea79e3290bde60cbdd3c1ca8e827f8"})};return n(a,{key:"2117e5636492cd1b3bc3b975fdc1398c030df9a4"},n("div",{key:"093c3fdfaf0ad88955f8f785a5c589708d941e57",class:"nylas-event-location",part:"nel"},n("label",{key:"e2754216f675fc82cdc7813bacfe0e928e9ed50e",htmlFor:"location"},"Location type",n("span",{key:"e402fccc0065a4f6fd0cbd05af345b73b06c4464",class:"label-icon"},n("tooltip-component",{key:"c818dbca3cbbf29e34c56bbc9caea7fc3816d808"},n("info-icon",{key:"5ea673e0d49efe7e0a4ac04c3ec64427a63b8843",slot:"tooltip-icon"}),n("span",{key:"dac6ddf369aa6caf62a870ca349745f546ed3959",slot:"tooltip-content"},"Choose how you’ll meet with the participants at the scheduled time. Pick from available conferencing options or add a custom location.")))),n("div",{key:"bf334b9e8e03b660f661d264c9ca52444ee859b6",class:"location-input"},n("select-dropdown",{key:"f216e1589bb3b72a9ed6b9cfbec5683795e1b08e",withSearch:false,name:"location",options:e,defaultSelectedOption:e.find((e=>e.value==this.selectedLocationOption)),exportparts:"sd__dropdown: nel__dropdown, sd__dropdown-button: nel__dropdown-button, sd__dropdown-content: nel__dropdown-content"},n("span",{key:"6ca96d9f95ac189195c1490e6872b2478cd0d270",slot:"select-icon"},t[this.selectedLocationOption])),this.selectedLocationOption==="custom"&&n("input",{type:"text",part:"nel__location",id:"location",name:"location",maxlength:"1024",value:this.location,onInput:e=>this.handleChange(e)}))))}static get formAssociated(){return true}get host(){return i(this)}static get watchers(){return{name:["elementNameChangedHandler"],selectedConfiguration:["selectedConfigurationChangedHandler"],eventLocation:["eventLocationChangedHandler"]}}};Ue([m({name:"nylas-location-component",stateToProps:new Map([["schedulerConfig.selectedConfiguration","selectedConfiguration"]]),eventToProps:{},fireRegisterEvent:true}),Ye("design:type",Function),Ye("design:paramtypes",[]),Ye("design:returntype",void 0)],$e.prototype,"render",null);$e.style=Ze;const Ve=':host{--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}.nylas-min-cancellation-notice{display:flex;justify-content:space-between;font-family:var(--nylas-font-family)}@media screen and (max-width: 768px){.nylas-min-cancellation-notice{flex-direction:column;gap:0.5rem}}.nylas-min-cancellation-notice label{display:flex;align-items:center;color:var(--nylas-base-800);font-size:16px;font-style:normal;font-weight:400;line-height:150%;}.nylas-min-cancellation-notice label span.label-icon{margin-left:4px}.nylas-min-cancellation-notice label span.label-icon tooltip-component{display:flex}';const Be=Ve;var Ke=undefined&&undefined.__decorate||function(e,n,t,a){var i=arguments.length,s=i<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,t):a,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,n,t,a);else for(var l=e.length-1;l>=0;l--)if(o=e[l])s=(i<3?o(s):i>3?o(n,t,s):o(n,t))||s;return i>3&&s&&Object.defineProperty(n,t,s),s};var qe=undefined&&undefined.__metadata||function(e,n){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,n)};const Je=class{constructor(n){e(this,n);this.valueChanged=t(this,"valueChanged",7);if(n.$hostElement$["s-ei"]){this.internals=n.$hostElement$["s-ei"]}else{this.internals=n.$hostElement$.attachInternals();n.$hostElement$["s-ei"]=this.internals}this.selectedConfiguration=undefined;this.minCancellationNotice=undefined;this.name="min-cancellation-notice";this.selectedNumber=1;this.selectedPeriod="day"}elementNameChangedHandler(e){s("nylas-min-cancellation-notice","elementNameChangedHandler",e);this.host.setAttribute("name",e)}selectedConfigurationChangedHandler(e){const n=e?.scheduler?.min_cancellation_notice;if(n){this.updateNumberAndPeriodFromMinutes(n)}}availableDaysInFutureChanged(e){this.updateNumberAndPeriodFromMinutes(e)}connectedCallback(){s("nylas-min-cancellation-notice","connectedCallback")}componentWillLoad(){s("nylas-min-cancellation-notice","componentWillLoad");this.host.setAttribute("name",this.name)}componentDidLoad(){s("nylas-min-cancellation-notice","componentDidLoad");this.availableDaysInFutureChanged(this.minCancellationNotice??1);if(typeof this.internals.setFormValue!=="function"){return}this.internals.setFormValue(this.minCancellationNotice?.toString()??"1",this.name)}disconnectedCallback(){s("nylas-min-cancellation-notice","disconnectedCallback")}timePeriodChangedHandler(e){const{number:n,period:t}=e.detail;let a;const i=60;const s=i*24;const o=s*7;const l=s*30;if(t==="minute"){a=n}else if(t==="hour"){a=n*i}else if(t==="day"){a=n*s}else if(t==="week"){a=n*o}else if(t==="month"){a=n*l}else{a=0}this.valueChanged.emit({value:a,name:"minCancellationNotice"});if(typeof this.internals.setFormValue!=="function"){return}this.internals.setFormValue(a.toString(),this.name)}updateNumberAndPeriodFromMinutes(e){const n=60;const t=n*24;const a=t*7;const i=t*30;let s,o;if(e>=i){s=Math.floor(e/i);o="month"}else if(e>=a){s=Math.floor(e/a);o="week"}else if(e>=t){s=Math.floor(e/t);o="day"}else if(e>=n){s=Math.floor(e/n);o="hour"}else{s=e;o="minute"}this.selectedNumber=s;this.selectedPeriod=o}render(){return n(a,{key:"d2eb0d080d1ce4645a642a4f5d55270ed170e882"},n("div",{key:"2743c3c781ad47c9d0d53fdad2773f45d172e1f4",class:"nylas-min-cancellation-notice",part:"nmcn"},n("label",{key:"457729b50558651645ecb10398586af1078cfd34"},"Minimum cancellation notice",n("span",{key:"00b310035def5b8bbc183fa03d2bcb37d7c04b42",class:"label-icon"},n("tooltip-component",{key:"27c7695f6302e2d043899656f15a70846c2858e2"},n("info-icon",{key:"10f878cb410cc284e86890a0d6047c27bdc7f455",slot:"tooltip-icon"}),n("span",{key:"e853afaa116b43371d01fcb3b801e622902e22cd",slot:"tooltip-content"},"Set the minimum amount of time required to cancel an event.")))),n("time-period-selector",{key:"8bb3955f8cce7661e213fbf2c107f8326937b467",id:"min-cancellation-notice",exportparts:"tps__number-dropdown: nmcn__number-dropdown, tps__number-dropdown-button: nmcn__number-dropdown-button, tps__number-dropdown-content: nmcn__number-dropdown-content, tps__period-dropdown: nmcn__period-dropdown, tps__period-dropdown-button: nmcn__period-dropdown-button, tps__period-dropdown-content: nmcn__period-dropdown-content",timePeriods:["minute","hour","day","week"],defaultSelectedNumber:this.selectedNumber,defaultSelectedPeriod:this.selectedPeriod})))}static get formAssociated(){return true}get host(){return i(this)}static get watchers(){return{name:["elementNameChangedHandler"],selectedConfiguration:["selectedConfigurationChangedHandler"],availableDaysInFuture:["availableDaysInFutureChanged"]}}};Ke([m({name:"nylas-min-cancellation-notice",stateToProps:new Map([["schedulerConfig.selectedConfiguration","selectedConfiguration"]]),eventToProps:{},fireRegisterEvent:true}),qe("design:type",Function),qe("design:paramtypes",[]),qe("design:returntype",void 0)],Je.prototype,"render",null);Je.style=Be;var Ge={exports:{}};(function(e,n){!function(n,t){e.exports=t()}(k,(function(){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"},n=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,t=/\d\d/,a=/\d\d?/,i=/\d*[^-_:/,()\s\d]+/,s={},o=function(e){return(e=+e)+(e>68?1900:2e3)};var l=function(e){return function(n){this[e]=+n}},r=[/[+-]\d\d:?(\d\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if("Z"===e)return 0;var n=e.match(/([+-]|\d\d)/g),t=60*n[1]+(+n[2]||0);return 0===t?0:"+"===n[0]?-t:t}(e)}],d=function(e){var n=s[e];return n&&(n.indexOf?n:n.s.concat(n.f))},c=function(e,n){var t,a=s.meridiem;if(a){for(var i=1;i<=24;i+=1)if(e.indexOf(a(i,0,n))>-1){t=i>12;break}}else t=e===(n?"pm":"PM");return t},f={A:[i,function(e){this.afternoon=c(e,!1)}],a:[i,function(e){this.afternoon=c(e,!0)}],S:[/\d/,function(e){this.milliseconds=100*+e}],SS:[t,function(e){this.milliseconds=10*+e}],SSS:[/\d{3}/,function(e){this.milliseconds=+e}],s:[a,l("seconds")],ss:[a,l("seconds")],m:[a,l("minutes")],mm:[a,l("minutes")],H:[a,l("hours")],h:[a,l("hours")],HH:[a,l("hours")],hh:[a,l("hours")],D:[a,l("day")],DD:[t,l("day")],Do:[i,function(e){var n=s.ordinal,t=e.match(/\d+/);if(this.day=t[0],n)for(var a=1;a<=31;a+=1)n(a).replace(/\[|\]/g,"")===e&&(this.day=a)}],M:[a,l("month")],MM:[t,l("month")],MMM:[i,function(e){var n=d("months"),t=(d("monthsShort")||n.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t}],MMMM:[i,function(e){var n=d("months").indexOf(e)+1;if(n<1)throw new Error;this.month=n%12||n}],Y:[/[+-]?\d+/,l("year")],YY:[t,function(e){this.year=o(e)}],YYYY:[/\d{4}/,l("year")],Z:r,ZZ:r};function p(t){var a,i;a=t,i=s&&s.formats;for(var o=(t=a.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(n,t,a){var s=a&&a.toUpperCase();return t||i[a]||e[a]||i[s].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,n,t){return n||t.slice(1)}))}))).match(n),l=o.length,r=0;r<l;r+=1){var d=o[r],c=f[d],p=c&&c[0],b=c&&c[1];o[r]=b?{regex:p,parser:b}:d.replace(/^\[|\]$/g,"")}return function(e){for(var n={},t=0,a=0;t<l;t+=1){var i=o[t];if("string"==typeof i)a+=i.length;else{var s=i.regex,r=i.parser,d=e.slice(a),c=s.exec(d)[0];r.call(n,c),e=e.replace(c,"")}}return function(e){var n=e.afternoon;if(void 0!==n){var t=e.hours;n?t<12&&(e.hours+=12):12===t&&(e.hours=0),delete e.afternoon}}(n),n}}return function(e,n,t){t.p.customParseFormat=!0,e&&e.parseTwoDigitYear&&(o=e.parseTwoDigitYear);var a=n.prototype,i=a.parse;a.parse=function(e){var n=e.date,a=e.utc,o=e.args;this.$u=a;var l=o[1];if("string"==typeof l){var r=!0===o[2],d=!0===o[3],c=r||d,f=o[2];d&&(f=o[2]),s=this.$locale(),!r&&f&&(s=t.Ls[f]),this.$d=function(e,n,t){try{if(["x","X"].indexOf(n)>-1)return new Date(("X"===n?1e3:1)*e);var a=p(n)(e),i=a.year,s=a.month,o=a.day,l=a.hours,r=a.minutes,d=a.seconds,c=a.milliseconds,f=a.zone,b=new Date,h=o||(i||s?1:b.getDate()),y=i||b.getFullYear(),u=0;i&&!s||(u=s>0?s-1:b.getMonth());var m=l||0,g=r||0,v=d||0,k=c||0;return f?new Date(Date.UTC(y,u,h,m,g,v,k+60*f.offset*1e3)):t?new Date(Date.UTC(y,u,h,m,g,v,k)):new Date(y,u,h,m,g,v,k)}catch(e){return new Date("")}}(n,l,a),this.init(),f&&!0!==f&&(this.$L=this.locale(f).$L),c&&n!=this.format(l)&&(this.$d=new Date("")),s={}}else if(l instanceof Array)for(var b=l.length,h=1;h<=b;h+=1){o[1]=l[h-1];var y=t.apply(this,o);if(y.isValid()){this.$d=y.$d,this.$L=y.$L,this.init();break}h===b&&(this.$d=new Date(""))}else i.call(this,e)}}}))})(Ge);const Xe=Ge.exports;const Qe=':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 en=Qe;p.extend(Xe);const nn=class{constructor(n){e(this,n);this.timeChange=t(this,"timeChange",7);this.time=undefined;this.minimumStartTime=null;this.placeholder="hh:mmam/pm";this.setTime=undefined;this.name=undefined;this.hasError=false;this.setFormError=undefined;this.err="";this.showTimes=false;this.ariaActivedescendant="";this.times=this.generateTimes();this.shouldAutoScroll=false}handleOutsideClick(e){const n=e.composedPath();const t=n.includes(this.el);if(!t&&this.showTimes){this.showTimes=false}}minimumStartTimeChangedHandler(){if(this.minimumStartTime){let e=p().hour(parseInt(this.minimumStartTime)).minute(parseInt(this.minimumStartTime.slice(-4,-2)));if(this.minimumStartTime.slice(-2).toLowerCase()==="pm"&&parseInt(this.minimumStartTime)!==12){e=e.add(12,"hour")}else if(this.minimumStartTime.slice(-2).toLowerCase()==="am"&&parseInt(this.minimumStartTime)===12){e=e.subtract(12,"hour")}this.times=this.generateTimes();const n=p(this.times[0].value,"hh:mma");let t=p(this.time,"hh:mma");if(t.isBefore(n)){this.err="Invalid";this.setFormError(null,"Invalid")}}}componentDidRender(){if(this.showTimes&&this.shouldAutoScroll){const e=b(this.time);const n=this.times.findIndex((n=>n.value===e));if(n>-1){this.shouldAutoScroll=false;this.scrollToViewWithinParent(n)}return}}handleTimeChange(e,n){const t=n.split(":");if(t[0]==="00"&&t[1].slice(-2)=="pm"){this.err="Invalid";this.setFormError(e,"Invalid")}if(!h(n)){this.err="Invalid";this.setFormError(e,"Invalid")}else{this.err="";this.setFormError(null)}this.setTime(e,n);this.timeChange.emit(n)}handleTimeAutocomplete(e){const n=e.target?.value;if(!h(n)){this.err="Invalid";this.setFormError(e,"Invalid");return}if(n===""){const n=y().format("hh:mma");this.setTime(e,n);return}if(!u(n)){const e=b(n);this.setTime(e);return}this.setTime(e,n)}handleOnInput(e){const n=e.target?.value;if(!h(n)){return}if(n===""){const e=y().format("hh:mma");const n=this.times.findIndex((n=>n.value===e));if(n>-1){this.scrollToViewWithinParent(n)}return}if(!u(n)){const e=b(n);const t=this.times.findIndex((n=>n.value===e));if(t>-1){this.scrollToViewWithinParent(t)}return}}generateTimes(){const e=[];let n=p().set("hour",0).set("minute",0).set("second",0);if(this.minimumStartTime){n=p(this.minimumStartTime,"hh:mma")}const t=n.endOf("day").diff(n,"minutes");const a=Math.round(t/15);for(let t=0;t<a+1;t++){const i=n.add(t*15,"minute");if(t==a&&i.format("hh:mma").includes("am")){break}e.push({id:t,value:i.format("hh:mma")})}return e}handleComboboxKeyDown(e){if(e.key==="ArrowDown"){e.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 e=this.times.findIndex((e=>e.id.toString()===this.ariaActivedescendant));const n=e+1<this.times.length?e+1:0;this.ariaActivedescendant=this.times[n].id.toString();this.focusOption(n)}}else if(e.key==="ArrowUp"){e.preventDefault();if(this.ariaActivedescendant===""){this.ariaActivedescendant=this.times[this.times.length-1].id.toString();this.focusOption(this.times.length-1)}else{const e=this.times.findIndex((e=>e.id.toString()===this.ariaActivedescendant));const n=e-1>=0?e-1:this.times.length-1;this.ariaActivedescendant=this.times[n].id.toString();this.focusOption(n)}}else if(e.key==="Escape"){this.showTimes=false;this.timeInput.focus()}}handleListboxKeydown(e){const n=this.times;const t=n.findIndex((e=>e.id.toString()===this.ariaActivedescendant));if(e.key==="ArrowDown"||e.key==="Tab"&&!e.shiftKey){e.preventDefault();const a=t+1<n.length?t+1:0;this.ariaActivedescendant=n[a].id.toString();this.focusOption(a)}else if(e.key==="ArrowUp"||e.key==="Tab"&&e.shiftKey){e.preventDefault();const a=t-1>=0?t-1:n.length-1;this.ariaActivedescendant=n[a].id.toString();this.focusOption(a)}else if(e.key==="Enter"){e.preventDefault();if(this.ariaActivedescendant){const a=n[t];this.handleTimeChange(e,a.value);this.showTimes=false;this.ariaActivedescendant="";this.timeInput.focus()}}else if(e.key==="Escape"){this.showTimes=false;this.timeInput.focus()}}scrollToViewWithinParent(e){const n=this.times[e];const t=this.el.shadowRoot?.getElementById(n.id.toString());const a=this.timeMenu;this.ariaActivedescendant=n.id.toString();const i=t.getBoundingClientRect();const s=a.getBoundingClientRect();if(i.top<s.top){a.scrollTop-=s.top-i.top}else if(i.bottom>s.bottom){a.scrollTop+=i.bottom-s.bottom}if(i.left<s.left){a.scrollLeft-=s.left-i.left}else if(i.right>s.right){a.scrollLeft+=i.right-s.right}}focusOption(e){const n=this.times[e];if(!n)return;const t=n.id.toString();const a=this.el.shadowRoot?.getElementById(t);if(a){a.focus();a.scrollIntoView({behavior:"smooth",block:"nearest"})}}render(){return n(a,{key:"fe86daaa8256c8fb59ffe2dfcbf50220f3a7b746"},n("div",{key:"8cffe49df87c5bf2b73cef66236c806b47d623d4",class:"time-picker",part:"time-picker"},n("input",{key:"6f735244c63287b0ec0668b688bbb18bb405346b",type:"text",name:this.name,id:this.name,part:"time-input",class:{"time-input":true,error:!!this.err||this.hasError},ref:e=>this.timeInput=e,value:this.time,onClick:()=>{this.showTimes=true;this.shouldAutoScroll=true},"aria-haspopup":"listbox","aria-label":this.name,"aria-expanded":this.showTimes?"true":"false",placeholder:this.placeholder,onKeyDown:e=>this.handleComboboxKeyDown(e),onInput:e=>this.handleOnInput(e),onBlur:e=>this.handleTimeAutocomplete(e)}),this.err&&n("div",{class:"invalid-time-icon"}),this.showTimes&&n("div",{class:"times",part:"times",ref:e=>this.timeMenu=e},n("ul",{tabindex:"-1",role:"listbox","aria-label":this.name,"aria-activedescendant":this.ariaActivedescendant,onKeyDown:e=>this.handleListboxKeydown(e)},this.times.map((e=>n("li",{tabindex:"0",key:e.id,id:e.id.toString(),class:{focused:this.ariaActivedescendant===e.id.toString()},onClick:n=>{this.handleTimeChange(n,e.value);this.showTimes=false;this.timeInput.focus()},role:"option"},`${e.value}`))))),!this.showTimes&&this.err&&n("p",{class:"error",id:"email-error"},this.err)))}get el(){return i(this)}static get watchers(){return{minimumStartTime:["minimumStartTimeChangedHandler"]}}};nn.style=en;export{_ as add_circle_icon,H as button_component,M as calendar_info_icon,z as calendar_patterns_icon,T as flow_icon,N as location_icon,P as location_off_icon,Y as multi_select_dropdown,q as nylas_availability_picker,ee as nylas_booking_calendar_picker,se as nylas_buffer_time,ce as nylas_calendar_picker,ye as nylas_event_description,ke as nylas_event_duration,Le as nylas_event_info,je as nylas_event_limits,Te as nylas_event_title,We as nylas_limit_future_bookings,$e as nylas_location_component,Je as nylas_min_cancellation_notice,nn as nylas_time_window_picker};
|
|
2
|
-
//# sourceMappingURL=p-76461af6.entry.js.map
|