UNPKG

tdesign-react

Version:
54 lines (48 loc) 1.65 kB
/** * tdesign v1.16.2 * (c) 2025 tdesign * @license MIT */ 'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var React = require('react'); var common = require('../_chunks/dep-4fbbd844.js'); var _util_listener = require('../_util/listener.js'); require('../_chunks/dep-e0735b5f.js'); require('../_chunks/dep-b304bc94.js'); require('../_chunks/dep-4ce0670e.js'); require('../_chunks/dep-b325182b.js'); require('../_chunks/dep-bdafd287.js'); require('../_chunks/dep-3448f35f.js'); function useKeyboard(radioGroupRef, setInnerValue) { var checkRadioInGroup = function checkRadioInGroup(e) { if (common.CHECKED_CODE_REG.test(e.key) || common.CHECKED_CODE_REG.test(e.code)) { var inputNode = e.target.querySelector("input"); if (!inputNode) return; var data = inputNode.dataset || {}; if (inputNode.checked && data.allowUncheck) { setInnerValue(void 0, { e: e }); } else { var value = !isNaN(Number(data.value)) ? Number(data.value) : data.value; value = typeof value === "string" && { "true": true, "false": false }[value] || value; value = typeof value === "string" && value[0] === "'" ? value.replace(/'/g, "") : value; setInnerValue(value, { e: e }); } } }; React.useEffect(function () { _util_listener.on(radioGroupRef.current, "keydown", checkRadioInGroup); return function () { _util_listener.off(radioGroupRef.current, "keydown", checkRadioInGroup); }; }, []); } exports["default"] = useKeyboard; //# sourceMappingURL=useKeyboard.js.map