tav-ui
Version:
31 lines (26 loc) • 969 B
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var vue = require('vue');
require('../../utils/index2.js');
var is = require('../../utils/is2.js');
const getInput = (el) => el instanceof HTMLInputElement ? el : el.querySelector("input") || el.querySelector("textarea");
const AutoFocusDirective = {
mounted: async (el, { arg }) => {
await vue.nextTick();
const relEle = arg ? el : getInput(el);
if (!is.isNullOrUnDef(relEle)) {
relEle.focus();
const className = relEle.getAttribute("class");
const value = relEle.value;
if (!Number.isNaN(value) && className && className.indexOf("number-input") > -1) {
relEle?.setSelectionRange(0, 1e3);
}
}
}
};
function setupAutoFocusDirective(app) {
app.directive("autoFocus", AutoFocusDirective);
}
exports["default"] = AutoFocusDirective;
exports.setupAutoFocusDirective = setupAutoFocusDirective;
//# sourceMappingURL=autoFocus2.js.map