MonthPicker
Introduction
The MonthPicker component allows users to select a month. Variants include single month, month range, and multiple months. The
component requires @mantine/dates and is based on Mantine MonthPicker.
It is included within the following NPM package: @react-form-builder/components-mantine.
Components covered
- MtMonthPicker: Single month selection.
- MtMonthRangePicker: Month range selection.
- MtMonthMultiplePicker: Multiple months selection.
Differences between components
| Component | Selection type | Value shape | Typical use case |
|---|---|---|---|
| MtMonthPicker | Single month | Date | null | Pick one month (e.g. billing month) |
| MtMonthRangePicker | Month range | [Date, Date] | null | Select a start and end month |
| MtMonthMultiplePicker | Multiple months | Date[] | Choose several non-contiguous months |
MtMonthPicker
Single-month variant that focuses on choosing one month/year combination. It is suitable for fields like "billing month" or "reporting month".
MtMonthRangePicker
Range variant that lets the user select a start and end month. Use this when you want to represent a contiguous multi-month period.
MtMonthMultiplePicker
Multiple-month variant that allows selecting many months independently. It is useful for recurring cycles or manually curated sets of months.
Detailed component pages
Main properties
The following general properties are available within the Main tab:
| Name | Type | Description |
|---|---|---|
| Value | Date | null (or range/multiple) | Selected month(s) (uncontrolled value) |
| Min date | Date | Minimum selectable month |
| Max date | Date | Maximum selectable month |
| Size | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | Size of the picker |
| Disabled | boolean | Disables the picker |
| On change | event | Fired when the selection changes |
At the bottom of the Main properties menu, you can find additional options:
- Render When: Provides conditional rendering for your component as described in the corresponding chapter.
- HTML attributes: Allows you to provide custom HTML attributes for your form.
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 numberSpecifies the width for your component Height numberSpecifies the height for your component Margin top/right/bottom/left numberMargin values for you component Color stringAllows customizing the text color Background color stringEnables customizing the background color