UNPKG

zview-plus

Version:

基于 Vue3 的 UI 组件库

2 lines (1 loc) 3.79 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),B=require("../../input/index.js"),p=require("../../icon/index.js"),q=require("./input-number.js"),x={class:"crease_container"},G={name:"ZInputNumber"},I=e.defineComponent({...G,props:q.InputNumberProps,emits:["change","blur","focus"],setup(E,{expose:F,emit:f}){const u=E,t=e.ref(""),s=e.ref(u.disabled),c=e.ref(u.min),v=e.ref(u.max),o=e.ref(u.step),N=e.ref(u.stepStrictly),b=e.ref(u.precision),i=e.ref(u.readonly),a=e.ref(u.modelValue),V=e.ref(""),m=e.ref(null),S=(l,n,r)=>r-l<l-n?"end":"start",h=(l,n)=>{const r=Math.floor(l/n);return[r*n,r*n+n]},y=l=>{s.value||i.value||C(Number(a.value)-l)||(a.value=Number(a.value)-l,d())},g=l=>{s.value||i.value||C(Number(a.value)+l)||(a.value=Number(a.value)+l,d())},k=(l,n)=>{a.value=Number(n),e.nextTick(()=>{if(N.value){const r=h(Number(a.value),o.value);S(Number(a.value),r[0],r[1])==="start"?a.value=r[0]:a.value=r[1]}f("blur",l),d()})},z=l=>{f("focus",l)},C=l=>l<c.value||l>v.value?!0:(t.value="",!1),d=()=>{e.nextTick(()=>{s.value||i.value||(Number(a.value)<=c.value?(t.value="decrease",a.value=c.value):Number(a.value)>=v.value?(t.value="increase",a.value=v.value):t.value!==""&&(t.value=""),f("change",a.value,V.value),b.value>=1?a.value=Number(a.value).toFixed(b.value):a.value=Number(Number(a.value).toFixed(6)))})},$=()=>{var l;(l=m.value)==null||l.inputGetFocus()},j=()=>{var l;(l=m.value)==null||l.inputGetBlur()};return e.watch([()=>u.disabled,()=>u.min,()=>u.max,()=>u.step,()=>u.stepStrictly,()=>u.precision,()=>u.readonly],()=>{s.value=u.disabled,c.value=u.min,v.value=u.max,o.value=u.step,N.value=u.stepStrictly,b.value=u.precision,i.value=u.readonly}),e.watch(()=>a.value,(l,n)=>{V.value=n}),e.watch(()=>u.modelValue,l=>{a.value=l,d()}),e.onMounted(()=>{d()}),F({inputGetFocus:$,inputGetBlur:j}),(l,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["z-input-number",{"is-disabled":s.value},{small:l.size==="small"},{large:l.size==="large"},{right:l.controlsPosition==="right"},{controls:!l.controls}])},[u.controlsPosition?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createVNode(e.unref(B.default),{modelValue:a.value,"onUpdate:modelValue":n[3]||(n[3]=r=>a.value=r),type:"number",readonly:i.value,name:l.name,label:l.label,placeholder:l.placeholder,disabled:s.value,ref_key:"input",ref:m,onFocus:z,onBlur:k},null,8,["modelValue","readonly","name","label","placeholder","disabled"]),e.createElementVNode("div",x,[e.createElementVNode("span",{class:e.normalizeClass(["z-input-number__increase",{"is-disabled":t.value==="increase"}]),onClick:n[4]||(n[4]=r=>g(o.value))},[e.createVNode(e.unref(p.default),{name:"xiangshang2"})],2),e.createElementVNode("span",{class:e.normalizeClass(["z-input-number__decrease",{"is-disabled":t.value==="decrease"}]),onClick:n[5]||(n[5]=r=>y(o.value))},[e.createVNode(e.unref(p.default),{name:"xiangxia1"})],2)])],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("span",{class:e.normalizeClass(["z-input-number__decrease",{"is-disabled":t.value==="decrease"}]),onClick:n[0]||(n[0]=r=>y(o.value))},[e.createVNode(e.unref(p.default),{name:"jian"})],2),e.createVNode(e.unref(B.default),{modelValue:a.value,"onUpdate:modelValue":n[1]||(n[1]=r=>a.value=r),type:"number",readonly:i.value,name:l.name,label:l.label,placeholder:l.placeholder,disabled:s.value,ref_key:"input",ref:m,onFocus:z,onBlur:k},null,8,["modelValue","readonly","name","label","placeholder","disabled"]),e.createElementVNode("span",{class:e.normalizeClass(["z-input-number__increase",{"is-disabled":t.value==="increase"}]),onClick:n[2]||(n[2]=r=>g(o.value))},[e.createVNode(e.unref(p.default),{name:"jia"})],2)],64))],2))}});exports.default=I;