UNPKG

vuux

Version:

Vue3 Nuxt3 Nuxt4 组件库

98 lines (97 loc) 3.44 kB
import { defineComponent as z, mergeModels as b, useTemplateRef as B, useModel as F, createElementBlock as T, openBlock as N, normalizeClass as k, unref as o, withDirectives as c, createElementVNode as s, createBlock as $, createCommentVNode as g, vModelText as q, createVNode as x, withModifiers as D } from "vue"; import { useInputNumber as P } from "./hook/useInputNumber.mjs"; import { Icon as i } from "@vuux/icons"; const R = ["placeholder", "readonly", "disabled", "min", "max", "step"], G = /* @__PURE__ */ z({ name: "InputNumber", __name: "index", props: /* @__PURE__ */ b({ step: { default: 1 }, min: { default: 0 }, max: { default: 100 }, precision: {}, focusSelect: { type: Boolean }, disabled: { type: Boolean }, clear: { type: Boolean }, placeholder: { default: "请输入" }, readonly: { type: Boolean } }, { modelValue: { required: !0 }, modelModifiers: {} }), emits: /* @__PURE__ */ b(["blur", "focus", "clear", "input"], ["update:modelValue"]), setup(r, { emit: C }) { const l = r, E = C, a = B("inputNumberEl"), p = B("inputEl"), u = F(r, "modelValue"), { isFocus: d, isClear: I, classNames: V, onFocus: m, onBlur: f, onInput: v, onPlus: M, onMinus: y, handleClear: w, onClearTimer: t } = P(l, a, p, u, E); return (S, e) => (N(), T("div", { ref_key: "inputNumberEl", ref: a, class: k(["app-input-number", o(V)]) }, [ c(s("input", { ref_key: "inputEl", ref: p, "onUpdate:modelValue": e[0] || (e[0] = (n) => u.value = n), title: "", type: "number", placeholder: l.placeholder, readonly: l.readonly, disabled: l.disabled, min: l.min, max: l.max, step: l.step, onInput: e[1] || (e[1] = //@ts-ignore (...n) => o(v) && o(v)(...n)), onBlur: e[2] || (e[2] = //@ts-ignore (...n) => o(f) && o(f)(...n)), onFocus: e[3] || (e[3] = //@ts-ignore (...n) => o(m) && o(m)(...n)) }, null, 40, R), [ [q, u.value] ]), s("div", { class: "input-operation", onMouseenter: e[10] || (e[10] = (n) => d.value = !0), onMouseleave: e[11] || (e[11] = (n) => d.value = !1) }, [ s("div", { class: "input-plus", onMousedown: e[4] || (e[4] = //@ts-ignore (...n) => o(M) && o(M)(...n)), onMouseup: e[5] || (e[5] = //@ts-ignore (...n) => o(t) && o(t)(...n)), onMouseleave: e[6] || (e[6] = //@ts-ignore (...n) => o(t) && o(t)(...n)) }, [ x(o(i), { name: "Icon2569559", size: 14 }) ], 32), s("div", { class: "input-minus", onMousedown: e[7] || (e[7] = //@ts-ignore (...n) => o(y) && o(y)(...n)), onMouseup: e[8] || (e[8] = //@ts-ignore (...n) => o(t) && o(t)(...n)), onMouseleave: e[9] || (e[9] = //@ts-ignore (...n) => o(t) && o(t)(...n)) }, [ x(o(i), { name: "Icon1336922", size: 14 }) ], 32) ], 32), l.clear ? (N(), $(o(i), { key: 0, name: "Icon9176904", size: 13, opacity: 0.9, class: k({ "is-active": o(I) }), onClick: D(o(w), ["stop"]) }, null, 8, ["class", "onClick"])) : g("", !0) ], 2)); } }); export { G as default };