UNPKG

xdesign-vue-next

Version:

XDesign Component for vue-next

55 lines (51 loc) 1.72 kB
/** * xdesign v1.0.6 * (c) 2023 xdesign * @license MIT */ import { onMounted, onBeforeMount } from 'vue'; import { on, off } from '../utils/dom.mjs'; import { i as isString_1 } from '../_chunks/dep-11fa9c2c.mjs'; import { CHECKED_CODE_REG } from '../checkbox/hooks/useKeyboard.mjs'; import '../_chunks/dep-10a947a6.mjs'; import '../_chunks/dep-1cc1c24f.mjs'; import '../_chunks/dep-b75d8d74.mjs'; import '../_chunks/dep-82805301.mjs'; import '../_chunks/dep-6ad18815.mjs'; import '../_chunks/dep-a95026f2.mjs'; import '../utils/easing.mjs'; import '../_chunks/dep-068e912d.mjs'; import '../_chunks/dep-addc2a84.mjs'; function useKeyboard(radioGroupRef, setInnerValue) { var checkRadioInGroup = function checkRadioInGroup(e) { var isCheckedCode = CHECKED_CODE_REG.test(e.key) || CHECKED_CODE_REG.test(e.code); if (isCheckedCode) { e.preventDefault(); var inputNode = e.target.querySelector("input"); 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 = isString_1(value) && { "true": true, "false": false }[value] || value; value = isString_1(value) && value[0] === "'" ? value.replace(/'/g, "") : value; setInnerValue(value, { e: e }); } } }; onMounted(function () { on(radioGroupRef.value, "keydown", checkRadioInGroup); }); onBeforeMount(function () { off(radioGroupRef.value, "keydown", checkRadioInGroup); }); } export { useKeyboard as default }; //# sourceMappingURL=useKeyboard.mjs.map