UNPKG

xdesign-vue-next

Version:

XDesign Component for vue-next

58 lines (50 loc) 1.86 kB
/** * xdesign v1.0.6 * (c) 2023 xdesign * @license MIT */ 'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var vue = require('vue'); var utils_dom = require('../utils/dom.js'); var isString = require('lodash/isString'); var checkbox_hooks_useKeyboard = require('../checkbox/hooks/useKeyboard.js'); require('../_chunks/dep-8d10b59f.js'); require('lodash/isFunction'); require('lodash/isArray'); require('../utils/easing.js'); function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } var isString__default = /*#__PURE__*/_interopDefaultLegacy(isString); function useKeyboard(radioGroupRef, setInnerValue) { var checkRadioInGroup = function checkRadioInGroup(e) { var isCheckedCode = checkbox_hooks_useKeyboard.CHECKED_CODE_REG.test(e.key) || checkbox_hooks_useKeyboard.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__default["default"](value) && { "true": true, "false": false }[value] || value; value = isString__default["default"](value) && value[0] === "'" ? value.replace(/'/g, "") : value; setInnerValue(value, { e: e }); } } }; vue.onMounted(function () { utils_dom.on(radioGroupRef.value, "keydown", checkRadioInGroup); }); vue.onBeforeMount(function () { utils_dom.off(radioGroupRef.value, "keydown", checkRadioInGroup); }); } exports["default"] = useKeyboard; //# sourceMappingURL=useKeyboard.js.map