UNPKG

@awsui/components-react

Version:

On July 19th, 2022, we launched [Cloudscape Design System](https://cloudscape.design). Cloudscape is an evolution of AWS-UI. It consists of user interface guidelines, front-end components, design resources, and development tools for building intuitive, en

54 lines 1.63 kB
import { KeyCode } from '../../../keycode'; const HOME = 36; const END = 35; export const useMenuKeyboard = ({ goUp, goDown, selectOption, goHome, goEnd, closeDropdown, preventNativeSpace = false, }) => { return (event) => { switch (event.detail.keyCode) { case KeyCode.up: event.preventDefault(); goUp(); break; case KeyCode.down: event.preventDefault(); goDown(); break; case HOME: goHome(); break; case END: goEnd(); break; case KeyCode.escape: event.stopPropagation(); closeDropdown(); break; case KeyCode.enter: event.preventDefault(); selectOption(); break; case KeyCode.space: if (preventNativeSpace) { event.preventDefault(); selectOption(); } } }; }; export const useTriggerKeyboard = ({ openDropdown, goHome }) => { return (event) => { switch (event.detail.keyCode) { case KeyCode.up: case KeyCode.down: event.preventDefault(); goHome(); openDropdown(); break; case KeyCode.space: case KeyCode.enter: event.preventDefault(); openDropdown(); break; } }; }; //# sourceMappingURL=use-keyboard.js.map