@lntvow/utils 3.0.2 → 3.0.6

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.js ADDED
@@ -0,0 +1 @@
1
+ function J(...e){return e.reduce((t,r)=>function(...n){return r(t(...n))})}function ee(...e){return e.reduce((t,r)=>function(...n){return t(r(...n))})}function ne(e,t=500){let r=null;return function(...n){r&&clearTimeout(r),r=setTimeout(()=>{e.apply(this,n)},t)}}var _=Object.prototype.toString,$=e=>_.call(e),M=null;function se(e){h(e)&&(M=e)}var ae=(e,...t)=>{let r=t.length===0?"":t.length===1?t[0]:t;console.log(`%c ${e} `,"padding: 2px; border-radius: 3px; color: #fff; background: #000; font-weight: bold;",r),M&&M(e,r)},ue=(...e)=>console.warn(...e),ce=(...e)=>console.error(...e),pe=e=>$(e)==="[object Map]",me=e=>$(e)==="[object Set]",C=e=>$(e)==="[object Date]",F=e=>$(e)==="[object RegExp]",h=e=>typeof e=="function",d=e=>typeof e=="number",I=e=>typeof e=="string",fe=e=>typeof e=="symbol",c=e=>e!==null&&typeof e=="object",de=e=>c(e)&&h(e.then)&&h(e.catch),g=e=>e==null,ge=e=>e===void 0,xe=e=>e===null,le=e=>e!=null,be=e=>typeof e=="boolean",p=Array.isArray,A=(e,t)=>Object.hasOwn(e,t),ye=(e,t)=>e!==t;function R(e){let t=new WeakMap;function r(n){if(C(n))return new Date(n);if(F(n))return new RegExp(n);if(c(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)A(n,i)&&(o[i]=r(n[i]));return o}else return n}return r(e)}var T=class extends Error{constructor(t){super(t),this.name="LntvowError"}};function u(e,t){throw new T(`[${e}] ${t}`)}function G(e,t){if(process.env.NODE_ENV!=="production"){let r=I(e)?new T(`[${e}] ${t}`):e;console.warn(r)}}var N=({from:e,replacement:t,version:r,type:n="API"})=>{G(`${n}`,`${e} is about to be deprecated in version ${r}, please use ${t} instead.`)};function l(e,t,r){return(!c(e)||!c(t))&&u("deepMerge","template \u548C source \u5FC5\u987B\u662F\u5BF9\u8C61"),p(e)?K(e,t,r):H(e,t,r)}function H(e,t,r){let n=y(t,r);return Object.keys(e).forEach(i=>{g(t[i])?n[i]=y(e[i],r):n[i]=c(e[i])&&c(t[i])?l(e[i],t[i],r):y(t[i],r)}),n}function K(e,t,r){if(p(t)){let n=y(t,r);return n.push(...y(e,r)),n}else return y(e,r)}function y(e,t){let{deepClone:r=!0}=t||{};return r?R(e):e}function z(e,t){let{decode:r}=l({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[b,x]=i.split("=");n[b]=r?decodeURIComponent(x):x}return n}function Y(e,t){let{encode:r}=l({encode:!0},t||{}),n=[];for(let o in e){let i=e[o];n.push(`${o}=${r?encodeURIComponent(i):i}`)}return n.join("&")}function W(e,t,r){let n=l({encode:!0},r||{}),o=Y(t,n);return e.includes("?")?e.endsWith("?")||e.endsWith("&")?`${e}${o}`:`${e}&${o}`:`${e}?${o}`}var Ie={parse:z,stringify:Y,appendQueryString:W};function Pe(e,t=500){let r=null;return function(...n){if(g(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 Ge(e){return/^-?\d{1,3}\.\d{6}$/.test(e)}function He(e){return!g(e)&&/^[\dA-Za-z\u4E00-\u9FA5]+$/.test(e)}function Ke(e){return!g(e)&&/^[A-Za-z\u4E00-\u9FA5]+$/.test(e)}function ze(e){return!g(e)&&/^[\d!"#$%&'()*+,./:;<=>?@A-Z[\\\]^_`{|}~]+$/.test(e)}function We(e){return/^[\dA-Z_]+$/.test(e)}function Le(e){return N({from:"validatorEmail",replacement:"isEmail",version:"2.4.0"}),/^([\w-])+@([\w-])+(\.[\w-])+/.test(e)}function j(e){return p(e)?e:[e]}function gt(e,t){return(!c(e)||!c(t))&&u("deepMerge","template \u548C source \u5FC5\u987B\u662F\u5BF9\u8C61"),p(e)?void 0:k(e,t)}function k(e,t){let r={};return Object.keys(e).forEach(n=>{let o=e[n],i=t[n];c(o)&&c(i)?r[n]=k(o,i):Object.is(o,i)||(r[n]=i)}),r}function Ot(e,t){let r=R(e);return j(t).forEach(o=>{A(r,o)&&delete r[o]}),r}function ht(e,t){let r={};return j(t).forEach(o=>{A(e,o)&&(r[o]=e[o])}),r}function jt(e,t){return(!d(e)||e<=0)&&u("generateRandomArray","num \u5FC5\u987B\u5927\u4E8E0"),h(t)||u("generateRandomArray","cb \u5FC5\u987B\u662F\u51FD\u6570"),Array.from({length:e}).fill(0).map((r,n)=>t(r,n))}function Ct(){return`#${Math.random().toString(16).slice(2,8).padEnd(6,"0")}`}import f,{extend as L}from"dayjs";import q from"dayjs/plugin/customParseFormat";function m(e={}){d(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&&u("generateRandomInteger",`\u672A\u627E\u5230 ${t} \u548C ${r} \u4E4B\u95F4\u7684\u6574\u6570\u503C`),u("generateRandomInteger",`\u6700\u5927\u503C ${r} \u5E94\u5927\u4E8E\u6700\u5C0F\u503C ${t}`)),Math.floor(Math.random()*(o-n+1)+n))}L(q);function D(e={}){let{start:t="1800-01-01 00:00:00",end:r=f().format("YYYY-MM-DD HH:mm:ss"),format:n="YYYY-MM-DD HH:mm:ss"}=e;(!f(t).isValid()||!f(r).isValid())&&u("generateRandomDate","start end \u53C2\u6570\u5FC5\u987B\u662F\u5408\u6CD5\u7684\u65F6\u95F4\u683C\u5F0F");let o=f(t).year(),i=f(r).year(),b=m({min:o,max:i}),x=m({min:1,max:12}),E=m({min:1,max:31}),U=m(23),v=m(59),Z=m(59),w=f(`${b}-${x}-${E} ${U}:${v}:${Z}`);return w.isBefore(f(t))||w.isAfter(f(r))?(console.log("\u4E0D\u5408\u6CD5\u65F6\u95F4",f(w).format("YYYY-MM-DD HH:mm:ss")),D(e)):w.format(n)}function P(e,t={}){let{lowerCase:r,upperCase:n,number:o}=l({lowerCase:!0,upperCase:!0,number:!0},t);r||n||o||u("generateRandomString","lowerCase upperCase number \u81F3\u5C11\u9700\u8981\u4E00\u4E2A\u53C2\u6570\u4E3Atrue");let i="";r&&(i+="abcdefghijklmnopqrstuvwxyz"),n&&(i+="ABCDEFGHIJKLMNOPQRSTUVWXYZ"),o&&(i+="0123456789");let b="";for(let x=0;x<e;x++){let E=Math.floor(Math.random()*i.length);b+=i.charAt(E)}return b}function O(e){return e[Math.floor(Math.random()*e.length)]}function Bt(){let e=["gmail.com","yahoo.com","outlook.com","example.com","qq.com","163.com"];return`${P(10)}@${O(e)}`}function er(e={}){d(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 S(e,t){(!d(e)||e<=0)&&u("generateRandomStringFromSource","num \u5FC5\u987B\u5927\u4E8E0"),(!p(t)||t.length===0)&&u("generateRandomStringFromSource","source \u4E0D\u80FD\u4E3A\u7A7A\u6570\u7EC4");let r="";for(let n=0;n<e;n++)r+=O(t);return r}function pr(){let e=m({min:1e5,max:999999}),t=[0,1,2,3,4,5,6,7,8,9];return[e,D({format:"YYYYMMDD"}),S(3,t),S(1,[...t,"X","x"])].join("")}function xr(){return O(["13","14","15","16","17","18","19"])+m(999999999).toString().padEnd(9,"0")}function Cr(e){return/^\d+$/.test(e)}function Fr(e){return/^[\u4E00-\u9FA5]+$/.test(e)}function Ir(e){return/^[A-Za-z]+$/.test(e)}function Nr(e){return/^[A-Z]+$/.test(e)}function Yr(e){return/^[\dA-Z]+$/.test(e)}function kr(e){return/^[\dA-Z\u4E00-\u9FA5]+$/.test(e)}function Pr(e){return/^[a-z]+$/.test(e)}function Ur(e){return/^[\da-z]+$/.test(e)}function vr(e){return/^[\da-z\u4E00-\u9FA5]+$/.test(e)}function Gr(e,t={}){let{integer:r=!0}=t;return r?/^-?(0|[1-9]\d*)(\.\d+)?$/.test(e):/^-?(0|[1-9]\d*)\.\d+$/.test(e)}function Hr(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 Kr(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 zr(e,t={}){let{integer:r=!0}=t;return r?/^(0|[1-9]\d*)(\.\d+)?$/.test(e):/^(0|[1-9]\d*)\.\d+$/.test(e)}function Wr(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 Vr(e){return/^-?(0|[1-9]\d*)$/.test(e)}function Br(e){return/^[1-9]\d*$/.test(e)}function Xr(e){return/^(0|[1-9]\d*)$/.test(e)}function Qr(e){return/^-([1-9]\d*)$/.test(e)}function Jr(e){return/^(0|-(0|[1-9]\d*))$/.test(e)}import V,{extend as B}from"dayjs";import X from"dayjs/plugin/customParseFormat";function cn(e){return/^1[3-9]\d{9}$/.test(e)}function pn(e){return/^([\w-])+@([\w-])+(\.[\w-])+/.test(e)}function mn(e){return e===""}function Q(e,t="YYYY-MM-DD HH:mm:ss"){return B(X),V(e,t,!0).isValid()}function fn(e){let t=/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(e);return!t||(t=Q(e.slice(6,14),"YYYYMMDD"),!t),t}export{j as castArray,gt as compareProperties,J as compose,ee as composeRight,ne as debounce,G as debugWarn,R as deepClone,l as deepMerge,N as deprecated,ce as error,Ot as excludeProperties,ht as extractProperties,jt as generateRandomArray,Ct as generateRandomColor,D as generateRandomDate,Bt as generateRandomEmail,er as generateRandomFloat,pr as generateRandomIdCard,m as generateRandomInteger,xr as generateRandomMobilePhone,P as generateRandomString,S as generateRandomStringFromSource,O as getRandomItem,ye as hasChanged,A as hasOwn,se as initLog,p as isArray,be as isBoolean,Fr as isChinese,C as isDate,Q as isDateString,le as isDef,pn as isEmail,mn as isEmptyString,Ir as isEnglishAphabet,Gr as isFloat,h as isFunction,fn as isIdCard,Vr as isInteger,Pr as isLowerCase,Ur as isLowerCaseAndNumber,vr as isLowerCaseAndNumberAndChinese,pe as isMap,cn as isMobilePhone,Kr as isNegativeFloat,Wr as isNegativeFloatOrZero,Qr as isNegativeInteger,Jr as isNegativeIntegerOrZero,xe as isNull,d as isNumber,Cr as isNumberOrNumberString,c as isObject,Hr as isPositiveFloat,zr as isPositiveFloatOrZero,Br as isPositiveInteger,Xr as isPositiveIntegerOrZero,de as isPromise,F as isRegExp,me as isSet,I as isString,fe as isSymbol,g as isUndef,ge as isUndefined,Nr as isUpperCase,Yr as isUpperCaseAndNumber,kr as isUpperCaseAndNumberAndChinese,ae as log,_ as objectToString,Ie as qs,Pe as throttle,u as throwError,$ as toTypeString,Ke as validatorChineseOrEnglish,He as validatorChineseOrEnglishOrNumber,Le as validatorEmail,Ge as validatorLatitudeOrLongitude,ze as validatorUppercaseOrNumbersOrSpecial,We as validatorUppercaseOrNumbersOrUnderline,ue as warn};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lntvow/utils",
3
- "version": "3.0.2",
3
+ "version": "3.0.6",
4
4
  "description": "工具库",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -19,20 +19,20 @@
19
19
  "dayjs": "^1.11.11"
20
20
  },
21
21
  "devDependencies": {
22
- "@lntvow/dev": "^1.0.1",
22
+ "@lntvow/dev": "^1.1.2",
23
23
  "@vitest/coverage-istanbul": "^1.6.0",
24
24
  "@vitest/ui": "^1.6.0",
25
25
  "deepmerge": "^4.3.1",
26
+ "tsup": "^8.0.2",
26
27
  "typescript": "^5.4.5",
27
28
  "vite": "^5.2.11",
28
- "vite-plugin-dts": "3.6.4",
29
29
  "vitest": "^1.6.0"
30
30
  },
31
31
  "scripts": {
32
32
  "test": "vitest",
33
33
  "test:ui": "vitest --ui",
34
34
  "coverage": "vitest run --coverage",
35
- "build": "vite build",
35
+ "build": "tsup",
36
36
  "commit": "git add . && git-cz && git push",
37
37
  "release": "git add . && bumpp package.json --all --commit --no-tag --push",
38
38
  "rimraf": "rimraf ./node_modules/"