Package:
@react-form-builder/components-mantine
· Source code
Introduction
The DatePickerInput component combines a text input with a calendar popover for date selection. Variants include single date,
date range, and multiple dates. The component requires @mantine/dates and is based on Mantine DatePicker and DateInput.
It is included within the following NPM package: @react-form-builder/components-mantine.
Components covered
- MtDatePickerInput: Single date selection with input.
- MtDateRangePickerInput: Date range selection with input.
- MtDateMultiplePickerInput: Multiple dates selection with input.
Differences between components
| Component | Selection type | Value shape | Typical use case |
|---|
| MtDatePickerInput | Single date | Date | null | Simple date input with calendar popup |
| MtDateRangePickerInput | Date range | [Date, Date] | null | From–to periods with text input |
| MtDateMultiplePickerInput | Multiple dates | Date[] | Selecting multiple dates via input + calendar |
Single-date input that shows a formatted date value and opens a calendar popover. It is the default choice when you need an input field
plus calendar for one date.
Range input that lets the user pick a start and end date while editing a textual representation. Use it for booking or report periods
where an input field is required.
Multiple-dates input that supports selecting several dates at once. The value is an array of dates, surfaced through the text input and
calendar.
Detailed component pages
Main properties
The following general properties are available within the Main tab:
| Name | Type | Description |
|---|
| Label | string | Label for the input |
| Value | Date | null (or range/multiple depending on variant) | Selected value(s) (uncontrolled value) |
| Placeholder | string | Placeholder when no date selected |
| Description | string | Helper text below the field |
| Error | string | Error message; when set, applies error styling |
| Min date | Date | Minimum selectable date |
| Max date | Date | Maximum selectable date |
| Size | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | Size of the input |
| Variant | 'filled' | 'default' | 'unstyled' | Visual variant |
| Disabled | boolean | Disables the input |
| Clearable | boolean | If true, allows clearing the selection |
| On change | event | Fired when the date(s) change |
At the bottom of the Main properties menu, you can find additional options:
Style properties
These are properties that allow to customize the size, color and other style properties of your component:
-
For Device: You can provide component’s style customization for all devices or specific
devices by using this dropdown list. Refer to Adaptive Layout for more
details.
-
Component > Class Name: Add a class name for your component for the subsequent styling if necessary.
-
Wrapper: The options below enable you to tailor the appearance of your component and customize
it for a specific device type, as selected in the For Device property:
| Name | Type | Description |
|---|
| Width | number | Specifies the width for your component |
| Height | number | Specifies the height for your component |
| Margin top/right/bottom/left | number | Margin values for you component |
| Color | string | Allows customizing the text color |
| Background color | string | Enables customizing the background color |
Last modified on April 16, 2026