full-utils 2.0.4 → 2.0.5

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/browser.cjs CHANGED
@@ -1,3 +1,3 @@
1
- 'use strict';function ot(t){if(!c(t))return [t];let r=t.trim();if(r==="")return [];if(r.startsWith("[")&&r.endsWith("]")&&(r=r.slice(1,-1).trim(),r===""))return [];let n="",e=false,i=null,o=false,s=0,l=0,d=0,x=[],h=()=>{let u=n.trim();u!==""&&x.push(u),n="";};for(let u=0;u<r.length;u++){let f=r[u];if(e){if(n+=f,o){o=false;continue}if(f==="\\"){o=true;continue}f===i&&(e=false,i=null);continue}if(f==='"'||f==="'"){e=true,i=f,n+=f;continue}if(f==="("){s++,n+=f;continue}if(f===")"){s=Math.max(0,s-1),n+=f;continue}if(f==="["){l++,n+=f;continue}if(f==="]"){l=Math.max(0,l-1),n+=f;continue}if(f==="{"){d++,n+=f;continue}if(f==="}"){d=Math.max(0,d-1),n+=f;continue}if(f===","&&s===0&&l===0&&d===0){h();continue}n+=f;}return n.length&&h(),x.map(u=>{if(u.startsWith("$")&&u.includes("(")&&u.endsWith(")"))return u;if(u==="null")return null;if(u==="undefined")return;if(P(u))return y(u);let f=w(u);if(Number.isFinite(f))return f;if(u==="Infinity")return 1/0;if(u==="-Infinity")return -1/0;let p=String(u||"");if(p.length>=2&&(p.startsWith("'")&&p.endsWith("'")||p.startsWith('"')&&p.endsWith('"')))return p.slice(1,-1).replace(/\\\\/g,"\\").replace(/\\'/g,"'").replace(/\\"/g,'"');if(p.startsWith("{")&&p.endsWith("}")||p.startsWith("[")&&p.endsWith("]"))try{return R(p)}catch{}return p})}function ut(t,r){if(!Number.isInteger(r)||r<=0)return [];let n=[],e=0;for(;e<t.length;)n.push(t.slice(e,e+r)),e+=r;return n}function y(t){switch(true){case T(t):return t;case I(t):return true;case L(t):return false;case(m(t)&&["true","1","yes","on"].includes(String(t??"").trim().toLowerCase())):return true;case(m(t)&&["false","0","no","off"].includes(String(t??"").trim().toLowerCase())):return false}return false}async function mt(t=0){await new Promise(r=>setTimeout(()=>r(true),t));}function pt(t=1,r=new Date){let n=Math.min(60,Math.max(1,Math.trunc(Math.abs(t)))),e=r.getMinutes(),i=Math.floor(e/n)*n,o=new Date(r);return o.setMinutes(i,0,0),o}function gt(t=new Date){let r=d=>String(d).padStart(2,"0"),n=t.getFullYear(),e=r(t.getMonth()+1),i=r(t.getDate()),o=r(t.getHours()),s=r(t.getMinutes()),l=r(t.getSeconds());return `${n}-${e}-${i} ${o}:${s}:${l}`}function xt(t){let{days:r=0,hours:n=0,minutes:e=0,seconds:i=0}=t;return r*86400+n*3600+e*60+i}function bt(t){if(!Number.isFinite(t)||t<0)throw new Error("Invalid total seconds");let r=Math.floor(t/86400),n=Math.floor(t%86400/3600),e=Math.floor(t%3600/60),i=t%60;return {days:r,hours:n,minutes:e,seconds:i}}function j(t){let[r,n]=t.split("/"),e=k(r),i=n?Number(n):NaN;if(e===null||!Number.isInteger(i)||i<0||i>32)return null;let o=i===0?0:4294967295<<32-i>>>0,s=e&o,l=s|~o>>>0;return [S(s),S(l)]}function St(t){let r=t.split(".").map(o=>Number(o));if(r.length!==4||r.some(o=>!Number.isInteger(o)||o<0||o>255))throw new Error("Invalid IPv4 address");let n=new ArrayBuffer(4),e=new DataView(n),i=0;for(;i<4;)e.setUint8(i,r[i]),i++;return e.getUint32(0,false)}function Dt(t){if(!I(t))return "";let r=new ArrayBuffer(4),n=new DataView(r);n.setUint32(0,t,false);let e=[],i=0;for(;i<4;)e.push(n.getUint8(i)),i++;return e.join(".")}function k(t){if(!c(t))return null;let r=g(t).split(".");if(r.length!==4)return null;let n=0;for(let e=0;e<4;e++){if(!/^\d{1,3}$/.test(r[e]))return null;let i=Number(r[e]);if(i<0||i>255)return null;n=n<<8|i;}return n>>>0}function*C(t,r,n={}){let{includeNetwork:e=true,includeBroadcast:i=true}=n,o,s,l=false,d=null;if(r===void 0&&t.includes("/")){let u=j(t);if(!u)throw new Error(`Invalid CIDR: "${t}"`);let[f,p]=u,[O,q]=t.split("/");d=Number(q),o=k(f),s=k(p),l=true;}else {let u=k(t);if(u===null)throw new Error(`Invalid IPv4: "${t}"`);if(o=u,r&&r.trim()!==""){let f=k(r);if(f===null)throw new Error(`Invalid IPv4: "${r}"`);s=f;}else {let f=o>>>24&255,p=o>>>16&255,O=o>>>8&255;s=(f<<24|p<<16|O<<8|255)>>>0;}}o>s&&([o,s]=[s,o]);let x=-1,h=-1;l&&d!==null&&d<=30&&(x=o,h=s);for(let u=o;u<=s;u=u+1>>>0){if(!e&&u===x){if(u===s)break;continue}if(!i&&u===h){if(u===s)break;continue}if(yield S(u),u===4294967295)break}}function jt(t,r,n={}){let{limit:e=1e6}=n,i=[],o=0;for(let s of C(t,r,n)){if(o>=e)throw new Error(`Range is too large (> ${e}). Use the generator version instead.`);i.push(s),o++;}return i}function S(t){if(!Number.isInteger(t)||t<0||t>4294967295)throw new Error(`Invalid IPv4 number: ${t}`);return [t>>>24&255,t>>>16&255,t>>>8&255,t&255].join(".")}function b(t){return Array.isArray(t)}function D(t){return b(t)&&t.length>0}function T(t){return typeof t=="boolean"}function Ht(t){if(t instanceof Date)return !Number.isNaN(t.getTime());if(c(t)||a(t)){let r=new Date(t);return !Number.isNaN(r.getTime())}return false}var K=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z]{2,})+$/;function Vt(t){return m(t)?K.test(t):false}function M(t){return t!=null}function Kt(t){return typeof t=="function"}var Y=/^(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)$/;function vt(t){if(!c(t))return false;let r=t.trim();return Y.test(r)}function nr(t){return c(t)&&/^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$/.test(t)}function a(t){return typeof t=="number"&&Number.isFinite(t)}function sr(t){return a(t)&&!Number.isInteger(t)}function cr(t){return a(t)&&t<0}function L(t){return a(t)&&t<=0}function I(t){return a(t)&&t>0}function W(t){return a(t)&&t>=0}function N(t){return typeof t=="object"&&t!==null&&Object.prototype.toString.call(t)==="[object Object]"&&!Array.isArray(t)}function z(t){return N(t)&&Object.keys(t).length>0}function Tr(t,{minLength:r=8,maxLength:n=256,requireUppercase:e=true,requireLowercase:i=true,requireDigit:o=true,requireSpecial:s=true}={}){return !(!c(t)||t.length<r||t.length>n||e&&!/[A-ZА-Я]/.test(t)||i&&!/[a-zа-я]/.test(t)||o&&!/\d/.test(t)||s&&!/[~!?@#$%^&*_\-+()\[\]{}><\\\/|"'.,:;=]/.test(t))}function Fr(t){if(!m(t)&&!a(t))return false;let r=String(t).trim();return !(r.startsWith("-")||(r.match(/\+/g)||[]).length>1||r.includes("+")&&!r.startsWith("+")||!/^\+?[0-9-]+$/.test(r)||r.length<3||r.length>20||!/[0-9]$/.test(r)||r.includes("--"))}function c(t){return typeof t=="string"}function P(t){if(!m(t))return false;let r=t.trim().toLowerCase();return r==="true"||r==="false"}function m(t){return c(t)&&t.trim().length>0}function Er(t){if(!m(t))return false;let r=t.trim().toLowerCase();return r==="asc"||r==="desc"}function Lr(t){return c(t)&&/^[A-Za-z_][A-Za-z0-9_]*$/.test(t)}var X=/^(['"`])([\s\S]*)\1$/;function A(t,r){let n=t.trim(),e=J(n);if(e.ok)return e.value;let i=X.exec(n);return i?i[2]:r?n:null}function J(t){try{return {ok:!0,value:JSON.parse(t)}}catch{}return {ok:false}}function R(t,r=false){if(t===null||a(t)||T(t))return t;if(D(t)){let n=t,e=[];for(let i of n)m(i)?e.push(A(String(i),r)):e.push(i);return e}if(z(t)){let n=t,e={};for(let i of Object.keys(n)){let o=n[i];m(o)?e[i]=A(String(o),r):e[i]=o;}return e}return b(t)||N(t)?t:m(t)?A(String(t),r):null}function _r(t){try{return N(t)||b(t)?JSON.stringify(t):""}catch{}return ""}function Vr(t,r){let n=Math.trunc(r);if(n===0)return {...t};if(n>0)return {sign:t.sign,digitsInteger:t.digitsInteger,scale:t.scale+n};let e=10n**BigInt(-n);return {sign:t.sign,digitsInteger:t.digitsInteger*e,scale:t.scale+n}}function E(t,r){let n=/^([0-9]+)(?:\.([0-9]*))?e([+\-]?[0-9]+)$/i.exec((()=>{let[o,s]=r.split(/e/i),[l,d=""]=o.split("."),x=l.replace(/^0+/,"")+d,h=parseInt(s,10)-d.length;return `${x||"0"}e${h}`})());if(!n)throw new Error("Failed to parse exponential notation.");let e=n[1],i=parseInt(n[3],10);if(W(i))return e=e+"0".repeat(i),{sign:t,integerPart:e||"0",fractionalPart:""};{let o=-i;if(o>=e.length){let s="0".repeat(o-e.length);return {sign:t,integerPart:"0",fractionalPart:s+e}}else {let s=e.length-o;return {sign:t,integerPart:e.slice(0,s),fractionalPart:e.slice(s)}}}}function U(t){return Number(Z(t))}function Z(t){let r=t.sign<0?"-":"",n=t.digitsInteger.toString();if(t.scale===0)return r+n;let e=t.scale-n.length;if(e>=0)return r+"0."+"0".repeat(e)+n;let i=n.length-t.scale,o=n.slice(0,i),s=n.slice(i);return r+o+"."+s}function w(t,r=1,n=false){try{return U(r>1?H(B(t),r,"half-up"):B(t))}catch(e){if(n)throw e}return 0}function _(t){if(typeof t=="bigint"){let r=t<0n?-1:1,n=(t<0n?-t:t).toString();return {sign:r,integerPart:n,fractionalPart:""}}if(typeof t=="number"){if(!Number.isFinite(t))throw new Error("Input number is not finite.");let r=t<0?-1:1,e=Math.abs(t).toExponential(30);return E(r,e)}if(typeof t=="string"){let r=t.trim().replace(",",".");if(!r)throw new Error("Input string is empty.");let n=1;if((r.startsWith("+")||r.startsWith("-"))&&(n=r.startsWith("-")?-1:1,r=r.slice(1)),/^[0-9]*\.?[0-9]*(e[+\-]?[0-9]+)?$/i.test(r)){if(/e/i.test(r))return E(n,r);let[e="0",i=""]=r.split(".");return {sign:n,integerPart:e,fractionalPart:i}}throw new Error("Invalid numeric string.")}throw new Error("Unsupported input type.")}function B(t){let{sign:r,integerPart:n,fractionalPart:e}=_(t),i=n.replace(/^0+/,"")||"0",o=e.replace(/0+$/,""),s=i+o||"0";return {sign:r,digitsInteger:BigInt(s),scale:o.length}}function H(t,r,n="half-up"){let e=Math.max(0,Math.trunc(r));if(t.scale<=e)return {...t};let i=t.scale-e,o=10n**BigInt(i),s=t.digitsInteger/o,l=t.digitsInteger%o;if(n==="trunc"||l===0n)return {sign:t.sign,digitsInteger:s,scale:e};let d=o/2n,h=l>=d?s+1n:s;return {sign:t.sign,digitsInteger:h,scale:e}}function G(t){if(!c(t))return "";let r=g(t);return m(r)?r.toLowerCase():""}function mn(t){if(!c(t))return "";let r=G(t);return m(r)?r[0].toUpperCase()+r.slice(1):""}function gn(t){return c(t)&&g(t)===""||t===void 0?null:t}function wn(t,r="+7"){if(!c(t))return null;let n=g(t).replace(/[\s\-().]/g,"");return /^00\d{8,15}$/.test(n)?n="+"+n.slice(2):/^\d{10}$/.test(n)?n=r+n:/^\d{9,15}$/.test(n)&&!n.startsWith("0")&&(n="+"+n),/^\+\d{10,15}$/.test(n)?n:null}function g(t){return String(c(t)?t.trim().normalize("NFKC").replace(/[\u200B-\u200D\uFEFF]/g,""):"")}function Fn(t){return c(t)&&g(t)===""||t===null?void 0:t}function En(t){let r="",n={},e=[];for(r in t[0])r!=="id"&&(n[r]=[]);t.forEach(i=>{let o="";for(o in i)if(b(n[o])){let s=`"${i[o]}"`;(T(i[o])||P(i[o]))&&(s=Number(y(i[o]))),M(i[o])||(s="NULL"),n[o].push(`WHEN "${i.id}" THEN ${s}`);}});for(r in t[0])D(n[r])&&e.push(`${r} = CASE id ${n[r].join(" ")} END`);return e.join(",")}var v=1024,V=v*1024,F=V*1024,Q=F*1024,tt=Q*1024;function Ln(t,r=""){let n=w(t);if(!a(n))throw new Error(`toGB: value "${t}" is not numeric`);let e=String(r).trim().toLowerCase().replace(/\s+/g,""),i=e?e[0]:"g",o;switch(i){case "b":o=n/F;break;case "k":o=n/V;break;case "m":o=n/F;break;case "g":o=n;break;case "t":o=n*(Q/F);break;case "p":o=n*(tt/F);break;default:o=n;break}if(!a(o))throw new Error(`toGB: result is not finite (value="${t}", unit="${r}")`);return Object.is(o,-0)?0:o}function $(t){return String(t).trim().toLowerCase().replace(/\s+/g,"").replace(/(?:\/?s|hash(?:es)?)$/i,"")}var rt={h:1e-9,k:1e-6,m:.001,g:1,t:1e3,p:1e6,e:1e9};function zn(t,r=""){let n=w(t);if(!a(n))return 0;let e=$(r),i=e?e[0]:"g",o=rt[i]??1,s=n*o;if(!a(s))throw new Error(`toGH: result is not finite (value="${n}", unit="${e}")`);return Object.is(s,-0)?0:s}var nt={h:1,k:1e3,m:1e6,g:1e9,t:1e12,p:1e15,e:1e18};function Hn(t,r=""){let n=w(t);if(!a(n))return 0;let e=$(r),i=e?e[0]:"h",o=nt[i]??1,s=n*o;if(!a(s))throw new Error(`toH: result is not finite (value="${n}", unit="${e}")`);return Object.is(s,-0)?0:s}var et=/^[a-zA-Z][a-zA-Z\d+\-.]*:/;function Vn(t=""){if(!m(t))return "";let r=t.trim(),n=et.test(r)?r:`http://${r}`;try{return new URL(n).hostname}catch{let i=(r.split("@").pop()||r).split(/[/?#]/,1)[0],o=i.match(/^\[([^\]]+)\]/);return o?o[1]:i.split(":",1)[0]||""}}
2
- exports.changeFixedDecimalScale=Vr;exports.cidrToRange=j;exports.convertExponentialToParts=E;exports.extractHost=Vn;exports.fixedDecimalToNum=U;exports.fixedDecimalToStr=Z;exports.floorDateToMinutes=pt;exports.formatArrToSqlWhenCaseStr=En;exports.formatDateToString=gt;exports.formatStrToFuncArgsArr=ot;exports.formatToBool=y;exports.formatToLowerCase=G;exports.formatToNormalCase=mn;exports.formatToNull=gn;exports.formatToNum=w;exports.formatToPhone=wn;exports.formatToTrim=g;exports.formatToUndefined=Fn;exports.ipAddrToNum=St;exports.isArr=b;exports.isArrFilled=D;exports.isBool=T;exports.isDate=Ht;exports.isEmail=Vt;exports.isExists=M;exports.isFunc=Kt;exports.isIpAddr=vt;exports.isMacAddr=nr;exports.isNum=a;exports.isNumFloat=sr;exports.isNumN=cr;exports.isNumNZ=L;exports.isNumP=I;exports.isNumPZ=W;exports.isObj=N;exports.isObjFilled=z;exports.isPassword=Tr;exports.isPhone=Fr;exports.isStr=c;exports.isStrAscDesc=Er;exports.isStrBool=P;exports.isStrFilled=m;exports.isVar=Lr;exports.jsonDecode=R;exports.jsonEncode=_r;exports.normalizeToDecimalComponents=_;exports.numToIpAddr=Dt;exports.parseIPv4=k;exports.parseStringLike=A;exports.parseToFixedDecimal=B;exports.partsToSeconds=xt;exports.rangeIPv4=C;exports.rangeIPv4ToArr=jt;exports.roundFixedDecimal=H;exports.secondsToParts=bt;exports.splitArrToPortions=ut;exports.toGB=Ln;exports.toGH=zn;exports.toH=Hn;exports.toIPv4=S;exports.tryParseJSON=J;exports.wait=mt;//# sourceMappingURL=browser.cjs.map
1
+ 'use strict';function ot(t){if(!a(t))return [t];let n=t.trim();if(n==="")return [];if(n.startsWith("[")&&n.endsWith("]")&&(n=n.slice(1,-1).trim(),n===""))return [];let r="",e=false,i=null,o=false,s=0,l=0,d=0,x=[],h=()=>{let u=r.trim();u!==""&&x.push(u),r="";};for(let u=0;u<n.length;u++){let c=n[u];if(e){if(r+=c,o){o=false;continue}if(c==="\\"){o=true;continue}c===i&&(e=false,i=null);continue}if(c==='"'||c==="'"){e=true,i=c,r+=c;continue}if(c==="("){s++,r+=c;continue}if(c===")"){s=Math.max(0,s-1),r+=c;continue}if(c==="["){l++,r+=c;continue}if(c==="]"){l=Math.max(0,l-1),r+=c;continue}if(c==="{"){d++,r+=c;continue}if(c==="}"){d=Math.max(0,d-1),r+=c;continue}if(c===","&&s===0&&l===0&&d===0){h();continue}r+=c;}return r.length&&h(),x.map(u=>{if(u.startsWith("$")&&u.includes("(")&&u.endsWith(")"))return u;if(u==="null")return null;if(u==="undefined")return;if(E(u))return $(u);let c=w(u);if(Number.isFinite(c))return c;if(u==="Infinity")return 1/0;if(u==="-Infinity")return -1/0;let p=String(u||"");if(p.length>=2&&(p.startsWith("'")&&p.endsWith("'")||p.startsWith('"')&&p.endsWith('"')))return p.slice(1,-1).replace(/\\\\/g,"\\").replace(/\\'/g,"'").replace(/\\"/g,'"');if(p.startsWith("{")&&p.endsWith("}")||p.startsWith("[")&&p.endsWith("]"))try{return B(p)}catch{}return p})}function ut(t,n){if(!Number.isInteger(n)||n<=0)return [];let r=[],e=0;for(;e<t.length;)r.push(t.slice(e,e+n)),e+=n;return r}function $(t){switch(true){case F(t):return t;case P(t):return true;case R(t):return false;case(m(t)&&["true","1","yes","on"].includes(String(t??"").trim().toLowerCase())):return true;case(m(t)&&["false","0","no","off"].includes(String(t??"").trim().toLowerCase())):return false}return false}async function mt(t=0){await new Promise(n=>setTimeout(()=>n(true),t));}function pt(t=1,n=new Date){let r=Math.min(60,Math.max(1,Math.trunc(Math.abs(t)))),e=n.getMinutes(),i=Math.floor(e/r)*r,o=new Date(n);return o.setMinutes(i,0,0),o}function gt(t=new Date){let n=d=>String(d).padStart(2,"0"),r=t.getFullYear(),e=n(t.getMonth()+1),i=n(t.getDate()),o=n(t.getHours()),s=n(t.getMinutes()),l=n(t.getSeconds());return `${r}-${e}-${i} ${o}:${s}:${l}`}function xt(t){let{days:n=0,hours:r=0,minutes:e=0,seconds:i=0}=t;return n*86400+r*3600+e*60+i}function bt(t){if(!Number.isFinite(t)||t<0)throw new Error("Invalid total seconds");let n=Math.floor(t/86400),r=Math.floor(t%86400/3600),e=Math.floor(t%3600/60),i=t%60;return {days:n,hours:r,minutes:e,seconds:i}}function M(t){let[n,r]=t.split("/"),e=b(n),i=r?Number(r):NaN;if(e===null||!Number.isInteger(i)||i<0||i>32)return null;let o=i===0?0:4294967295<<32-i>>>0,s=e&o,l=s|~o>>>0;return [N(s),N(l)]}function St(t){let n=t.split(".").map(o=>Number(o));if(n.length!==4||n.some(o=>!Number.isInteger(o)||o<0||o>255))throw new Error("Invalid IPv4 address");let r=new ArrayBuffer(4),e=new DataView(r),i=0;for(;i<4;)e.setUint8(i,n[i]),i++;return e.getUint32(0,false)}function Dt(t){if(!P(t))return "";let n=new ArrayBuffer(4),r=new DataView(n);r.setUint32(0,t,false);let e=[],i=0;for(;i<4;)e.push(r.getUint8(i)),i++;return e.join(".")}function b(t){if(!a(t))return null;let n=g(t).split(".");if(n.length!==4)return null;let r=0;for(let e=0;e<4;e++){if(!/^\d{1,3}$/.test(n[e]))return null;let i=Number(n[e]);if(i<0||i>255)return null;r=r<<8|i;}return r>>>0}function*C(t,n,r={}){let{includeNetwork:e=true,includeBroadcast:i=true}=r,o,s,l=false,d=null;if(n===void 0&&t.includes("/")){let u=M(t);if(!u)throw new Error(`Invalid CIDR: "${t}"`);let[c,p]=u,[D,K]=t.split("/");d=Number(K),o=b(c),s=b(p),l=true;}else {let u=b(t);if(u===null)throw new Error(`Invalid IPv4: "${t}"`);if(o=u,n&&n.trim()!==""){let c=b(n);if(c===null)throw new Error(`Invalid IPv4: "${n}"`);s=c;}else {let c=o>>>24&255,p=o>>>16&255,D=o>>>8&255;s=(c<<24|p<<16|D<<8|255)>>>0;}}o>s&&([o,s]=[s,o]);let x=-1,h=-1;l&&d!==null&&d<=30&&(x=o,h=s);for(let u=o;u<=s;u=u+1>>>0){if(!e&&u===x){if(u===s)break;continue}if(!i&&u===h){if(u===s)break;continue}if(yield N(u),u===4294967295)break}}function Ct(t,n,r={}){let{limit:e=1e6}=r,i=[],o=0;for(let s of C(t,n,r)){if(o>=e)throw new Error(`Range is too large (> ${e}). Use the generator version instead.`);i.push(s),o++;}return i}function N(t){if(!Number.isInteger(t)||t<0||t>4294967295)throw new Error(`Invalid IPv4 number: ${t}`);return [t>>>24&255,t>>>16&255,t>>>8&255,t&255].join(".")}function k(t){return Array.isArray(t)}function L(t){return k(t)&&t.length>0}function F(t){return typeof t=="boolean"}function _t(t){if(t instanceof Date)return !Number.isNaN(t.getTime());if(a(t)||f(t)){let n=new Date(t);return !Number.isNaN(n.getTime())}return false}var q=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z]{2,})+$/;function Vt(t){return m(t)?q.test(t):false}function Kt(t){return t!=null}function j(t){return typeof t=="function"}var Y=/^(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)$/;function vt(t){if(!a(t))return false;let n=t.trim();return Y.test(n)}function rn(t){return a(t)&&/^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$/.test(t)}function f(t){return typeof t=="number"&&Number.isFinite(t)}function un(t){return f(t)&&!Number.isInteger(t)}function fn(t){return f(t)&&t<0}function R(t){return f(t)&&t<=0}function P(t){return f(t)&&t>0}function z(t){return f(t)&&t>=0}function T(t){return typeof t=="object"&&t!==null&&Object.prototype.toString.call(t)==="[object Object]"&&!Array.isArray(t)}function W(t){return T(t)&&Object.keys(t).length>0}function Nn(t,{minLength:n=8,maxLength:r=256,requireUppercase:e=true,requireLowercase:i=true,requireDigit:o=true,requireSpecial:s=true}={}){return !(!a(t)||t.length<n||t.length>r||e&&!/[A-ZА-Я]/.test(t)||i&&!/[a-zа-я]/.test(t)||o&&!/\d/.test(t)||s&&!/[~!?@#$%^&*_\-+()\[\]{}><\\\/|"'.,:;=]/.test(t))}function Pn(t){if(!m(t)&&!f(t))return false;let n=String(t).trim();return !(n.startsWith("-")||(n.match(/\+/g)||[]).length>1||n.includes("+")&&!n.startsWith("+")||!/^\+?[0-9-]+$/.test(n)||n.length<3||n.length>20||!/[0-9]$/.test(n)||n.includes("--"))}function a(t){return typeof t=="string"}function E(t){if(!m(t))return false;let n=t.trim().toLowerCase();return n==="true"||n==="false"}function m(t){return a(t)&&t.trim().length>0}function Bn(t){if(!m(t))return false;let n=t.trim().toLowerCase();return n==="asc"||n==="desc"}function Cn(t){return a(t)&&/^[A-Za-z_][A-Za-z0-9_]*$/.test(t)}function zn(t){return j(t)&&/^class\s/.test(Function.prototype.toString.call(t))}var X=/^(['"`])([\s\S]*)\1$/;function y(t,n){let r=t.trim(),e=J(r);if(e.ok)return e.value;let i=X.exec(r);return i?i[2]:n?r:null}function J(t){try{return {ok:!0,value:JSON.parse(t)}}catch{}return {ok:false}}function B(t,n=false){if(t===null||f(t)||F(t))return t;if(L(t)){let r=t,e=[];for(let i of r)m(i)?e.push(y(String(i),n)):e.push(i);return e}if(W(t)){let r=t,e={};for(let i of Object.keys(r)){let o=r[i];m(o)?e[i]=y(String(o),n):e[i]=o;}return e}return k(t)||T(t)?t:m(t)?y(String(t),n):null}function Kn(t){try{return T(t)||k(t)?JSON.stringify(t):""}catch{}return ""}function Yn(t,n){let r=Math.trunc(n);if(r===0)return {...t};if(r>0)return {sign:t.sign,digitsInteger:t.digitsInteger,scale:t.scale+r};let e=10n**BigInt(-r);return {sign:t.sign,digitsInteger:t.digitsInteger*e,scale:t.scale+r}}function A(t,n){let r=/^([0-9]+)(?:\.([0-9]*))?e([+\-]?[0-9]+)$/i.exec((()=>{let[o,s]=n.split(/e/i),[l,d=""]=o.split("."),x=l.replace(/^0+/,"")+d,h=parseInt(s,10)-d.length;return `${x||"0"}e${h}`})());if(!r)throw new Error("Failed to parse exponential notation.");let e=r[1],i=parseInt(r[3],10);if(z(i))return e=e+"0".repeat(i),{sign:t,integerPart:e||"0",fractionalPart:""};{let o=-i;if(o>=e.length){let s="0".repeat(o-e.length);return {sign:t,integerPart:"0",fractionalPart:s+e}}else {let s=e.length-o;return {sign:t,integerPart:e.slice(0,s),fractionalPart:e.slice(s)}}}}function U(t){return Number(Z(t))}function Z(t){let n=t.sign<0?"-":"",r=t.digitsInteger.toString();if(t.scale===0)return n+r;let e=t.scale-r.length;if(e>=0)return n+"0."+"0".repeat(e)+r;let i=r.length-t.scale,o=r.slice(0,i),s=r.slice(i);return n+o+"."+s}function w(t,n=1,r=false){try{return U(n>1?_(O(t),n,"half-up"):O(t))}catch(e){if(r)throw e}return 0}function G(t){if(typeof t=="bigint"){let n=t<0n?-1:1,r=(t<0n?-t:t).toString();return {sign:n,integerPart:r,fractionalPart:""}}if(typeof t=="number"){if(!Number.isFinite(t))throw new Error("Input number is not finite.");let n=t<0?-1:1,e=Math.abs(t).toExponential(30);return A(n,e)}if(typeof t=="string"){let n=t.trim().replace(",",".");if(!n)throw new Error("Input string is empty.");let r=1;if((n.startsWith("+")||n.startsWith("-"))&&(r=n.startsWith("-")?-1:1,n=n.slice(1)),/^[0-9]*\.?[0-9]*(e[+\-]?[0-9]+)?$/i.test(n)){if(/e/i.test(n))return A(r,n);let[e="0",i=""]=n.split(".");return {sign:r,integerPart:e,fractionalPart:i}}throw new Error("Invalid numeric string.")}throw new Error("Unsupported input type.")}function O(t){let{sign:n,integerPart:r,fractionalPart:e}=G(t),i=r.replace(/^0+/,"")||"0",o=e.replace(/0+$/,""),s=i+o||"0";return {sign:n,digitsInteger:BigInt(s),scale:o.length}}function _(t,n,r="half-up"){let e=Math.max(0,Math.trunc(n));if(t.scale<=e)return {...t};let i=t.scale-e,o=10n**BigInt(i),s=t.digitsInteger/o,l=t.digitsInteger%o;if(r==="trunc"||l===0n)return {sign:t.sign,digitsInteger:s,scale:e};let d=o/2n,h=l>=d?s+1n:s;return {sign:t.sign,digitsInteger:h,scale:e}}function H(t){if(!a(t))return "";let n=g(t);return m(n)?n.toLowerCase():""}function dr(t){if(!a(t))return "";let n=H(t);return m(n)?n[0].toUpperCase()+n.slice(1):""}function wr(t){return a(t)&&g(t)===""||t===void 0?null:t}function Tr(t,n="+7"){if(!a(t))return null;let r=g(t).replace(/[\s\-().]/g,"");return /^00\d{8,15}$/.test(r)?r="+"+r.slice(2):/^\d{10}$/.test(r)?r=n+r:/^\d{9,15}$/.test(r)&&!r.startsWith("0")&&(r="+"+r),/^\+\d{10,15}$/.test(r)?r:null}function g(t){return String(a(t)?t.trim().normalize("NFKC").replace(/[\u200B-\u200D\uFEFF]/g,""):"")}function Ir(t){return a(t)&&g(t)===""||t===null?void 0:t}var v=1024,V=v*1024,S=V*1024,Q=S*1024,tt=Q*1024;function Or(t,n=""){let r=w(t);if(!f(r))throw new Error(`toGB: value "${t}" is not numeric`);let e=String(n).trim().toLowerCase().replace(/\s+/g,""),i=e?e[0]:"g",o;switch(i){case "b":o=r/S;break;case "k":o=r/V;break;case "m":o=r/S;break;case "g":o=r;break;case "t":o=r*(Q/S);break;case "p":o=r*(tt/S);break;default:o=r;break}if(!f(o))throw new Error(`toGB: result is not finite (value="${t}", unit="${n}")`);return Object.is(o,-0)?0:o}function I(t){return String(t).trim().toLowerCase().replace(/\s+/g,"").replace(/(?:\/?s|hash(?:es)?)$/i,"")}var nt={h:1e-9,k:1e-6,m:.001,g:1,t:1e3,p:1e6,e:1e9};function Mr(t,n=""){let r=w(t);if(!f(r))return 0;let e=I(n),i=e?e[0]:"g",o=nt[i]??1,s=r*o;if(!f(s))throw new Error(`toGH: result is not finite (value="${r}", unit="${e}")`);return Object.is(s,-0)?0:s}var rt={h:1,k:1e3,m:1e6,g:1e9,t:1e12,p:1e15,e:1e18};function zr(t,n=""){let r=w(t);if(!f(r))return 0;let e=I(n),i=e?e[0]:"h",o=rt[i]??1,s=r*o;if(!f(s))throw new Error(`toH: result is not finite (value="${r}", unit="${e}")`);return Object.is(s,-0)?0:s}var et=/^[a-zA-Z][a-zA-Z\d+\-.]*:/;function Ur(t=""){if(!m(t))return "";let n=t.trim(),r=et.test(n)?n:`http://${n}`;try{return new URL(r).hostname}catch{let i=(n.split("@").pop()||n).split(/[/?#]/,1)[0],o=i.match(/^\[([^\]]+)\]/);return o?o[1]:i.split(":",1)[0]||""}}
2
+ exports.changeFixedDecimalScale=Yn;exports.cidrToRange=M;exports.convertExponentialToParts=A;exports.extractHost=Ur;exports.fixedDecimalToNum=U;exports.fixedDecimalToStr=Z;exports.floorDateToMinutes=pt;exports.formatDateToString=gt;exports.formatStrToFuncArgsArr=ot;exports.formatToBool=$;exports.formatToLowerCase=H;exports.formatToNormalCase=dr;exports.formatToNull=wr;exports.formatToNum=w;exports.formatToPhone=Tr;exports.formatToTrim=g;exports.formatToUndefined=Ir;exports.ipAddrToNum=St;exports.isArr=k;exports.isArrFilled=L;exports.isBool=F;exports.isClass=zn;exports.isDate=_t;exports.isEmail=Vt;exports.isExists=Kt;exports.isFunc=j;exports.isIpAddr=vt;exports.isMacAddr=rn;exports.isNum=f;exports.isNumFloat=un;exports.isNumN=fn;exports.isNumNZ=R;exports.isNumP=P;exports.isNumPZ=z;exports.isObj=T;exports.isObjFilled=W;exports.isPassword=Nn;exports.isPhone=Pn;exports.isStr=a;exports.isStrAscDesc=Bn;exports.isStrBool=E;exports.isStrFilled=m;exports.isVar=Cn;exports.jsonDecode=B;exports.jsonEncode=Kn;exports.normalizeToDecimalComponents=G;exports.numToIpAddr=Dt;exports.parseIPv4=b;exports.parseStringLike=y;exports.parseToFixedDecimal=O;exports.partsToSeconds=xt;exports.rangeIPv4=C;exports.rangeIPv4ToArr=Ct;exports.roundFixedDecimal=_;exports.secondsToParts=bt;exports.splitArrToPortions=ut;exports.toGB=Or;exports.toGH=Mr;exports.toH=zr;exports.toIPv4=N;exports.tryParseJSON=J;exports.wait=mt;//# sourceMappingURL=browser.cjs.map
3
3
  //# sourceMappingURL=browser.cjs.map