full-utils 2.0.1 → 2.0.2

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 et(t){if(!f(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 ot(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 ft(t=0){await new Promise(n=>setTimeout(()=>n(true),t));}function mt(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 pt(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 gt(t){let{days:n=0,hours:r=0,minutes:e=0,seconds:i=0}=t;return n*86400+r*3600+e*60+i}function xt(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 Tt(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 yt(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(!f(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*j(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,V]=t.split("/");d=Number(V),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 Rt(t,n,r={}){let{limit:e=1e6}=r,i=[],o=0;for(let s of j(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 Zt(t){if(t instanceof Date)return !Number.isNaN(t.getTime());if(f(t)||a(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 Gt(t){return m(t)?Q.test(t):false}function Vt(t){return t!=null}function Kt(t){return typeof t=="function"}var K=/^(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 Xt(t){if(!f(t))return false;let n=t.trim();return K.test(n)}function nn(t){return f(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 sn(t){return a(t)&&!Number.isInteger(t)}function fn(t){return a(t)&&t<0}function R(t){return a(t)&&t<=0}function P(t){return a(t)&&t>0}function z(t){return a(t)&&t>=0}function T(t){return typeof t=="object"&&t!==null&&Object.prototype.toString.call(t)==="[object Object]"&&!Array.isArray(t)}function C(t){return T(t)&&Object.keys(t).length>0}function Tn(t,{minLength:n=8,maxLength:r=256,requireUppercase:e=true,requireLowercase:i=true,requireDigit:o=true,requireSpecial:s=true}={}){return !(!f(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 Fn(t){if(!m(t)&&!a(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 f(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 f(t)&&t.trim().length>0}function En(t){if(!m(t))return false;let n=t.trim().toLowerCase();return n==="asc"||n==="desc"}function Mn(t){return f(t)&&/^[A-Za-z_][A-Za-z0-9_]*$/.test(t)}var q=/^(['"`])([\s\S]*)\1$/;function y(t,n){let r=t.trim(),e=W(r);if(e.ok)return e.value;let i=q.exec(r);return i?i[2]:n?r:null}function W(t){try{return {ok:!0,value:JSON.parse(t)}}catch{}return {ok:false}}function B(t,n=false){if(t===null||a(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(C(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 Gn(t){try{return T(t)||k(t)?JSON.stringify(t):""}catch{}return ""}function Vn(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 J(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){return J(n>1?U(O(t),n,"half-up"):O(t))}function _(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}=_(t),i=r.replace(/^0+/,"")||"0",o=e.replace(/0+$/,""),s=i+o||"0";return {sign:n,digitsInteger:BigInt(s),scale:o.length}}function U(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 cr(t){if(!f(t))return "";let n=g(t);return m(n)?n.toLowerCase():""}function lr(t){return f(t)&&g(t)===""||t===void 0?null:t}function gr(t,n="+7"){if(!f(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(f(t)?t.trim().normalize("NFKC").replace(/[\u200B-\u200D\uFEFF]/g,""):"")}function Tr(t){return f(t)&&g(t)===""||t===null?void 0:t}var Y=1024,G=Y*1024,S=G*1024,H=S*1024,X=H*1024;function Fr(t,n=""){let r=w(t);if(!a(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/G;break;case "m":o=r/S;break;case "g":o=r;break;case "t":o=r*(H/S);break;case "p":o=r*(X/S);break;default:o=r;break}if(!a(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 v={h:1e-9,k:1e-6,m:.001,g:1,t:1e3,p:1e6,e:1e9};function Ar(t,n=""){let r=w(t);if(!a(r))return 0;let e=I(n),i=e?e[0]:"g",o=v[i]??1,s=r*o;if(!a(s))throw new Error(`toGH: result is not finite (value="${r}", unit="${e}")`);return Object.is(s,-0)?0:s}var tt={h:1,k:1e3,m:1e6,g:1e9,t:1e12,p:1e15,e:1e18};function Br(t,n=""){let r=w(t);if(!a(r))return 0;let e=I(n),i=e?e[0]:"h",o=tt[i]??1,s=r*o;if(!a(s))throw new Error(`toH: result is not finite (value="${r}", unit="${e}")`);return Object.is(s,-0)?0:s}var nt=/^[a-zA-Z][a-zA-Z\d+\-.]*:/;function jr(t=""){if(!m(t))return "";let n=t.trim(),r=nt.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=Vn;exports.cidrToRange=M;exports.convertExponentialToParts=A;exports.extractHost=jr;exports.fixedDecimalToNum=J;exports.fixedDecimalToStr=Z;exports.floorDateToMinutes=mt;exports.formatDateToString=pt;exports.formatStrToFuncArgs=et;exports.formatToBool=$;exports.formatToLowerCase=cr;exports.formatToNull=lr;exports.formatToNum=w;exports.formatToPhone=gr;exports.formatToTrim=g;exports.formatToUndefined=Tr;exports.ipAddrToNum=Tt;exports.isArr=k;exports.isArrFilled=L;exports.isBool=F;exports.isDate=Zt;exports.isEmail=Gt;exports.isExists=Vt;exports.isFunc=Kt;exports.isIpAddr=Xt;exports.isMacAddr=nn;exports.isNum=a;exports.isNumFloat=sn;exports.isNumN=fn;exports.isNumNZ=R;exports.isNumP=P;exports.isNumPZ=z;exports.isObj=T;exports.isObjFilled=C;exports.isPassword=Tn;exports.isPhone=Fn;exports.isStr=f;exports.isStrAscDesc=En;exports.isStrBool=E;exports.isStrFilled=m;exports.isVar=Mn;exports.jsonDecode=B;exports.jsonEncode=Gn;exports.normalizeToDecimalComponents=_;exports.numToIpAddr=yt;exports.parseIPv4=b;exports.parseStringLike=y;exports.parseToFixedDecimal=O;exports.partsToSeconds=gt;exports.rangeIPv4=j;exports.rangeIPv4ToArr=Rt;exports.roundFixedDecimal=U;exports.secondsToParts=xt;exports.splitArrToPortions=ot;exports.toGB=Fr;exports.toGH=Ar;exports.toH=Br;exports.toIPv4=N;exports.tryParseJSON=W;exports.wait=ft;//# sourceMappingURL=browser.cjs.map
1
+ 'use strict';function it(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,h=[],x=()=>{let u=r.trim();u!==""&&h.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){x();continue}r+=c;}return r.length&&x(),h.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 st(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 ft(t=0){await new Promise(n=>setTimeout(()=>n(true),t));}function lt(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 dt(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 wt(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 Nt(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 It(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*L(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,Q]=t.split("/");d=Number(Q),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 h=-1,x=-1;l&&d!==null&&d<=30&&(h=o,x=s);for(let u=o;u<=s;u=u+1>>>0){if(!e&&u===h){if(u===s)break;continue}if(!i&&u===x){if(u===s)break;continue}if(yield N(u),u===4294967295)break}}function Mt(t,n,r={}){let{limit:e=1e6}=r,i=[],o=0;for(let s of L(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 j(t){return k(t)&&t.length>0}function F(t){return typeof t=="boolean"}function Zt(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 K=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z]{2,})+$/;function Ht(t){return m(t)?K.test(t):false}function Qt(t){return t!=null}function qt(t){return typeof t=="function"}var q=/^(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 q.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 C(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 z(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 Ln(t){return a(t)&&/^[A-Za-z_][A-Za-z0-9_]*$/.test(t)}var Y=/^(['"`])([\s\S]*)\1$/;function y(t,n){let r=t.trim(),e=W(r);if(e.ok)return e.value;let i=Y.exec(r);return i?i[2]:n?r:null}function W(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(j(t)){let r=t,e=[];for(let i of r)m(i)?e.push(y(String(i),n)):e.push(i);return e}if(z(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 Hn(t){try{return T(t)||k(t)?JSON.stringify(t):""}catch{}return ""}function Qn(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("."),h=l.replace(/^0+/,"")+d,x=parseInt(s,10)-d.length;return `${h||"0"}e${x}`})());if(!r)throw new Error("Failed to parse exponential notation.");let e=r[1],i=parseInt(r[3],10);if(C(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 J(t){return Number(U(t))}function U(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){return J(n>1?Z(O(t),n,"half-up"):O(t))}function _(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}=_(t),i=r.replace(/^0+/,"")||"0",o=e.replace(/0+$/,""),s=i+o||"0";return {sign:n,digitsInteger:BigInt(s),scale:o.length}}function Z(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,x=l>=d?s+1n:s;return {sign:t.sign,digitsInteger:x,scale:e}}function G(t){if(!a(t))return "";let n=g(t);return m(n)?n.toLowerCase():""}function mr(t){if(!a(t))return "";let n=G(t);return m(n)?n[0].toUpperCase()+n.slice(1):""}function gr(t){return a(t)&&g(t)===""||t===void 0?null:t}function wr(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 Fr(t){return a(t)&&g(t)===""||t===null?void 0:t}var X=1024,H=X*1024,S=H*1024,V=S*1024,v=V*1024;function Ir(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/H;break;case "m":o=r/S;break;case "g":o=r;break;case "t":o=r*(V/S);break;case "p":o=r*(v/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 tt={h:1e-9,k:1e-6,m:.001,g:1,t:1e3,p:1e6,e:1e9};function Er(t,n=""){let r=w(t);if(!f(r))return 0;let e=I(n),i=e?e[0]:"g",o=tt[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 nt={h:1,k:1e3,m:1e6,g:1e9,t:1e12,p:1e15,e:1e18};function Lr(t,n=""){let r=w(t);if(!f(r))return 0;let e=I(n),i=e?e[0]:"h",o=nt[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 rt=/^[a-zA-Z][a-zA-Z\d+\-.]*:/;function zr(t=""){if(!m(t))return "";let n=t.trim(),r=rt.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=Qn;exports.cidrToRange=M;exports.convertExponentialToParts=A;exports.extractHost=zr;exports.fixedDecimalToNum=J;exports.fixedDecimalToStr=U;exports.floorDateToMinutes=lt;exports.formatDateToString=dt;exports.formatStrToFuncArgs=it;exports.formatToBool=$;exports.formatToLowerCase=G;exports.formatToNormalCase=mr;exports.formatToNull=gr;exports.formatToNum=w;exports.formatToPhone=wr;exports.formatToTrim=g;exports.formatToUndefined=Fr;exports.ipAddrToNum=Nt;exports.isArr=k;exports.isArrFilled=j;exports.isBool=F;exports.isDate=Zt;exports.isEmail=Ht;exports.isExists=Qt;exports.isFunc=qt;exports.isIpAddr=vt;exports.isMacAddr=rn;exports.isNum=f;exports.isNumFloat=un;exports.isNumN=fn;exports.isNumNZ=R;exports.isNumP=P;exports.isNumPZ=C;exports.isObj=T;exports.isObjFilled=z;exports.isPassword=Nn;exports.isPhone=Pn;exports.isStr=a;exports.isStrAscDesc=Bn;exports.isStrBool=E;exports.isStrFilled=m;exports.isVar=Ln;exports.jsonDecode=B;exports.jsonEncode=Hn;exports.normalizeToDecimalComponents=_;exports.numToIpAddr=It;exports.parseIPv4=b;exports.parseStringLike=y;exports.parseToFixedDecimal=O;exports.partsToSeconds=xt;exports.rangeIPv4=L;exports.rangeIPv4ToArr=Mt;exports.roundFixedDecimal=Z;exports.secondsToParts=wt;exports.splitArrToPortions=st;exports.toGB=Ir;exports.toGH=Er;exports.toH=Lr;exports.toIPv4=N;exports.tryParseJSON=W;exports.wait=ft;//# sourceMappingURL=browser.cjs.map
3
3
  //# sourceMappingURL=browser.cjs.map