@jdlien/validator-utils 1.2.3 → 1.2.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.
@@ -1 +1 @@
1
- (function(i,f){typeof exports=="object"&&typeof module<"u"?f(exports):typeof define=="function"&&define.amd?define(["exports"],f):(i=typeof globalThis<"u"?globalThis:i||self,f(i.validatorUtils={}))})(this,function(i){"use strict";function f(e){return e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement}function R(e,n){typeof n=="string"&&(n=[n]);const t=e.dataset.type||"",r=e.type;return!!(n.includes(t)||n.includes(r))}function S(e){return e.replace(/YYYY/g,"Y").replace(/YY/g,"y").replace(/MMMM/g,"F").replace(/MMM/g,"{3}").replace(/MM/g,"{2}").replace(/M/g,"n").replace(/DD/g,"{5}").replace(/D/g,"j").replace(/dddd/g,"l").replace(/ddd/g,"D").replace(/dd/g,"D").replace(/d/g,"w").replace(/HH/g,"{6}").replace(/H/g,"G").replace(/hh/g,"h").replace(/mm/g,"i").replace(/m/g,"i").replace(/ss/g,"S").replace(/s/g,"s").replace(/A/gi,"K").replace(/\{3\}/g,"M").replace(/\{2\}/g,"m").replace(/\{5\}/g,"d").replace(/\{6\}/g,"H")}function M(e){const n=parseInt(e);if(typeof e=="number"||!isNaN(n))return n-1;const t=new Date(`1 ${e} 2000`).getMonth();if(!isNaN(t))return t;const r={ja:0,en:0,fe:1,fé:1,ap:3,ab:3,av:3,mai:4,juin:5,juil:6,au:7,ag:7,ao:7,se:8,o:9,n:10,d:11};for(const o in r)if(e.toLowerCase().startsWith(o))return r[o];throw new Error("Invalid month name: "+e)}function w(e){return typeof e=="string"&&(e=parseInt(e.replace(/\D/g,""))),e>99?e:e<(new Date().getFullYear()+20)%100?e+2e3:e+1900}function m(e){if(e instanceof Date)return e;e=e.trim().toLowerCase();let n=0,t=0,r=0,o=0,a=0,s=0;const d=new RegExp(/\d{1,2}\:\d\d(?:\:\d\ds?)?\s?(?:[a|p]m?)?/gi);if(d.test(e)){const c=e.match(d)[0];e=e.replace(c,"").trim();const g=p(c);if(g!==null&&({hour:o,minute:a,second:s}=g),e.length<=2){const T=new Date;return new Date(T.getFullYear(),T.getMonth(),T.getDate(),o,a,s)}}const u=/(^|\b)(mo|tu|we|th|fr|sa|su|lu|mard|mer|jeu|ve|dom)[\w]*\.?/gi;e=e.replace(u,"").trim();const l=new Date(new Date().setHours(0,0,0,0));if(/(now|today)/.test(e))return l;if(e.includes("tomorrow"))return new Date(l.setDate(l.getDate()+1));e.length===8&&(e=e.replace(/(\d\d\d\d)(\d\d)(\d\d)/,"$1-$2-$3")),e.length===6&&(e=e.replace(/(\d\d)(\d\d)(\d\d)/,w(e.slice(0,2))+"-$2-$3"));try{({year:n,month:t,day:r}=$(e))}catch{return new Date("")}return new Date(n,t-1,r,o,a,s)}function k(e,n=[null,null,null]){const t=r=>r.filter(o=>!n.includes(o));return e===0||e>31?t(["y"]):e>12?t(["d","y"]):e>=1&&e<=12?t(["m","d","y"]):[]}function $(e){const n=e.split(/[\s-/:.,]+/).filter(a=>a!=="");if(n.length<3){if(e.match(/\d{4}/)!==null)throw new Error("Invalid Date");n.unshift(String(new Date().getFullYear()))}const t={year:0,month:0,day:0};function r(a,s){a==="year"?t.year=w(s):t[a]=s}let o=0;for(;!(t.year&&t.month&&t.day);){e:for(const a of n){if(o++,/^[a-zA-Zé]+$/.test(a)){t.month||r("month",M(a)+1);continue}if(/^'\d\d$/.test(a)||/^\d{3,5}$/.test(a)){t.year||r("year",parseInt(a.replace(/'/,"")));continue}const s=parseInt(a);if(isNaN(s))throw console.error(`not date because ${a} isNaN`),new Error("Invalid Date");const d=k(s,[t.year?"y":null,t.month?"m":null,t.day?"d":null]);if(d.length==1){if(d[0]==="m"&&!t.month){r("month",s);continue e}if(d[0]==="d"&&!t.day){r("day",s);continue e}if(d[0]==="y"&&!t.year){r("year",s);continue e}}o>3&&(!t.month&&d.includes("m")?r("month",s):!t.day&&d.includes("d")&&r("day",s))}if(o>6)throw new Error("Invalid Date")}if(t.year&&t.month&&t.day)return t;throw new Error("Invalid Date")}function p(e){if(e=e.trim().toLowerCase(),e==="now"){const l=new Date;return{hour:l.getHours(),minute:l.getMinutes(),second:l.getSeconds()}}const n=e.match(/(\d{3,4})/);if(n){const l=n[1].length,c=n[1].slice(0,l==3?1:2),g=n[1].slice(-2);e=e.replace(n[1],c+":"+g)}const t=new RegExp(/^(\d{1,2})(?::(\d{1,2}))?\s*(?:(a|p)m?)?$/i);if(t.test(e)){const l=e.match(t);if(l===null)return null;e=l[1]+":"+(l[2]||"00")+(l[3]||"")}const r=new RegExp(/^(\d{1,2}):(\d{1,2})(?::(\d{1,2}))?\s*(?:(a|p)m?)?$/i);if(!r.test(e))return null;const o=e.match(r);if(o===null)return null;const a=parseInt(o[1]),s=parseInt(o[2]),d=o[3]?parseInt(o[3]):0,u=o[4];return isNaN(a)||isNaN(s)||isNaN(d)?null:u==="p"&&a<12?{hour:a+12,minute:s,second:d}:u==="a"&&a===12?{hour:0,minute:s,second:d}:a<0||a>23||s<0||s>59||d<0||d>59?null:{hour:a,minute:s,second:d}}function Y(e,n="h:mm A"){const t=p(e);if(t){const r=new Date;return r.setHours(t.hour),r.setMinutes(t.minute),r.setSeconds(t.second),r.setMilliseconds(0),h(r,n)}return""}function D(e){if(e instanceof Date)return e;if(e.trim().length<3)return null;let n=e.split(/[\s,]+/).filter(s=>s!==""),t="",r="";n.forEach(s=>{/^\d{1,2}:\d{2}(:\d{2})?(.*)$/.test(s)?t=s:N(s)&&(r=s)}),n=n.filter(s=>s!==t&&s!==r);const o=p(t+" "+r)||{hour:0,minute:0,second:0},a=m(n.join(" ").trim()||"today");return!a||isNaN(a.getTime())?null:new Date(a.getFullYear(),a.getMonth(),a.getDate(),o.hour,o.minute,o.second)}function h(e,n="YYYY-MM-DD"){if(e=m(e),isNaN(e.getTime()))return"";const t={y:e.getFullYear(),M:e.getMonth(),D:e.getDate(),W:e.getDay(),H:e.getHours(),m:e.getMinutes(),s:e.getSeconds(),ms:e.getMilliseconds()},r=(l,c=2)=>(l+"").padStart(c,"0"),o=()=>t.H%12||12,a=l=>l<12?"AM":"PM",s=l=>"January|February|March|April|May|June|July|August|September|October|November|December".split("|")[l];function d(l,c=0){const g="Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday".split("|");return c?g[l].slice(0,c):g[l]}const u={YY:String(t.y).slice(-2),YYYY:t.y,M:t.M+1,MM:r(t.M+1),MMMM:s(t.M),MMM:s(t.M).slice(0,3),D:String(t.D),DD:r(t.D),d:String(t.W),dd:d(t.W,2),ddd:d(t.W,3),dddd:d(t.W),H:String(t.H),HH:r(t.H),h:o(),hh:r(o()),A:a(t.H),a:a(t.H).toLowerCase(),m:String(t.m),mm:r(t.m),s:String(t.s),ss:r(t.s),SSS:r(t.ms,3)};return n.replace(/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,(l,c)=>c||u[l])}function A(e,n){const t=m(e);return isNaN(t.getTime())?"":((!n||n.length===0)&&(n="YYYY-MMM-DD"),h(t,n))}function E(e,n){const t=D(e);return t===null||isNaN(t.getTime())?"":((!n||n.length===0)&&(n="YYYY-MMM-DD h:mm A"),h(t,n))}function x(e){if(typeof e!="string"&&!(e instanceof Date))return!1;let n=m(e);return n==null?!1:!isNaN(n.getTime())}function C(e){if(typeof e!="string"&&!(e instanceof Date))return!1;let n=D(e);return n==null?!1:!isNaN(n.getTime())}function H(e,n){return!(n==="past"&&e>new Date||n==="future"&&e.getTime()<new Date().setHours(0,0,0,0))}function N(e){const n=e.toLowerCase().replace(/[.\s]/g,"");return["am","pm","a","p"].includes(n)}function P(e){let n=p(e);return n===null?!1:!isNaN(n.hour)&&!isNaN(n.minute)&&!isNaN(n.second)}function I(e){if(e.length>255||!new RegExp(/^.+@.+\.[a-zA-Z0-9]{2,}$/).test(e))return!1;let t="";return t+="^([a-zA-Z0-9!#$%'*+/=?^_`{|}~-]+",t+="(?:\\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*",t+="|",t+='"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*"',t+=")@(",t+="(",t+="(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\\.)+",t+="[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?",t+=")",t+=")$",new RegExp(t).test(e)}function z(e){return e=e.replace(/^[^2-90]+/g,""),e=e.replace(/(\d\d\d).*?(\d\d\d).*?(\d\d\d\d)(.*)/,"$1-$2-$3$4"),e}function Z(e){return/^\d\d\d-\d\d\d-\d\d\d\d$/.test(e)}function F(e){return e.replace(/[^0-9]/g,"")}function L(e){return/^\-?\d*\.?\d*$/.test(e)}function j(e){return e.replace(/[^\-0-9.]/g,"").replace(/(^-)|(-)/g,(n,t)=>t?"-":"").replace(/(\..*)\./g,"$1")}function q(e){return/^\-?\d*$/.test(e)}function W(e){return e=e.trim(),new RegExp("^(?:[a-z+]+:)?//","i").test(e)?e:"https://"+e}function J(e){return new RegExp("^(?:[-a-z+]+:)?//","i").test(e)}function U(e){return e=e.replace(/[^0-9]/g,"").replace(/(.{5})(.*)/,"$1-$2").trim(),e.length===6&&(e=e.replace(/-/,"")),e}function V(e){return new RegExp(/^\d{5}(-\d{4})?$/).test(e)}function G(e){return e=e.toUpperCase().replace(/[^A-Z0-9]/g,"").replace(/(.{3})\s*(.*)/,"$1 $2").trim(),e}function K(e){return new RegExp(/^[ABCEGHJKLMNPRSTVXY][0-9][ABCEGHJKLMNPRSTVWXYZ] ?[0-9][ABCEGHJKLMNPRSTVWXYZ][0-9]$/).test(e)}function O(e){return["transparent","currentColor"].includes(e)?!0:typeof e!="string"||!e.trim()?!1:typeof CSS=="object"&&typeof CSS.supports=="function"?CSS.supports("color",e):B(e)}function B(e){const n=new RegExp(/^rgba?\(\s*(\d{1,3}%?,\s*){2}\d{1,3}%?\s*(?:,\s*(\.\d+|0+(\.\d+)?|1(\.0+)?|0|1\.0|\d{1,2}(\.\d*)?%|100%))?\s*\)$/),t=new RegExp(/^hsla?\(\s*\d+(deg|grad|rad|turn)?,\s*\d{1,3}%,\s*\s*\d{1,3}%(?:,\s*(\.\d+|0+(\.\d+)?|1(\.0+)?|0|1\.0|\d{1,2}(\.\d*)?%|100%))?\s*\)$/),r=new RegExp(/^rgba?\(\s*(\d{1,3}%?\s+){2}\d{1,3}%?\s*(?:\s*\/\s*(\.\d+|0+(\.\d+)?|1(\.0+)?|0|1\.0|\d{1,2}(\.\d*)?%|100%))?\s*\)$/),o=new RegExp(/^hsla?\(\s*\d+(deg|grad|rad|turn)?\s+\d{1,3}%\s+\s*\d{1,3}%(?:\s*\/\s*(\.\d+|0+(\.\d+)?|1(\.0+)?|0|1\.0|\d{1,2}(\.\d*)?%|100%))?\s*\)$/),a=new RegExp(/^#([0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i);let s="aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|green|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|rebeccapurple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen";const d=new RegExp(`^(${s})$`,"i");return n.test(e)||t.test(e)||r.test(e)||o.test(e)||a.test(e)||d.test(e)}let y=null;const b=new Map;function X(e){if(e=e.trim().toLowerCase(),["transparent","currentcolor"].includes(e))return e;if(b.has(e))return b.get(e);y===null&&(y=document.createElement("canvas"),y.willReadFrequently=!0);let n=y.getContext("2d");if(!n)throw new Error("Can't get context from colorCanvas");n.fillStyle=e,n.fillRect(0,0,1,1);let t=n.getImageData(0,0,1,1).data,r="#"+("000000"+(t[0]<<16|t[1]<<8|t[2]).toString(16)).slice(-6);return b.set(e,r),r}function _(e){let n={valid:!1,error:!1,messages:[]};return typeof e=="boolean"?{valid:e,error:!1,messages:[]}:typeof e=="string"?{valid:!1,error:!1,messages:[e]}:(typeof e.valid=="boolean"&&(n.valid=e.valid),typeof e.message=="string"&&(n.messages=[e.message]),typeof e.messages=="string"&&(n.messages=[e.messages]),Array.isArray(e.messages)&&(n.messages=e.messages),e.error===!0&&(n.error=!0),n)}i.formatDateTime=h,i.isColor=O,i.isDate=x,i.isDateInRange=H,i.isDateTime=C,i.isEmail=I,i.isFormControl=f,i.isInteger=q,i.isMeridiem=N,i.isNANPTel=Z,i.isNumber=L,i.isPostalCA=K,i.isTime=P,i.isType=R,i.isUrl=J,i.isZip=V,i.momentToFPFormat=S,i.monthToNumber=M,i.normalizeValidationResult=_,i.parseColor=X,i.parseDate=m,i.parseDateTime=D,i.parseDateTimeToString=E,i.parseDateToString=A,i.parseInteger=F,i.parseNANPTel=z,i.parseNumber=j,i.parsePostalCA=G,i.parseTime=p,i.parseTimeToString=Y,i.parseUrl=W,i.parseZip=U,i.yearToFull=w,Object.defineProperty(i,Symbol.toStringTag,{value:"Module"})});
1
+ (function(i,f){typeof exports=="object"&&typeof module<"u"?f(exports):typeof define=="function"&&define.amd?define(["exports"],f):(i=typeof globalThis<"u"?globalThis:i||self,f(i.validatorUtils={}))})(this,function(i){"use strict";function f(e){return e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement}function R(e,n){typeof n=="string"&&(n=[n]);const t=e.dataset.type||"",r=e.type;return!!(n.includes(t)||n.includes(r))}function S(e){return e.replace(/YYYY/g,"Y").replace(/YY/g,"y").replace(/MMMM/g,"F").replace(/MMM/g,"{3}").replace(/MM/g,"{2}").replace(/M/g,"n").replace(/DD/g,"{5}").replace(/D/g,"j").replace(/dddd/g,"l").replace(/ddd/g,"D").replace(/dd/g,"D").replace(/d/g,"w").replace(/HH/g,"{6}").replace(/H/g,"G").replace(/hh/g,"h").replace(/mm/g,"i").replace(/m/g,"i").replace(/ss/g,"S").replace(/s/g,"s").replace(/A/gi,"K").replace(/\{3\}/g,"M").replace(/\{2\}/g,"m").replace(/\{5\}/g,"d").replace(/\{6\}/g,"H")}function M(e){const n=parseInt(e);if(typeof e=="number"||!isNaN(n))return n-1;const t=new Date(`1 ${e} 2000`).getMonth();if(!isNaN(t))return t;const r={ja:0,en:0,fe:1,fé:1,ap:3,ab:3,av:3,mai:4,juin:5,juil:6,au:7,ag:7,ao:7,se:8,o:9,n:10,d:11};for(const o in r)if(e.toLowerCase().startsWith(o))return r[o];throw new Error("Invalid month name: "+e)}function w(e){return typeof e=="string"&&(e=parseInt(e.replace(/\D/g,""))),e>99?e:e<(new Date().getFullYear()+20)%100?e+2e3:e+1900}function m(e){if(e instanceof Date)return e;e=e.trim().toLowerCase();let n=0,t=0,r=0,o=0,a=0,s=0;const d=new RegExp(/\d{1,2}\:\d\d(?:\:\d\ds?)?\s?(?:[a|p]m?)?/gi);if(d.test(e)){const c=e.match(d)[0];e=e.replace(c,"").trim();const g=p(c);if(g!==null&&({hour:o,minute:a,second:s}=g),e.length<=2){const T=new Date;return new Date(T.getFullYear(),T.getMonth(),T.getDate(),o,a,s)}}const u=/(^|\b)(mo|tu|we|th|fr|sa|su|lu|mard|mer|jeu|ve|dom)[\w]*\.?/gi;e=e.replace(u,"").trim();const l=new Date(new Date().setHours(0,0,0,0));if(/(now|today)/.test(e))return l;if(e.includes("tomorrow"))return new Date(l.setDate(l.getDate()+1));e.length===8&&(e=e.replace(/(\d\d\d\d)(\d\d)(\d\d)/,"$1-$2-$3")),e.length===6&&(e=e.replace(/(\d\d)(\d\d)(\d\d)/,w(e.slice(0,2))+"-$2-$3"));try{({year:n,month:t,day:r}=$(e))}catch{return new Date("")}return new Date(n,t-1,r,o,a,s)}function k(e,n=[null,null,null]){const t=r=>r.filter(o=>!n.includes(o));return e===0||e>31?t(["y"]):e>12?t(["d","y"]):e>=1&&e<=12?t(["m","d","y"]):[]}function $(e){const n=e.split(/[\s-/:.,]+/).filter(a=>a!=="");if(n.length<3){if(e.match(/\d{4}/)!==null)throw new Error("Invalid Date");n.unshift(String(new Date().getFullYear()))}const t={year:0,month:0,day:0};function r(a,s){a==="year"?t.year=w(s):t[a]=s}let o=0;for(;!(t.year&&t.month&&t.day);){e:for(const a of n){if(o++,/^[a-zA-Zé]+$/.test(a)){t.month||r("month",M(a)+1);continue}if(/^'\d\d$/.test(a)||/^\d{3,5}$/.test(a)){t.year||r("year",parseInt(a.replace(/'/,"")));continue}const s=parseInt(a);if(isNaN(s))throw console.error(`not date because ${a} isNaN`),new Error("Invalid Date");const d=k(s,[t.year?"y":null,t.month?"m":null,t.day?"d":null]);if(d.length==1){if(d[0]==="m"&&!t.month){r("month",s);continue e}if(d[0]==="d"&&!t.day){r("day",s);continue e}if(d[0]==="y"&&!t.year){r("year",s);continue e}}o>3&&(!t.month&&d.includes("m")?r("month",s):!t.day&&d.includes("d")&&r("day",s))}if(o>6)throw new Error("Invalid Date")}if(t.year&&t.month&&t.day)return t;throw new Error("Invalid Date")}function p(e){if(e=e.trim().toLowerCase(),e==="now"){const l=new Date;return{hour:l.getHours(),minute:l.getMinutes(),second:l.getSeconds()}}const n=e.match(/(\d{3,4})/);if(n){const l=n[1].length,c=n[1].slice(0,l==3?1:2),g=n[1].slice(-2);e=e.replace(n[1],c+":"+g)}const t=new RegExp(/^(\d{1,2})(?::(\d{1,2}))?\s*(?:(a|p)m?)?$/i);if(t.test(e)){const l=e.match(t);if(l===null)return null;e=l[1]+":"+(l[2]||"00")+(l[3]||"")}const r=new RegExp(/^(\d{1,2}):(\d{1,2})(?::(\d{1,2}))?\s*(?:(a|p)m?)?$/i);if(!r.test(e))return null;const o=e.match(r);if(o===null)return null;const a=parseInt(o[1]),s=parseInt(o[2]),d=o[3]?parseInt(o[3]):0,u=o[4];return isNaN(a)||isNaN(s)||isNaN(d)?null:u==="p"&&a<12?{hour:a+12,minute:s,second:d}:u==="a"&&a===12?{hour:0,minute:s,second:d}:a<0||a>23||s<0||s>59||d<0||d>59?null:{hour:a,minute:s,second:d}}function Y(e,n="h:mm A"){const t=p(e);if(t){const r=new Date;return r.setHours(t.hour),r.setMinutes(t.minute),r.setSeconds(t.second),r.setMilliseconds(0),h(r,n)}return""}function D(e){if(e instanceof Date)return e;if(e.trim().length<3)return null;let n=e.split(/[\s,]+/).filter(s=>s!==""),t="",r="";n.forEach(s=>{/^\d{1,2}:\d{1,2}(:\d{2})?(.*)$/.test(s)?t=s:N(s)&&(r=s)}),n=n.filter(s=>s!==t&&s!==r);const o=p(t+" "+r)||{hour:0,minute:0,second:0},a=m(n.join(" ").trim()||"today");return!a||isNaN(a.getTime())?null:new Date(a.getFullYear(),a.getMonth(),a.getDate(),o.hour,o.minute,o.second)}function h(e,n="YYYY-MM-DD"){if(e=m(e),isNaN(e.getTime()))return"";const t={y:e.getFullYear(),M:e.getMonth(),D:e.getDate(),W:e.getDay(),H:e.getHours(),m:e.getMinutes(),s:e.getSeconds(),ms:e.getMilliseconds()},r=(l,c=2)=>(l+"").padStart(c,"0"),o=()=>t.H%12||12,a=l=>l<12?"AM":"PM",s=l=>"January|February|March|April|May|June|July|August|September|October|November|December".split("|")[l];function d(l,c=0){const g="Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday".split("|");return c?g[l].slice(0,c):g[l]}const u={YY:String(t.y).slice(-2),YYYY:t.y,M:t.M+1,MM:r(t.M+1),MMMM:s(t.M),MMM:s(t.M).slice(0,3),D:String(t.D),DD:r(t.D),d:String(t.W),dd:d(t.W,2),ddd:d(t.W,3),dddd:d(t.W),H:String(t.H),HH:r(t.H),h:o(),hh:r(o()),A:a(t.H),a:a(t.H).toLowerCase(),m:String(t.m),mm:r(t.m),s:String(t.s),ss:r(t.s),SSS:r(t.ms,3)};return n.replace(/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,(l,c)=>c||u[l])}function A(e,n){const t=m(e);return isNaN(t.getTime())?"":((!n||n.length===0)&&(n="YYYY-MMM-DD"),h(t,n))}function E(e,n){const t=D(e);return t===null||isNaN(t.getTime())?"":((!n||n.length===0)&&(n="YYYY-MMM-DD h:mm A"),h(t,n))}function x(e){if(typeof e!="string"&&!(e instanceof Date))return!1;let n=m(e);return n==null?!1:!isNaN(n.getTime())}function C(e){if(typeof e!="string"&&!(e instanceof Date))return!1;let n=D(e);return n==null?!1:!isNaN(n.getTime())}function H(e,n){return!(n==="past"&&e>new Date||n==="future"&&e.getTime()<new Date().setHours(0,0,0,0))}function N(e){const n=e.toLowerCase().replace(/[.\s]/g,"");return["am","pm","a","p"].includes(n)}function P(e){let n=p(e);return n===null?!1:!isNaN(n.hour)&&!isNaN(n.minute)&&!isNaN(n.second)}function I(e){if(e.length>255||!new RegExp(/^.+@.+\.[a-zA-Z0-9]{2,}$/).test(e))return!1;let t="";return t+="^([a-zA-Z0-9!#$%'*+/=?^_`{|}~-]+",t+="(?:\\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*",t+="|",t+='"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*"',t+=")@(",t+="(",t+="(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\\.)+",t+="[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?",t+=")",t+=")$",new RegExp(t).test(e)}function z(e){return e=e.replace(/^[^2-90]+/g,""),e=e.replace(/(\d\d\d).*?(\d\d\d).*?(\d\d\d\d)(.*)/,"$1-$2-$3$4"),e}function Z(e){return/^\d\d\d-\d\d\d-\d\d\d\d$/.test(e)}function F(e){return e.replace(/[^0-9]/g,"")}function L(e){return/^\-?\d*\.?\d*$/.test(e)}function j(e){return e.replace(/[^\-0-9.]/g,"").replace(/(^-)|(-)/g,(n,t)=>t?"-":"").replace(/(\..*)\./g,"$1")}function q(e){return/^\-?\d*$/.test(e)}function W(e){return e=e.trim(),new RegExp("^(?:[a-z+]+:)?//","i").test(e)?e:"https://"+e}function J(e){return new RegExp("^(?:[-a-z+]+:)?//","i").test(e)}function U(e){return e=e.replace(/[^0-9]/g,"").replace(/(.{5})(.*)/,"$1-$2").trim(),e.length===6&&(e=e.replace(/-/,"")),e}function V(e){return new RegExp(/^\d{5}(-\d{4})?$/).test(e)}function G(e){return e=e.toUpperCase().replace(/[^A-Z0-9]/g,"").replace(/(.{3})\s*(.*)/,"$1 $2").trim(),e}function K(e){return new RegExp(/^[ABCEGHJKLMNPRSTVXY][0-9][ABCEGHJKLMNPRSTVWXYZ] ?[0-9][ABCEGHJKLMNPRSTVWXYZ][0-9]$/).test(e)}function O(e){return["transparent","currentColor"].includes(e)?!0:typeof e!="string"||!e.trim()?!1:typeof CSS=="object"&&typeof CSS.supports=="function"?CSS.supports("color",e):B(e)}function B(e){const n=new RegExp(/^rgba?\(\s*(\d{1,3}%?,\s*){2}\d{1,3}%?\s*(?:,\s*(\.\d+|0+(\.\d+)?|1(\.0+)?|0|1\.0|\d{1,2}(\.\d*)?%|100%))?\s*\)$/),t=new RegExp(/^hsla?\(\s*\d+(deg|grad|rad|turn)?,\s*\d{1,3}%,\s*\s*\d{1,3}%(?:,\s*(\.\d+|0+(\.\d+)?|1(\.0+)?|0|1\.0|\d{1,2}(\.\d*)?%|100%))?\s*\)$/),r=new RegExp(/^rgba?\(\s*(\d{1,3}%?\s+){2}\d{1,3}%?\s*(?:\s*\/\s*(\.\d+|0+(\.\d+)?|1(\.0+)?|0|1\.0|\d{1,2}(\.\d*)?%|100%))?\s*\)$/),o=new RegExp(/^hsla?\(\s*\d+(deg|grad|rad|turn)?\s+\d{1,3}%\s+\s*\d{1,3}%(?:\s*\/\s*(\.\d+|0+(\.\d+)?|1(\.0+)?|0|1\.0|\d{1,2}(\.\d*)?%|100%))?\s*\)$/),a=new RegExp(/^#([0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i);let s="aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|green|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|rebeccapurple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen";const d=new RegExp(`^(${s})$`,"i");return n.test(e)||t.test(e)||r.test(e)||o.test(e)||a.test(e)||d.test(e)}let y=null;const b=new Map;function X(e){if(e=e.trim().toLowerCase(),["transparent","currentcolor"].includes(e))return e;if(b.has(e))return b.get(e);y===null&&(y=document.createElement("canvas"),y.willReadFrequently=!0);let n=y.getContext("2d");if(!n)throw new Error("Can't get context from colorCanvas");n.fillStyle=e,n.fillRect(0,0,1,1);let t=n.getImageData(0,0,1,1).data,r="#"+("000000"+(t[0]<<16|t[1]<<8|t[2]).toString(16)).slice(-6);return b.set(e,r),r}function _(e){let n={valid:!1,error:!1,messages:[]};return typeof e=="boolean"?{valid:e,error:!1,messages:[]}:typeof e=="string"?{valid:!1,error:!1,messages:[e]}:(typeof e.valid=="boolean"&&(n.valid=e.valid),typeof e.message=="string"&&(n.messages=[e.message]),typeof e.messages=="string"&&(n.messages=[e.messages]),Array.isArray(e.messages)&&(n.messages=e.messages),e.error===!0&&(n.error=!0),n)}i.formatDateTime=h,i.isColor=O,i.isDate=x,i.isDateInRange=H,i.isDateTime=C,i.isEmail=I,i.isFormControl=f,i.isInteger=q,i.isMeridiem=N,i.isNANPTel=Z,i.isNumber=L,i.isPostalCA=K,i.isTime=P,i.isType=R,i.isUrl=J,i.isZip=V,i.momentToFPFormat=S,i.monthToNumber=M,i.normalizeValidationResult=_,i.parseColor=X,i.parseDate=m,i.parseDateTime=D,i.parseDateTimeToString=E,i.parseDateToString=A,i.parseInteger=F,i.parseNANPTel=z,i.parseNumber=j,i.parsePostalCA=G,i.parseTime=p,i.parseTimeToString=Y,i.parseUrl=W,i.parseZip=U,i.yearToFull=w,Object.defineProperty(i,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jdlien/validator-utils",
3
- "version": "1.2.3",
3
+ "version": "1.2.5",
4
4
  "type": "module",
5
5
  "module": "dist/validator-utils.js",
6
6
  "main": "dist/validator-utils.js",