@lntvow/utils 3.1.2 → 3.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var ee=Object.create;var F=Object.defineProperty;var te=Object.getOwnPropertyDescriptor;var re=Object.getOwnPropertyNames;var ne=Object.getPrototypeOf,oe=Object.prototype.hasOwnProperty;var ie=(e,t)=>{for(var r in t)F(e,r,{get:t[r],enumerable:!0})},K=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of re(t))!oe.call(e,o)&&o!==r&&F(e,o,{get:()=>t[o],enumerable:!(n=te(t,o))||n.enumerable});return e};var S=(e,t,r)=>(r=e!=null?ee(ne(e)):{},K(t||!e||!e.__esModule?F(r,"default",{value:e,enumerable:!0}):r,e)),se=e=>K(F({},"__esModule",{value:!0}),e);var gt={};ie(gt,{castArray:()=>$,compareProperties:()=>Pe,compose:()=>ae,composeRight:()=>me,debounce:()=>ue,debugWarn:()=>z,deepClone:()=>M,deepMerge:()=>A,deprecated:()=>Z,error:()=>ge,excludeProperties:()=>Ye,extractProperties:()=>Ue,generateRandomArray:()=>ve,generateRandomColor:()=>_e,generateRandomDate:()=>k,generateRandomEmail:()=>V,generateRandomFloat:()=>Ze,generateRandomIdCard:()=>Ge,generateRandomInteger:()=>m,generateRandomMobilePhone:()=>Ke,generateRandomString:()=>y,generateRandomStringFromSource:()=>I,generateRandomUrl:()=>X,getRandomItem:()=>x,hasChanged:()=>$e,hasOwn:()=>w,initLog:()=>pe,isArray:()=>p,isBoolean:()=>Ae,isChinese:()=>ze,isDate:()=>U,isDateString:()=>J,isDef:()=>Oe,isEmail:()=>ct,isEmptyString:()=>pt,isEnglishAphabet:()=>He,isFloat:()=>Je,isFunction:()=>h,isIdCard:()=>ft,isInteger:()=>ot,isLowerCase:()=>Ve,isLowerCaseAndNumber:()=>Xe,isLowerCaseAndNumberAndChinese:()=>Qe,isMap:()=>le,isMobilePhone:()=>ut,isNegativeFloat:()=>tt,isNegativeFloatOrZero:()=>nt,isNegativeInteger:()=>at,isNegativeIntegerOrZero:()=>mt,isNull:()=>we,isNumber:()=>c,isNumberOrNumberString:()=>Le,isObject:()=>u,isPositiveFloat:()=>et,isPositiveFloatOrZero:()=>rt,isPositiveInteger:()=>it,isPositiveIntegerOrZero:()=>st,isPromise:()=>be,isRegExp:()=>v,isSet:()=>xe,isString:()=>_,isSymbol:()=>ye,isUndef:()=>l,isUndefined:()=>he,isUpperCase:()=>We,isUpperCaseAndNumber:()=>Be,isUpperCaseAndNumberAndChinese:()=>qe,isUrl:()=>dt,log:()=>E,objectToString:()=>L,qs:()=>je,throttle:()=>Fe,throwError:()=>a,toTypeString:()=>R,validatorChineseOrEnglish:()=>ke,validatorChineseOrEnglishOrNumber:()=>De,validatorEmail:()=>Ne,validatorLatitudeOrLongitude:()=>Se,validatorUppercaseOrNumbersOrSpecial:()=>Ie,validatorUppercaseOrNumbersOrUnderline:()=>Ce,warn:()=>de});module.exports=se(gt);function ae(...e){return e.reduce((t,r)=>function(...n){return r(t(...n))})}function me(...e){return e.reduce((t,r)=>function(...n){return t(r(...n))})}function ue(e,t=500){let r=null;return function(...n){r&&clearTimeout(r),r=setTimeout(()=>{e.apply(this,n)},t)}}var L=Object.prototype.toString,R=e=>L.call(e),ce=null;function pe(e){h(e)&&(ce=e)}var fe={info:"color: #3B82F6",error:"color: #EF4444;",warn:"color: #F59E0B;",success:"color: #10B981;"},T=(e,t,...r)=>{if(!t)return;let n=r.length===0?"":r.length===1?r[0]:r;console.log(`%c[Log] ${t}:`,fe[e],n)},E=(e,...t)=>{T("info",e,...t)};E.info=(e,...t)=>{T("info",e,...t)};E.success=(e,...t)=>{T("success",e,...t)};E.error=(e,...t)=>{T("error",e,...t)};E.warn=(e,...t)=>{T("warn",e,...t)};var de=(...e)=>console.warn(...e),ge=(...e)=>console.error(...e),le=e=>R(e)==="[object Map]",xe=e=>R(e)==="[object Set]",U=e=>R(e)==="[object Date]",v=e=>R(e)==="[object RegExp]",h=e=>typeof e=="function",c=e=>typeof e=="number",_=e=>typeof e=="string",ye=e=>typeof e=="symbol",u=e=>e!==null&&typeof e=="object",be=e=>u(e)&&h(e.then)&&h(e.catch),l=e=>e==null,he=e=>e===void 0,we=e=>e===null,Oe=e=>e!=null,Ae=e=>typeof e=="boolean",p=Array.isArray,w=(e,t)=>Object.hasOwn(e,t),$e=(e,t)=>e!==t;function M(e){let t=new WeakMap;function r(n){if(U(n))return new Date(n);if(v(n))return new RegExp(n);if(u(n)){if(t.has(n))return t.get(n);let o={};if(p(n)){o=[],t.set(n,o);for(let i=0;i<n.length;i++)o[i]=r(n[i]);return o}t.set(n,o);for(let i in n)w(n,i)&&(o[i]=r(n[i]));return o}else return n}return r(e)}var D=class extends Error{constructor(t){super(t),this.name="LntvowError"}};function a(e,t){throw new D(`[${e}] ${t}`)}function z(e,t){if(process.env.NODE_ENV!=="production"){let r=_(e)?new D(`[${e}] ${t}`):e;console.warn(r)}}var Z=({from:e,replacement:t,version:r,type:n="API"})=>{z(`${n}`,`${e} is about to be deprecated in version ${r}, please use ${t} instead.`)};function A(e,t,r){return(!u(e)||!u(t))&&a("deepMerge","template \u548C source \u5FC5\u987B\u662F\u5BF9\u8C61"),p(e)?Te(e,t,r):Re(e,t,r)}function Re(e,t,r){let n=O(t,r);return Object.keys(e).forEach(i=>{l(t[i])?n[i]=O(e[i],r):n[i]=u(e[i])&&u(t[i])?A(e[i],t[i],r):O(t[i],r)}),n}function Te(e,t,r){if(p(t)){let n=O(t,r);return n.push(...O(e,r)),n}else return O(e,r)}function O(e,t){let{deepClone:r=!0}=t||{};return r?M(e):e}function Ee(e,t){let{decode:r}=A({decode:!0},t||{}),n={};e.startsWith("?")&&(e=e.slice(1)),e.includes("?")&&(e=e.slice(e.indexOf("?")+1));let o=e.split("&").filter(Boolean);for(let i of o){let[g,f]=i.split("=");n[g]=r?decodeURIComponent(f):f}return n}function H(e,t){let{encode:r}=A({encode:!0},t||{}),n=[];for(let o in e){let i=e[o];n.push(`${o}=${r?encodeURIComponent(i):i}`)}return n.join("&")}function Me(e,t,r){let n=A({encode:!0},r||{}),o=H(t,n);return e.includes("?")?e.endsWith("?")||e.endsWith("&")?`${e}${o}`:`${e}&${o}`:`${e}?${o}`}var je={parse:Ee,stringify:H,appendQueryString:Me};function Fe(e,t=500){let r=null;return function(...n){if(l(r))return r=Date.now(),e.apply(this,n);{let o=Date.now();if(o-r>=t)return r=o,e.apply(this,n)}}}function Se(e){return/^-?\d{1,3}\.\d{6}$/.test(e)}function De(e){return!l(e)&&/^[\dA-Za-z\u4E00-\u9FA5]+$/.test(e)}function ke(e){return!l(e)&&/^[A-Za-z\u4E00-\u9FA5]+$/.test(e)}function Ie(e){return!l(e)&&/^[\d!"#$%&'()*+,./:;<=>?@A-Z[\\\]^_`{|}~]+$/.test(e)}function Ce(e){return/^[\dA-Z_]+$/.test(e)}function Ne(e){return Z({from:"validatorEmail",replacement:"isEmail",version:"2.4.0"}),/^([\w-])+@([\w-])+(\.[\w-])+/.test(e)}function $(e){return p(e)?e:[e]}function Pe(e,t){return(!u(e)||!u(t))&&a("deepMerge","template \u548C source \u5FC5\u987B\u662F\u5BF9\u8C61"),p(e)?void 0:W(e,t)}function W(e,t){let r={};return Object.keys(e).forEach(n=>{let o=e[n],i=t[n];u(o)&&u(i)?r[n]=W(o,i):Object.is(o,i)||(r[n]=i)}),r}function Ye(e,t){let r=M(e);return $(t).forEach(o=>{w(r,o)&&delete r[o]}),r}function Ue(e,t){let r={};return $(t).forEach(o=>{w(e,o)&&(r[o]=e[o])}),r}function ve(e,t){return(!c(e)||e<=0)&&a("generateRandomArray","num \u5FC5\u987B\u5927\u4E8E0"),h(t)||a("generateRandomArray","cb \u5FC5\u987B\u662F\u51FD\u6570"),Array.from({length:e}).fill(0).map((r,n)=>t(r,n))}function _e(){return`#${Math.random().toString(16).slice(2,8).padEnd(6,"0")}`}var d=S(require("dayjs"),1),B=S(require("dayjs/plugin/customParseFormat"),1);function m(e={}){c(e)&&(e={max:e});let{min:t=0,max:r=Number.MAX_SAFE_INTEGER}=e,n=Math.ceil(t),o=Math.floor(r);return n===o?n:(o<n&&(r>=t&&a("generateRandomInteger",`\u672A\u627E\u5230 ${t} \u548C ${r} \u4E4B\u95F4\u7684\u6574\u6570\u503C`),a("generateRandomInteger",`\u6700\u5927\u503C ${r} \u5E94\u5927\u4E8E\u6700\u5C0F\u503C ${t}`)),Math.floor(Math.random()*(o-n+1)+n))}(0,d.extend)(B.default);function k(e={}){let{start:t="1800-01-01 00:00:00",end:r=(0,d.default)().format("YYYY-MM-DD HH:mm:ss"),format:n="YYYY-MM-DD HH:mm:ss"}=e;(!(0,d.default)(t).isValid()||!(0,d.default)(r).isValid())&&a("generateRandomDate","start end \u53C2\u6570\u5FC5\u987B\u662F\u5408\u6CD5\u7684\u65F6\u95F4\u683C\u5F0F");let o=(0,d.default)(t).year(),i=(0,d.default)(r).year(),g=m({min:o,max:i}),f=m({min:1,max:12}),j=m({min:1,max:31}),N=m(23),b=m(59),P=m(59),Y=(0,d.default)(`${g}-${f}-${j} ${N}:${b}:${P}`);return Y.isBefore((0,d.default)(t))||Y.isAfter((0,d.default)(r))?k(e):Y.format(n)}var q=16,G=1;function y(e={}){c(e)&&(e={length:e});let{lowerCase:t=!0,upperCase:r=!0,number:n=!0,extra:o=[],length:i=q}=e,g={max:q,min:G};c(i)?g={max:i,min:i}:(g={...g,...i},g.min<G&&a("generateRandomString",`length.min \u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E${G}`)),t||r||n||a("generateRandomString","lowerCase upperCase number \u81F3\u5C11\u9700\u8981\u4E00\u4E2A\u53C2\u6570\u4E3Atrue");let f="";t&&(f+="abcdefghijklmnopqrstuvwxyz"),r&&(f+="ABCDEFGHIJKLMNOPQRSTUVWXYZ"),n&&(f+="0123456789"),f+=$(o).flatMap(b=>b.split("")).join("");let j="",N=m(g);for(let b=0;b<N;b++){let P=Math.floor(Math.random()*f.length);j+=f.charAt(P)}return j}function x(e){return e[Math.floor(Math.random()*e.length)]}function V(){let e=["gmail.com","outlook.com.cn","example.com","qq.com","163.com","test.com.cn"],t=`${y(1)}${y({length:m({max:30,min:1}),extra:[".","_","-"]})}${y(1)}@${x(e)}`;return/\.{2,}/.test(t)?V():t}function Ze(e={}){c(e)&&(e={max:e});let{min:t=0,max:r=1,fractionDigits:n=2}=e;if(t===r)return t;if(t>r)throw new Error(`\u6700\u5927\u503C ${r} \u5E94\u5927\u4E8E\u6700\u5C0F\u503C ${t}`);return Math.random()*(r-t)+t}function I(e,t){(!c(e)||e<=0)&&a("generateRandomStringFromSource","num \u5FC5\u987B\u5927\u4E8E0"),(!p(t)||t.length===0)&&a("generateRandomStringFromSource","source \u4E0D\u80FD\u4E3A\u7A7A\u6570\u7EC4");let r="";for(let n=0;n<e;n++)r+=x(t);return r}function Ge(){let e=m({min:1e5,max:999999}),t=[0,1,2,3,4,5,6,7,8,9];return[e,k({format:"YYYYMMDD"}),I(3,t),I(1,[...t,"X","x"])].join("")}function Ke(){return x(["13","14","15","16","17","18","19"])+m(999999999).toString().padEnd(9,"0")}function X(){let t=`${x(["http://","https://"])}${y(1)}${y({length:{max:60,min:5},extra:["/"]})}`;return/^(?:http|https):\/\/\w*\/{2,}/.test(t)?X():t}function Le(e){return/^\d+$/.test(e)}function ze(e){return/^[\u4E00-\u9FA5]+$/.test(e)}function He(e){return/^[A-Za-z]+$/.test(e)}function We(e){return/^[A-Z]+$/.test(e)}function Be(e){return/^[\dA-Z]+$/.test(e)}function qe(e){return/^[\dA-Z\u4E00-\u9FA5]+$/.test(e)}function Ve(e){return/^[a-z]+$/.test(e)}function Xe(e){return/^[\da-z]+$/.test(e)}function Qe(e){return/^[\da-z\u4E00-\u9FA5]+$/.test(e)}function Je(e,t={}){let{integer:r=!0}=t;return r?/^-?(0|[1-9]\d*)(\.\d+)?$/.test(e):/^-?(0|[1-9]\d*)\.\d+$/.test(e)}function et(e,t={}){let{integer:r=!0}=t;return r?/^[1-9]\d*\.?\d*|^0\.\d*[1-9]\d*$/.test(e):/^[1-9]\d*\.\d*|^0\.\d*[1-9]\d*$/.test(e)}function tt(e,t={}){let{integer:r=!0}=t;return r?/^-[1-9]\d*\.?\d*|^-0\.\d*[1-9]\d*$/.test(e):/^-[1-9]\d*\.\d*|^-0\.\d*[1-9]\d*$/.test(e)}function rt(e,t={}){let{integer:r=!0}=t;return r?/^(0|[1-9]\d*)(\.\d+)?$/.test(e):/^(0|[1-9]\d*)\.\d+$/.test(e)}function nt(e,t={}){let{integer:r=!0}=t;return r?/^(-?0(\.0+)?|-(0|[1-9]\d*)(\.\d+)?)$/.test(e):/^(-?0\.0+|-(0|[1-9]\d*)\.\d+)$/.test(e)}function ot(e){return/^-?(0|[1-9]\d*)$/.test(e)}function it(e){return/^[1-9]\d*$/.test(e)}function st(e){return/^(0|[1-9]\d*)$/.test(e)}function at(e){return/^-([1-9]\d*)$/.test(e)}function mt(e){return/^(0|-(0|[1-9]\d*))$/.test(e)}var C=S(require("dayjs"),1),Q=S(require("dayjs/plugin/customParseFormat"),1);function ut(e){return/^1[3-9]\d{9}$/.test(e)}function ct(e){return/^[\w-]+(?:\.[\w-]+)*@[\w-]+(?:\.[\w-]+)*$/.test(e)}function pt(e){return e===""}function J(e,t="YYYY-MM-DD HH:mm:ss"){return(0,C.extend)(Q.default),(0,C.default)(e,t,!0).isValid()}function ft(e){return/^[1-9]\d{5}(?:18|19|20)\d{2}(?:0[1-9]|1[0-2])(?:0[1-9]|[12]\d|3[01])\d{3}[\dX]$/i.test(e)&&J(e.slice(6,14),"YYYYMMDD")}function dt(e){return/^(?:http|https):\/\/[\w.]+/.test(e)}0&&(module.exports={castArray,compareProperties,compose,composeRight,debounce,debugWarn,deepClone,deepMerge,deprecated,error,excludeProperties,extractProperties,generateRandomArray,generateRandomColor,generateRandomDate,generateRandomEmail,generateRandomFloat,generateRandomIdCard,generateRandomInteger,generateRandomMobilePhone,generateRandomString,generateRandomStringFromSource,generateRandomUrl,getRandomItem,hasChanged,hasOwn,initLog,isArray,isBoolean,isChinese,isDate,isDateString,isDef,isEmail,isEmptyString,isEnglishAphabet,isFloat,isFunction,isIdCard,isInteger,isLowerCase,isLowerCaseAndNumber,isLowerCaseAndNumberAndChinese,isMap,isMobilePhone,isNegativeFloat,isNegativeFloatOrZero,isNegativeInteger,isNegativeIntegerOrZero,isNull,isNumber,isNumberOrNumberString,isObject,isPositiveFloat,isPositiveFloatOrZero,isPositiveInteger,isPositiveIntegerOrZero,isPromise,isRegExp,isSet,isString,isSymbol,isUndef,isUndefined,isUpperCase,isUpperCaseAndNumber,isUpperCaseAndNumberAndChinese,isUrl,log,objectToString,qs,throttle,throwError,toTypeString,validatorChineseOrEnglish,validatorChineseOrEnglishOrNumber,validatorEmail,validatorLatitudeOrLongitude,validatorUppercaseOrNumbersOrSpecial,validatorUppercaseOrNumbersOrUnderline,warn});
1
+ "use strict";var tt=Object.create;var S=Object.defineProperty;var et=Object.getOwnPropertyDescriptor;var nt=Object.getOwnPropertyNames;var rt=Object.getPrototypeOf,ot=Object.prototype.hasOwnProperty;var it=(t,e)=>{for(var n in e)S(t,n,{get:e[n],enumerable:!0})},K=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of nt(e))!ot.call(t,o)&&o!==n&&S(t,o,{get:()=>e[o],enumerable:!(r=et(e,o))||r.enumerable});return t};var D=(t,e,n)=>(n=t!=null?tt(rt(t)):{},K(e||!t||!t.__esModule?S(n,"default",{value:t,enumerable:!0}):n,t)),st=t=>K(S({},"__esModule",{value:!0}),t);var ge={};it(ge,{castArray:()=>$,compareProperties:()=>Pt,compose:()=>at,composeRight:()=>mt,debounce:()=>ut,debugWarn:()=>z,deepClone:()=>M,deepMerge:()=>A,deprecated:()=>Z,error:()=>gt,excludeProperties:()=>Yt,extractProperties:()=>Ut,generateRandomArray:()=>vt,generateRandomColor:()=>_t,generateRandomDate:()=>k,generateRandomEmail:()=>V,generateRandomFloat:()=>Zt,generateRandomIdCard:()=>Gt,generateRandomInteger:()=>m,generateRandomMobilePhone:()=>Kt,generateRandomString:()=>y,generateRandomStringFromSource:()=>I,generateRandomUrl:()=>X,getRandomItem:()=>x,hasChanged:()=>$t,hasOwn:()=>w,initLog:()=>pt,isArray:()=>p,isBoolean:()=>At,isChinese:()=>zt,isDate:()=>U,isDateString:()=>J,isDef:()=>Ot,isEmail:()=>ce,isEmptyString:()=>pe,isEnglishAphabet:()=>Ht,isFloat:()=>Jt,isFunction:()=>h,isIdCard:()=>fe,isInteger:()=>oe,isLowerCase:()=>Vt,isLowerCaseAndNumber:()=>Xt,isLowerCaseAndNumberAndChinese:()=>Qt,isMap:()=>lt,isMobilePhone:()=>ue,isNegativeFloat:()=>ee,isNegativeFloatOrZero:()=>re,isNegativeInteger:()=>ae,isNegativeIntegerOrZero:()=>me,isNull:()=>wt,isNumber:()=>c,isNumberOrNumberString:()=>Lt,isObject:()=>u,isPositiveFloat:()=>te,isPositiveFloatOrZero:()=>ne,isPositiveInteger:()=>ie,isPositiveIntegerOrZero:()=>se,isPromise:()=>bt,isRegExp:()=>v,isSet:()=>xt,isString:()=>_,isSymbol:()=>yt,isUndef:()=>l,isUndefined:()=>ht,isUpperCase:()=>Wt,isUpperCaseAndNumber:()=>Bt,isUpperCaseAndNumberAndChinese:()=>qt,isUrl:()=>de,log:()=>E,objectToString:()=>L,qs:()=>jt,throttle:()=>St,throwError:()=>a,toTypeString:()=>R,validatorChineseOrEnglish:()=>kt,validatorChineseOrEnglishOrNumber:()=>Ft,validatorEmail:()=>Nt,validatorLatitudeOrLongitude:()=>Dt,validatorUppercaseOrNumbersOrSpecial:()=>It,validatorUppercaseOrNumbersOrUnderline:()=>Ct,warn:()=>dt});module.exports=st(ge);function at(...t){return t.reduce((e,n)=>function(...r){return n(e(...r))})}function mt(...t){return t.reduce((e,n)=>function(...r){return e(n(...r))})}function ut(t,e=500){let n=null;return function(...r){n&&clearTimeout(n),n=setTimeout(()=>{t.apply(this,r)},e)}}var L=Object.prototype.toString,R=t=>L.call(t),ct=null;function pt(t){h(t)&&(ct=t)}var ft={info:"",error:"color: #EF4444;",warn:"color: #F59E0B;",success:"color: #10B981;"},T=(t,e,...n)=>{if(!e)return;let r=n.length===0?"":n.length===1?n[0]:n;console.log(`%c[Log] ${e}:`,ft[t],r)},E=(t,...e)=>{T("info",t,...e)};E.info=(t,...e)=>{T("info",t,...e)};E.success=(t,...e)=>{T("success",t,...e)};E.error=(t,...e)=>{T("error",t,...e)};E.warn=(t,...e)=>{T("warn",t,...e)};var dt=(...t)=>console.warn(...t),gt=(...t)=>console.error(...t),lt=t=>R(t)==="[object Map]",xt=t=>R(t)==="[object Set]",U=t=>R(t)==="[object Date]",v=t=>R(t)==="[object RegExp]",h=t=>typeof t=="function",c=t=>typeof t=="number",_=t=>typeof t=="string",yt=t=>typeof t=="symbol",u=t=>t!==null&&typeof t=="object",bt=t=>u(t)&&h(t.then)&&h(t.catch),l=t=>t==null,ht=t=>t===void 0,wt=t=>t===null,Ot=t=>t!=null,At=t=>typeof t=="boolean",p=Array.isArray,w=(t,e)=>Object.hasOwn(t,e),$t=(t,e)=>t!==e;function M(t){let e=new WeakMap;function n(r){if(U(r))return new Date(r);if(v(r))return new RegExp(r);if(u(r)){if(e.has(r))return e.get(r);let o={};if(p(r)){o=[],e.set(r,o);for(let i=0;i<r.length;i++)o[i]=n(r[i]);return o}e.set(r,o);for(let i in r)w(r,i)&&(o[i]=n(r[i]));return o}return r}return n(t)}var F=class extends Error{constructor(e){super(e),this.name="LntvowError"}};function a(t,e){throw new F(`[${t}] ${e}`)}function z(t,e){if(process.env.NODE_ENV!=="production"){let n=_(t)?new F(`[${t}] ${e}`):t;console.warn(n)}}var Z=({from:t,replacement:e,version:n,type:r="API"})=>{z(`${r}`,`${t} is about to be deprecated in version ${n}, please use ${e} instead.`)};function A(t,e,n){return(!u(t)||!u(e))&&a("deepMerge","template \u548C source \u5FC5\u987B\u662F\u5BF9\u8C61"),p(t)?Tt(t,e,n):Rt(t,e,n)}function Rt(t,e,n){let r=O(e,n);return Object.keys(t).forEach(i=>{l(e[i])?r[i]=O(t[i],n):r[i]=u(t[i])&&u(e[i])?A(t[i],e[i],n):O(e[i],n)}),r}function Tt(t,e,n){if(p(e)){let r=O(e,n);return r.push(...O(t,n)),r}return O(t,n)}function O(t,e){let{deepClone:n=!0}=e||{};return n?M(t):t}function Et(t,e){let{decode:n}=A({decode:!0},e||{}),r={};t.startsWith("?")&&(t=t.slice(1)),t.includes("?")&&(t=t.slice(t.indexOf("?")+1));let o=t.split("&").filter(Boolean);for(let i of o){let[g,f]=i.split("=");r[g]=n?decodeURIComponent(f):f}return r}function H(t,e){let{encode:n}=A({encode:!0},e||{}),r=[];for(let o in t){let i=t[o];r.push(`${o}=${n?encodeURIComponent(i):i}`)}return r.join("&")}function Mt(t,e,n){let r=A({encode:!0},n||{}),o=H(e,r);return t.includes("?")?t.endsWith("?")||t.endsWith("&")?`${t}${o}`:`${t}&${o}`:`${t}?${o}`}var jt={parse:Et,stringify:H,appendQueryString:Mt};function St(t,e=500){let n=null;return function(...r){if(l(n))return n=Date.now(),t.apply(this,r);{let o=Date.now();if(o-n>=e)return n=o,t.apply(this,r)}}}function Dt(t){return/^-?\d{1,3}\.\d{6}$/.test(t)}function Ft(t){return!l(t)&&/^[\dA-Za-z\u4E00-\u9FA5]+$/.test(t)}function kt(t){return!l(t)&&/^[A-Za-z\u4E00-\u9FA5]+$/.test(t)}function It(t){return!l(t)&&/^[\d!"#$%&'()*+,./:;<=>?@A-Z[\\\]^_`{|}~]+$/.test(t)}function Ct(t){return/^[\dA-Z_]+$/.test(t)}function Nt(t){return Z({from:"validatorEmail",replacement:"isEmail",version:"2.4.0"}),/^([\w-])+@([\w-])+(\.[\w-])+/.test(t)}function $(t){return p(t)?t:[t]}function Pt(t,e){return(!u(t)||!u(e))&&a("deepMerge","template \u548C source \u5FC5\u987B\u662F\u5BF9\u8C61"),p(t)?void 0:W(t,e)}function W(t,e){let n={};return Object.keys(t).forEach(r=>{let o=t[r],i=e[r];u(o)&&u(i)?n[r]=W(o,i):Object.is(o,i)||(n[r]=i)}),n}function Yt(t,e){let n=M(t);return $(e).forEach(o=>{w(n,o)&&delete n[o]}),n}function Ut(t,e){let n={};return $(e).forEach(o=>{w(t,o)&&(n[o]=t[o])}),n}function vt(t,e){return(!c(t)||t<=0)&&a("generateRandomArray","num \u5FC5\u987B\u5927\u4E8E0"),h(e)||a("generateRandomArray","cb \u5FC5\u987B\u662F\u51FD\u6570"),Array.from({length:t}).fill(0).map((n,r)=>e(n,r))}function _t(){return`#${Math.random().toString(16).slice(2,8).padEnd(6,"0")}`}var d=D(require("dayjs"),1),B=D(require("dayjs/plugin/customParseFormat"),1);function m(t={}){c(t)&&(t={max:t});let{min:e=0,max:n=Number.MAX_SAFE_INTEGER}=t,r=Math.ceil(e),o=Math.floor(n);return r===o?r:(o<r&&(n>=e&&a("generateRandomInteger",`\u672A\u627E\u5230 ${e} \u548C ${n} \u4E4B\u95F4\u7684\u6574\u6570\u503C`),a("generateRandomInteger",`\u6700\u5927\u503C ${n} \u5E94\u5927\u4E8E\u6700\u5C0F\u503C ${e}`)),Math.floor(Math.random()*(o-r+1)+r))}(0,d.extend)(B.default);function k(t={}){let{start:e="1800-01-01 00:00:00",end:n=(0,d.default)().format("YYYY-MM-DD HH:mm:ss"),format:r="YYYY-MM-DD HH:mm:ss"}=t;(!(0,d.default)(e).isValid()||!(0,d.default)(n).isValid())&&a("generateRandomDate","start end \u53C2\u6570\u5FC5\u987B\u662F\u5408\u6CD5\u7684\u65F6\u95F4\u683C\u5F0F");let o=(0,d.default)(e).year(),i=(0,d.default)(n).year(),g=m({min:o,max:i}),f=m({min:1,max:12}),j=m({min:1,max:31}),N=m(23),b=m(59),P=m(59),Y=(0,d.default)(`${g}-${f}-${j} ${N}:${b}:${P}`);return Y.isBefore((0,d.default)(e))||Y.isAfter((0,d.default)(n))?k(t):Y.format(r)}var q=16,G=1;function y(t={}){c(t)&&(t={length:t});let{lowerCase:e=!0,upperCase:n=!0,number:r=!0,extra:o=[],length:i=q}=t,g={max:q,min:G};c(i)?g={max:i,min:i}:(g={...g,...i},g.min<G&&a("generateRandomString",`length.min \u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E${G}`)),e||n||r||a("generateRandomString","lowerCase upperCase number \u81F3\u5C11\u9700\u8981\u4E00\u4E2A\u53C2\u6570\u4E3Atrue");let f="";e&&(f+="abcdefghijklmnopqrstuvwxyz"),n&&(f+="ABCDEFGHIJKLMNOPQRSTUVWXYZ"),r&&(f+="0123456789"),f+=$(o).flatMap(b=>b.split("")).join("");let j="",N=m(g);for(let b=0;b<N;b++){let P=Math.floor(Math.random()*f.length);j+=f.charAt(P)}return j}function x(t){return t[Math.floor(Math.random()*t.length)]}function V(){let t=["gmail.com","outlook.com.cn","example.com","qq.com","163.com","test.com.cn"],e=`${y(1)}${y({length:m({max:30,min:1}),extra:[".","_","-"]})}${y(1)}@${x(t)}`;return/\.{2,}/.test(e)?V():e}function Zt(t={}){c(t)&&(t={max:t});let{min:e=0,max:n=1,fractionDigits:r=2}=t;if(e===n)return e;if(e>n)throw new Error(`\u6700\u5927\u503C ${n} \u5E94\u5927\u4E8E\u6700\u5C0F\u503C ${e}`);return Math.random()*(n-e)+e}function I(t,e){(!c(t)||t<=0)&&a("generateRandomStringFromSource","num \u5FC5\u987B\u5927\u4E8E0"),(!p(e)||e.length===0)&&a("generateRandomStringFromSource","source \u4E0D\u80FD\u4E3A\u7A7A\u6570\u7EC4");let n="";for(let r=0;r<t;r++)n+=x(e);return n}function Gt(){let t=m({min:1e5,max:999999}),e=[0,1,2,3,4,5,6,7,8,9];return[t,k({format:"YYYYMMDD"}),I(3,e),I(1,[...e,"X","x"])].join("")}function Kt(){return x(["13","14","15","16","17","18","19"])+m(999999999).toString().padEnd(9,"0")}function X(){let e=`${x(["http://","https://"])}${y(1)}${y({length:{max:60,min:5},extra:["/"]})}`;return/^(?:http|https):\/\/\w*\/{2,}/.test(e)?X():e}function Lt(t){return/^\d+$/.test(t)}function zt(t){return/^[\u4E00-\u9FA5]+$/.test(t)}function Ht(t){return/^[A-Za-z]+$/.test(t)}function Wt(t){return/^[A-Z]+$/.test(t)}function Bt(t){return/^[\dA-Z]+$/.test(t)}function qt(t){return/^[\dA-Z\u4E00-\u9FA5]+$/.test(t)}function Vt(t){return/^[a-z]+$/.test(t)}function Xt(t){return/^[\da-z]+$/.test(t)}function Qt(t){return/^[\da-z\u4E00-\u9FA5]+$/.test(t)}function Jt(t,e={}){let{integer:n=!0}=e;return n?/^-?(0|[1-9]\d*)(\.\d+)?$/.test(t):/^-?(0|[1-9]\d*)\.\d+$/.test(t)}function te(t,e={}){let{integer:n=!0}=e;return n?/^[1-9]\d*\.?\d*|^0\.\d*[1-9]\d*$/.test(t):/^[1-9]\d*\.\d*|^0\.\d*[1-9]\d*$/.test(t)}function ee(t,e={}){let{integer:n=!0}=e;return n?/^-[1-9]\d*\.?\d*|^-0\.\d*[1-9]\d*$/.test(t):/^-[1-9]\d*\.\d*|^-0\.\d*[1-9]\d*$/.test(t)}function ne(t,e={}){let{integer:n=!0}=e;return n?/^(0|[1-9]\d*)(\.\d+)?$/.test(t):/^(0|[1-9]\d*)\.\d+$/.test(t)}function re(t,e={}){let{integer:n=!0}=e;return n?/^(-?0(\.0+)?|-(0|[1-9]\d*)(\.\d+)?)$/.test(t):/^(-?0\.0+|-(0|[1-9]\d*)\.\d+)$/.test(t)}function oe(t){return/^-?(0|[1-9]\d*)$/.test(t)}function ie(t){return/^[1-9]\d*$/.test(t)}function se(t){return/^(0|[1-9]\d*)$/.test(t)}function ae(t){return/^-([1-9]\d*)$/.test(t)}function me(t){return/^(0|-(0|[1-9]\d*))$/.test(t)}var C=D(require("dayjs"),1),Q=D(require("dayjs/plugin/customParseFormat"),1);function ue(t){return/^1[3-9]\d{9}$/.test(t)}function ce(t){return/^[\w-]+(?:\.[\w-]+)*@[\w-]+(?:\.[\w-]+)*$/.test(t)}function pe(t){return t===""}function J(t,e="YYYY-MM-DD HH:mm:ss"){return(0,C.extend)(Q.default),(0,C.default)(t,e,!0).isValid()}function fe(t){return/^[1-9]\d{5}(?:18|19|20)\d{2}(?:0[1-9]|1[0-2])(?:0[1-9]|[12]\d|3[01])\d{3}[\dX]$/i.test(t)&&J(t.slice(6,14),"YYYYMMDD")}function de(t){return/^(?:http|https):\/\/[\w.]+/.test(t)}0&&(module.exports={castArray,compareProperties,compose,composeRight,debounce,debugWarn,deepClone,deepMerge,deprecated,error,excludeProperties,extractProperties,generateRandomArray,generateRandomColor,generateRandomDate,generateRandomEmail,generateRandomFloat,generateRandomIdCard,generateRandomInteger,generateRandomMobilePhone,generateRandomString,generateRandomStringFromSource,generateRandomUrl,getRandomItem,hasChanged,hasOwn,initLog,isArray,isBoolean,isChinese,isDate,isDateString,isDef,isEmail,isEmptyString,isEnglishAphabet,isFloat,isFunction,isIdCard,isInteger,isLowerCase,isLowerCaseAndNumber,isLowerCaseAndNumberAndChinese,isMap,isMobilePhone,isNegativeFloat,isNegativeFloatOrZero,isNegativeInteger,isNegativeIntegerOrZero,isNull,isNumber,isNumberOrNumberString,isObject,isPositiveFloat,isPositiveFloatOrZero,isPositiveInteger,isPositiveIntegerOrZero,isPromise,isRegExp,isSet,isString,isSymbol,isUndef,isUndefined,isUpperCase,isUpperCaseAndNumber,isUpperCaseAndNumberAndChinese,isUrl,log,objectToString,qs,throttle,throwError,toTypeString,validatorChineseOrEnglish,validatorChineseOrEnglishOrNumber,validatorEmail,validatorLatitudeOrLongitude,validatorUppercaseOrNumbersOrSpecial,validatorUppercaseOrNumbersOrUnderline,warn});
package/dist/index.d.cts CHANGED
@@ -469,4 +469,4 @@ declare function isIdCard(val: string): boolean;
469
469
  */
470
470
  declare function isUrl(val: string): boolean;
471
471
 
472
- export { type AnyObject, type ArrayItem, type Arrayable, type FloatOptions, type GenerateRandomDate, type GenerateRandomFloat, type GenerateRandomIntegerOptions, type GenerateRandomStringOptions, type ParseOptions, type StringifyOptions, castArray, compareProperties, compose, composeRight, debounce, debugWarn, deepClone, deepMerge, deprecated, error, excludeProperties, extractProperties, generateRandomArray, generateRandomColor, generateRandomDate, generateRandomEmail, generateRandomFloat, generateRandomIdCard, generateRandomInteger, generateRandomMobilePhone, generateRandomString, generateRandomStringFromSource, generateRandomUrl, getRandomItem, hasChanged, hasOwn, initLog, isArray, isBoolean, isChinese, isDate, isDateString, isDef, isEmail, isEmptyString, isEnglishAphabet, isFloat, isFunction, isIdCard, isInteger, isLowerCase, isLowerCaseAndNumber, isLowerCaseAndNumberAndChinese, isMap, isMobilePhone, isNegativeFloat, isNegativeFloatOrZero, isNegativeInteger, isNegativeIntegerOrZero, isNull, isNumber, isNumberOrNumberString, isObject, isPositiveFloat, isPositiveFloatOrZero, isPositiveInteger, isPositiveIntegerOrZero, isPromise, isRegExp, isSet, isString, isSymbol, isUndef, isUndefined, isUpperCase, isUpperCaseAndNumber, isUpperCaseAndNumberAndChinese, isUrl, log, objectToString, qs, throttle, throwError, toTypeString, validatorChineseOrEnglish, validatorChineseOrEnglishOrNumber, validatorEmail, validatorLatitudeOrLongitude, validatorUppercaseOrNumbersOrSpecial, validatorUppercaseOrNumbersOrUnderline, warn };
472
+ export { type AnyObject, type ArrayItem, type Arrayable, type FloatOptions, type ParseOptions, type StringifyOptions, castArray, compareProperties, compose, composeRight, debounce, debugWarn, deepClone, deepMerge, deprecated, error, excludeProperties, extractProperties, generateRandomArray, generateRandomColor, generateRandomDate, generateRandomEmail, generateRandomFloat, generateRandomIdCard, generateRandomInteger, generateRandomMobilePhone, generateRandomString, generateRandomStringFromSource, generateRandomUrl, getRandomItem, hasChanged, hasOwn, initLog, isArray, isBoolean, isChinese, isDate, isDateString, isDef, isEmail, isEmptyString, isEnglishAphabet, isFloat, isFunction, isIdCard, isInteger, isLowerCase, isLowerCaseAndNumber, isLowerCaseAndNumberAndChinese, isMap, isMobilePhone, isNegativeFloat, isNegativeFloatOrZero, isNegativeInteger, isNegativeIntegerOrZero, isNull, isNumber, isNumberOrNumberString, isObject, isPositiveFloat, isPositiveFloatOrZero, isPositiveInteger, isPositiveIntegerOrZero, isPromise, isRegExp, isSet, isString, isSymbol, isUndef, isUndefined, isUpperCase, isUpperCaseAndNumber, isUpperCaseAndNumberAndChinese, isUrl, log, objectToString, qs, throttle, throwError, toTypeString, validatorChineseOrEnglish, validatorChineseOrEnglishOrNumber, validatorEmail, validatorLatitudeOrLongitude, validatorUppercaseOrNumbersOrSpecial, validatorUppercaseOrNumbersOrUnderline, warn };
package/dist/index.d.ts CHANGED
@@ -469,4 +469,4 @@ declare function isIdCard(val: string): boolean;
469
469
  */
470
470
  declare function isUrl(val: string): boolean;
471
471
 
472
- export { type AnyObject, type ArrayItem, type Arrayable, type FloatOptions, type GenerateRandomDate, type GenerateRandomFloat, type GenerateRandomIntegerOptions, type GenerateRandomStringOptions, type ParseOptions, type StringifyOptions, castArray, compareProperties, compose, composeRight, debounce, debugWarn, deepClone, deepMerge, deprecated, error, excludeProperties, extractProperties, generateRandomArray, generateRandomColor, generateRandomDate, generateRandomEmail, generateRandomFloat, generateRandomIdCard, generateRandomInteger, generateRandomMobilePhone, generateRandomString, generateRandomStringFromSource, generateRandomUrl, getRandomItem, hasChanged, hasOwn, initLog, isArray, isBoolean, isChinese, isDate, isDateString, isDef, isEmail, isEmptyString, isEnglishAphabet, isFloat, isFunction, isIdCard, isInteger, isLowerCase, isLowerCaseAndNumber, isLowerCaseAndNumberAndChinese, isMap, isMobilePhone, isNegativeFloat, isNegativeFloatOrZero, isNegativeInteger, isNegativeIntegerOrZero, isNull, isNumber, isNumberOrNumberString, isObject, isPositiveFloat, isPositiveFloatOrZero, isPositiveInteger, isPositiveIntegerOrZero, isPromise, isRegExp, isSet, isString, isSymbol, isUndef, isUndefined, isUpperCase, isUpperCaseAndNumber, isUpperCaseAndNumberAndChinese, isUrl, log, objectToString, qs, throttle, throwError, toTypeString, validatorChineseOrEnglish, validatorChineseOrEnglishOrNumber, validatorEmail, validatorLatitudeOrLongitude, validatorUppercaseOrNumbersOrSpecial, validatorUppercaseOrNumbersOrUnderline, warn };
472
+ export { type AnyObject, type ArrayItem, type Arrayable, type FloatOptions, type ParseOptions, type StringifyOptions, castArray, compareProperties, compose, composeRight, debounce, debugWarn, deepClone, deepMerge, deprecated, error, excludeProperties, extractProperties, generateRandomArray, generateRandomColor, generateRandomDate, generateRandomEmail, generateRandomFloat, generateRandomIdCard, generateRandomInteger, generateRandomMobilePhone, generateRandomString, generateRandomStringFromSource, generateRandomUrl, getRandomItem, hasChanged, hasOwn, initLog, isArray, isBoolean, isChinese, isDate, isDateString, isDef, isEmail, isEmptyString, isEnglishAphabet, isFloat, isFunction, isIdCard, isInteger, isLowerCase, isLowerCaseAndNumber, isLowerCaseAndNumberAndChinese, isMap, isMobilePhone, isNegativeFloat, isNegativeFloatOrZero, isNegativeInteger, isNegativeIntegerOrZero, isNull, isNumber, isNumberOrNumberString, isObject, isPositiveFloat, isPositiveFloatOrZero, isPositiveInteger, isPositiveIntegerOrZero, isPromise, isRegExp, isSet, isString, isSymbol, isUndef, isUndefined, isUpperCase, isUpperCaseAndNumber, isUpperCaseAndNumberAndChinese, isUrl, log, objectToString, qs, throttle, throwError, toTypeString, validatorChineseOrEnglish, validatorChineseOrEnglishOrNumber, validatorEmail, validatorLatitudeOrLongitude, validatorUppercaseOrNumbersOrSpecial, validatorUppercaseOrNumbersOrUnderline, warn };
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- function se(...e){return e.reduce((t,r)=>function(...n){return r(t(...n))})}function ae(...e){return e.reduce((t,r)=>function(...n){return t(r(...n))})}function ce(e,t=500){let r=null;return function(...n){r&&clearTimeout(r),r=setTimeout(()=>{e.apply(this,n)},t)}}var L=Object.prototype.toString,M=e=>L.call(e),z=null;function de(e){O(e)&&(z=e)}var H={info:"color: #3B82F6",error:"color: #EF4444;",warn:"color: #F59E0B;",success:"color: #10B981;"},A=(e,t,...r)=>{if(!t)return;let n=r.length===0?"":r.length===1?r[0]:r;console.log(`%c[Log] ${t}:`,H[e],n)},j=(e,...t)=>{A("info",e,...t)};j.info=(e,...t)=>{A("info",e,...t)};j.success=(e,...t)=>{A("success",e,...t)};j.error=(e,...t)=>{A("error",e,...t)};j.warn=(e,...t)=>{A("warn",e,...t)};var ge=(...e)=>console.warn(...e),le=(...e)=>console.error(...e),xe=e=>M(e)==="[object Map]",ye=e=>M(e)==="[object Set]",Y=e=>M(e)==="[object Date]",U=e=>M(e)==="[object RegExp]",O=e=>typeof e=="function",f=e=>typeof e=="number",v=e=>typeof e=="string",be=e=>typeof e=="symbol",c=e=>e!==null&&typeof e=="object",he=e=>c(e)&&O(e.then)&&O(e.catch),l=e=>e==null,we=e=>e===void 0,Oe=e=>e===null,Ae=e=>e!=null,$e=e=>typeof e=="boolean",d=Array.isArray,$=(e,t)=>Object.hasOwn(e,t),Re=(e,t)=>e!==t;function F(e){let t=new WeakMap;function r(n){if(Y(n))return new Date(n);if(U(n))return new RegExp(n);if(c(n)){if(t.has(n))return t.get(n);let o={};if(d(n)){o=[],t.set(n,o);for(let i=0;i<n.length;i++)o[i]=r(n[i]);return o}t.set(n,o);for(let i in n)$(n,i)&&(o[i]=r(n[i]));return o}else return n}return r(e)}var S=class extends Error{constructor(t){super(t),this.name="LntvowError"}};function m(e,t){throw new S(`[${e}] ${t}`)}function W(e,t){if(process.env.NODE_ENV!=="production"){let r=v(e)?new S(`[${e}] ${t}`):e;console.warn(r)}}var _=({from:e,replacement:t,version:r,type:n="API"})=>{W(`${n}`,`${e} is about to be deprecated in version ${r}, please use ${t} instead.`)};function R(e,t,r){return(!c(e)||!c(t))&&m("deepMerge","template \u548C source \u5FC5\u987B\u662F\u5BF9\u8C61"),d(e)?q(e,t,r):B(e,t,r)}function B(e,t,r){let n=w(t,r);return Object.keys(e).forEach(i=>{l(t[i])?n[i]=w(e[i],r):n[i]=c(e[i])&&c(t[i])?R(e[i],t[i],r):w(t[i],r)}),n}function q(e,t,r){if(d(t)){let n=w(t,r);return n.push(...w(e,r)),n}else return w(e,r)}function w(e,t){let{deepClone:r=!0}=t||{};return r?F(e):e}function V(e,t){let{decode:r}=R({decode:!0},t||{}),n={};e.startsWith("?")&&(e=e.slice(1)),e.includes("?")&&(e=e.slice(e.indexOf("?")+1));let o=e.split("&").filter(Boolean);for(let i of o){let[g,p]=i.split("=");n[g]=r?decodeURIComponent(p):p}return n}function Z(e,t){let{encode:r}=R({encode:!0},t||{}),n=[];for(let o in e){let i=e[o];n.push(`${o}=${r?encodeURIComponent(i):i}`)}return n.join("&")}function X(e,t,r){let n=R({encode:!0},r||{}),o=Z(t,n);return e.includes("?")?e.endsWith("?")||e.endsWith("&")?`${e}${o}`:`${e}&${o}`:`${e}?${o}`}var ve={parse:V,stringify:Z,appendQueryString:X};function Ke(e,t=500){let r=null;return function(...n){if(l(r))return r=Date.now(),e.apply(this,n);{let o=Date.now();if(o-r>=t)return r=o,e.apply(this,n)}}}function Be(e){return/^-?\d{1,3}\.\d{6}$/.test(e)}function qe(e){return!l(e)&&/^[\dA-Za-z\u4E00-\u9FA5]+$/.test(e)}function Ve(e){return!l(e)&&/^[A-Za-z\u4E00-\u9FA5]+$/.test(e)}function Xe(e){return!l(e)&&/^[\d!"#$%&'()*+,./:;<=>?@A-Z[\\\]^_`{|}~]+$/.test(e)}function Qe(e){return/^[\dA-Z_]+$/.test(e)}function Je(e){return _({from:"validatorEmail",replacement:"isEmail",version:"2.4.0"}),/^([\w-])+@([\w-])+(\.[\w-])+/.test(e)}function T(e){return d(e)?e:[e]}function wt(e,t){return(!c(e)||!c(t))&&m("deepMerge","template \u548C source \u5FC5\u987B\u662F\u5BF9\u8C61"),d(e)?void 0:G(e,t)}function G(e,t){let r={};return Object.keys(e).forEach(n=>{let o=e[n],i=t[n];c(o)&&c(i)?r[n]=G(o,i):Object.is(o,i)||(r[n]=i)}),r}function Tt(e,t){let r=F(e);return T(t).forEach(o=>{$(r,o)&&delete r[o]}),r}function Et(e,t){let r={};return T(t).forEach(o=>{$(e,o)&&(r[o]=e[o])}),r}function Ct(e,t){return(!f(e)||e<=0)&&m("generateRandomArray","num \u5FC5\u987B\u5927\u4E8E0"),O(t)||m("generateRandomArray","cb \u5FC5\u987B\u662F\u51FD\u6570"),Array.from({length:e}).fill(0).map((r,n)=>t(r,n))}function Yt(){return`#${Math.random().toString(16).slice(2,8).padEnd(6,"0")}`}import x,{extend as Q}from"dayjs";import J from"dayjs/plugin/customParseFormat";function u(e={}){f(e)&&(e={max:e});let{min:t=0,max:r=Number.MAX_SAFE_INTEGER}=e,n=Math.ceil(t),o=Math.floor(r);return n===o?n:(o<n&&(r>=t&&m("generateRandomInteger",`\u672A\u627E\u5230 ${t} \u548C ${r} \u4E4B\u95F4\u7684\u6574\u6570\u503C`),m("generateRandomInteger",`\u6700\u5927\u503C ${r} \u5E94\u5927\u4E8E\u6700\u5C0F\u503C ${t}`)),Math.floor(Math.random()*(o-n+1)+n))}Q(J);function C(e={}){let{start:t="1800-01-01 00:00:00",end:r=x().format("YYYY-MM-DD HH:mm:ss"),format:n="YYYY-MM-DD HH:mm:ss"}=e;(!x(t).isValid()||!x(r).isValid())&&m("generateRandomDate","start end \u53C2\u6570\u5FC5\u987B\u662F\u5408\u6CD5\u7684\u65F6\u95F4\u683C\u5F0F");let o=x(t).year(),i=x(r).year(),g=u({min:o,max:i}),p=u({min:1,max:12}),E=u({min:1,max:31}),D=u(23),h=u(59),k=u(59),I=x(`${g}-${p}-${E} ${D}:${h}:${k}`);return I.isBefore(x(t))||I.isAfter(x(r))?C(e):I.format(n)}var K=16,N=1;function b(e={}){f(e)&&(e={length:e});let{lowerCase:t=!0,upperCase:r=!0,number:n=!0,extra:o=[],length:i=K}=e,g={max:K,min:N};f(i)?g={max:i,min:i}:(g={...g,...i},g.min<N&&m("generateRandomString",`length.min \u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E${N}`)),t||r||n||m("generateRandomString","lowerCase upperCase number \u81F3\u5C11\u9700\u8981\u4E00\u4E2A\u53C2\u6570\u4E3Atrue");let p="";t&&(p+="abcdefghijklmnopqrstuvwxyz"),r&&(p+="ABCDEFGHIJKLMNOPQRSTUVWXYZ"),n&&(p+="0123456789"),p+=T(o).flatMap(h=>h.split("")).join("");let E="",D=u(g);for(let h=0;h<D;h++){let k=Math.floor(Math.random()*p.length);E+=p.charAt(k)}return E}function y(e){return e[Math.floor(Math.random()*e.length)]}function ee(){let e=["gmail.com","outlook.com.cn","example.com","qq.com","163.com","test.com.cn"],t=`${b(1)}${b({length:u({max:30,min:1}),extra:[".","_","-"]})}${b(1)}@${y(e)}`;return/\.{2,}/.test(t)?ee():t}function mr(e={}){f(e)&&(e={max:e});let{min:t=0,max:r=1,fractionDigits:n=2}=e;if(t===r)return t;if(t>r)throw new Error(`\u6700\u5927\u503C ${r} \u5E94\u5927\u4E8E\u6700\u5C0F\u503C ${t}`);return Math.random()*(r-t)+t}function P(e,t){(!f(e)||e<=0)&&m("generateRandomStringFromSource","num \u5FC5\u987B\u5927\u4E8E0"),(!d(t)||t.length===0)&&m("generateRandomStringFromSource","source \u4E0D\u80FD\u4E3A\u7A7A\u6570\u7EC4");let r="";for(let n=0;n<e;n++)r+=y(t);return r}function br(){let e=u({min:1e5,max:999999}),t=[0,1,2,3,4,5,6,7,8,9];return[e,C({format:"YYYYMMDD"}),P(3,t),P(1,[...t,"X","x"])].join("")}function $r(){return y(["13","14","15","16","17","18","19"])+u(999999999).toString().padEnd(9,"0")}function te(){let t=`${y(["http://","https://"])}${b(1)}${b({length:{max:60,min:5},extra:["/"]})}`;return/^(?:http|https):\/\/\w*\/{2,}/.test(t)?te():t}function Lr(e){return/^\d+$/.test(e)}function zr(e){return/^[\u4E00-\u9FA5]+$/.test(e)}function Hr(e){return/^[A-Za-z]+$/.test(e)}function Wr(e){return/^[A-Z]+$/.test(e)}function Br(e){return/^[\dA-Z]+$/.test(e)}function qr(e){return/^[\dA-Z\u4E00-\u9FA5]+$/.test(e)}function Vr(e){return/^[a-z]+$/.test(e)}function Xr(e){return/^[\da-z]+$/.test(e)}function Qr(e){return/^[\da-z\u4E00-\u9FA5]+$/.test(e)}function tn(e,t={}){let{integer:r=!0}=t;return r?/^-?(0|[1-9]\d*)(\.\d+)?$/.test(e):/^-?(0|[1-9]\d*)\.\d+$/.test(e)}function rn(e,t={}){let{integer:r=!0}=t;return r?/^[1-9]\d*\.?\d*|^0\.\d*[1-9]\d*$/.test(e):/^[1-9]\d*\.\d*|^0\.\d*[1-9]\d*$/.test(e)}function nn(e,t={}){let{integer:r=!0}=t;return r?/^-[1-9]\d*\.?\d*|^-0\.\d*[1-9]\d*$/.test(e):/^-[1-9]\d*\.\d*|^-0\.\d*[1-9]\d*$/.test(e)}function on(e,t={}){let{integer:r=!0}=t;return r?/^(0|[1-9]\d*)(\.\d+)?$/.test(e):/^(0|[1-9]\d*)\.\d+$/.test(e)}function sn(e,t={}){let{integer:r=!0}=t;return r?/^(-?0(\.0+)?|-(0|[1-9]\d*)(\.\d+)?)$/.test(e):/^(-?0\.0+|-(0|[1-9]\d*)\.\d+)$/.test(e)}function un(e){return/^-?(0|[1-9]\d*)$/.test(e)}function cn(e){return/^[1-9]\d*$/.test(e)}function pn(e){return/^(0|[1-9]\d*)$/.test(e)}function fn(e){return/^-([1-9]\d*)$/.test(e)}function dn(e){return/^(0|-(0|[1-9]\d*))$/.test(e)}import re,{extend as ne}from"dayjs";import oe from"dayjs/plugin/customParseFormat";function bn(e){return/^1[3-9]\d{9}$/.test(e)}function hn(e){return/^[\w-]+(?:\.[\w-]+)*@[\w-]+(?:\.[\w-]+)*$/.test(e)}function wn(e){return e===""}function ie(e,t="YYYY-MM-DD HH:mm:ss"){return ne(oe),re(e,t,!0).isValid()}function On(e){return/^[1-9]\d{5}(?:18|19|20)\d{2}(?:0[1-9]|1[0-2])(?:0[1-9]|[12]\d|3[01])\d{3}[\dX]$/i.test(e)&&ie(e.slice(6,14),"YYYYMMDD")}function An(e){return/^(?:http|https):\/\/[\w.]+/.test(e)}export{T as castArray,wt as compareProperties,se as compose,ae as composeRight,ce as debounce,W as debugWarn,F as deepClone,R as deepMerge,_ as deprecated,le as error,Tt as excludeProperties,Et as extractProperties,Ct as generateRandomArray,Yt as generateRandomColor,C as generateRandomDate,ee as generateRandomEmail,mr as generateRandomFloat,br as generateRandomIdCard,u as generateRandomInteger,$r as generateRandomMobilePhone,b as generateRandomString,P as generateRandomStringFromSource,te as generateRandomUrl,y as getRandomItem,Re as hasChanged,$ as hasOwn,de as initLog,d as isArray,$e as isBoolean,zr as isChinese,Y as isDate,ie as isDateString,Ae as isDef,hn as isEmail,wn as isEmptyString,Hr as isEnglishAphabet,tn as isFloat,O as isFunction,On as isIdCard,un as isInteger,Vr as isLowerCase,Xr as isLowerCaseAndNumber,Qr as isLowerCaseAndNumberAndChinese,xe as isMap,bn as isMobilePhone,nn as isNegativeFloat,sn as isNegativeFloatOrZero,fn as isNegativeInteger,dn as isNegativeIntegerOrZero,Oe as isNull,f as isNumber,Lr as isNumberOrNumberString,c as isObject,rn as isPositiveFloat,on as isPositiveFloatOrZero,cn as isPositiveInteger,pn as isPositiveIntegerOrZero,he as isPromise,U as isRegExp,ye as isSet,v as isString,be as isSymbol,l as isUndef,we as isUndefined,Wr as isUpperCase,Br as isUpperCaseAndNumber,qr as isUpperCaseAndNumberAndChinese,An as isUrl,j as log,L as objectToString,ve as qs,Ke as throttle,m as throwError,M as toTypeString,Ve as validatorChineseOrEnglish,qe as validatorChineseOrEnglishOrNumber,Je as validatorEmail,Be as validatorLatitudeOrLongitude,Xe as validatorUppercaseOrNumbersOrSpecial,Qe as validatorUppercaseOrNumbersOrUnderline,ge as warn};
1
+ function st(...t){return t.reduce((e,n)=>function(...r){return n(e(...r))})}function at(...t){return t.reduce((e,n)=>function(...r){return e(n(...r))})}function ct(t,e=500){let n=null;return function(...r){n&&clearTimeout(n),n=setTimeout(()=>{t.apply(this,r)},e)}}var L=Object.prototype.toString,M=t=>L.call(t),z=null;function dt(t){O(t)&&(z=t)}var H={info:"",error:"color: #EF4444;",warn:"color: #F59E0B;",success:"color: #10B981;"},A=(t,e,...n)=>{if(!e)return;let r=n.length===0?"":n.length===1?n[0]:n;console.log(`%c[Log] ${e}:`,H[t],r)},j=(t,...e)=>{A("info",t,...e)};j.info=(t,...e)=>{A("info",t,...e)};j.success=(t,...e)=>{A("success",t,...e)};j.error=(t,...e)=>{A("error",t,...e)};j.warn=(t,...e)=>{A("warn",t,...e)};var gt=(...t)=>console.warn(...t),lt=(...t)=>console.error(...t),xt=t=>M(t)==="[object Map]",yt=t=>M(t)==="[object Set]",Y=t=>M(t)==="[object Date]",U=t=>M(t)==="[object RegExp]",O=t=>typeof t=="function",f=t=>typeof t=="number",v=t=>typeof t=="string",bt=t=>typeof t=="symbol",c=t=>t!==null&&typeof t=="object",ht=t=>c(t)&&O(t.then)&&O(t.catch),l=t=>t==null,wt=t=>t===void 0,Ot=t=>t===null,At=t=>t!=null,$t=t=>typeof t=="boolean",d=Array.isArray,$=(t,e)=>Object.hasOwn(t,e),Rt=(t,e)=>t!==e;function S(t){let e=new WeakMap;function n(r){if(Y(r))return new Date(r);if(U(r))return new RegExp(r);if(c(r)){if(e.has(r))return e.get(r);let o={};if(d(r)){o=[],e.set(r,o);for(let i=0;i<r.length;i++)o[i]=n(r[i]);return o}e.set(r,o);for(let i in r)$(r,i)&&(o[i]=n(r[i]));return o}return r}return n(t)}var D=class extends Error{constructor(e){super(e),this.name="LntvowError"}};function m(t,e){throw new D(`[${t}] ${e}`)}function W(t,e){if(process.env.NODE_ENV!=="production"){let n=v(t)?new D(`[${t}] ${e}`):t;console.warn(n)}}var _=({from:t,replacement:e,version:n,type:r="API"})=>{W(`${r}`,`${t} is about to be deprecated in version ${n}, please use ${e} instead.`)};function R(t,e,n){return(!c(t)||!c(e))&&m("deepMerge","template \u548C source \u5FC5\u987B\u662F\u5BF9\u8C61"),d(t)?q(t,e,n):B(t,e,n)}function B(t,e,n){let r=w(e,n);return Object.keys(t).forEach(i=>{l(e[i])?r[i]=w(t[i],n):r[i]=c(t[i])&&c(e[i])?R(t[i],e[i],n):w(e[i],n)}),r}function q(t,e,n){if(d(e)){let r=w(e,n);return r.push(...w(t,n)),r}return w(t,n)}function w(t,e){let{deepClone:n=!0}=e||{};return n?S(t):t}function V(t,e){let{decode:n}=R({decode:!0},e||{}),r={};t.startsWith("?")&&(t=t.slice(1)),t.includes("?")&&(t=t.slice(t.indexOf("?")+1));let o=t.split("&").filter(Boolean);for(let i of o){let[g,p]=i.split("=");r[g]=n?decodeURIComponent(p):p}return r}function Z(t,e){let{encode:n}=R({encode:!0},e||{}),r=[];for(let o in t){let i=t[o];r.push(`${o}=${n?encodeURIComponent(i):i}`)}return r.join("&")}function X(t,e,n){let r=R({encode:!0},n||{}),o=Z(e,r);return t.includes("?")?t.endsWith("?")||t.endsWith("&")?`${t}${o}`:`${t}&${o}`:`${t}?${o}`}var vt={parse:V,stringify:Z,appendQueryString:X};function Kt(t,e=500){let n=null;return function(...r){if(l(n))return n=Date.now(),t.apply(this,r);{let o=Date.now();if(o-n>=e)return n=o,t.apply(this,r)}}}function Bt(t){return/^-?\d{1,3}\.\d{6}$/.test(t)}function qt(t){return!l(t)&&/^[\dA-Za-z\u4E00-\u9FA5]+$/.test(t)}function Vt(t){return!l(t)&&/^[A-Za-z\u4E00-\u9FA5]+$/.test(t)}function Xt(t){return!l(t)&&/^[\d!"#$%&'()*+,./:;<=>?@A-Z[\\\]^_`{|}~]+$/.test(t)}function Qt(t){return/^[\dA-Z_]+$/.test(t)}function Jt(t){return _({from:"validatorEmail",replacement:"isEmail",version:"2.4.0"}),/^([\w-])+@([\w-])+(\.[\w-])+/.test(t)}function T(t){return d(t)?t:[t]}function we(t,e){return(!c(t)||!c(e))&&m("deepMerge","template \u548C source \u5FC5\u987B\u662F\u5BF9\u8C61"),d(t)?void 0:G(t,e)}function G(t,e){let n={};return Object.keys(t).forEach(r=>{let o=t[r],i=e[r];c(o)&&c(i)?n[r]=G(o,i):Object.is(o,i)||(n[r]=i)}),n}function Te(t,e){let n=S(t);return T(e).forEach(o=>{$(n,o)&&delete n[o]}),n}function Ee(t,e){let n={};return T(e).forEach(o=>{$(t,o)&&(n[o]=t[o])}),n}function Ce(t,e){return(!f(t)||t<=0)&&m("generateRandomArray","num \u5FC5\u987B\u5927\u4E8E0"),O(e)||m("generateRandomArray","cb \u5FC5\u987B\u662F\u51FD\u6570"),Array.from({length:t}).fill(0).map((n,r)=>e(n,r))}function Ye(){return`#${Math.random().toString(16).slice(2,8).padEnd(6,"0")}`}import x,{extend as Q}from"dayjs";import J from"dayjs/plugin/customParseFormat";function u(t={}){f(t)&&(t={max:t});let{min:e=0,max:n=Number.MAX_SAFE_INTEGER}=t,r=Math.ceil(e),o=Math.floor(n);return r===o?r:(o<r&&(n>=e&&m("generateRandomInteger",`\u672A\u627E\u5230 ${e} \u548C ${n} \u4E4B\u95F4\u7684\u6574\u6570\u503C`),m("generateRandomInteger",`\u6700\u5927\u503C ${n} \u5E94\u5927\u4E8E\u6700\u5C0F\u503C ${e}`)),Math.floor(Math.random()*(o-r+1)+r))}Q(J);function C(t={}){let{start:e="1800-01-01 00:00:00",end:n=x().format("YYYY-MM-DD HH:mm:ss"),format:r="YYYY-MM-DD HH:mm:ss"}=t;(!x(e).isValid()||!x(n).isValid())&&m("generateRandomDate","start end \u53C2\u6570\u5FC5\u987B\u662F\u5408\u6CD5\u7684\u65F6\u95F4\u683C\u5F0F");let o=x(e).year(),i=x(n).year(),g=u({min:o,max:i}),p=u({min:1,max:12}),E=u({min:1,max:31}),F=u(23),h=u(59),k=u(59),I=x(`${g}-${p}-${E} ${F}:${h}:${k}`);return I.isBefore(x(e))||I.isAfter(x(n))?C(t):I.format(r)}var K=16,N=1;function b(t={}){f(t)&&(t={length:t});let{lowerCase:e=!0,upperCase:n=!0,number:r=!0,extra:o=[],length:i=K}=t,g={max:K,min:N};f(i)?g={max:i,min:i}:(g={...g,...i},g.min<N&&m("generateRandomString",`length.min \u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E${N}`)),e||n||r||m("generateRandomString","lowerCase upperCase number \u81F3\u5C11\u9700\u8981\u4E00\u4E2A\u53C2\u6570\u4E3Atrue");let p="";e&&(p+="abcdefghijklmnopqrstuvwxyz"),n&&(p+="ABCDEFGHIJKLMNOPQRSTUVWXYZ"),r&&(p+="0123456789"),p+=T(o).flatMap(h=>h.split("")).join("");let E="",F=u(g);for(let h=0;h<F;h++){let k=Math.floor(Math.random()*p.length);E+=p.charAt(k)}return E}function y(t){return t[Math.floor(Math.random()*t.length)]}function tt(){let t=["gmail.com","outlook.com.cn","example.com","qq.com","163.com","test.com.cn"],e=`${b(1)}${b({length:u({max:30,min:1}),extra:[".","_","-"]})}${b(1)}@${y(t)}`;return/\.{2,}/.test(e)?tt():e}function un(t={}){f(t)&&(t={max:t});let{min:e=0,max:n=1,fractionDigits:r=2}=t;if(e===n)return e;if(e>n)throw new Error(`\u6700\u5927\u503C ${n} \u5E94\u5927\u4E8E\u6700\u5C0F\u503C ${e}`);return Math.random()*(n-e)+e}function P(t,e){(!f(t)||t<=0)&&m("generateRandomStringFromSource","num \u5FC5\u987B\u5927\u4E8E0"),(!d(e)||e.length===0)&&m("generateRandomStringFromSource","source \u4E0D\u80FD\u4E3A\u7A7A\u6570\u7EC4");let n="";for(let r=0;r<t;r++)n+=y(e);return n}function hn(){let t=u({min:1e5,max:999999}),e=[0,1,2,3,4,5,6,7,8,9];return[t,C({format:"YYYYMMDD"}),P(3,e),P(1,[...e,"X","x"])].join("")}function Rn(){return y(["13","14","15","16","17","18","19"])+u(999999999).toString().padEnd(9,"0")}function et(){let e=`${y(["http://","https://"])}${b(1)}${b({length:{max:60,min:5},extra:["/"]})}`;return/^(?:http|https):\/\/\w*\/{2,}/.test(e)?et():e}function zn(t){return/^\d+$/.test(t)}function Hn(t){return/^[\u4E00-\u9FA5]+$/.test(t)}function Wn(t){return/^[A-Za-z]+$/.test(t)}function Bn(t){return/^[A-Z]+$/.test(t)}function qn(t){return/^[\dA-Z]+$/.test(t)}function Vn(t){return/^[\dA-Z\u4E00-\u9FA5]+$/.test(t)}function Xn(t){return/^[a-z]+$/.test(t)}function Qn(t){return/^[\da-z]+$/.test(t)}function Jn(t){return/^[\da-z\u4E00-\u9FA5]+$/.test(t)}function nr(t,e={}){let{integer:n=!0}=e;return n?/^-?(0|[1-9]\d*)(\.\d+)?$/.test(t):/^-?(0|[1-9]\d*)\.\d+$/.test(t)}function rr(t,e={}){let{integer:n=!0}=e;return n?/^[1-9]\d*\.?\d*|^0\.\d*[1-9]\d*$/.test(t):/^[1-9]\d*\.\d*|^0\.\d*[1-9]\d*$/.test(t)}function or(t,e={}){let{integer:n=!0}=e;return n?/^-[1-9]\d*\.?\d*|^-0\.\d*[1-9]\d*$/.test(t):/^-[1-9]\d*\.\d*|^-0\.\d*[1-9]\d*$/.test(t)}function ir(t,e={}){let{integer:n=!0}=e;return n?/^(0|[1-9]\d*)(\.\d+)?$/.test(t):/^(0|[1-9]\d*)\.\d+$/.test(t)}function sr(t,e={}){let{integer:n=!0}=e;return n?/^(-?0(\.0+)?|-(0|[1-9]\d*)(\.\d+)?)$/.test(t):/^(-?0\.0+|-(0|[1-9]\d*)\.\d+)$/.test(t)}function ur(t){return/^-?(0|[1-9]\d*)$/.test(t)}function cr(t){return/^[1-9]\d*$/.test(t)}function pr(t){return/^(0|[1-9]\d*)$/.test(t)}function fr(t){return/^-([1-9]\d*)$/.test(t)}function dr(t){return/^(0|-(0|[1-9]\d*))$/.test(t)}import nt,{extend as rt}from"dayjs";import ot from"dayjs/plugin/customParseFormat";function br(t){return/^1[3-9]\d{9}$/.test(t)}function hr(t){return/^[\w-]+(?:\.[\w-]+)*@[\w-]+(?:\.[\w-]+)*$/.test(t)}function wr(t){return t===""}function it(t,e="YYYY-MM-DD HH:mm:ss"){return rt(ot),nt(t,e,!0).isValid()}function Or(t){return/^[1-9]\d{5}(?:18|19|20)\d{2}(?:0[1-9]|1[0-2])(?:0[1-9]|[12]\d|3[01])\d{3}[\dX]$/i.test(t)&&it(t.slice(6,14),"YYYYMMDD")}function Ar(t){return/^(?:http|https):\/\/[\w.]+/.test(t)}export{T as castArray,we as compareProperties,st as compose,at as composeRight,ct as debounce,W as debugWarn,S as deepClone,R as deepMerge,_ as deprecated,lt as error,Te as excludeProperties,Ee as extractProperties,Ce as generateRandomArray,Ye as generateRandomColor,C as generateRandomDate,tt as generateRandomEmail,un as generateRandomFloat,hn as generateRandomIdCard,u as generateRandomInteger,Rn as generateRandomMobilePhone,b as generateRandomString,P as generateRandomStringFromSource,et as generateRandomUrl,y as getRandomItem,Rt as hasChanged,$ as hasOwn,dt as initLog,d as isArray,$t as isBoolean,Hn as isChinese,Y as isDate,it as isDateString,At as isDef,hr as isEmail,wr as isEmptyString,Wn as isEnglishAphabet,nr as isFloat,O as isFunction,Or as isIdCard,ur as isInteger,Xn as isLowerCase,Qn as isLowerCaseAndNumber,Jn as isLowerCaseAndNumberAndChinese,xt as isMap,br as isMobilePhone,or as isNegativeFloat,sr as isNegativeFloatOrZero,fr as isNegativeInteger,dr as isNegativeIntegerOrZero,Ot as isNull,f as isNumber,zn as isNumberOrNumberString,c as isObject,rr as isPositiveFloat,ir as isPositiveFloatOrZero,cr as isPositiveInteger,pr as isPositiveIntegerOrZero,ht as isPromise,U as isRegExp,yt as isSet,v as isString,bt as isSymbol,l as isUndef,wt as isUndefined,Bn as isUpperCase,qn as isUpperCaseAndNumber,Vn as isUpperCaseAndNumberAndChinese,Ar as isUrl,j as log,L as objectToString,vt as qs,Kt as throttle,m as throwError,M as toTypeString,Vt as validatorChineseOrEnglish,qt as validatorChineseOrEnglishOrNumber,Jt as validatorEmail,Bt as validatorLatitudeOrLongitude,Xt as validatorUppercaseOrNumbersOrSpecial,Qt as validatorUppercaseOrNumbersOrUnderline,gt as warn};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lntvow/utils",
3
- "version": "3.1.2",
3
+ "version": "3.1.3",
4
4
  "description": "工具库",
5
5
  "type": "module",
6
6
  "license": "MIT",