mirror of
https://gitee.com/niucloud-team/niucloud-admin.git
synced 2025-12-29 01:40:16 +00:00
2 lines
5.6 KiB
JavaScript
2 lines
5.6 KiB
JavaScript
import{C as Q,I as P,U as y,w as _,a as D,d as R}from"./event-f85d77b0.js";import{E as ue}from"./index-e27c3bb0.js";import{b as se,_ as oe,a as d,s as h,r as ie,k as E,v as ce,u as de,J as me,am as pe,E as Y,t as be,an as fe}from"./index-cf9a2dd7.js";import{d as X,b as ve,r as Ne,O as Ve,c as V,w as ye,o as he,V as Ie,e as b,f as M,M as J,u as t,n as z,y as K,x as W,v as S,H as j,_ as we,m as ge,l as _e}from"./plugin-vue_export-helper-85a4d40b.js";import{u as Ee}from"./index-1ad115d7.js";import{v as q}from"./index-6c0acd90.js";const Se=se({id:{type:String,default:void 0},step:{type:Number,default:1},stepStrictly:Boolean,max:{type:Number,default:Number.POSITIVE_INFINITY},min:{type:Number,default:Number.NEGATIVE_INFINITY},modelValue:Number,readonly:Boolean,disabled:Boolean,size:oe,controls:{type:Boolean,default:!0},controlsPosition:{type:String,default:"",values:["","right"]},valueOnClear:{type:[String,Number,null],validator:l=>l===null||d(l)||["min","max"].includes(l),default:null},name:String,label:String,placeholder:String,precision:{type:Number,validator:l=>l>=0&&l===Number.parseInt(`${l}`,10)},validateEvent:{type:Boolean,default:!0}}),Pe={[Q]:(l,k)=>k!==l,blur:l=>l instanceof FocusEvent,focus:l=>l instanceof FocusEvent,[P]:l=>d(l)||h(l),[y]:l=>d(l)||h(l)},ke=["aria-label","onKeydown"],Ae=["aria-label","onKeydown"],Ce=X({name:"ElInputNumber"}),Fe=X({...Ce,props:Se,emits:Pe,setup(l,{expose:k,emit:c}){const a=l,{t:O}=Ee(),m=ve("input-number"),v=Ne(),s=Ve({currentValue:a.modelValue,userInput:null}),{formItem:f}=ie(),U=V(()=>d(a.modelValue)&&a.modelValue<=a.min),$=V(()=>d(a.modelValue)&&a.modelValue>=a.max),Z=V(()=>{const e=H(a.step);return E(a.precision)?Math.max(H(a.modelValue),e):(e>a.precision,a.precision)}),A=V(()=>a.controls&&a.controlsPosition==="right"),G=ce(),N=de(),C=V(()=>{if(s.userInput!==null)return s.userInput;let e=s.currentValue;if(h(e))return"";if(d(e)){if(Number.isNaN(e))return"";E(a.precision)||(e=e.toFixed(a.precision))}return e}),F=(e,n)=>{if(E(n)&&(n=Z.value),n===0)return Math.round(e);let r=String(e);const o=r.indexOf(".");if(o===-1||!r.replace(".","").split("")[o+n])return e;const w=r.length;return r.charAt(w-1)==="5"&&(r=`${r.slice(0,Math.max(0,w-1))}6`),Number.parseFloat(Number(r).toFixed(n))},H=e=>{if(h(e))return 0;const n=e.toString(),r=n.indexOf(".");let o=0;return r!==-1&&(o=n.length-r-1),o},L=(e,n=1)=>d(e)?F(e+a.step*n):s.currentValue,x=()=>{if(a.readonly||N.value||$.value)return;const e=Number(C.value)||0,n=L(e);I(n),c(P,s.currentValue)},B=()=>{if(a.readonly||N.value||U.value)return;const e=Number(C.value)||0,n=L(e,-1);I(n),c(P,s.currentValue)},T=(e,n)=>{const{max:r,min:o,step:u,precision:p,stepStrictly:w,valueOnClear:g}=a;let i=Number(e);if(h(e)||Number.isNaN(i))return null;if(e===""){if(g===null)return null;i=ge(g)?{min:o,max:r}[g]:g}return w&&(i=F(Math.round(i/u)*u,p)),E(p)||(i=F(i,p)),(i>r||i<o)&&(i=i>r?r:o,n&&c(y,i)),i},I=(e,n=!0)=>{var r;const o=s.currentValue,u=T(e);if(o!==u){if(!n){c(y,u);return}s.userInput=null,c(y,u),c(Q,u,o),a.validateEvent&&((r=f==null?void 0:f.validate)==null||r.call(f,"change").catch(p=>R())),s.currentValue=u}},ee=e=>{s.userInput=e;const n=e===""?null:Number(e);c(P,n),I(n,!1)},ne=e=>{const n=e!==""?Number(e):"";(d(n)&&!Number.isNaN(n)||e==="")&&I(n),s.userInput=null},te=()=>{var e,n;(n=(e=v.value)==null?void 0:e.focus)==null||n.call(e)},re=()=>{var e,n;(n=(e=v.value)==null?void 0:e.blur)==null||n.call(e)},ae=e=>{c("focus",e)},le=e=>{var n;c("blur",e),a.validateEvent&&((n=f==null?void 0:f.validate)==null||n.call(f,"blur").catch(r=>R()))};return ye(()=>a.modelValue,e=>{const n=T(s.userInput),r=T(e,!0);!d(n)&&(!n||n!==r)&&(s.currentValue=r,s.userInput=null)},{immediate:!0}),he(()=>{var e;const{min:n,max:r,modelValue:o}=a,u=(e=v.value)==null?void 0:e.input;if(u.setAttribute("role","spinbutton"),Number.isFinite(r)?u.setAttribute("aria-valuemax",String(r)):u.removeAttribute("aria-valuemax"),Number.isFinite(n)?u.setAttribute("aria-valuemin",String(n)):u.removeAttribute("aria-valuemin"),u.setAttribute("aria-valuenow",String(s.currentValue)),u.setAttribute("aria-disabled",String(N.value)),!d(o)&&o!=null){let p=Number(o);Number.isNaN(p)&&(p=null),c(y,p)}}),Ie(()=>{var e;const n=(e=v.value)==null?void 0:e.input;n==null||n.setAttribute("aria-valuenow",`${s.currentValue}`)}),k({focus:te,blur:re}),(e,n)=>(b(),M("div",{class:z([t(m).b(),t(m).m(t(G)),t(m).is("disabled",t(N)),t(m).is("without-controls",!e.controls),t(m).is("controls-right",t(A))]),onDragstart:n[0]||(n[0]=D(()=>{},["prevent"]))},[e.controls?J((b(),M("span",{key:0,role:"button","aria-label":t(O)("el.inputNumber.decrease"),class:z([t(m).e("decrease"),t(m).is("disabled",t(U))]),onKeydown:_(B,["enter"])},[K(t(Y),null,{default:W(()=>[t(A)?(b(),S(t(me),{key:0})):(b(),S(t(pe),{key:1}))]),_:1})],42,ke)),[[t(q),B]]):j("v-if",!0),e.controls?J((b(),M("span",{key:1,role:"button","aria-label":t(O)("el.inputNumber.increase"),class:z([t(m).e("increase"),t(m).is("disabled",t($))]),onKeydown:_(x,["enter"])},[K(t(Y),null,{default:W(()=>[t(A)?(b(),S(t(be),{key:0})):(b(),S(t(fe),{key:1}))]),_:1})],42,Ae)),[[t(q),x]]):j("v-if",!0),K(t(ue),{id:e.id,ref_key:"input",ref:v,type:"number",step:e.step,"model-value":t(C),placeholder:e.placeholder,readonly:e.readonly,disabled:t(N),size:t(G),max:e.max,min:e.min,name:e.name,label:e.label,"validate-event":!1,onKeydown:[_(D(x,["prevent"]),["up"]),_(D(B,["prevent"]),["down"])],onBlur:le,onFocus:ae,onInput:ee,onChange:ne},null,8,["id","step","model-value","placeholder","readonly","disabled","size","max","min","name","label","onKeydown"])],34))}});var xe=we(Fe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/input-number/src/input-number.vue"]]);const Oe=_e(xe);export{Oe as E};
|