UNPKG

@gechiui/block-editor

Version:
45 lines (38 loc) 951 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.RichTextShortcut = RichTextShortcut; var _keycodes = require("@gechiui/keycodes"); var _element = require("@gechiui/element"); var _ = require("./"); /** * GeChiUI dependencies */ /** * Internal dependencies */ function RichTextShortcut(_ref) { let { character, type, onUse } = _ref; const keyboardShortcuts = (0, _element.useContext)(_.keyboardShortcutContext); const onUseRef = (0, _element.useRef)(); onUseRef.current = onUse; (0, _element.useEffect)(() => { function callback(event) { if (_keycodes.isKeyboardEvent[type](event, character)) { onUseRef.current(); event.preventDefault(); } } keyboardShortcuts.current.add(callback); return () => { keyboardShortcuts.current.delete(callback); }; }, [character, type]); return null; } //# sourceMappingURL=shortcut.js.map