mirror of
https://github.com/CorentinTh/it-tools.git
synced 2025-05-05 22:07:10 -04:00
8 lines
9.4 KiB
JavaScript
8 lines
9.4 KiB
JavaScript
![]() |
import{j as Be,b as Me,n as Te,o as X,u as Se,v as re,O as De,F as g,t as Ce,r as Fe,af as q,ad as J,al as Q,P as I}from"../entries/src_pages_Home.page.16dc467b.js";import{u as Pe}from"./chunk-66ac4853.js";import{u as Oe}from"./chunk-2749dac9.js";import{N as Ae,X as Y}from"./chunk-015e5c20.js";import{b as _e}from"./chunk-af6e0163.js";import{i as Ue}from"./chunk-26a03a7a.js";import{N as Z}from"./chunk-9519e52e.js";import{R as ke,A as $e}from"./chunk-05af1949.js";import{d as Ee,r as R,C as Le,A as He,c as je,h as s,n as ze}from"./chunk-449c23a2.js";const Ge=n=>{const{textColorDisabled:i}=n;return{iconColorDisabled:i}},Ke=Be({name:"InputNumber",common:Me,peers:{Button:_e,Input:Ue},self:Ge}),We=Ke;function Xe(n){return n==null||typeof n=="string"&&n.trim()===""?null:Number(n)}function qe(n){return n.includes(".")&&(/^(-)?\d+.*(\.|0)$/.test(n)||/^\.\d+$/.test(n))}function L(n){return n==null?!0:!Number.isNaN(n)}function ee(n,i){return n==null?"":i===void 0?String(n):n.toFixed(i)}function H(n){if(n===null)return null;if(typeof n=="number")return n;{const i=Number(n);return Number.isNaN(i)?null:i}}const Je=Te([X("input-number-suffix",`
|
||
|
display: inline-block;
|
||
|
margin-right: 10px;
|
||
|
`),X("input-number-prefix",`
|
||
|
display: inline-block;
|
||
|
margin-left: 10px;
|
||
|
`)]),ne=800,te=100,Qe=Object.assign(Object.assign({},re.props),{autofocus:Boolean,loading:{type:Boolean,default:void 0},placeholder:String,defaultValue:{type:Number,default:null},value:Number,step:{type:[Number,String],default:1},min:[Number,String],max:[Number,String],size:String,disabled:{type:Boolean,default:void 0},validator:Function,bordered:{type:Boolean,default:void 0},showButton:{type:Boolean,default:!0},buttonPlacement:{type:String,default:"right"},readonly:Boolean,clearable:Boolean,keyboard:{type:Object,default:{}},updateValueOnInput:{type:Boolean,default:!0},parse:Function,format:Function,precision:Number,status:String,"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array],onFocus:[Function,Array],onBlur:[Function,Array],onClear:[Function,Array],onChange:[Function,Array]}),on=Ee({name:"InputNumber",props:Qe,setup(n){const{mergedBorderedRef:i,mergedClsPrefixRef:p,mergedRtlRef:D}=Se(n),u=re("InputNumber","-input-number",Je,We,n,p),{localeRef:v}=Pe("InputNumber"),B=Oe(n),{mergedSizeRef:le,mergedDisabledRef:ie,mergedStatusRef:ue}=B,d=R(null),j=R(null),z=R(null),C=R(n.defaultValue),ae=Le(n,"value"),f=De(ae,C),h=R(""),F=e=>{const t=String(e).split(".")[1];return t?t.length:0},oe=e=>{const t=[n.min,n.max,n.step,e].map(r=>r===void 0?0:F(r));return Math.max(...t)},se=g(()=>{const{placeholder:e}=n;return e!==void 0?e:v.value.placeholder}),M=g(()=>{const e=H(n.step);return e!==null?e===0?1:Math.abs(e):1}),G=g(()=>{const e=H(n.min);return e!==null?e:null}),K=g(()=>{const e=H(n.max);return e!==null?e:null}),V=e=>{const{value:t}=f;if(e===t){b();return}const{"onUpdate:value":r,onUpdateValue:l,onChange:o}=n,{nTriggerFormInput:c,nTriggerFormChange:x}=B;o&&I(o,e),l&&I(l,e),r&&I(r,e),C.value=e,c(),x()},a=({offset:e,doUpdateIfValid:t,fixPrecision:r,isInputing:l})=>{const{value:o}=h;if(l&&qe(o))return!1;const c=(n.parse||Xe)(o);if(c===null)return t&&V(null),null;if(L(c)){const x=F(c),{precision:N}=n;if(N!==void 0&&N<x&&!r)return!1;let m=parseFloat((c+e).toFixed(N??oe(c)));if(L(m)){const{value:$}=K,{value:E}=G;if($!==null&&m>$){if(!t||l)return!1;m=$}if(E!==null&&m<E){if(!t||l)return!1;m=E}return n.validator&&!n.validator(m)?!1:(t&&V(m),m)}}return!1},b=()=>{const{value:e}=f;if(L(e)){const{format:t,precision:r}=n;t?h.value=t(e):e===null||r===void 0||F(e)>r?h.value=ee(e,void 0):h.value=ee(e,r)}else h.value=String(e)};b();const de=g(()=>a({offset:0,doUpdateIfValid:!1,isInputing:!1,fixPrecision:!1})===!1),P=g(()=>{const{value:e}=f;if(n.validator&&e===null)return!1;const{value:t}=M;return a({offset:-t,doUpdateIfValid:!1,isInputing:!1,fixPrecision:!1})!==!1}),O=g(()=>{const{value:e}=f;if(n.validator&&e===null)return!1;const{value:t}=M;return a({offset:+t,doUpdateIfValid:!1,isInputing:!1,fixPrecision:!1})!==!1});function fe(e){const{onFocus:t}=n,{nTriggerFormFocus:r}=B;t&&I(t,e),r()}function ce(e){var t,r;if(e.target===((t=d.value)===null||t===void 0?void 0:t.wrapperElRef))return;const l=a({offset:0,doUpdateIfValid:!0,isInputing:!1,fixPrecision:!0});if(l!==!1){const x=(r=d.value)===null||r===void 0?void 0:r.inputElRef;x&&(x.value=String(l||"")),f.value===l&&b()}else b();const{onBlur:o}=n,{nTriggerFormBlur:c}=B;o&&I(o,e),c(),ze(()=>{b()})}function me(e){const{onClear:t}=n;t&&I(t,e)}function A(){const{value:e}=O;if(!e){k();return}const{value:t}=f;if(t===null)n.validator||V(W());else{const{value:r}=M;a({offset:r,doUpdateIfValid:!0,isInputing:!1,fixPrecision:!0})}}function _(){const{value:e}=P;if(!e){U();return}const{value:t}=f;if(t===null)n.validator||V(W());else{const{value:r}=M;a({offset:-r,doUpdateIfValid:!0,isInputing:!1,fixPrecision:!0})}}const ve=fe,he=ce;function W(){if(n.validator)return null;const{value:e}=G,{value:t}=K;return e!==null?Math.max(0,e):t!==null?Math.min(0,t):0}function ge(e){me(e),V(null)}function pe(e){var t,r,l;!((t=z.value)===null||t===void 0)&&t.$el.contains(e.target)&&e.preventDefault(),!((r=j.value)===null||r===void 0)&&r.$el.contains(e.target)&&e.preventDefault(),(l=d.value)===null||l===void 0||l.activate()}let y=null,w=null,T=null;function U(){T&&(window.clearTimeout(T),T=null),y&&(window.clearInterv
|