react-timebomb
v6.7.3
Published
yet another date- and timepicker based on typescript, react and styled-components.
Downloads
155
Readme
💣 react-timebomb
Examples 🃏
Check here for examples.
Usage
Basic
import { ReactTimebomb } from 'react-timebomb';
<ReactTimebomb
format="DD.MM.YYYY"
placeholder="Select date..."
onChange={console.log}
/>;
Confirm date before changing value
<ReactTimebomb
showConfirm
format="DD.MM.YYYY"
placeholder="Select date and confirm..."
onChange={console.log}
/>
Min- and Max-Date (or either)
<ReactTimebomb
format="DD.MM.YYYY"
placeholder="Select date with min- and max-date..."
minDate={new Date('2000-02-01')}
maxDate={new Date('2004-10-10')}
onChange={console.log}
/>
Week-Selection
<ReactTimebomb
showCalendarWeek
selectRange="week"
format="DD.MM.YYYY"
placeholder="Select week..."
onChange={console.log}
/>
Range-Selection
<ReactTimebomb
selectRange
format="DD.MM.YYYY"
placeholder="Select range..."
onChange={console.log}
/>
Datetime-Picker
<ReactTimebomb
format="DD.MM.YYYY HH:mm"
placeholder="Select date and time..."
onChange={console.log}
/>
Timepicker
<ReactTimebomb
format="HH:mm"
placeholder="Select time..."
onChange={console.log}
/>
Props
| Prop | Type | optional | default | |
| ---------------------- | ----------------------------------------------------------------------------- | :------: | ------------ | -------------------------------------------------------------------------------------------------- |
| value
| ReactTimebombDate
| | | |
| onChange
| onChange(dateA: Date ǀ undefined [, dateB: Date]): void
| | | Passes the changed date as first param. When selectRange
isset, two date-params are passed. |
| className
| string
| x | | |
| disabled
| boolean
| x | | |
| error
| boolean
| x | | |
| format
| string
| x | 'YYYY-MM-DD' | |
| menuWidth
| number
| x | | |
| timeStep
| number
| x | 1 | |
| minDate
| Date
| x | | |
| maxDate
| Date
| x | | |
| mobile
| boolean
| x | | Display a mobile-optimized menu |
| placeholder
| string
| x | | |
| selectRange
| 'week' ǀ boolean ǀ number
| x | | Pass true for free day selection, number for number of days selection or 'week' for week-selection |
| showCalendarWeek
| boolean
| x | | |
| showConfirm
| boolean
| x | | Displays a confirm-button. Submits the date when confirming via button or pressing enter. |
| arrowButtonId
| string
| x | | |
| arrowButtonComponent
| React.ComponentType<ArrowButtonProps>
| x | | |
| clearComponent
| React.ComponentType<ClearComponentProps>
| x | | |
| iconComponent
| React.ComponentType<IconProps>
| x | | |
| labelComponent
| React.ComponentType<ReactTimebombValueProps ǀ ReactTimebombMultiValueProps>
| x | | |
| confirmComponent
| React.ComponentType<ReactTimebombMenuProps>
| x | | |
| onError
| onError(error: ReactTimebombError, ...value: string[]): void
| x | | |
| onOpen
| onOpen(): void
| x | | |
| onClose
| onClose(): void
| x | | |
Types
type ReactTimebombDate = Date | undefined | Date[];
type ReactTimebombError = 'outOfRange' | 'invalidDate';
Localization
Timebomb is completely localized by moment.
The default locale is en
. The fastest way to change it, is by importing the locale-file to your project:
import 'moment/locale/de';
You can also use all other ways suggested by moment: http://momentjs.com/docs/#/i18n/changing-locale/