@acrool/js-utils
Version:
Common javascript utils methods for project development
2 lines (1 loc) • 3.65 kB
JavaScript
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("../regPattern-fdf73f5e.cjs");function R(e,t){const r={isZero:(t==null?void 0:t.isZero)??!0,isFalse:(t==null?void 0:t.isFalse)??!0};return e==null||r.isFalse&&(e===!1||e==="false")||r.isZero&&(e===0||e==="0")||!(e instanceof Date)&&typeof e=="object"&&Object.keys(e).length===0||typeof e=="string"&&e.trim().length===0}function w(e,t){const r={isZero:(t==null?void 0:t.isZero)??!0,isFalse:(t==null?void 0:t.isFalse)??!0};return!R(e,r)}function x(e){const t=new RegExp(y.regPattern.date);let r=!0;const s=t.exec(e);if(s!==null){let n;n=parseFloat(s[1]),(n<=0||n>9999)&&(r=!1),n=parseFloat(s[2]),(n<=0||n>12)&&(r=!1),n=parseFloat(s[3]),(n<=0||n>31)&&(r=!1)}else r=!1;return r}function F(e){return e===null||e===""?!1:!isNaN(e)}function B(e){return!!(new RegExp(y.regPattern.ipAddress).test(e)&&RegExp.$1<256&&RegExp.$2<256&&RegExp.$3<256&&RegExp.$4<256)}function D(e){return!!(new RegExp(/(\d+)\.(\d+)\.(\d+)\.(\d+)/g).test(e)&&RegExp.$1<256&&RegExp.$2<256&&RegExp.$3<256&&RegExp.$4<256)}function $(e){try{const t=JSON.parse(e);if(t&&typeof t=="object"&&t!==null)return!0}catch{return!1}return!1}const p=e=>(t,r)=>{const s=t==null?void 0:t.map(o=>o[e]).join("-"),n=r==null?void 0:r.map(o=>o[e]).join("-");return s===n},h=p("id"),M=p("code");function I(e,t){if(e.length!==t.length)return!1;const r=new Map;for(const s of e)r.set(s,(r.get(s)||0)+1);for(const s of t){if(!r.has(s))return!1;const n=r.get(s)-1;n===0?r.delete(s):r.set(s,n)}return r.size===0}function j(e,t){const r=[];for(const s in e)t(e,s)&&r.push(s);return r.concat(Object.getOwnPropertySymbols(e).filter(s=>Object.getOwnPropertyDescriptor(e,s).enumerable))}function C(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function q(e,t){return C(e,t)&&e[t]!==void 0}function E(e){return e!==null&&typeof e=="object"&&typeof e.nodeType=="number"&&typeof e.nodeName=="string"&&typeof e.isEqualNode=="function"}function A(e,t){return Object.prototype.toString.apply(t)==="[object "+e+"]"}function N(e){return!!e&&A("Function",e.asymmetricMatch)}function Z(e,t){const r=N(e),s=N(t);if(!(r&&s)){if(r)return e.asymmetricMatch(t);if(s)return t.asymmetricMatch(e)}}const P=(e,t,r,s,n,o)=>{n=n||[];let u=!0;const g=Z(e,t);if(g!==void 0)return g;for(let a=0;a<n.length;a++){const d=n[a](e,t);if(d!==void 0)return d}if(e instanceof Error&&t instanceof Error)return e.message==t.message;if(Object.is(e,t))return!0;if(e===null||t===null)return e===t;const l=Object.prototype.toString.call(e);if(l!=Object.prototype.toString.call(t))return!1;switch(l){case"[object Boolean]":case"[object String]":case"[object Number]":return typeof e!=typeof t?!1:typeof e!="object"&&typeof t!="object"?Object.is(e,t):Object.is(e.valueOf(),t.valueOf());case"[object Date]":return+e==+t;case"[object RegExp]":return e.source===t.source&&e.flags===t.flags}if(typeof e!="object"||typeof t!="object")return!1;if(E(e)&&E(t))return e.isEqualNode(t);let i=r.length;for(;i--;){if(r[i]===e)return s[i]===t;if(s[i]===t)return!1}if(r.push(e),s.push(t),l=="[object Array]"&&e.length!==t.length)return!1;const m=j(e,o);let f,c=m.length;if(j(t,o).length!==c)return!1;for(;c--;)if(f=m[c],u=o(t,f)&&P(e[f],t[f],r,s,n,o),!u)return!1;return r.pop(),s.pop(),u};function J(e,t,r,s){const n=(s==null?void 0:s.customTesters)||[];return P(e,t,[],[],n,r?C:q)}exports.regPattern=y.regPattern;exports.arrayCompose=I;exports.deepCompare=J;exports.isDate=x;exports.isEmpty=R;exports.isIP=B;exports.isIPUrl=D;exports.isJSON=$;exports.isNotEmpty=w;exports.isNumber=F;exports.objsComposeBy=p;exports.objsComposeByCode=M;exports.objsComposeById=h;
;