Booking Search Bar

Production-ready unified accommodation search bar — destination text input, date range picker, guest picker, and optional advanced filters panel. Composes DateRangePicker, GuestPicker, and AdvancedFiltersPanel. Available in horizontal (unified bar) and stacked layouts.

core/booking-search-bar

Installation

1 · Add registry to components.json

2 · Install component

Examples

Default

Horizontal bar with advanced filters, and stacked layout.

API Reference

PropTypeDescription
valuereq
BookingSearchValueControlled { destination, dates, guests } value.
onChangereq
(value: BookingSearchValue) => voidCalled when any field changes.
onSearch
(value: BookingSearchValue) => voidCalled when the user clicks the Search button.
layout
"horizontal" | "stacked"Visual layout variant.
guestConfig
GuestPickerConfigOccupancy constraints passed to the guest picker.
dateConfig
BookingDateConfigDate picker constraints: minDate, maxDate, minNights, maxNights, blockedDates.
showAdvancedFilters
booleanShows the Filters button and wires up the AdvancedFiltersPanel.
filtersContent
React.ReactNodeContent to render inside the filters panel.
filtersActiveCount
numberActive filter count badge shown on the Filters button and in the panel.
onFiltersApply
() => voidCalled when the user applies filters.
onFiltersReset
() => voidCalled when the user resets filters.
destinationPlaceholder
stringPlaceholder for the destination input.
disabled
booleanDisables all fields.
analytics
BookingSearchAnalyticsAnalytics callbacks from useBookingSearchAnalytics. When provided, key events (search submit, filter apply/reset) are forwarded to your adapter.