Skip to content

nylas-editor-tabs

The nylas-editor-tabs element provides the user interface for managing editor tabs within the Scheduler Editor. It’s primarily used to control the edit mode of the Scheduler Editor, and is rendered automatically by the parent component, nylas-scheduler-editor, during editing. There is no need to interact with this component directly or set any props manually, as its behavior is fully managed by the parent component.

NameselectedEventType
DescriptionThe selected event type.
TypeCONFIGURATION_EVENT_TYPE.collective | CONFIGURATION_EVENT_TYPE.group |
CONFIGURATION_EVENT_TYPE.max_availability | CONFIGURATION_EVENT_TYPE.max_fairness |
CONFIGURATION_EVENT_TYPE.one_on_one | undefined
NameselectedLanguage
DescriptionThe selected language.
TypeLANGUAGE_CODE.de | LANGUAGE_CODE.en | LANGUAGE_CODE.es | LANGUAGE_CODE.fr | LANGUAGE_CODE.ja |
LANGUAGE_CODE.ko | LANGUAGE_CODE.nl | LANGUAGE_CODE.sv | LANGUAGE_CODE.zh | undefined

The following props are automatically configured when used within NylasSchedulerEditor. Set these props manually only if you’re using the component independently.

Namecalendars
DescriptionThe list of calendars to use in the editor when configuring availability.
TypeCalendar[] | undefined
Nameconfigurations
DescriptionThe list of Configurations.
TypeConfiguration[] | undefined
NamecurrentUser
DescriptionThe current logged in user.
Typeundefined | { id: string; email: string; name?: string | undefined; provider?: string |
undefined; }
NameenableUserFeedback
DescriptionThis prop is passed down by the parent component to enable or disable user feedback.
Typeboolean | undefined
Defaulttrue
NamehideEditorTabs
DescriptionThis prop is passed down by the parent component. It’s an optional prop used to hide tabs in the Editor. Available tabs are: eventInfo, availability, participants, bookingOptions, and bookingForm.
TypeTab[] | undefined
Default.[]
Namemode
DescriptionThe mode of the editor. app: The Editor is used as a standalone app. composable: The Editor is used as a composable component.
Typeapp" | "composable" | undefined
Defaultapp
NameschedulerPreviewLink
DescriptionThe Scheduler preview link to use when the user clicks on the preview button. You can use a placeholder {config.id} to replace the Configuration ID anywhere in the link.
Typestring
Default' '
NameselectedConfiguration
DescriptionThe selected Configuration to use in the Editor when editing an existing Configuration or creating a new one.
TypeConfiguration | undefined
NamethemeConfig
DescriptionThe theme configuration.
Typeundefined | { '--nylas-primary'?: string | undefined; '--nylas-info'?: string | undefined;
'--nylas-success'?: string | undefined; '--nylas-warning'?: string | undefined;
'--nylas-error'?: string | undefined; '--nylas-error-pressed'?: string | undefined;
'--nylas-base-0'?: string | undefined; '--nylas-base-25'?: string | undefined;
'--nylas-base-50'?: string | undefined; '--nylas-base-100'?: string | undefined;
'--nylas-base-200'?: string | undefined; '--nylas-base-300'?: string | undefined;
'--nylas-base-400'?: string | undefined; '--nylas-base-500'?: string | undefined;
'--nylas-base-600'?: string | undefined; '--nylas-base-700'?: string | undefined;
'--nylas-base-800'?: string | undefined; '--nylas-base-900'?: string | undefined;
'--nylas-base-950'?: string | undefined; '--nylas-color-blue-50'?: string | undefined;
'--nylas-color-blue-100'?: string | undefined; '--nylas-color-blue-300'?: string | undefined;
'--nylas-color-blue-500'?: string | undefined; '--nylas-color-blue-700'?: string | undefined;
'--nylas-color-blue-900'?: string | undefined; '--nylas-color-red-50'?: string | undefined;
'--nylas-color-red-100'?: string | undefined; '--nylas-color-red-300'?: string | undefined;
'--nylas-color-red-500'?: string | undefined; '--nylas-color-red-700'?: string | undefined;
'--nylas-color-red-900'?: string | undefined; '--nylas-color-green-50'?: string | undefined;
'--nylas-color-green-100'?: string | undefined; '--nylas-color-green-300'?: string |
undefined;'--nylas-color-green-500'?: string | undefined; '--nylas-color-green-700'?: string |
undefined; '--nylas-color-green-900'?: string | undefined; '--nylas-color-yellow-50'?: string
| undefined; '--nylas-color-yellow-100'?: string | undefined; '--nylas-color-yellow-300'?:
string | undefined; '--nylas-color-yellow-500'?: string | undefined;
'--nylas-color-yellow-700'?: string | undefined; '--nylas-color-yellow-900'?: string
| undefined; '--nylas-color-purple-50'?: string | undefined; '--nylas-color-purple-100'?:
string | undefined; '--nylas-color-purple-300'?: string | undefined;
'--nylas-color-purple-500'?: string | undefined; '--nylas-color-purple-700'?: string |
undefined; '--nylas-color-purple-900'?: string | undefined; '--nylas-color-sky-50'?: string |
undefined; '--nylas-color-sky-100'?: string | undefined; '--nylas-color-sky-300'?: string |
undefined; '--nylas-color-sky-500'?: string | undefined; '--nylas-color-sky-700'?: string |
undefined; '--nylas-color-sky-900'?: string | undefined; '--nylas-color-black'?: string |
undefined; '--nylas-color-grey-900'?: string | undefined; '--nylas-color-grey-800'?: string |
undefined; '--nylas-color-grey-700'?: string | undefined; '--nylas-color-grey-600'?: string |
undefined; '--nylas-color-grey-500'?: string | undefined; '--nylas-color-grey-400'?: string |
undefined; '--nylas-color-grey-300'?: string | undefined; '--nylas-color-grey-200'?: string |
undefined; '--nylas-color-grey-100'?: string | undefined; '--nylas-color-grey-50'?: string |
undefined; '--nylas-color-white'?: string | undefined; '--nylas-font-family'?: string |
undefined; '--nylas-font-size'?: string | undefined; '--nylas-border-radius'?: string |
undefined; '--nylas-border-radius-2x'?: string | undefined; '--nylas-border-radius-3x'?:
string | undefined; }
EventDescription
cancelButtonClickEvent emitted when the user clicks the cancel button to exit the Scheduler Editor.
dismissNotificationEvent emitted when the user dismisses an error notification, allowing parent components to handle cleanup or additional actions.
formSubmittedEvent emitted at the very beginning of form submission, before any validation occurs. This event is cancelable and can prevent the submission process if preventDefault() is called.
nylasSchedulerErrorEvent emitted when the component needs to display an error notification to the user. This includes validation errors, API errors, and other component-level errors.
previewButtonClickedEvent emitted when the user clicks the preview button. This fires before the preview link is opened and can be used to override the default preview behavior.
schedulerConfigChangedEvent emitted when the Scheduler Configuration form is submitted and ready to be processed (before the API request is made). This fires for both create and edit actions after client-side validation passes.
schedulerConfigCreatedEvent emitted when a Scheduler Configuration is successfully created via the API. This fires only for create actions after the API request completes successfully.
schedulerEditorFormUpdatedEvent emitted whenever any form field value changes within the Scheduler Editor. This provides real-time updates as users modify form inputs.

