2026-01-09 19:01:04 +08:00
|
|
|
import{o as e,f as t,w as a,k as s,i as l,E as i,p as n,G as o,j as u,I as c,s as r,g as d,h as p,x as h,y as f,b as g,r as m,e as b,q as y,u as _,F as x,l as D,t as A,m as k,S as w}from"./index-759PoYgM.js";import{_ as C}from"./_plugin-vue_export-helper.BCo6x5W8.js";import{r as V}from"./uni-app.es.Hulr8kk-.js";import{a as T,_ as P}from"./uni-popup.DAsKHQxH.js";import{N as B}from"./tab.Nc_JIfEj.js";const N=C({name:"UniNumberBox",emits:["change","input","update:modelValue","blur","focus"],props:{value:{type:[Number,String],default:1},modelValue:{type:[Number,String],default:1},min:{type:Number,default:0},max:{type:Number,default:100},step:{type:Number,default:1},background:{type:String,default:"#f5f5f5"},color:{type:String,default:"#333"},disabled:{type:Boolean,default:!1},width:{type:Number,default:40}},data:()=>({inputValue:0}),watch:{value(e){this.inputValue=+e},modelValue(e){this.inputValue=+e}},computed:{widthWithPx(){return this.width+"px"}},created(){1===this.value&&(this.inputValue=+this.modelValue),1===this.modelValue&&(this.inputValue=+this.value)},methods:{_calcValue(e){if(this.disabled)return;const t=this._getDecimalScale();let a=this.inputValue*t,s=this.step*t;if("minus"===e){if(a-=s,a<this.min*t)return;a>this.max*t&&(a=this.max*t)}if("plus"===e){if(a+=s,a>this.max*t)return;a<this.min*t&&(a=this.min*t)}this.inputValue=(a/t).toFixed(String(t).length-1),this.$emit("input",+this.inputValue),this.$emit("update:modelValue",+this.inputValue),this.$emit("change",+this.inputValue)},_getDecimalScale(){let e=1;return~~this.step!==this.step&&(e=Math.pow(10,String(this.step).split(".")[1].length)),e},_onBlur(e){this.$emit("blur",e);let t=e.detail.value;if(isNaN(t))return void(this.inputValue=this.value);t=+t,t>this.max?t=this.max:t<this.min&&(t=this.min);const a=this._getDecimalScale();this.inputValue=t.toFixed(String(a).length-1),this.$emit("input",+this.inputValue),this.$emit("update:modelValue",+this.inputValue),this.$emit("change",+this.inputValue)},_onFocus(e){this.$emit("focus",e)}}},[["render",function(r,d,p,h,f,g){const m=o,b=u,y=c;return e(),t(b,{class:"uni-numbox"},{default:a((()=>[s(b,{onClick:d[0]||(d[0]=e=>g._calcValue("minus")),class:"uni-numbox__minus uni-numbox-btns",style:l({background:p.background})},{default:a((()=>[s(m,{class:i(["uni-numbox--text",{"uni-numbox--disabled":f.inputValue<=p.min||p.disabled}]),style:l({color:p.color})},{default:a((()=>[n("-")])),_:1},8,["class","style"])])),_:1},8,["style"]),s(y,{disabled:p.disabled,onFocus:g._onFocus,onBlur:g._onBlur,class:"uni-numbox__value",type:p.step<1?"digit":"number",modelValue:f.inputValue,"onUpdate:modelValue":d[1]||(d[1]=e=>f.inputValue=e),style:l({background:p.background,color:p.color,width:g.widthWithPx})},null,8,["disabled","onFocus","onBlur","type","modelValue","style"]),s(b,{onClick:d[2]||(d[2]=e=>g._calcValue("plus")),class:"uni-numbox__plus uni-numbox-btns",style:l({background:p.background})},{default:a((()=>[s(m,{class:i(["uni-numbox--text",{"uni-numbox--disabled":f.inputValue>=p.max||p.disabled}]),style:l({color:p.color})},{default:a((()=>[n("+")])),_:1},8,["class","style"])])),_:1},8,["style"])])),_:1})}],["__scopeId","data-v-91750ff9"]]),v="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAB7BJREFUWEedV0tsnUcV/s7M/7jX177Xj8SN7ThJ1bz6oKVUlUiqNnQDCLVILJCQYMEKgVABRaA0RGKB1KalFY1U1E3FColFkVg0bKJKQEO7KARQHooTO7ET52HycHx9c9//zBw0M/9/H3YaHrOx//+fOec73/nOOXMJ/8fi1dVR5M00KCkCYBiuINLXiSZv/6/m6L85wHwiRHv6qzDVr4CbX2adTIITANr5BwKQjBkI/4Ugdwxy6Cjk2FEispvuu+4LgPlKHi36LlT5J9DlCTatHmPWce9xBpj8K5EDZOkqBWNHEFd/RbSj92AfoE8FwMmtfUhuvsutGzvAKo3Ubmdw4w5MYwUwLTCzjR6UG4bIjwEkug4oBKLxCxSNfofCiT/di4p7AuD64n5WV19Fshp7igmmdgO6PAuouxBhBIoLIBkCRGCtwK0ajEoAOQhZ2g5RGE/9ERAUWxxOHhT5B4/Y7b1A+gAwM6F56RVuzB+Eqbt93KpA3T4JETJkYRwURF3DzP1ZsPuNhmmswiQKYng3RFRyIEnmGdHUaxjYfYiIOiD6ATQX96N+7k3WNfdeVxbB1QUEI1OAjNZmvO95Lb3MBqZeBuQoZHGLD1vkmeOJ/XLwiSPZ/g4ATq49w3fP/pGTlYhAUCsXQGYVQWlTKjYGUwgqPAFuLgDJHRtYdwWj4Nw2UO00fIU4/sBJE0YHoMEt7g0Fg5rCkX1U3POxe3bbTpwIsUOfMY35nfbZVJeA1hKC4iYnMu+JgdKzAElAFoC7J4D2Te8nHAcVPw9WVpgN/y1bNnSTwHAelB93ZigamaVT8aP0/PPKU
|