UNPKG

pickadate

Version:

The composable date & time picker.

24 lines (20 loc) 746 B
// @flow import type { DatePickerCoreApi } from 'pickadate/types' import { KEY_CODE, ARROW_KEY_CODES } from 'pickadate/constants' const createOnKeyDownCalendar = (picker: DatePickerCoreApi) => function onKeyDownCalendar(event: KeyboardEvent) { if (event.keyCode === KEY_CODE.BACKSPACE) { event.preventDefault() picker.clear() } else if ( event.keyCode === KEY_CODE.ENTER || event.keyCode === KEY_CODE.SPACE ) { event.preventDefault() picker.setSelected({ value: picker.store.getState().highlighted }) } else if (ARROW_KEY_CODES.includes(event.keyCode)) { event.preventDefault() picker.setHighlighted({ keyCode: event.keyCode }) } } export default createOnKeyDownCalendar