The nylas-booking-calendar-picker element displays the booking calendar picker.
import { NylasBookingCalendarPicker } from '@nylas/react';
export default function NylasBookingCalendarPickerExample() {return (<div className="inline-block border border-dashed border-gray-300 min-w-[700px] rounded-md p-4 justify-center"> <NylasBookingCalendarPicker calendars={[ { name: 'John Doe', is_primary: true, } as any, { id: 'new_calendar', name: 'New Calendar', is_primary: false, } as any, ]} /></div>);}Properties
Section titled “Properties”expressFlow?
Section titled “expressFlow?”| Name | expressFlow |
| Description | Prop for express flow when creating a Configuration. |
| Type | boolean |
| Default | false |
hideHeader?
Section titled “hideHeader?”| Name | hideHeader |
| Description | The prop to hide the header. |
| Type | boolean |
| Default | false |
selectedLanguage?
Section titled “selectedLanguage?”| Name | selectedLanguage |
| Description | The selected language. |
| Type | LANGUAGE_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 |
Standalone properties
Section titled “Standalone properties”The following props are automatically configured when used within NylasSchedulerEditor. Set these props manually only if you’re using the component independently.
calendars?
Section titled “calendars?”| Name | calendars |
| Description | The calendars to choose from. |
| Type | Calendar[] | undefined |
currentUser?
Section titled “currentUser?”| Name | currentUser |
| Description | The current logged in user. |
| Type | undefined | { id: string; email: string; name?: string | undefined; provider?: string |undefined; } |
currentUserCalendars?
Section titled “currentUserCalendars?”| Name | currentUserCalendars |
| Description | The list of user’s calendars. |
| Type | Calendar[] | undefined |
defaultBookingCalendar?
Section titled “defaultBookingCalendar?”| Name | defaultBookingCalendar |
| Description | The default selected calendar. |
| Type | string |
| Default | '' |
| Name | name |
| Description | The name of the calendar picker. |
| Type | string |
| Default | 'booking-calendar' |
themeConfig?
Section titled “themeConfig?”| Name | themeConfig |
| Description | The theme configuration. |
| Type | undefined | { '--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; } |
Events
Section titled “Events”| Event | Description |
|---|---|
valueChanged | Fired when the selected booking calendar changes. |
CSS parts
Section titled “CSS parts”| Part | Description |
|---|---|
nbcp | The booking calendar picker container. |
nbcp__dropdown | The dropdown container. |
nbcp__dropdown-button | The dropdown button. |
nbcp__dropdown-content | The dropdown content. |
nbcp__header | The header of the booking calendar picker. |
nbcp__input-label | The input label of the booking calendar picker. |
Code samples
Section titled “Code samples”The nylas-booking-calendar-picker element is automatically included in the main NylasSchedulerEditor component. The following code samples show how to use the element on its own.
<nylas-booking-calendar-picker name="booking-calendar" calendars="your-calendars" default-booking-calendar="primary-calendar"></nylas-booking-calendar-picker><nylas-booking-calendar-picker name="booking-calendar" calendars="your-calendars" current-user="your-current-user" current-user-calendars="user-calendars"></nylas-booking-calendar-picker><nylas-booking-calendar-picker name="booking-calendar" calendars="your-calendars" express-flow="true" hide-header="true"></nylas-booking-calendar-picker>// Listen for value changeselement.addEventListener('valueChanged', (event) => { const { value, name } = event.detail; console.log('Booking calendar changed:', { value, name });
// Update your configuration updateBookingCalendar(value, name);});<nylas-booking-calendar-picker name="booking-calendar" calendars="your-calendars" default-booking-calendar="primary-calendar" theme-config='{ "--nylas-primary": "#007bff", "--nylas-base-100": "#ffffff", "--nylas-border-radius": "8px" }'></nylas-booking-calendar-picker>