Type returned: Promise<void>

schedulerConfigCreatedEventHandler(data: SchedulerEventDetail) => Promise<CustomEvent<SchedulerEventDetail>>

Section titled “schedulerConfigCreatedEventHandler(data: SchedulerEventDetail) => Promise<CustomEvent<SchedulerEventDetail>>”
ParameterType
data{ config: Partial<Configuration>; action: "create" | "edit"; host: HTMLNylasEditorTabsElement;
resetLoadingState?: ((e: CustomEvent<any>) => void) | undefined; }

Type returned: Promise<CustomEvent<SchedulerEventDetail>>

setError(error: { message: string; type: NotificationType; category: ErrorCategory; title: string; }) => Promise<void>

Section titled “setError(error: { message: string; type: NotificationType; category: ErrorCategory; title: string; }) => Promise<void>”
ParameterType
error{ message: string; type: NotificationType; category: ErrorCategory; title: string; }

Type returned: Promise<void>

PartDescription
editor__footerThe footer container.
editor__footer-buttonsThe buttons container.
editor__footer-cancel
editor__footer-cta
editor__footer-previewThe preview button container.
editor__form-contentsThe form contents container.
editor__tabThe tabs container.
editor__tab-contentThe tab content container.
editor__tabs
editortab__availability
editortab__booking-form
editortab__booking-options
editortab__communications
editortab__event-info
editortab__page-styles
editortab__participants
PartDescription
nap__add-participantThe add participant button of the component.
nap__contentThe content of the component.
nap__inputThe input of the component.
nap__remove-participantThe remove participant button of the component.
nap__subtitleThe subtitle of the component.
nap__titleThe title of the component.
PartDescription
nap__add-time-rangeThe add time range button.
nap__availabilityThe availability container.
nap__dayThe day container.
nap__headerThe header of the availability picker.
nap__select-timezoneThe timezone selection container.
nap__select-timezone-buttonThe timezone selection button.
nap__select-timezone-dropdown-contentThe timezone selection dropdown content.
nap__time-picker-containerThe time picker container.
nap__time-picker-inputThe time picker input.
nap__time-picker-timesThe time picker times.
nap__time-rangeThe time range container.
nap__time-rangesThe time ranges container.
PartDescription
nbcpThe booking calendar picker container.
nbcp__dropdownThe dropdown container.
nbcp__dropdown-buttonThe dropdown button.
nbcp__dropdown-contentThe dropdown content.
nbcp__headerThe header of the booking calendar picker.
nbcp__input-labelThe input label of the booking calendar picker.
PartDescription
nbtThe buffer time container.
nbt__bodyThe body of the buffer time.
nbt__dropdown-afterThe after buffer dropdown container.
nbt__dropdown-beforeThe before buffer dropdown container.
nbt__dropdown-button-afterThe after buffer dropdown button.
nbt__dropdown-button-beforeThe before buffer dropdown button.
nbt__dropdown-content-afterThe after buffer dropdown content.
nbt__dropdown-content-beforeThe before buffer dropdown content.
nbt__headerThe header of the buffer time.
nbt__previewThe buffer time preview.
PartDescription
ncbfThe custom booking flow container.
ncbf__dropdownThe dropdown container.
ncbf__dropdown-buttonThe dropdown button.
ncbf__dropdown-contentThe dropdown content.
ncbf__headerThe header of the custom booking flow.
PartDescription
ncbsThe booking calendar picker container.
ncbs__additional_guestsThe additional guests setting.
ncbs__cancellation_optionsThe cancellation options setting.
ncbs__headerThe header of the booking calendar picker.
ncbs__rescheduling_optionsThe rescheduling options setting.
ncbs__settingsThe settings container.
ncbs__settings-divThe div inside the settings container that contains the checkbox and tooltip for each setting.
PartDescription
ncpThe calendar picker container.
ncp__dropdownThe dropdown container.
ncp__dropdown-buttonThe dropdown button.
ncp__dropdown-contentThe dropdown content.
ncp__headerThe header of the calendar picker.
PartDescription
ncpolicyThe cancellation policy container.
ncpolicy__textareaThe cancellation policy textarea.
PartDescription
nedThe event duration container.
ned__dropdownThe dropdown container for the duration element.
ned__dropdown-buttonThe dropdown button for the duration increment.
ned__dropdown-contentThe dropdown content for the duration increment.
ned__input_dropdownThe input dropdown container for the duration minutes.
ned__input_dropdown-contentThe dropdown content for the input duration minutes.
ned__input_dropdown-inputThe input for the duration minutes.
PartDescription
nedescThe event description container.
nedesc__textareaThe event description textarea.
PartDescription
nelThe event location container.
nel__dropdownThe dropdown container.
nel__dropdown-buttonThe dropdown button.
nel__dropdown-contentThe dropdown content.
nel__locationThe event location input.
PartDescription
netThe event title container.
net__dropdown-contentThe token options container.
net__footer
net__footer-buttons
net__footer-cancel
net__footer-cta
net__footer-preview
net__form-contents
net__tab-availability
net__tab-booking-form
net__tab-booking-options
net__tab-communications
net__tab-content
net__tab-event-info
net__tab-page-styles
net__tab-participants
net__tabs
net__titleThe event title input.
PartDescription
nlfbThe limit future bookings container.
nlfb__number-dropdownThe number dropdown container.
nlfb__number-dropdown-buttonThe number dropdown button.
nlfb__number-dropdown-contentThe number dropdown content.
nlfb__period-dropdownThe period dropdown container.
nlfb__period-dropdown-buttonThe period dropdown button.
nlfb__period-dropdown-contentThe period dropdown content.
PartDescription
nmbnThe minimum booking notice container.
nmbn__number-dropdownThe number dropdown container.
nmbn__number-dropdown-buttonThe number dropdown button.
nmbn__number-dropdown-contentThe number dropdown content.
nmbn__period-dropdownThe period dropdown container.
nmbn__period-dropdown-buttonThe period dropdown button.
nmbn__period-dropdown-contentThe period dropdown content.
PartDescription
nmcnThe minimum cancellation notice container.
nmcn__number-dropdownThe number dropdown container.
nmcn__number-dropdown-buttonThe number dropdown button.
nmcn__number-dropdown-contentThe number dropdown content.
nmcn__period-dropdownThe period dropdown container.
nmcn__period-dropdown-buttonThe period dropdown button.
nmcn__period-dropdown-contentThe period dropdown content.
PartDescription
npcaThe participants custom availability container.
npca__contentThe content of the participants custom availability.
npca__headerThe header of the participants custom availability.
npca__participant-containerThe participant container.
npca__participant-titleThe participant title.
npca__participant-toggle--containerThe participant toggle container.
npca__toggle-inputThe toggle input.
npca__toggle-labelThe toggle label.
npca__toggle-sliderThe toggle slider.
PartDescription
npnThe nylas-page-name container.
npn__bodyThe body of the event communication section.
npn__drawer-toggle--containerThe card’s drawer toggle container.
npn__headerThe header of the event communication section.
npn__input-textfieldThe page name textfield.
PartDescription
nsmThe booking calendar picker container.
nsm__dropdownThe dropdown container.
nsm__dropdown-buttonThe dropdown button.
nsm__dropdown-contentThe dropdown content.
nsm__headerThe header of the booking calendar picker.
nsm__input-labelThe input label of the booking calendar picker.
PartDescription
ntiThe time slot interval container.
nti__dropdownThe dropdown container.
nti__dropdown-buttonThe dropdown button.
nti__dropdown-contentThe dropdown content.
nti__headerThe header of the time slot interval picker.
nti__input-labelThe input label of the time slot interval picker.

The nylas-editor-tabs element is automatically included in the main NylasSchedulerEditor component. The following code samples show how to use the element on its own.