@arc-js/jon 0.0.1 → 0.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/jon.all.js CHANGED
@@ -6255,4 +6255,4 @@ var index_all = {
6255
6255
  ...JONSchemas,
6256
6256
  };
6257
6257
 
6258
- export { AnyTypeSchema, ArraySchema, BooleanSchema, ChosenTypeSchema, DateSchema, EnumSchema, NotEnumSchema, NumberSchema, ObjectSchema, StringSchema, index_all as default };
6258
+
package/jon.all.min.js CHANGED
@@ -1,2 +1,2 @@
1
- let NODEENV="development",langs=["en","fr"],dateTimeFormatInitial="%Y-%m-%dT%H:%M:%S.%fZ",dateFormat5="%Y/%m/%d",timeFormat3="%H:%M:%S.%f",tabAlphabetique=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"];function getLang(e){return langs.includes(e)?e:"fr"}[...tabAlphabetique,...tabAlphabetique.map(e=>e.toUpperCase())];class Timez{_date;static FORMAT_TOKENS={"%Y":e=>e.year()?.toString().padStart(4,"0"),"%y":e=>e.year()?.toString().slice(-2).padStart(2,"0"),"%m":e=>e.month()?.toString().padStart(2,"0"),"%d":e=>e.date()?.toString().padStart(2,"0"),"%H":e=>e.hour()?.toString().padStart(2,"0"),"%M":e=>e.minute()?.toString().padStart(2,"0"),"%S":e=>e.second()?.toString().padStart(2,"0"),"%f":e=>e.millisecond()?.toString().padStart(3,"0"),"%z":e=>{e=e.utcOffset();if(e)return(0<=e?"+":"-")+Math.floor(Math.abs(e)/60).toString().padStart(2,"0")+(Math.abs(e)%60).toString().padStart(2,"0")},"%s":e=>{e=e.valueOf();return e?Math.floor(e/1e3).toString():void 0}};static PREDEFINED_FORMATS={ISO:"%Y-%m-%dT%H:%M:%S.%fZ",ISO_DATE:"%Y-%m-%d",ISO_TIME:"%H:%M:%S.%fZ",COMPACT:"%Y%m%d%H%M%S",SLASH_DATETIME:"%Y/%m/%d %H:%M:%S.%fZ",SLASH_DATETIME_SEC:"%Y/%m/%d %H:%M:%S",SLASH_DATETIME_MIN:"%Y/%m/%d %H:%M",EUROPEAN:"%d/%m/%Y %H:%M:%S GMT%z",SLASH_DATE:"%Y/%m/%d",TIME_MICRO:"%H:%M:%S.%fZ",TIME_SEC:"%H:%M:%S",CUSTOM_GREETING:"[Bonjour celestin, ][la date actuelle est:: le] %d/%m/%Y [à] %H:%M:%S.%f[Z]"};constructor(e,t=!1){!1===this.dateChecker(e)?this._date=void 0:e instanceof Timez&&e&&e?._date?this._date=new Date(e?._date):e instanceof Date?this._date=new Date(e):"string"==typeof e?this._date=Timez.parseString(e,t):"number"==typeof e?this._date=new Date(e):null==e||"number"==typeof e&&isNaN(e)?this._date=new Date:this._date=void 0}static now(){return new Timez}static parse(e,t){return"string"==typeof t&&0<t.length&&(e instanceof Timez&&e&&e?._date||e instanceof Date||"string"==typeof e||"number"==typeof e||null==e||"number"==typeof e&&isNaN(e))&&Timez.parseWithFormat(e,t)||new Timez(e)}static unix(e){return new Timez(1e3*e)}static utc(){var e=new Date;return new Timez(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds()))}year(){return this._date?.getFullYear()}month(){return this._date?this._date.getMonth()+1:void 0}date(){return this._date?.getDate()}hour(){return this._date?.getHours()}minute(){return this._date?.getMinutes()}second(){return this._date?.getSeconds()}millisecond(){return this._date?.getMilliseconds()}day(){return this._date?.getDay()}add(e,t){if(!this._date)return new Timez(void 0);var r=new Date(this._date);switch(t){case"years":r.setFullYear(r.getFullYear()+e);break;case"months":r.setMonth(r.getMonth()+e);break;case"days":r.setDate(r.getDate()+e);break;case"hours":r.setHours(r.getHours()+e);break;case"minutes":r.setMinutes(r.getMinutes()+e);break;case"seconds":r.setSeconds(r.getSeconds()+e);break;case"milliseconds":r.setMilliseconds(r.getMilliseconds()+e)}return new Timez(r)}subtract(e,t){return this.add(-e,t)}startOf(e){if(!this._date)return new Timez(void 0);var t=new Date(this._date);switch(e){case"year":t.setMonth(0,1),t.setHours(0,0,0,0);break;case"month":t.setDate(1),t.setHours(0,0,0,0);break;case"day":t.setHours(0,0,0,0);break;case"hour":t.setMinutes(0,0,0);break;case"minute":t.setSeconds(0,0);break;case"second":t.setMilliseconds(0)}return new Timez(t)}endOf(e){var t=this.startOf(e);switch(e){case"year":return t.add(1,"years").subtract(1,"milliseconds");case"month":return t.add(1,"months").subtract(1,"milliseconds");case"day":return t.add(1,"days").subtract(1,"milliseconds");case"hour":return t.add(1,"hours").subtract(1,"milliseconds");case"minute":return t.add(1,"minutes").subtract(1,"milliseconds");case"second":return t.add(1,"seconds").subtract(1,"milliseconds");default:return t}}isBefore(e,t="()"){t="]"===t[1],e=e instanceof Timez?e:new Timez(e);return!(!this._date||!e._date)&&(!t&&this._date<e._date||!!t&&this._date<=e._date)}isAfter(e,t="()"){t="["===t[0],e=e instanceof Timez?e:new Timez(e);return!(!this._date||!e._date)&&(!t&&this._date>e._date||!!t&&this._date>=e._date)}isSame(e,t){var r,e=e instanceof Timez?e:new Timez(e);return!t&&this._date&&e._date?this._date.getTime()===e._date.getTime():(r=t?this.startOf(t):void 0,e=t?e.startOf(t):void 0,!!(r&&r?._date&&e&&e?._date)&&r._date.getTime()===e._date.getTime())}isBetween(e,t,r="()"){var e=e instanceof Timez?e:new Timez(e),t=t instanceof Timez?t:new Timez(t),i="["===r[0],r="]"===r[1],i=i&&this.isSame(e)||this.isAfter(e),e=r&&this.isSame(t)||this.isBefore(t);return i&&e}format(e){if(!e)return this.toISOString();var t,r,i=Timez.PREDEFINED_FORMATS[e];if(i)return this.format(i);let a="",_=0;for(;_<e.length;)"["===e[_]?-1===(r=e.indexOf("]",_))?(a+=e[_],_++):(t=e.substring(_+1,r),a+=t,_=r+1):"%"===e[_]&&_+1<e.length?(t="%"+e[_+1],r=Timez.FORMAT_TOKENS[t],a+=r?r(this):t,_+=2):(a+=e[_],_++);return a}setTimezone(e){var t;return this._date?(t=this._date.getTimezoneOffset(),e=this.parseTimezoneOffset(e),e=new Date(this._date.getTime()+6e4*(e-t)),new Timez(e)):new Timez(void 0)}utc(){return this._date?new Timez(new Date(Date.UTC(this._date.getUTCFullYear(),this._date.getUTCMonth(),this._date.getUTCDate(),this._date.getUTCHours(),this._date.getUTCMinutes(),this._date.getUTCSeconds(),this._date.getUTCMilliseconds()))):new Timez(void 0)}local(){return this._date?new Timez(new Date(this._date.getFullYear(),this._date.getMonth(),this._date.getDate(),this._date.getHours(),this._date.getMinutes(),this._date.getSeconds(),this._date.getMilliseconds())):new Timez(void 0)}toString(){return this._date?.toString()}toISOString(){return this._date?.toISOString()}toDate(){return this._date?new Date(this._date):void 0}valueOf(){return this._date?.getTime()}unix(){return this._date?Math.floor(this._date.getTime()/1e3):void 0}utcOffset(){return this._date?-this._date.getTimezoneOffset():void 0}isCorrect(){return!!this._date&&!isNaN(this._date.getTime())}timezone(){if(this._date)try{return(new Intl.DateTimeFormat).resolvedOptions().timeZone||void 0}catch(e){return this.timezoneFromOffset()}}timezoneAbbr(){if(this._date)try{return new Intl.DateTimeFormat("en",{timeZoneName:"short"}).formatToParts(this._date).find(e=>"timeZoneName"===e.type)?.value||void 0}catch(e){return this.timezoneAbbrFromOffset()}}timezoneName(){if(this._date)try{return new Intl.DateTimeFormat("en",{timeZoneName:"long"}).formatToParts(this._date).find(e=>"timeZoneName"===e.type)?.value||void 0}catch(e){return this.timezoneNameFromOffset()}}timezoneOffsetString(){var e=this.utcOffset();if(void 0!==e)return(0<=e?"+":"-")+Math.floor(Math.abs(e)/60).toString().padStart(2,"0")+":"+(Math.abs(e)%60).toString().padStart(2,"0")}dateChecker(e){return e instanceof Timez&&!!e&&!!e?._date||e instanceof Date||"string"==typeof e||"number"==typeof e||null==e||"number"==typeof e&&isNaN(e)}timezoneFromOffset(){var e=this.utcOffset();if(void 0!==e)return{0:"Etc/UTC",60:"Europe/Paris",120:"Europe/Athens",180:"Europe/Moscow",240:"Asia/Dubai",270:"Asia/Tehran",300:"Asia/Karachi",330:"Asia/Kolkata",345:"Asia/Rangoon",360:"Asia/Dhaka",390:"Asia/Yangon",420:"Asia/Bangkok",480:"Asia/Shanghai",525:"Asia/Kathmandu",540:"Asia/Tokyo",570:"Australia/Adelaide",600:"Australia/Sydney",630:"Australia/Lord_Howe",660:"Pacific/Noumea",675:"Australia/Eucla",720:"Pacific/Auckland",780:"Pacific/Chatham","-60":"Atlantic/Azores","-120":"America/Noronha","-180":"America/Argentina/Buenos_Aires","-210":"America/St_Johns","-240":"America/Halifax","-270":"America/Caracas","-300":"America/New_York","-360":"America/Chicago","-420":"America/Denver","-480":"America/Los_Angeles","-540":"America/Anchorage","-600":"Pacific/Honolulu","-660":"Pacific/Pago_Pago","-720":"Pacific/Kiritimati"}[e]||"Etc/GMT"+(0<=e?"-":"+")+Math.abs(e)/60}timezoneAbbrFromOffset(){var e=this.utcOffset();if(void 0!==e)return{0:"GMT",60:"CET","-300":"EST","-360":"CST","-420":"MST","-480":"PST"}[e]||"GMT"+(0<=e?"+":"")+e/60}timezoneNameFromOffset(){var e=this.utcOffset();if(void 0!==e)return{0:"Greenwich Mean Time",60:"Central European Time","-300":"Eastern Standard Time","-360":"Central Standard Time","-420":"Mountain Standard Time","-480":"Pacific Standard Time"}[e]||"GMT"+(0<=e?"+":"")+e/60}isDST(){if(this._date)try{var e=new Date(this._date.getFullYear(),0,1),t=new Date(this._date.getFullYear(),6,1),r=Math.max(e.getTimezoneOffset(),t.getTimezoneOffset());return this._date.getTimezoneOffset()<r}catch(e){}}static parseString(e,t=!1){var r=new Date(e);if(!isNaN(r.getTime()))return r;var i,a=[/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})\.(\d{3})Z$/,/^(\d{4})-(\d{2})-(\d{2})$/,/^(\d{4})\/(\d{2})\/(\d{2}) (\d{2}):(\d{2}):(\d{2})$/,/^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})$/];for(i of a){var _=e.match(i);if(_){_=_.slice(1).map(Number);if(i===a[0])return new Date(Date.UTC(_[0],_[1]-1,_[2],_[3],_[4],_[5],_[6]));if(i===a[1])return new Date(_[0],_[1]-1,_[2]);if(i===a[2])return new Date(_[0],_[1]-1,_[2],_[3],_[4],_[5]);if(i===a[3])return new Date(_[0],_[1]-1,_[2],_[3],_[4],_[5])}}r=new Date(e);if(!isNaN(r.getTime()))return r;if(t)throw new Error("Unable to parse date string: "+e)}static parseWithFormat(e,a){if(e&&a){var _=String(e).trim();if(_){var o={Y:{regex:/\d{4}/,extract:e=>parseInt(e,10)},y:{regex:/\d{2}/,extract:e=>{e=parseInt(e,10);return 70<=e?1900+e:2e3+e}},m:{regex:/\d{1,2}/,extract:e=>parseInt(e,10)},d:{regex:/\d{1,2}/,extract:e=>parseInt(e,10)},H:{regex:/\d{1,2}/,extract:e=>parseInt(e,10)},M:{regex:/\d{1,2}/,extract:e=>parseInt(e,10)},S:{regex:/\d{1,2}/,extract:e=>parseInt(e,10)},f:{regex:/\d{1,3}/,extract:e=>parseInt(e,10)}},n={year:(new Date).getFullYear(),month:1,day:1,hour:0,minute:0,second:0,millisecond:0};let e=0,t=0,r=!1,i="";for(;t<a.length&&e<_.length;){var s=a[t];if("["===s)r=!0,i="",t++;else if("]"===s&&r){if(_.substring(e,e+i.length)!==i)return;e+=i.length,r=!1,i="",t++}else if(r)i+=s,t++;else if("%"===s&&t+1<a.length){var l=a[t+1],d=o[l];if(d){var h=_.substring(e).match(d.regex);if(!h||0!==h.index)return;var h=h[0],u=d.extract(h);switch(l){case"Y":case"y":n.year=u;break;case"m":n.month=u;break;case"d":n.day=u;break;case"H":n.hour=u;break;case"M":n.minute=u;break;case"S":n.second=u;break;case"f":n.millisecond=u}e+=h.length}else e++;t+=2}else{if(s!==_[e])return;e++,t++}}if(!(n.month<1||12<n.month||n.day<1||31<n.day||n.hour<0||23<n.hour||n.minute<0||59<n.minute||n.second<0||59<n.second||n.millisecond<0||999<n.millisecond))try{var E=new Date(n.year,n.month-1,n.day,n.hour,n.minute,n.second,n.millisecond);if(!isNaN(E.getTime()))return new Timez(E)}catch(e){}}}}static getTokenLength(e){return{Y:4,y:2,m:2,d:2,H:2,M:2,S:2,f:3,z:5}[e]||1}parseTimezoneOffset(e){var t={UTC:0,EST:-300,EDT:-240,CST:-360,CDT:-300,PST:-480,PDT:-420};return void 0!==t[e.toUpperCase()]?t[e.toUpperCase()]:(t=e.match(/^([+-])(\d{1,2}):?(\d{2})?$/))?("+"===t[1]?1:-1)*(60*parseInt(t[2],10)+(t[3]?parseInt(t[3],10):0)):this._date?-this._date.getTimezoneOffset():0}static get FORMATS(){return{...Timez.PREDEFINED_FORMATS}}static exposeToGlobal(){"undefined"!=typeof window&&(window.Timez=Timez)}}function InitialMapFunct(e){return e}function cleanField(e,t=15,r=!1){r="boolean"==typeof r&&r,t="number"==typeof t&&0<t?t:15;e=String(e);return e.length>t?r?"..."+e.slice(-t):e.slice(0,t)+"...":e}function defaultMapError(e,t,r=0,i,a){return e}function isDatetimeFormat(e,t){let r=!1;try{r=Timez.parse(e,t).isCorrect()}catch(e){r=!1}return r}"undefined"!=typeof window&&(window.Timez=Timez);let defaultDateFormats={datetime:dateTimeFormatInitial,date:dateFormat5,time:timeFormat3};function isNotNull(e){return!(null==e||"number"==typeof e&&isNaN(e))}function isDate(e,t=void 0,r=dateTimeFormatInitial){r="string"==typeof r&&0<r.length?r:void 0;var i=Object.keys(defaultDateFormats),i=((t=[...i,"undefined","string"].includes(t||"")?t:void 0)&&i.includes(t||"")&&(r=defaultDateFormats[t]),Timez.parse(e,r).isCorrect(),"string"==typeof r&&0<r.length&&Timez.parse(e,r).isCorrect()||"string"===t&&"string"==typeof e&&0<e.length&&void 0!==r&&Timez.parse(e,r).isCorrect());return i}function isString(e,t=void 0,r=void 0){r="string"==typeof r&&0<r.length?r:void 0;var i=Object.keys(defaultDateFormats);return(t=[...i,"undefined","other"].includes(t||"")?t:void 0)&&i.includes(t||"")&&(r=defaultDateFormats[t]),!("boolean"==typeof e)&&!e||"string"==typeof r&&0<r.length&&Timez.parse(e,r).isCorrect()||("other"===t||void 0===t)&&typeof e in["string","number","boolean"]||"undefined"===t&&void 0===e}function isNumber(e){let t=!0;try{var r;void 0!==e&&(r=Number(e),t=!isNaN(r)&&isFinite(r))}catch{t=!1}return t}function isBoolean(e,t=[],r=!1){return"boolean"==typeof e||t.includes(e)||"string"==typeof e&&t.includes(e.toLowerCase())||!e&&!r}function convertToBoolean(e){let t=e;return"boolean"==typeof e?t=e:void 0!==e&&["true","t","1","false","f","0"].includes(String(e).toLowerCase())&&(t=["true","t","1"].includes(String(e).toLowerCase())),t}class JONDefaultSchema{_label=void 0;_lang="fr";_default=void 0;_rules=[];_value=void 0;_default_error=void 0;map=void 0;preMap=void 0;_mapError={map:defaultMapError};_errMsgs=void 0;_PRIMARY__REQUIRED__RULE=void 0;_PRIMARY__ENUM__RULE=void 0;_PRIMARY__ENUM_NOT__RULE=void 0;_PRIMARY__CUSTOM01__RULE=void 0;_PRIMARY__CUSTOM02__RULE=void 0;_PRIMARY__CUSTOM03__RULE=void 0;_PRIMARY__CUSTOM04__RULE=void 0;_PRIMARY__CUSTOM05__RULE=void 0;_PRIMARY__CUSTOM06__RULE=void 0;_PRIMARY__CUSTOM07__RULE=void 0;_PRIMARY__CUSTOM08__RULE=void 0;_PRIMARY__CUSTOM09__RULE=void 0;_PRIMARY__CUSTOM10__RULE=void 0;_PRIMARY__CUSTOM11__RULE=void 0;_PRIMARY__CUSTOM12__RULE=void 0;_PRIMARY__CUSTOM13__RULE=void 0;_PRIMARY__CUSTOM14__RULE=void 0;_PRIMARY__CUSTOM15__RULE=void 0;_PRIMARY__CUSTOM16__RULE=void 0;_PRIMARY__CUSTOM17__RULE=void 0;_PRIMARY__CUSTOM18__RULE=void 0;_PRIMARY__CUSTOM19__RULE=void 0;_PRIMARY__CUSTOM20__RULE=void 0;_PRIMARY__CUSTOM21__RULE=void 0;_PRIMARY__CUSTOM22__RULE=void 0;_PRIMARY__CUSTOM23__RULE=void 0;_PRIMARY__CUSTOM24__RULE=void 0;_PRIMARY__CUSTOM25__RULE=void 0;_PRIMARY__CUSTOM26__RULE=void 0;_PRIMARY__CUSTOM27__RULE=void 0;_PRIMARY__CUSTOM28__RULE=void 0;_PRIMARY__CUSTOM29__RULE=void 0;_PRIMARY__CUSTOM30__RULE=void 0;_PRIMARY__CUSTOM31__RULE=void 0;_PRIMARY__CUSTOM32__RULE=void 0;_PRIMARY__CUSTOM33__RULE=void 0;_PRIMARY__CUSTOM34__RULE=void 0;_PRIMARY__CUSTOM35__RULE=void 0;_PRIMARY__CUSTOM36__RULE=void 0;_PRIMARY__CUSTOM37__RULE=void 0;_PRIMARY__CUSTOM38__RULE=void 0;_PRIMARY__CUSTOM39__RULE=void 0;_PRIMARY__CUSTOM40__RULE=void 0;_PRIMARY__CUSTOM41__RULE=void 0;_PRIMARY__CUSTOM42__RULE=void 0;_PRIMARY__CUSTOM43__RULE=void 0;_PRIMARY__CUSTOM44__RULE=void 0;_PRIMARY__CUSTOM45__RULE=void 0;_PRIMARY__CUSTOM46__RULE=void 0;_PRIMARY__CUSTOM47__RULE=void 0;_PRIMARY__CUSTOM48__RULE=void 0;_PRIMARY__CUSTOM49__RULE=void 0;_PRIMARY__CUSTOM50__RULE=void 0;_errorRule=void 0;constructor(e="fr"){this._lang=getLang(e)}applyApp(a=e=>!!e,_=e=>e,o=void 0){let t=e=>{let t=e=>a(e);var e=void 0!==e?e:this._default,r=t(e),i=r?t(i=e)?_(i):i:void 0,e=(this._value=i,r?void 0:(e=>{if(t(e))return new Error("Unknown error");{let t=void 0;try{t=o&&o(this.get_label())}catch(e){t=o}return t instanceof Error?t:"string"==typeof t&&0<t.length?new Error(t):"object"==typeof t&&void 0!==t&&this.get_lang()in t?new Error(t[this.get_lang()]):new Error({fr:"Erreur inconnue",en:"Unknown error"}[this.get_lang()])}})(e));return{valid:r,data:i,error:e}};this.addRule(t);return(()=>{var e;for(e of["_PRIMARY__CUSTOM01__RULE","_PRIMARY__CUSTOM02__RULE","_PRIMARY__CUSTOM03__RULE","_PRIMARY__CUSTOM04__RULE","_PRIMARY__CUSTOM05__RULE","_PRIMARY__CUSTOM06__RULE","_PRIMARY__CUSTOM07__RULE","_PRIMARY__CUSTOM08__RULE","_PRIMARY__CUSTOM09__RULE","_PRIMARY__CUSTOM10__RULE","_PRIMARY__CUSTOM11__RULE","_PRIMARY__CUSTOM12__RULE","_PRIMARY__CUSTOM13__RULE","_PRIMARY__CUSTOM14__RULE","_PRIMARY__CUSTOM15__RULE","_PRIMARY__CUSTOM16__RULE","_PRIMARY__CUSTOM17__RULE","_PRIMARY__CUSTOM18__RULE","_PRIMARY__CUSTOM19__RULE","_PRIMARY__CUSTOM20__RULE","_PRIMARY__CUSTOM21__RULE","_PRIMARY__CUSTOM22__RULE","_PRIMARY__CUSTOM23__RULE","_PRIMARY__CUSTOM24__RULE","_PRIMARY__CUSTOM25__RULE","_PRIMARY__CUSTOM26__RULE","_PRIMARY__CUSTOM27__RULE","_PRIMARY__CUSTOM28__RULE","_PRIMARY__CUSTOM29__RULE","_PRIMARY__CUSTOM30__RULE","_PRIMARY__CUSTOM31__RULE","_PRIMARY__CUSTOM32__RULE","_PRIMARY__CUSTOM33__RULE","_PRIMARY__CUSTOM34__RULE","_PRIMARY__CUSTOM35__RULE","_PRIMARY__CUSTOM36__RULE","_PRIMARY__CUSTOM37__RULE","_PRIMARY__CUSTOM38__RULE","_PRIMARY__CUSTOM39__RULE","_PRIMARY__CUSTOM40__RULE","_PRIMARY__CUSTOM41__RULE","_PRIMARY__CUSTOM42__RULE","_PRIMARY__CUSTOM43__RULE","_PRIMARY__CUSTOM44__RULE","_PRIMARY__CUSTOM45__RULE","_PRIMARY__CUSTOM46__RULE","_PRIMARY__CUSTOM47__RULE","_PRIMARY__CUSTOM48__RULE","_PRIMARY__CUSTOM49__RULE","_PRIMARY__CUSTOM50__RULE"])if(void 0===this[e]){this[e]=t;break}})(),this}required(e=!0){e="boolean"!=typeof e||e;var t=e=>{let t=e=>void 0!==e;var e=void 0!==e?e:this._default,r=t(e),i=r?(t(i=e),i):void 0,e=(this._value=i,r?void 0:t(e=e)?new Error("Unknown error"):(e=JSON.stringify(""+this.get_label()),new Error({fr:e+" est requis",en:e+" is required"}[this.get_lang()])));return{valid:r,data:i,error:e}};return this.addRule(t),this._PRIMARY__REQUIRED__RULE=e?t:void 0,this}enum(...a){a=Array.isArray(a)?a:[];var e=e=>{let t=e=>!e||void 0===e||a.includes(e);var e=void 0!==e?e:this._default,r=t(e),i=r?(t(i=e),i):void 0,e=(this._value=i,r?void 0:t(e=e)?new Error("Unknown error"):(e=JSON.stringify(""+this.get_label()),new Error({fr:e+" correspond à aucun choix défini",en:e+" correspond to any defined choice"}[this.get_lang()])));return{valid:r,data:i,error:e}};return this.addRule(e),this._PRIMARY__ENUM__RULE=e,this}enumNot(...a){a=Array.isArray(a)?a:[];var e=e=>{let t=e=>!e||void 0===e||!a.includes(e);var e=void 0!==e?e:this._default,r=t(e),i=r?(t(i=e),i):void 0,e=(this._value=i,r?void 0:t(e=e)?new Error("Unknown error"):(e=JSON.stringify(""+this.get_label()),new Error({fr:e+" ne correspond à aucun choix défini",en:e+" does not correspond to any defined choice"}[this.get_lang()])));return{valid:r,data:i,error:e}};return this.addRule(e),this._PRIMARY__ENUM_NOT__RULE=e,this}get_default(){return this._default}set_default(e){this._default=e}get_lang(){return this._lang}set_lang(e){this._lang=getLang(e)}get_label(){return cleanField("string"==typeof this._label&&0<this._label.length?this._label:{fr:"l'element",en:"the element"}[this._lang],30,!0)}set_label(e){this._label="string"==typeof e&&0<e.length?e:void 0}get_error(){return this._default_error}set_error(e){e instanceof Error?this._default_error=e:"string"==typeof e&&0<e.length?this._default_error=new Error(e):"object"==typeof e&&void 0!==e&&this.get_lang()in e&&(this._default_error=new Error(e[this.get_lang()]))}defaultError(e){return this.set_error(e),this}lang(e){return this.set_lang(e),this}label(e){return this.set_label(e),this}default(e){return this.set_default(e),this}getLang(){return this._lang}setLang(e){this._lang=getLang(e)}addRule(e){this._rules.push(e)}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a=this.primaryValidation(e?.data??t);return(e=a?a:e)&&!e.valid?(r=e.error,e.error=void 0!==this._default_error?this._default_error:e.error,this._mapError.map(e,r,this._errorRule,this.get_label(),this.getLang())):e?(e&&e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(i={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this._mapError.map(i,void 0,"NO_RULE__RULE",this.get_label(),this.getLang()))}catch(e){t={data:void 0,valid:!1,error:String(e)};return this._mapError.map(t,void 0,"UNKNOWN__RULE",this.get_label(),this.getLang())}}isValid(e){return this.validate(e),this.validate(e).valid}error(e){return this.validate(e)?.error}sanitize(e){return this.validate(e)?.data}primaryValidation(t){try{let e=void 0;var r,i;for({rule:r,name:i}of[{rule:this._PRIMARY__REQUIRED__RULE,name:"REQUIRED__RULE"},{rule:this._PRIMARY__ENUM__RULE,name:"ENUM__RULE"},{rule:this._PRIMARY__ENUM_NOT__RULE,name:"ENUM_NOT__RULE"},{rule:this._PRIMARY__CUSTOM01__RULE,name:"CUSTOM01__RULE"},{rule:this._PRIMARY__CUSTOM02__RULE,name:"CUSTOM02__RULE"},{rule:this._PRIMARY__CUSTOM03__RULE,name:"CUSTOM03__RULE"},{rule:this._PRIMARY__CUSTOM04__RULE,name:"CUSTOM04__RULE"},{rule:this._PRIMARY__CUSTOM05__RULE,name:"CUSTOM05__RULE"},{rule:this._PRIMARY__CUSTOM06__RULE,name:"CUSTOM06__RULE"},{rule:this._PRIMARY__CUSTOM07__RULE,name:"CUSTOM07__RULE"},{rule:this._PRIMARY__CUSTOM08__RULE,name:"CUSTOM08__RULE"},{rule:this._PRIMARY__CUSTOM09__RULE,name:"CUSTOM09__RULE"},{rule:this._PRIMARY__CUSTOM10__RULE,name:"CUSTOM10__RULE"},{rule:this._PRIMARY__CUSTOM11__RULE,name:"CUSTOM11__RULE"},{rule:this._PRIMARY__CUSTOM12__RULE,name:"CUSTOM12__RULE"},{rule:this._PRIMARY__CUSTOM13__RULE,name:"CUSTOM13__RULE"},{rule:this._PRIMARY__CUSTOM14__RULE,name:"CUSTOM14__RULE"},{rule:this._PRIMARY__CUSTOM15__RULE,name:"CUSTOM15__RULE"},{rule:this._PRIMARY__CUSTOM16__RULE,name:"CUSTOM16__RULE"},{rule:this._PRIMARY__CUSTOM17__RULE,name:"CUSTOM17__RULE"},{rule:this._PRIMARY__CUSTOM18__RULE,name:"CUSTOM18__RULE"},{rule:this._PRIMARY__CUSTOM19__RULE,name:"CUSTOM19__RULE"},{rule:this._PRIMARY__CUSTOM20__RULE,name:"CUSTOM20__RULE"},{rule:this._PRIMARY__CUSTOM21__RULE,name:"CUSTOM21__RULE"},{rule:this._PRIMARY__CUSTOM22__RULE,name:"CUSTOM22__RULE"},{rule:this._PRIMARY__CUSTOM23__RULE,name:"CUSTOM23__RULE"},{rule:this._PRIMARY__CUSTOM24__RULE,name:"CUSTOM24__RULE"},{rule:this._PRIMARY__CUSTOM25__RULE,name:"CUSTOM25__RULE"},{rule:this._PRIMARY__CUSTOM26__RULE,name:"CUSTOM26__RULE"},{rule:this._PRIMARY__CUSTOM27__RULE,name:"CUSTOM27__RULE"},{rule:this._PRIMARY__CUSTOM28__RULE,name:"CUSTOM28__RULE"},{rule:this._PRIMARY__CUSTOM29__RULE,name:"CUSTOM29__RULE"},{rule:this._PRIMARY__CUSTOM30__RULE,name:"CUSTOM30__RULE"},{rule:this._PRIMARY__CUSTOM31__RULE,name:"CUSTOM31__RULE"},{rule:this._PRIMARY__CUSTOM32__RULE,name:"CUSTOM32__RULE"},{rule:this._PRIMARY__CUSTOM33__RULE,name:"CUSTOM33__RULE"},{rule:this._PRIMARY__CUSTOM34__RULE,name:"CUSTOM34__RULE"},{rule:this._PRIMARY__CUSTOM35__RULE,name:"CUSTOM35__RULE"},{rule:this._PRIMARY__CUSTOM36__RULE,name:"CUSTOM36__RULE"},{rule:this._PRIMARY__CUSTOM37__RULE,name:"CUSTOM37__RULE"},{rule:this._PRIMARY__CUSTOM38__RULE,name:"CUSTOM38__RULE"},{rule:this._PRIMARY__CUSTOM39__RULE,name:"CUSTOM39__RULE"},{rule:this._PRIMARY__CUSTOM40__RULE,name:"CUSTOM40__RULE"},{rule:this._PRIMARY__CUSTOM41__RULE,name:"CUSTOM41__RULE"},{rule:this._PRIMARY__CUSTOM42__RULE,name:"CUSTOM42__RULE"},{rule:this._PRIMARY__CUSTOM43__RULE,name:"CUSTOM43__RULE"},{rule:this._PRIMARY__CUSTOM44__RULE,name:"CUSTOM44__RULE"},{rule:this._PRIMARY__CUSTOM45__RULE,name:"CUSTOM45__RULE"},{rule:this._PRIMARY__CUSTOM46__RULE,name:"CUSTOM46__RULE"},{rule:this._PRIMARY__CUSTOM47__RULE,name:"CUSTOM47__RULE"},{rule:this._PRIMARY__CUSTOM48__RULE,name:"CUSTOM48__RULE"},{rule:this._PRIMARY__CUSTOM49__RULE,name:"CUSTOM49__RULE"},{rule:this._PRIMARY__CUSTOM50__RULE,name:"CUSTOM50__RULE"}])if(void 0!==r){var a=r(e?.data??t);if((e=a?a:e)&&!e.valid)return e.error=void 0!==this._default_error?this._default_error:e.error,this._errorRule=i,e}return e}catch(e){return{data:void 0,valid:!1,error:String(e)}}}getMapError(){return this._mapError="object"==typeof this._mapError&&void 0!==this._mapError?this._mapError:{},"map"in this._mapError?this._mapError.map:defaultMapError}initMapError(e){return this._mapError="object"==typeof this._mapError&&void 0!==this._mapError?this._mapError:{},this._mapError.map="function"==typeof e?e:defaultMapError,this}applyPreMapping(e=InitialMapFunct){return this.preMap=e,this}applyMapping(e=InitialMapFunct){return this.map=e,this}getErrorRule(){return this._errorRule}}class Fodat{static transform(e){if(e instanceof FormData){var t,r,i={};for([t,r]of e.entries()){var a=this.parseKeyPath(t);this.setDeepValue(i,a,this.wrapValue(r))}return i}if("object"==typeof e&&!Array.isArray(e))return e}static toFormData(t,r=new FormData,i){return null!=t&&(!0===t?.__file&&t.file instanceof File?r.append(i,t.file):"object"!=typeof t||t instanceof File?i&&r.append(i,t):Array.isArray(t)?t.forEach((e,t)=>{this.toFormData(e,r,i?i+`[${t}]`:""+t)}):Object.keys(t).forEach(e=>{this.toFormData(t[e],r,i?i+"."+e:e)})),r}static wrapValue(e){return e instanceof File?e:"true"===(e=e.toString())||"false"!==e&&(isNaN(Number(e))?e:Number(e))}static setDeepValue(e,t,r){let i=e;for(let e=0;e<t.length-1;e++){var a=t[e],_=t[e+1];void 0===i[a]&&(i[a]="number"==typeof _?[]:{}),i=i[a]}e=t[t.length-1];i[e]=r}static parseKeyPath(e){var t,r=[];for(t of e.split(/\.|(\[\d+\])/).filter(Boolean)){var i=t.match(/\[(\d+)\]/);r.push(i?Number(i[1]):t)}return r}static exposeToGlobal(){"undefined"!=typeof window&&(window.Fodat=Fodat)}}function checkIfCorrectTypeSchema(e){return e instanceof StringSchema$1||e instanceof NumberSchema$1||e instanceof BooleanSchema$1||e instanceof DateSchema$1||e instanceof ArraySchema$1||e instanceof ObjectSchema$1||e instanceof ChosenTypeSchema$1||e instanceof EnumSchema$1||e instanceof NotEnumSchema$1||e instanceof AnyTypeSchema$1}"undefined"!=typeof window&&(window.Fodat=Fodat);let ArraySchema$1=class extends JONDefaultSchema{_maxValue=void 0;_minValue=void 0;_lessValue=void 0;_greaterValue=void 0;_lengthValue=void 0;_types=[];_ARRAY__RULE=void 0;_ARRAY__TYPE__RULE=void 0;_ARRAY__MIN__RULE=void 0;_ARRAY__MAX__RULE=void 0;_ARRAY__LESS__RULE=void 0;_ARRAY__GREATER__RULE=void 0;_ARRAY__LENGTH__RULE=void 0;constructor(e="fr"){super(e),this.array()}array(){var e=e=>{let t=e=>Array.isArray(e)||null==e;var r,e=null!=e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas un tableau",en:r+" is not an array"}[this.get_lang()]))}};return this.addRule(e),this._ARRAY__RULE=e,this}types(...i){let s=JSON.stringify(""+this.get_label());if(Array.isArray(i)&&0!==i.length){var a=[];for(let t of i){if(!checkIfCorrectTypeSchema(t)){let e=e=>({valid:!1,data:void 0,error:new Error({fr:`${s} a un ou plusieurs types invalides (${cleanField(String(t))}) pour analyse`,en:`${s} has one or more invalid types (${cleanField(String(t))}) for analysis`}[this.get_lang()])});return this.addRule(e),this._ARRAY__TYPE__RULE=e,this}a.push(t)}this._types=a;let n=(i,a)=>{try{let r={valid:!0,data:a,error:void 0};if(null!=a){let e=!1,t=void 0;for(var _ of this._types){var o=_.label(this.get_label()+`[${i}]`).validate(a);if(NODEENV,o.valid){r=o,e=!0;break}t=t||o}!e&&t&&(r=t)}return r}catch(e){return{data:void 0,valid:!1,error:String(e)}}},r=a=>{try{if(!Array.isArray(a)&&null!=a)return{valid:!1,data:void 0,error:new Error({fr:s+" a un type invalide pour analyse",en:s+" has an invalid type for analyse"}[this.get_lang()])};let t=[],r={data:a,valid:!0,error:void 0},i=void 0;if(null!=a)for(let e=0;e<a.length;e++){var _=a[e],o=n(e,_);if(NODEENV,o.valid)r=o,t.push(o.data),i=void 0;else if(!i){t=[],i=o;break}}return i?i:{data:null!=a?t:void 0,valid:r.valid,error:r.error}}catch(e){return{data:void 0,valid:!1,error:String(e)}}},e=e=>{let t=r(e);null==e&&this.get_default();e=t.valid;return{valid:e,data:e?t.data:void 0,error:e?void 0:t.error}};this.addRule(e),this._ARRAY__TYPE__RULE=e}else{let e=e=>({valid:!1,data:void 0,error:new Error({fr:s+" a un ou plusieurs types invalides pour analyse",en:s+" has one or more invalid types for analysis"}[this.get_lang()])});this.addRule(e),this._ARRAY__TYPE__RULE=e}return this}min(a){this._minValue=a;var e=e=>{let r=e=>null==e||Array.isArray(e)&&e.length>=a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._maxValue?new Error({fr:`la taille de ${t} doit être compris entre ${a} et `+this._maxValue,en:`the size of ${t} must be between ${a} and `+this._maxValue}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être au minimum `+a,en:`the size of ${t} must be at least `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._ARRAY__MIN__RULE=e,this}max(a){this._maxValue=a;var e=e=>{let r=e=>null==e||Array.isArray(e)&&e.length<=a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._minValue?new Error({fr:`la taille de ${t} doit être compris entre ${this._minValue} et `+a,en:`the size of ${t} must be between ${this._minValue} and `+a}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être au maximum `+a,en:`the size of ${t} must be maximum `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._ARRAY__MAX__RULE=e,this}less(a){this._lessValue=a;var e=e=>{let r=e=>null==e||Array.isArray(e)&&e.length<a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._greaterValue?new Error({fr:`la taille de ${t} doit être inférieure à ${a} et superieure à `+this._greaterValue,en:`the size of ${t} must be less than ${a} and greater than `+this._greaterValue}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être inferieure à `+a,en:`the size of ${t} must be less than `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._ARRAY__LESS__RULE=e,this}greater(a){this._greaterValue=a;var e=e=>{let r=e=>null==e||Array.isArray(e)&&e.length>a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._lessValue?new Error({fr:`la taille de ${t} doit être inférieure à ${this._lessValue} et superieure à `+a,en:`the size of ${t} must be less than ${this._lessValue} and greater than `+a}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être supérieur à `+a,en:`the size of ${t} must be greater than `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._ARRAY__GREATER__RULE=e,this}length(a){this._lengthValue=a;var e=e=>{let t=e=>null==e||Array.isArray(e)&&e.length===a;var r,e=null!=e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être égale à `+a,en:`the size of ${r} must be equal to `+a}[this.get_lang()]))}};return this.addRule(e),this._ARRAY__LENGTH__RULE=e,this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.arrayValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}arrayValidation(t){try{let e=void 0;var r,i;for({rule:r,name:i}of[{rule:this._ARRAY__RULE,name:"ARRAY__RULE"},{rule:this._ARRAY__MIN__RULE,name:"ARRAY__MIN__RULE"},{rule:this._ARRAY__MAX__RULE,name:"ARRAY__MAX__RULE"},{rule:this._ARRAY__LESS__RULE,name:"ARRAY__LESS__RULE"},{rule:this._ARRAY__GREATER__RULE,name:"ARRAY__GREATER__RULE"},{rule:this._ARRAY__LENGTH__RULE,name:"ARRAY__LENGTH__RULE"},{rule:this._ARRAY__TYPE__RULE,name:"ARRAY__TYPE__RULE"}])if(void 0!==r){var a=r(e?.data||t);if(void 0!==(e=void 0!==a?a:e)&&!e.valid)return e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule=i,e}return e}catch(e){var _={data:void 0,valid:!1,error:String(e)};return this.getMapError()(_,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},ObjectSchema$1=class extends JONDefaultSchema{_struct={};_primaryStruct=!1;_maxValue=void 0;_minValue=void 0;_lessValue=void 0;_greaterValue=void 0;_lengthValue=void 0;_oldValueForStruct=void 0;_OBJECT__RULE=void 0;_OBJECT__STRUCT__RULE=void 0;_OBJECT__PRIMARY_STRUCT__RULE=void 0;_OBJECT__TYPES_VALUES__RULE=void 0;_OBJECT__CONTAINS_KEYS__RULE=void 0;_OBJECT__NO_CONTAINS_KEYS__RULE=void 0;_OBJECT__REGEXP_CONTAINS_KEYS__RULE=void 0;_OBJECT__REGEXP_NO_CONTAINS_KEYS__RULE=void 0;_OBJECT__MIN__RULE=void 0;_OBJECT__MAX__RULE=void 0;_OBJECT__LESS__RULE=void 0;_OBJECT__GREATER__RULE=void 0;_OBJECT__LENGTH__RULE=void 0;constructor(e="fr"){super(e),this.object()}object(){var e=e=>{let t=e=>"object"==typeof e&&null!==e&&!Array.isArray(e)||e instanceof FormData||null==e;var r,i,e=null!=e?e:this.get_default(),a=t(e);return{valid:a,data:a?t(r=e)&&r instanceof FormData?"object"!=typeof(i=Fodat.transform(r))||null===i||Array.isArray(i)?void 0:i:r:void 0,error:a?void 0:t(i=e)?new Error("Unknown error"):(i=JSON.stringify(""+this.get_label()),new Error({fr:i+" n'est pas un objet",en:i+" is not an object"}[this.get_lang()]))}};return this.addRule(e),this._OBJECT__RULE=e,this}structAction(i){let h=JSON.stringify(""+this.get_label());if("object"!=typeof i||null===i||0===Object.keys(i).length){let e=e=>({valid:!1,data:void 0,error:new Error({fr:h+" a un ou plusieurs types invalides pour analyse",en:h+" has one or more invalid types for analysis"}[this.get_lang()])});this.addRule(e),this._OBJECT__STRUCT__RULE=e}else{let d={};for(let[t,r]of Object.entries(i)){if(!checkIfCorrectTypeSchema(r)){let e=e=>({valid:!1,data:void 0,error:new Error({fr:`L'attribut '${t}' de l'element ${h} a un type invalide (${cleanField(String(r))}) pour analyse`,en:`The '${t}' attribute of the ${h} element has an invalid type (${cleanField(String(r))}) for analysis.`}[this.get_lang()])});return this.addRule(e),this._OBJECT__STRUCT__RULE=e,this}d[t]=r}this._struct=d;let r=r=>{try{var i=null!==r&&"object"==typeof r?{...r}:r;if(("object"!=typeof r||null===r||Array.isArray(r))&&null!=r)return{valid:!1,data:void 0,error:new Error({fr:h+" a un type invalide pour analyse",en:h+" has an invalid type for analyse"}[this.get_lang()])};var a={};let e={data:r,valid:!0,error:void 0},t=void 0;if(null!=r){NODEENV;for(var[_,o]of Object.entries(d)){var n=o.label(`${this.get_label()}['${_}']`),s=void 0!==r[_]?r[_]:void 0,l=n.validate(s);if("debug"===NODEENV&&l.valid,NODEENV,!l.valid){a[_]=void 0,t=l;break}e=l,a[_]=l.data,t=void 0}}return t?t:(NODEENV,this._primaryStruct&&null!=r&&i&&Object.keys(i).length!==Object.keys(a).length?{valid:!1,data:void 0,error:new Error({fr:h+" doit avoir le même nombre d'attributs que la structure de validation",en:h+" must have the same number of attributes as the validation structure"}[this.get_lang()])}:{data:null!=r?a:void 0,valid:e.valid,error:e.error})}catch(e){return{data:void 0,valid:!1,error:String(e)}}},e=e=>{let t=r(e);null==e&&this.get_default();e=t.valid;return{valid:e,data:e?t.data:void 0,error:e?void 0:t.error}};this.addRule(e),this._primaryStruct?this._OBJECT__PRIMARY_STRUCT__RULE=e:this._OBJECT__STRUCT__RULE=e}return this}struct(e){return this._primaryStruct=!1,this.structAction(e)}primaryStruct(e){return this._primaryStruct=!0,this.structAction(e)}getStruct(){return this._struct}typesValues(...i){let d=JSON.stringify(""+this.get_label());if(Array.isArray(i)&&0!==i.length){let s=[];for(let t of i){if(!checkIfCorrectTypeSchema(t)){let e=e=>({valid:!1,data:void 0,error:new Error({fr:`${d} a un ou plusieurs typesValues invalides (${cleanField(String(t))}) pour analyse`,en:`${d} has one or more invalid typesValues (${cleanField(String(t))}) for analysis`}[this.get_lang()])});return this.addRule(e),this._OBJECT__TYPES_VALUES__RULE=e,this}s.push(t)}let l=(i,a)=>{try{let e={valid:!0,data:a,error:void 0},t=void 0,r=void 0;var _,o=[];for(_ of s){var n=_.label(this.get_label()+`['${i}']`).validate(a);if(NODEENV,o.push(n),n.valid){t=n;break}r=n}return t?e=t:r&&(e=r),"debug"===NODEENV&&t,NODEENV,e}catch(e){return{data:void 0,valid:!1,error:String(e)}}},r=i=>{try{if(("object"!=typeof i||null===i||Array.isArray(i))&&null!=i)return{valid:!1,data:void 0,error:new Error({fr:d+" a un type invalide pour analyse",en:d+" has an invalid type for analyse"}[this.get_lang()])};var a={};let e={data:i,valid:!0,error:void 0},t=void 0,r=void 0;var _=[];if(null!=i)for(var[o,n]of Object.entries(i)){var s=l(o,n);if(NODEENV,_.push(s),s.valid)t=s,e=s,a[o]=s.data;else if(!r){r=s;break}}return r?e=r:t&&(e=t),NODEENV,{data:null!=i?a:void 0,valid:e.valid,error:e.error}}catch(e){return{data:void 0,valid:!1,error:String(e)}}},e=e=>{let t=r(e);null==e&&this.get_default();e=t.valid;return{valid:e,data:e?t.data:void 0,error:e?void 0:t.error}};this.addRule(e),this._OBJECT__TYPES_VALUES__RULE=e}else{let e=e=>({valid:!1,data:void 0,error:new Error({fr:d+" a un ou plusieurs typesValues invalides pour analyse",en:d+" has one or more invalid typesValues for analysis"}[this.get_lang()])});this.addRule(e),this._OBJECT__TYPES_VALUES__RULE=e}return this}containsKeys(_=[],i=!1){var e=e=>{let a=t=>null==t||"object"==typeof t&&!Array.isArray(t)&&"object"==typeof _&&Array.isArray(_)&&(!i&&0<_.filter(e=>Object.keys(t).includes(e)).length||i&&_.filter(e=>Object.keys(t).includes(e)).length===Object(t).keys().length);var t,e=null!=e?e:this.get_default(),r=a(e);return{valid:r,data:r?(a(t=e),t):void 0,error:r?void 0:(t=>{if(a(t))return new Error("Unknown error");{var r,i=JSON.stringify(this.get_label());let e=[];return t&&"object"==typeof t&&(e=_.filter(e=>!(e in t))),0===_.length?new Error({fr:i+" ne possede aucune clé à verifier pour la validation",en:i+" has no key to check for validation"}[this.get_lang()]):0<e.length?(r=e.map(e=>`"${e}"`).join(", "),new Error({fr:i+" possède une ou plusieurs clés indefinis: "+r,en:i+" has one or more undefined keys: "+r}[this.get_lang()])):new Error({fr:i+" est d'un type invalide",en:i+" is of an invalid type"}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__CONTAINS_KEYS__RULE=e,this}noContainsKeys(_=[],i=!1){var e=e=>{let a=t=>null==t||"object"==typeof t&&!Array.isArray(t)&&(!i&&_.some(e=>!(e in t))||i&&_.every(e=>!(e in t)));var t,e=null!=e?e:this.get_default(),r=a(e);return{valid:r,data:r?(a(t=e),t):void 0,error:r?void 0:(t=>{if(a(t))return new Error("Unknown error");{var r,i=JSON.stringify(this.get_label());let e=[];return t&&"object"==typeof t&&(e=_.filter(e=>e in t)),0===_.length?new Error({fr:i+" ne possede aucune clé à verifier pour la validation",en:i+" has no key to check for validation"}[this.get_lang()]):0<e.length?(r=e.map(e=>`"${e}"`).join(", "),new Error({fr:i+" possède une ou plusieurs clés definis: "+r,en:i+" has one or more defined keys: "+r}[this.get_lang()])):new Error({fr:i+" est d'un type invalide",en:i+" is of an invalid type"}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__NO_CONTAINS_KEYS__RULE=e,this}regExpContainsKeys(a,_=void 0,o=!1){var e=e=>{let i=e=>{if(null==e)return!0;if("object"!=typeof e||Array.isArray(e))return!1;e=Object.keys(e);let t=new StringSchema$1(this.get_lang());return o?e.every(e=>t.regexp(a,_).isValid(e)):e.some(e=>t.regexp(a,_).isValid(e))};var t,e=null!=e?e:this.get_default(),r=i(e);return{valid:r,data:r?(i(t=e),t):void 0,error:r?void 0:(r=>{if(i(r))return new Error("Unknown error");{var t=JSON.stringify(this.get_label());let e=[];if(r&&"object"==typeof r){let t=new StringSchema$1(this.get_lang());e=Object.keys(r).filter(e=>!t.regexp(a,_).isValid(e))}return 0===Object.keys(r||{}).length?new Error({fr:t+" ne possede aucune clé à verifier pour la validation",en:t+" has no key to check for validation"}[this.get_lang()]):0<e.length?(r=e.map(e=>`"${e}"`).join(", "),new Error({fr:t+" possède une ou plusieurs clés au format invalide: "+r,en:t+" has one or more invalidly formatted keys: "+r}[this.get_lang()])):new Error({fr:t+" est d'un type invalide",en:t+" is of an invalid type"}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__REGEXP_CONTAINS_KEYS__RULE=e,this}regExpNoContainsKeys(a,_=void 0,o=!1){var e=e=>{let i=e=>{if(null==e)return!0;if("object"!=typeof e||Array.isArray(e))return!1;e=Object.keys(e);let t=new StringSchema$1(this.get_lang());return o?e.every(e=>!t.regexp(a,_).isValid(e)):e.some(e=>!t.regexp(a,_).isValid(e))};var t,e=null!=e?e:this.get_default(),r=i(e);return{valid:r,data:r?(i(t=e),t):void 0,error:r?void 0:(r=>{if(i(r))return new Error("Unknown error");{var t=JSON.stringify(this.get_label());let e=[];if(r&&"object"==typeof r){let t=new StringSchema$1(this.get_lang());e=Object.keys(r).filter(e=>t.regexp(a,_).isValid(e))}return 0===Object.keys(r||{}).length?new Error({fr:t+" ne possede aucune clé à verifier pour la validation",en:t+" has no key to check for validation"}[this.get_lang()]):0<e.length?(r=e.map(e=>`"${e}"`).join(", "),new Error({fr:t+" ne possède pas des clés au format: "+r,en:t+" does not have keys in: "+r}[this.get_lang()])):new Error({fr:t+" est d'un type invalide",en:t+" is of an invalid type"}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__REGEXP_NO_CONTAINS_KEYS__RULE=e,this}min(a){this._minValue=a;var e=e=>{let r=e=>null==e||"object"==typeof e&&!Array.isArray(e)&&Object.keys(e).length>=a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._maxValue?new Error({fr:`la taille de ${t} doit être compris entre ${a} et `+this._maxValue,en:`the size of ${t} must be between ${a} and `+this._maxValue}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être au minimum `+a,en:`the size of ${t} must be at least `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__MIN__RULE=e,this}max(a){this._maxValue=a;var e=e=>{let r=e=>null==e||"object"==typeof e&&!Array.isArray(e)&&Object.keys(e).length<=a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._minValue?new Error({fr:`la taille de ${t} doit être compris entre ${this._minValue} et `+a,en:`the size of ${t} must be between ${this._minValue} and `+a}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être au maximum `+a,en:`the size of ${t} must be maximum `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__MAX__RULE=e,this}less(a){this._lessValue=a;var e=e=>{let r=e=>null==e||"object"==typeof e&&!Array.isArray(e)&&Object.keys(e).length<a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._greaterValue?new Error({fr:`la taille de ${t} doit être inférieure à ${a} et superieure à `+this._greaterValue,en:`the size of ${t} must be less than ${a} and greater than `+this._greaterValue}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être inferieure à `+a,en:`the size of ${t} must be less than `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__LESS__RULE=e,this}greater(a){this._greaterValue=a;var e=e=>{let r=e=>null==e||"object"==typeof e&&!Array.isArray(e)&&Object.keys(e).length>a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._lessValue?new Error({fr:`la taille de ${t} doit être inférieure à ${this._lessValue} et superieure à `+a,en:`the size of ${t} must be less than ${this._lessValue} and greater than `+a}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être supérieur à `+a,en:`the size of ${t} must be greater than `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__GREATER__RULE=e,this}length(a){this._lengthValue=a;var e=e=>{let t=e=>null==e||"object"==typeof e&&!Array.isArray(e)&&Object.keys(e).length===a;var r,e=null!=e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être égale à `+a,en:`the size of ${r} must be equal to `+a}[this.get_lang()]))}};return this.addRule(e),this._OBJECT__LENGTH__RULE=e,this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.objectValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}objectValidation(t){try{let e=void 0;var r,i;for({rule:r,name:i}of[{rule:this._OBJECT__RULE,name:"OBJECT__RULE"},{rule:this._OBJECT__STRUCT__RULE,name:"OBJECT__STRUCT__RULE"},{rule:this._OBJECT__PRIMARY_STRUCT__RULE,name:"OBJECT__PRIMARY_STRUCT__RULE"},{rule:this._OBJECT__TYPES_VALUES__RULE,name:"OBJECT__TYPES_VALUES__RULE"},{rule:this._OBJECT__CONTAINS_KEYS__RULE,name:"OBJECT__CONTAINS_KEYS__RULE"},{rule:this._OBJECT__NO_CONTAINS_KEYS__RULE,name:"OBJECT__NO_CONTAINS_KEYS__RULE"},{rule:this._OBJECT__REGEXP_CONTAINS_KEYS__RULE,name:"OBJECT__REGEXP_CONTAINS_KEYS__RULE"},{rule:this._OBJECT__REGEXP_NO_CONTAINS_KEYS__RULE,name:"OBJECT__REGEXP_NO_CONTAINS_KEYS__RULE"},{rule:this._OBJECT__MIN__RULE,name:"OBJECT__MIN__RULE"},{rule:this._OBJECT__MAX__RULE,name:"OBJECT__MAX__RULE"},{rule:this._OBJECT__LESS__RULE,name:"OBJECT__LESS__RULE"},{rule:this._OBJECT__GREATER__RULE,name:"OBJECT__GREATER__RULE"},{rule:this._OBJECT__LENGTH__RULE,name:"OBJECT__LENGTH__RULE"}])if(void 0!==r){var a=r(e?.data||t);if(void 0!==(e=void 0!==a?a:e)&&!e.valid)return e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule=i,e}return e}catch(e){var _={data:void 0,valid:!1,error:String(e)};return this.getMapError()(_,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},ChosenTypeSchema$1=class extends JONDefaultSchema{_types=[];_invalid_types=[];_CHOSEN_TYPE__RULE=void 0;constructor(e="fr"){super(e)}chosenTypes(){let r=i=>{try{let e={valid:!0,data:i,error:void 0},t=void 0,r=void 0;var a,_=[];for(a of this._types){let e=i;null==i&&(e=(void 0!==a.get_default()?a:this).get_default());var o=a.label(this.get_label()).validate(e);if(NODEENV,_.push(o),o.valid){t=o;break}r=o}return t?e=t:r&&(e=r),e}catch(e){return{data:void 0,valid:!1,error:String(e)}}};var e=e=>{let t=r(e);null==e&&this.get_default();e=t.valid;return{valid:e,data:e?t.data:void 0,error:e?void 0:t.error}};return this.addRule(e),this._CHOSEN_TYPE__RULE=e,this}choices(...e){let r=JSON.stringify(""+this.get_label());var t;if(!Array.isArray(e)||0===e.length)return this.addRule(t=e=>({valid:!1,data:void 0,error:new Error({fr:r+" a un ou plusieurs types invalides pour analyse",en:r+" has one or more invalid types for analysis"}[this.get_lang()])})),this._CHOSEN_TYPE__RULE=t,this;var i=[];for(let t of e){if(!checkIfCorrectTypeSchema(t))return this.addRule(a=e=>({valid:!1,data:void 0,error:new Error({fr:`${r} a un ou plusieurs types invalides (${cleanField(String(t))}) pour analyse`,en:`${r} has one or more invalid types (${cleanField(String(t))}) for analysis`}[this.get_lang()])})),this._CHOSEN_TYPE__RULE=a,this;var a=t.label(this.get_label());void 0===a.get_default()&&a.default(this.get_default()),i.push(a)}return this._types=i,this.chosenTypes()}types(){return this._types}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.chosenTypesValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}chosenTypesValidation(t){try{let e=void 0;if(void 0!==this._CHOSEN_TYPE__RULE){var r=this._CHOSEN_TYPE__RULE(e?.data||t);if(void 0!==(e=void 0!==r?r:e)&&!e.valid)e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule="CHOSEN_TYPES__RULE"}return e}catch(e){t={data:void 0,valid:!1,error:String(e)};return this.getMapError()(t,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},EnumSchema$1=class extends JONDefaultSchema{_choices=[];_ENUM__RULE=void 0;constructor(e="fr"){super(e)}enum(){var e=e=>{let t=t=>this._choices.some(e=>e===t)||void 0===t;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),i=this._choices.map(e=>`"${e}"`).join(" ou "),new Error({fr:r+` ne correspond à aucune de ses valeurs (${i})`,en:r+` does not correspond to any of its values (${i})`}[this.get_lang()]))}};return this.addRule(e),this._ENUM__RULE=e,this}choices(...e){return this._choices=Array.isArray(e)&&0<e.length?[...e]:[],this.enum()}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.enumValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}enumValidation(t){try{let e=void 0;if(void 0!==this._ENUM__RULE){var r=this._ENUM__RULE(e?.data||t);if(void 0!==(e=void 0!==r?r:e)&&!e.valid)e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule="ENUM__RULE"}return e}catch(e){t={data:void 0,valid:!1,error:String(e)};return this.getMapError()(t,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},NotEnumSchema$1=class extends JONDefaultSchema{_choices=[];_NOT_ENUM__RULE=void 0;constructor(e="fr"){super(e)}notEnum(){var e=e=>{let t=t=>!this._choices.some(e=>e===t)||void 0===t;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),i=this._choices.map(e=>`"${e}"`).join(" ou "),new Error({fr:r+` ne doit pas correspondre à une de ses valeurs (${i})`,en:r+` must not correspond to one of its values (${i})`}[this.get_lang()]))}};return this.addRule(e),this._NOT_ENUM__RULE=e,this}choices(...e){return this._choices=Array.isArray(e)&&0<e.length?[...e]:[],this.notEnum()}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.notEnumValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}notEnumValidation(t){try{let e=void 0;if(void 0!==this._NOT_ENUM__RULE){var r=this._NOT_ENUM__RULE(e?.data||t);if(void 0!==(e=void 0!==r?r:e)&&!e.valid)e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule="NOT_ENUM__RULE"}return e}catch(e){t={data:void 0,valid:!1,error:String(e)};return this.getMapError()(t,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},StringSchema$1=class extends JONDefaultSchema{_maxValue=void 0;_minValue=void 0;_lessValue=void 0;_greaterValue=void 0;_lengthValue=void 0;_format=void 0;_dateFormat=dateFormat5;_timeFormat=timeFormat3;_enum_choices=[];_not_enum_choices=[];_STRING__RULE=void 0;_STRING__MIN__RULE=void 0;_STRING__MAX__RULE=void 0;_STRING__LESS__RULE=void 0;_STRING__GREATER__RULE=void 0;_STRING__LENGTH__RULE=void 0;_STRING__REGEXP__RULE=void 0;_STRING__ALPHANUM__RULE=void 0;_STRING__BASE64__RULE=void 0;_STRING__LOWERCASE__RULE=void 0;_STRING__UPPERCASE__RULE=void 0;_STRING__CAPITALIZE__RULE=void 0;_STRING__UC_FIRST__RULE=void 0;_STRING__CREDIT_CARD__RULE=void 0;_STRING__DATAURI__RULE=void 0;_STRING__DOMAIN__RULE=void 0;_STRING__URL__RULE=void 0;_STRING__HOSTNAME__RULE=void 0;_STRING__IP_ADDRESS__RULE=void 0;_STRING__EMAIL__RULE=void 0;_STRING__GUID__RULE=void 0;_STRING__HEXA__RULE=void 0;_STRING__BINARY__RULE=void 0;_STRING__DATE__RULE=void 0;_STRING__IDENTIFIER__RULE=void 0;_STRING__ENUM__RULE=void 0;_STRING__NOT_ENUM__RULE=void 0;constructor(e="fr"){super(e),this.string()}string(){var e=e=>{let a=e=>"string"==typeof e||"number"==typeof e||"boolean"==typeof e||void 0===e;var e=void 0!==e?e:this.get_default(),t=a(e);return{valid:t,data:t?(e=>{if(a(e)){if(void 0===e)return;var t=isString(e,"datetime",this._format),r=isString(e,"date",this._format),i=isString(e,"time",this._format);if(void 0===this._format&&(t?this.changeFormat(dateTimeFormatInitial):r?this.changeFormat(this._dateFormat):isString(e,"time",this._format)&&this.changeFormat(this._timeFormat)),"string"==typeof e)return e;if(t||r||i)return Timez.parse(e,this._format).format(this._format)}return e})(e):void 0,error:t?void 0:a(t=e)?new Error("Unknown error"):(t=JSON.stringify(""+this.get_label()),new Error({fr:t+" n'est pas une chaîne de caractères",en:t+" is not a string"}[this.get_lang()]))}};return this.addRule(e),this._STRING__RULE=e,this}min(a){var e=e=>{let t=e=>"string"==typeof e&&e.length>=a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être au minimum `+a,en:`the size of ${r} must be at least `+a}[this.get_lang()]))}};return this.addRule(e),this._STRING__MIN__RULE=e,this}max(a){var e=e=>{let t=e=>"string"==typeof e&&e.length<=a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être au maximum `+a,en:`the size of ${r} must be maximum `+a}[this.get_lang()]))}};return this.addRule(e),this._STRING__MAX__RULE=e,this}less(a){var e=e=>{let t=e=>"string"==typeof e&&e.length>a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être inférieure à `+a,en:`the size of ${r} must be less than `+a}[this.get_lang()]))}};return this.addRule(e),this._STRING__LESS__RULE=e,this}greater(a){var e=e=>{let t=e=>"string"==typeof e&&e.length<a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être supérieure à `+a,en:`the size of ${r} must be greater than `+a}[this.get_lang()]))}};return this.addRule(e),this._STRING__GREATER__RULE=e,this}length(a){var e=e=>{let t=e=>"string"==typeof e&&e.length===a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être égale à `+a,en:`the size of ${r} must be equal to `+a}[this.get_lang()]))}};return this.addRule(e),this._STRING__LENGTH__RULE=e,this}regexp(e,t=void 0,a=void 0){let _;_=e instanceof RegExp?e:"string"==typeof e&&0<e.length?t?new RegExp(e,t):new RegExp(e):/.*/;t=e=>{let t=e=>"string"==typeof e&&_.test(e)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(i={fr:(r=JSON.stringify(""+this.get_label()))+" ne respecte pas la règle appliquée",en:r+" does not respect the rule applied"}[this.get_lang()],new Error(a&&a(this.getLang(),r)[this.get_lang()]||i))}};return this.addRule(t),this._STRING__REGEXP__RULE=t,this}alphanum(){return this.regexp(/^[\w\s]+$/,void 0,(e,t)=>({fr:t+" n'est pas de type alphanumérique",en:t+" is not alphanumeric"}))}base64(e=!0,t=!0){t=t?"\\-":"\\+";return this.regexp(`^(?:[A-Za-z0-9${t}/]{4})*(?:[A-Za-z0-9${t}/]{2}==|[A-Za-z0-9${t}/]{3}${e?"=":"(={0,1})"}|[A-Za-z0-9${t}/]{4})$`,void 0,(e,t)=>({fr:t+" n'a pas un format base64 valide",en:t+" does not have a valid base64 format"}))}lowercase(a=!1){var e=e=>{let t=e=>"string"==typeof e&&(!!a&&e===e.toLowerCase()||!a)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?t(r=e)?void 0!==r?String(r).toLowerCase():void 0:r:void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas en minuscule",en:r+" is not lowercase"}[this.get_lang()]))}};return this.addRule(e),this._STRING__LOWERCASE__RULE=e,this}uppercase(a=!1){var e=e=>{let t=e=>"string"==typeof e&&(!!a&&e===e.toUpperCase()||!a)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?t(r=e)?void 0!==r?String(r).toUpperCase():void 0:r:void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas en majuscule",en:r+" is not uppercase"}[this.get_lang()]))}};return this.addRule(e),this._STRING__UPPERCASE__RULE=e,this}capitalize(a=!1){var e=e=>{let t=e=>"string"==typeof e&&(!!a&&e===String(e).replace(/\w\S*/g,e=>e.charAt(0).toUpperCase()+e.substr(1).toLowerCase())||!a)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?t(r=e)?void 0!==r?String(r).replace(/\w\S*/g,e=>e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()):void 0:r:void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas en lettre capitale",en:r+" is not capitalized"}[this.get_lang()]))}};return this.addRule(e),this._STRING__CAPITALIZE__RULE=e,this}ucFirst(a=!1){var e=e=>{let t=e=>"string"==typeof e&&(!!a&&e===String(e).charAt(0).toUpperCase()+String(e).slice(1)||!a)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?t(r=e)?void 0!==r?String(r).charAt(0).toUpperCase()+String(r).slice(1):void 0:r:void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'a pas de première lettre en majuscule",en:r+" does not have a capitalized first letter"}[this.get_lang()]))}};return this.addRule(e),this._STRING__UC_FIRST__RULE=e,this}creditCard(e=[]){let a={visa:/^(4[0-9]{12}(?:[0-9]{3}))$/,mastercard:/^((?:5[1-5][0-9]{2}|222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12})$/,"american-express":/^(3[47][0-9]{13})$/,discover:/^(6(?:011|5[0-9]{2})[0-9]{12})$/,"diners-club":/^(3(?:0[0-5]|[68][0-9])[0-9]{11})$/,jcb:/^((?:2131|1800|35\d{3})\d{11})$/},t=["mastercard","visa","american-express","discover","diners-club","jcb"],_=e.filter(e=>t.includes(e));e=e=>{let t=t=>"string"!=typeof t||void 0===t?void 0===t:0===_.length?Object.values(a).some(e=>e.test(t)):_.some(e=>a[e]&&a[e].test(t));var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas une chaîne de caractères au format d'une carte de crédit",en:r+" is not a string in the format of a credit card"}[this.get_lang()]))}};return this.addRule(e),this._STRING__CREDIT_CARD__RULE=e,this}dataUri(){return this.regexp(/^data:([\w\/\+]+);(charset=[\w-]+|base64).*,([a-zA-Z0-9+/]+={0,2})$/,void 0,(e,t)=>({fr:t+" n'a pas un format Data-URI valide",en:t+" does not have a valid Data-URI format"}))}domain(){return this.regexp(/^(?!-)[A-Za-z0-9-]+([\-\.]{1}[a-z0-9]+)*\.[A-Za-z]{2,6}$/,void 0,(e,t)=>({fr:t+" n'est pas un domaine valide",en:t+" is not a valid domain"}))}url(){var e=new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i");return this.regexp(e)}hostname(){let a=/^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])$/,_=/^(([a-zA-Z]|[a-zA-Z][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z]|[A-Za-z][A-Za-z0-9\-]*[A-Za-z0-9])$/;var e=e=>{let t=e=>"string"==typeof e&&(a.test(e)||_.test(e))||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas une chaîne de caractères au format d'un nom d'hôte valide",en:r+" is not a string in the format of a valid hostname"}[this.get_lang()]))}};return this.addRule(e),this._STRING__HOSTNAME__RULE=e,this}IPAddress(e=[]){let a={ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/,ipv6:new RegExp(["^(?:[0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$","^::(?:[0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4}$","^[0-9a-fA-F]{1,4}::(?:[0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4}$","^[0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4}::(?:[0-9a-fA-F]{1,4}:){0,4}[0-9a-fA-F]{1,4}$","^(?:[0-9a-fA-F]{1,4}:){0,2}[0-9a-fA-F]{1,4}::(?:[0-9a-fA-F]{1,4}:){0,3}[0-9a-fA-F]{1,4}$","^(?:[0-9a-fA-F]{1,4}:){0,3}[0-9a-fA-F]{1,4}::(?:[0-9a-fA-F]{1,4}:){0,2}[0-9a-fA-F]{1,4}$","^(?:[0-9a-fA-F]{1,4}:){0,4}[0-9a-fA-F]{1,4}::(?:[0-9a-fA-F]{1,4}:)?[0-9a-fA-F]{1,4}$","^(?:[0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4}::[0-9a-fA-F]{1,4}$","^(?:[0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4}::$"].join("|"))},t=["ipv4","ipv6"],_=e.filter(e=>t.includes(e));e=e=>{let t=t=>"string"!=typeof t||void 0===t?void 0===t:0===_.length?a.ipv4.test(t)||a.ipv6.test(t):_.some(e=>a[e]&&a[e].test(t));var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas une chaîne de caractères au format d'une adresse IP valide",en:r+" is not a string in the format of a valid IP address"}[this.get_lang()]))}};return this.addRule(e),this._STRING__IP_ADDRESS__RULE=e,this}email(){let a=/^(([^<>()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/,_=/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;var e=e=>{let t=e=>"string"==typeof e&&(a.test(e)||_.test(e))||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas une chaîne de caractères au format d'un email valide",en:r+" is not a string in the format of a valid email"}[this.get_lang()]))}};return this.addRule(e),this._STRING__EMAIL__RULE=e,this}guid(e=[]){let a={v1:/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1][0-9a-fA-F]{3}-[89AB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/,v2:/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[2][0-9a-fA-F]{3}-[89AB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/,v3:/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[3][0-9a-fA-F]{3}-[89AB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/,v4:/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[4][0-9a-fA-F]{3}-[89AB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/,v5:/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[5][0-9a-fA-F]{3}-[89AB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/},t=["v1","v2","v3","v4","v5"],_=e.filter(e=>t.includes(e));e=e=>{let t=t=>"string"!=typeof t||void 0===t?void 0===t:0===_.length?Object.values(a).some(e=>e.test(t)):_.some(e=>a[e]&&a[e].test(t));var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas une chaîne de caractères au format GUID valide",en:r+" is not a string in valid GUID format"}[this.get_lang()]))}};return this.addRule(e),this._STRING__GUID__RULE=e,this}hexa(e=!1){return this.regexp(e?/^[0-9a-fA-F]+$/:/^[0-9A-F]+$/,void 0,(e,t)=>({fr:t+" n'a pas un format hexadecimal valide",en:t+" does not have a valid hexadecimal format"}))}binary(){return this.regexp(/^[01]+$/,void 0,(e,t)=>({fr:t+" n'a pas un format binaire valide",en:t+" does not have a valid binary format"}))}date(e=void 0){let a=e&&0<e.length?e:dateTimeFormatInitial;e=e=>{let t=e=>"string"==typeof e&&isDatetimeFormat(e,a)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas une chaîne de caractères au format d'une date valide",en:r+" is not a string in the format of a valid date"}[this.get_lang()]))}};return this.addRule(e),this._STRING__DATE__RULE=e,this}identifier(){return this.regexp(/^[a-zA-Z]{1,}\w{0,}$/,void 0,(e,t)=>({fr:t+" n'est pas un identifiant valide",en:t+" is not a valid identifier"}))}enum(...e){this.enumChoices(...e);e=e=>{let t=e=>this._enum_choices.includes(e)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" est d'un type invalide",en:r+" is of an invalid type"}[this.get_lang()]))}};return this.addRule(e),this._STRING__ENUM__RULE=e,this}enumChoices(...e){return this._enum_choices=Array.isArray(e)&&0<e.length?[...e]:[],this}notEnum(...e){this.notEnumchoices(...e);e=e=>{let t=e=>!this._not_enum_choices.includes(e)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" est d'un type invalide",en:r+" is of an invalid type"}[this.get_lang()]))}};return this.addRule(e),this._STRING__NOT_ENUM__RULE=e,this}notEnumchoices(...e){return this._not_enum_choices=Array.isArray(e)&&0<e.length?[...e]:[],this}changeFormat(e){return"string"==typeof e&&0<e.length&&(this._format=e),this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.stringValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}stringValidation(t){try{let e=void 0;var r,i;for({rule:r,name:i}of[{rule:this._STRING__RULE,name:"STRING__RULE"},{rule:this._STRING__MIN__RULE,name:"STRING__MIN__RULE"},{rule:this._STRING__MAX__RULE,name:"STRING__MAX__RULE"},{rule:this._STRING__LESS__RULE,name:"STRING__LESS__RULE"},{rule:this._STRING__GREATER__RULE,name:"STRING__GREATER__RULE"},{rule:this._STRING__LENGTH__RULE,name:"STRING__LENGTH__RULE"},{rule:this._STRING__REGEXP__RULE,name:"STRING__REGEXP__RULE"},{rule:this._STRING__ALPHANUM__RULE,name:"STRING__ALPHANUM__RULE"},{rule:this._STRING__BASE64__RULE,name:"STRING__BASE64__RULE"},{rule:this._STRING__LOWERCASE__RULE,name:"STRING__LOWERCASE__RULE"},{rule:this._STRING__UPPERCASE__RULE,name:"STRING__UPPERCASE__RULE"},{rule:this._STRING__CAPITALIZE__RULE,name:"STRING__CAPITALIZE__RULE"},{rule:this._STRING__UC_FIRST__RULE,name:"STRING__UC_FIRST__RULE"},{rule:this._STRING__CREDIT_CARD__RULE,name:"STRING__CREDIT_CARD__RULE"},{rule:this._STRING__DATAURI__RULE,name:"STRING__DATAURI__RULE"},{rule:this._STRING__DOMAIN__RULE,name:"STRING__DOMAIN__RULE"},{rule:this._STRING__URL__RULE,name:"STRING__URL__RULE"},{rule:this._STRING__HOSTNAME__RULE,name:"STRING__HOSTNAME__RULE"},{rule:this._STRING__IP_ADDRESS__RULE,name:"STRING__IP_ADDRESS__RULE"},{rule:this._STRING__EMAIL__RULE,name:"STRING__EMAIL__RULE"},{rule:this._STRING__GUID__RULE,name:"STRING__GUID__RULE"},{rule:this._STRING__HEXA__RULE,name:"STRING__HEXA__RULE"},{rule:this._STRING__BINARY__RULE,name:"STRING__BINARY__RULE"},{rule:this._STRING__DATE__RULE,name:"STRING__DATE__RULE"},{rule:this._STRING__IDENTIFIER__RULE,name:"STRING__IDENTIFIER__RULE"},{rule:this._STRING__ENUM__RULE,name:"STRING__ENUM__RULE"},{rule:this._STRING__NOT_ENUM__RULE,name:"STRING__NOT_ENUM__RULE"}])if(void 0!==r){var a=r(e?.data||t);if(void 0!==(e=void 0!==a?a:e)&&!e.valid)return e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule=i,e}return e}catch(e){var _={data:void 0,valid:!1,error:String(e)};return this.getMapError()(_,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},NumberSchema$1=class extends JONDefaultSchema{_NUMBER__RULE=void 0;_NUMBER__MIN__RULE=void 0;_NUMBER__MAX__RULE=void 0;_NUMBER__LESS__RULE=void 0;_NUMBER__GREATER__RULE=void 0;_NUMBER__NEGATIVE__RULE=void 0;_NUMBER__POSITIVE__RULE=void 0;_NUMBER__SIGNED__RULE=void 0;_NUMBER__INTEGER__RULE=void 0;_NUMBER__DECIMAL__RULE=void 0;_NUMBER__MULTIPLE__RULE=void 0;_NUMBER__TCP_PORT__RULE=void 0;constructor(e="fr"){super(e),this.number()}number(){var e=e=>{let t=e=>isNumber(e)||!isNotNull(e);var r,i,e=isNotNull(e)?e:this.get_default(),a=t(e);return{valid:a,data:a?t(r=e)&&(isNumber(r)||!isNotNull(r))?(i=Number(r),Number.isInteger(i)?parseInt(r,10):parseFloat(r)):r:void 0,error:a?void 0:t(i=e)?new Error("Unknown error"):(i=JSON.stringify(""+this.get_label()),new Error({fr:i+" n'est pas un nombre",en:i+" is not a number"}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__RULE=e,this}min(a){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&"number"==typeof a&&a<=e||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être au minimum "+a,en:r+" must be at least "+a}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__MIN__RULE=e,this}max(a){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&"number"==typeof a&&e<=a||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être au maximum "+a,en:r+" must be maximum "+a}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__MAX__RULE=e,this}less(a){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&"number"==typeof a&&a<e||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être inférieure à "+a,en:r+" must be less than "+a}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__LESS__RULE=e,this}greater(a){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&"number"==typeof a&&e<a||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être supérieur à "+a,en:r+" must be greater than "+a}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__GREATER__RULE=e,this}negative(){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&e<=0||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être un nombre negatif",en:r+" must be a negative number"}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__NEGATIVE__RULE=e,this}positive(){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&0<=e||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être un nombre positif",en:r+" must be a positive number"}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__POSITIVE__RULE=e,this}signed(){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&(0<e||e<0)||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être soit un nombre négatif soit un nombre positif",en:r+" must be either a negative number or a positive number"}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__SIGNED__RULE=e,this}integer(){var e=e=>{let t=e=>"number"==typeof e&&isNumber(e)&&Number.isInteger(e)||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être un nombre entier valide",en:r+" must be a valid integer number"}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__INTEGER__RULE=e,this}decimal(){var e=e=>{let t=e=>"number"==typeof e&&isNumber(e)||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être un nombre décimal valide",en:r+" must be a valid decimal number"}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__DECIMAL__RULE=e,this}multiple(a){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&"number"==typeof a&&e%a==0||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être un multiple de "+a,en:r+" must be a multiple of "+a}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__MULTIPLE__RULE=e,this}TCPPort(){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&9<e&&e<=99999||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être au format d'un port TCP",en:r+" must be in the format of a TCP port"}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__TCP_PORT__RULE=e,this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.numberValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}numberValidation(t){try{let e=void 0;var r,i;for({rule:r,name:i}of[{rule:this._NUMBER__RULE,name:"NUMBER__RULE"},{rule:this._NUMBER__MIN__RULE,name:"NUMBER__MIN__RULE"},{rule:this._NUMBER__MAX__RULE,name:"NUMBER__MAX__RULE"},{rule:this._NUMBER__LESS__RULE,name:"NUMBER__LESS__RULE"},{rule:this._NUMBER__GREATER__RULE,name:"NUMBER__GREATER__RULE"},{rule:this._NUMBER__NEGATIVE__RULE,name:"NUMBER__NEGATIVE__RULE"},{rule:this._NUMBER__POSITIVE__RULE,name:"NUMBER__POSITIVE__RULE"},{rule:this._NUMBER__SIGNED__RULE,name:"NUMBER__SIGNED__RULE"},{rule:this._NUMBER__INTEGER__RULE,name:"NUMBER__INTEGER__RULE"},{rule:this._NUMBER__DECIMAL__RULE,name:"NUMBER__DECIMAL__RULE"},{rule:this._NUMBER__MULTIPLE__RULE,name:"NUMBER__MULTIPLE__RULE"},{rule:this._NUMBER__TCP_PORT__RULE,name:"NUMBER__TCP_PORT__RULE"}])if(void 0!==r){var a=r(e?.data||t);if(void 0!==(e=void 0!==a?a:e)&&!e.valid)return e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule=i,e}return e}catch(e){var _={data:void 0,valid:!1,error:String(e)};return this.getMapError()(_,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},BooleanSchema$1=class extends JONDefaultSchema{_trueValues=["true","t","1",1,!0];_falseValues=["false","f","0",0,!1];_BOOLEAN__RULE=void 0;constructor(e="fr"){super(e),this.boolean()}boolean(){var e=e=>{let t=e=>isBoolean(e,[...this._trueValues,...this._falseValues],!1);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?t(r=e)?convertToBoolean(r):r:void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas un booléen",en:r+" is not a boolean"}[this.get_lang()]))}};return this.addRule(e),this._BOOLEAN__RULE=e,this}required(e=!0){e="boolean"!=typeof e||e;var t=e=>{let t=e=>null!=e||"boolean"==typeof e;var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" est requis",en:r+" is required"}[this.get_lang()]))}};return this.addRule(t),this._PRIMARY__REQUIRED__RULE=e?t:void 0,this}trueValues(e){e=Array.isArray(e)?e:[];return 0<e.length&&(this._trueValues=[...e]),this}falseValues(e){e=Array.isArray(e)?e:[];return 0<e.length&&(this._falseValues=[...e]),this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.booleanValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}booleanValidation(t){try{let e=void 0;if(void 0!==this._BOOLEAN__RULE){var r=this._BOOLEAN__RULE(e?.data||t);if(void 0!==(e=void 0!==r?r:e)&&!e.valid)e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule="BOOLEAN__RULE"}return e}catch(e){t={data:void 0,valid:!1,error:String(e)};return this.getMapError()(t,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}getMapError(){return defaultMapError}},DateSchema$1=class extends JONDefaultSchema{_timezone=void 0;_format=void 0;_dateFormat=dateFormat5;_timeFormat=timeFormat3;_maxValue=void 0;_minValue=void 0;_lessValue=void 0;_greaterValue=void 0;_equalValue=void 0;_DATE__RULE=void 0;_DATE__MIN__RULE=void 0;_DATE__MAX__RULE=void 0;_DATE__LESS__RULE=void 0;_DATE__GREATER__RULE=void 0;_DATE__EQUAL_TO__RULE=void 0;_DATE__TO_DATE__RULE=void 0;_DATE__TO_TIME__RULE=void 0;constructor(e="fr"){super(e),this.date()}date(){var e=e=>{let t=e=>isDate(e,void 0,this._format)||void 0===e;var e=isNotNull(e)?e:this.get_default(),r=t(e);return{valid:r,data:r?(t=>{if(null==t)return t;{void 0===this._format&&this.changeFormat(dateTimeFormatInitial);let e;if("string"==typeof t&&isDatetimeFormat(t,this._format))e=Timez.parse(t,this._format);else if(t instanceof Date)e=new Timez(t);else{if(!(t instanceof Timez))return t;e=t}return(e=void 0!==this._timezone?e.setTimezone(this._timezone):e).toDate()}})(e):void 0,error:r?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas une date",en:r+" is not a date"}[this.get_lang()]))}};return this.addRule(e),this._DATE__RULE=e,this}min(a){var e=e=>{let r=Timez.parse(a,this._format),i=((r=r.isCorrect()&&this._timezone?r.setTimezone(this._timezone):r).isCorrect()&&(this._minValue=r.toDate()),e=>{if(!isNotNull(e))return!0;let t=Timez.parse(e,this._format);return!!(t=t.isCorrect()&&this._timezone?t.setTimezone(this._timezone):t).isCorrect()&&t.isAfter(r,"[)")});var e=isNotNull(e)?e:this.get_default(),t=i(e);return{valid:t,data:t?e:void 0,error:t?void 0:(t=>{if(i(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e=t+" must be at least "+r.format();return e=void 0!==this._maxValue?{fr:`${t} doit être compris entre ${r.format()} et `+Timez.parse(this._maxValue).format(),en:`${t} must be between ${r.format()} and `+Timez.parse(this._maxValue).format()}[this.get_lang()]||e:{fr:t+" doit être au minimum "+r.format(),en:t+" must be at least "+r.format()}[this.get_lang()]||e,new Error(e)}})(e)}};return this.addRule(e),this._DATE__MIN__RULE=e,this}max(_){var e=e=>{let r=Timez.parse(_,this._format),i=((r=r.isCorrect()&&this._timezone?r.setTimezone(this._timezone):r).isCorrect()&&(this._maxValue=r.toDate()),e=>{if(!isNotNull(e))return!0;let t=Timez.parse(e,this._format);return!!(t=t.isCorrect()&&this._timezone?t.setTimezone(this._timezone):t).isCorrect()&&t.isBefore(r,"(]")});var t,e=isNotNull(e)?e:this.get_default(),a=i(e);return{valid:a,data:a?(i(t=e),t):void 0,error:a?void 0:(t=>{if(i(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e=t+" must be maximum "+this._maxValue;return e=void 0!==this._minValue?{fr:`${t} doit être compris entre ${this._minValue} et `+this._maxValue,en:`${t} must be between ${this._minValue} and `+this._maxValue}[this.get_lang()]||e:{fr:t+" doit être au maximum "+this._maxValue,en:t+" must be maximum "+this._maxValue}[this.get_lang()]||e,new Error(e)}})(e)}};return this.addRule(e),this._DATE__MAX__RULE=e,this}less(_){var e=e=>{let r=Timez.parse(_,this._format),i=((r=r.isCorrect()&&this._timezone?r.setTimezone(this._timezone):r).isCorrect()&&(this._lessValue=r.toDate()),e=>{if(!isNotNull(e))return!0;let t=Timez.parse(e,this._format);return!!(t=t.isCorrect()&&this._timezone?t.setTimezone(this._timezone):t).isCorrect()&&t.isAfter(r,"()")});var t,e=isNotNull(e)?e:this.get_default(),a=i(e);return{valid:a,data:a?(i(t=e),t):void 0,error:a?void 0:(t=>{if(i(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e=t+" must be less than "+this._lessValue;return e=void 0!==this._greaterValue?{fr:`${t} doit être inférieure à ${this._lessValue} et superieure à `+this._greaterValue,en:`${t} must be less than ${this._lessValue} and greater than `+this._greaterValue}[this.get_lang()]||e:{fr:t+" doit être inferieure à "+this._lessValue,en:t+" must be less than "+this._lessValue}[this.get_lang()]||e,new Error(e)}})(e)}};return this.addRule(e),this._DATE__LESS__RULE=e,this}greater(_){var e=e=>{let r=Timez.parse(_,this._format),i=((r=r.isCorrect()&&this._timezone?r.setTimezone(this._timezone):r).isCorrect()&&(this._greaterValue=r.toDate()),e=>{if(!isNotNull(e))return!0;let t=Timez.parse(e,this._format);return!!(t=t.isCorrect()&&this._timezone?t.setTimezone(this._timezone):t).isCorrect()&&t.isBefore(r,"()")});var t,e=isNotNull(e)?e:this.get_default(),a=i(e);return{valid:a,data:a?(i(t=e),t):void 0,error:a?void 0:(t=>{if(i(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e=t+" must be greater than "+this._greaterValue;return e=void 0!==this._lessValue?{fr:`${t} doit être inférieure à ${this._lessValue} et superieure à `+this._greaterValue,en:`${t} must be less than ${this._lessValue} and greater than `+this._greaterValue}[this.get_lang()]||e:{fr:t+" doit être supérieur à "+this._greaterValue,en:t+" must be greater than "+this._greaterValue}[this.get_lang()]||e,new Error(e)}})(e)}};return this.addRule(e),this._DATE__GREATER__RULE=e,this}equalTo(_){var e=e=>{let r=Timez.parse(_,this._format),t=((r=r.isCorrect()&&this._timezone?r.setTimezone(this._timezone):r).isCorrect()&&(this._equalValue=r.toDate()),e=>{if(!isNotNull(e))return!0;let t=Timez.parse(e,this._format);return!!(t=t.isCorrect()&&this._timezone?t.setTimezone(this._timezone):t).isCorrect()&&t.isSame(r)});var i,e=isNotNull(e)?e:this.get_default(),a=t(e);return{valid:a,data:a?(t(i=e),i):void 0,error:a?void 0:t(i=e)?new Error("Unknown error"):(i={fr:(i=JSON.stringify(""+this.get_label()))+" doit être égale à "+this._equalValue,en:i+" must be equal to "+this._equalValue}[this.get_lang()],new Error(i))}};return this.addRule(e),this._DATE__EQUAL_TO__RULE=e,this}changeFormat(e){return"string"==typeof e&&0<e.length&&(this._format=e),this}changeTimezone(e){return null!=e&&(this._timezone=e),this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.dateValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}dateValidation(t){try{let e=void 0;var r,i;for({rule:r,name:i}of[{rule:this._DATE__RULE,name:"DATE__RULE"},{rule:this._DATE__MIN__RULE,name:"DATE__MIN__RULE"},{rule:this._DATE__MAX__RULE,name:"DATE__MAX__RULE"},{rule:this._DATE__LESS__RULE,name:"DATE__LESS__RULE"},{rule:this._DATE__GREATER__RULE,name:"DATE__GREATER__RULE"},{rule:this._DATE__EQUAL_TO__RULE,name:"DATE__EQUAL_TO__RULE"},{rule:this._DATE__TO_DATE__RULE,name:"DATE__TO_DATE__RULE"},{rule:this._DATE__TO_TIME__RULE,name:"DATE__TO_TIME__RULE"}])if(void 0!==r){var a=e?.data||t,_=r(a);if(isNotNull(_)&&(e=_),i,isNotNull(e)&&e&&!e.valid)return e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule=i,e}return e}catch(e){var o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},AnyTypeSchema$1=class extends JONDefaultSchema{_ANY_TYPE__RULE=void 0;constructor(e="fr"){super(e),this.anyType()}anyType(){var e=e=>({valid:!0,data:void 0!==e?e:this.get_default(),error:void 0});return this.addRule(e),this._ANY_TYPE__RULE=e,this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.anyTypeValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}anyTypeValidation(t){try{let e=void 0;if(void 0!==this._ANY_TYPE__RULE){var r=this._ANY_TYPE__RULE(e?.data||t);if(void 0!==(e=void 0!==r?r:e)&&!e.valid)e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule="ANY_TYPE__RULE"}return e}catch(e){t={data:void 0,valid:!1,error:String(e)};return this.getMapError()(t,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}};class FileSchema extends JONDefaultSchema{_maxValue=void 0;_minValue=void 0;_lessValue=void 0;_greaterValue=void 0;_lengthValue=void 0;_FILE__RULE=void 0;_FILE__MIN__RULE=void 0;_FILE__MAX__RULE=void 0;_FILE__LESS__RULE=void 0;_FILE__GREATER__RULE=void 0;_FILE__LENGTH__RULE=void 0;constructor(e="fr"){super(e),this.file()}file(){var e=e=>{let r=e=>e instanceof Blob||e instanceof File||"string"==typeof e&&new StringSchema$1(this._lang).dataUri().isValid(e)||void 0===e;var e=void 0!==e?e:this.get_default(),t=r(e);return{valid:t,data:t?(e=>{if(r(e)){var t=JSON.stringify(""+this.get_label());if(void 0===e)return;if(e instanceof Blob||e instanceof File)return e;if("string"==typeof e&&new StringSchema$1(this._lang).dataUri().isValid(e))return this.dataUrlToFile(e,t.replace(/[^a-zA-Z0-9]/g,""))}return e})(e):void 0,error:t?void 0:r(t=e)?new Error("Unknown error"):(t=JSON.stringify(""+this.get_label()),new Error({fr:t+" n'est pas un fichier",en:t+" is not a file"}[this.get_lang()]))}};return this.addRule(e),this._FILE__RULE=e,this}min(a){var e=e=>{let t=e=>(e instanceof Blob||e instanceof File)&&e.size>=a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être au minimum `+a,en:`the size of ${r} must be at least `+a}[this.get_lang()]))}};return this.addRule(e),this._FILE__MIN__RULE=e,this}max(a){var e=e=>{let t=e=>(e instanceof Blob||e instanceof File)&&e.size<=a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être au maximum `+a,en:`the size of ${r} must be maximum `+a}[this.get_lang()]))}};return this.addRule(e),this._FILE__MAX__RULE=e,this}less(a){var e=e=>{let t=e=>(e instanceof Blob||e instanceof File)&&e.size>a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être inférieure à `+a,en:`the size of ${r} must be less than `+a}[this.get_lang()]))}};return this.addRule(e),this._FILE__LESS__RULE=e,this}greater(a){var e=e=>{let t=e=>(e instanceof Blob||e instanceof File)&&e.size<a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être supérieure à `+a,en:`the size of ${r} must be greater than `+a}[this.get_lang()]))}};return this.addRule(e),this._FILE__GREATER__RULE=e,this}length(a){var e=e=>{let t=e=>(e instanceof Blob||e instanceof File)&&e.size===a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être égale à `+a,en:`the size of ${r} must be equal to `+a}[this.get_lang()]))}};return this.addRule(e),this._FILE__LENGTH__RULE=e,this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.fileValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}fileValidation(t){try{let e=void 0;var r,i;for({rule:r,name:i}of[{rule:this._FILE__RULE,name:"FILE__RULE"},{rule:this._FILE__MIN__RULE,name:"FILE__MIN__RULE"},{rule:this._FILE__MAX__RULE,name:"FILE__MAX__RULE"},{rule:this._FILE__LESS__RULE,name:"FILE__LESS__RULE"},{rule:this._FILE__GREATER__RULE,name:"FILE__GREATER__RULE"},{rule:this._FILE__LENGTH__RULE,name:"FILE__LENGTH__RULE"}])if(void 0!==r){var a=r(e?.data||t);if(void 0!==(e=void 0!==a?a:e)&&!e.valid)return e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule=i,e}return e}catch(e){var _={data:void 0,valid:!1,error:String(e)};return this.getMapError()(_,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}dataUrlToFile(e,t="file"){var e=e.split(","),r=e[0].match(/:(.*?);/);if(!r)throw new Error("Le DataURL ne contient pas de MIME valide");var r=r[1],i={"image/jpeg":"jpg","image/png":"png","image/gif":"gif","image/webp":"webp","image/bmp":"bmp","image/tiff":"tif","image/svg+xml":"svg","image/x-icon":"ico","image/heic":"heic","image/heif":"heif","image/avif":"avif","video/mp4":"mp4","video/webm":"webm","video/ogg":"ogv","video/x-msvideo":"avi","video/quicktime":"mov","video/mpeg":"mpeg","video/x-matroska":"mkv","audio/mpeg":"mp3","audio/ogg":"ogg","audio/wav":"wav","audio/webm":"weba","audio/aac":"aac","audio/flac":"flac","audio/opus":"opus","application/pdf":"pdf","application/msword":"doc","application/vnd.openxmlformats-officedocument.wordprocessingml.document":"docx","application/vnd.ms-excel":"xls","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"xlsx","application/vnd.ms-powerpoint":"ppt","application/vnd.openxmlformats-officedocument.presentationml.presentation":"pptx","text/plain":"txt","text/csv":"csv","text/rtf":"rtf","application/epub+zip":"epub","text/html":"html","text/css":"css","text/javascript":"js","application/javascript":"js","application/json":"json","application/xml":"xml","text/xml":"xml","application/zip":"zip","application/gzip":"gz","application/x-tar":"tar","application/x-rar-compressed":"rar","application/x-7z-compressed":"7z","application/x-bzip2":"bz2","application/x-xz":"xz","text/x-python":"py","text/x-c":"c","text/x-c++":"cpp","text/x-java-source":"java","application/java-archive":"jar","application/x-sh":"sh","application/x-bat":"bat","text/x-php":"php","text/x-typescript":"ts","application/x-sql":"sql","font/ttf":"ttf","font/otf":"otf","font/woff":"woff","font/woff2":"woff2","application/octet-stream":"bin","application/x-executable":"exe","application/x-dosexec":"exe","application/x-msdownload":"msi","application/x-iso9660-image":"iso"}[r]||r.split("/")[1]||"bin",a=atob(e[1]),_=a.length,o=new Uint8Array(_);for(let e=0;e<_;e++)o[e]=a.charCodeAt(e);e=`${t}-${Date.now()}.`+i;return new File([o],e,{type:r})}}var JONSchemas={String:StringSchema$1,Number:NumberSchema$1,Boolean:BooleanSchema$1,Date:DateSchema$1,Enum:EnumSchema$1,NotEnum:NotEnumSchema$1,Array:ArraySchema$1,File:FileSchema,Object:ObjectSchema$1,ChosenType:ChosenTypeSchema$1,AnyType:AnyTypeSchema$1};"undefined"!=typeof window&&(window.JON=JONSchemas);let StringSchema=JONSchemas.String,NumberSchema=JONSchemas.Number,BooleanSchema=JONSchemas.Boolean,DateSchema=JONSchemas.Date,EnumSchema=JONSchemas.Enum,NotEnumSchema=JONSchemas.NotEnum,ArraySchema=JONSchemas.Array,ObjectSchema=JONSchemas.Object,ChosenTypeSchema=JONSchemas.ChosenType,AnyTypeSchema=JONSchemas.AnyType;var index_all={...JONSchemas};export{AnyTypeSchema,ArraySchema,BooleanSchema,ChosenTypeSchema,DateSchema,EnumSchema,NotEnumSchema,NumberSchema,ObjectSchema,StringSchema,index_all as default};
1
+ let NODEENV="development",langs=["en","fr"],dateTimeFormatInitial="%Y-%m-%dT%H:%M:%S.%fZ",dateFormat5="%Y/%m/%d",timeFormat3="%H:%M:%S.%f",tabAlphabetique=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"];function getLang(e){return langs.includes(e)?e:"fr"}[...tabAlphabetique,...tabAlphabetique.map(e=>e.toUpperCase())];class Timez{_date;static FORMAT_TOKENS={"%Y":e=>e.year()?.toString().padStart(4,"0"),"%y":e=>e.year()?.toString().slice(-2).padStart(2,"0"),"%m":e=>e.month()?.toString().padStart(2,"0"),"%d":e=>e.date()?.toString().padStart(2,"0"),"%H":e=>e.hour()?.toString().padStart(2,"0"),"%M":e=>e.minute()?.toString().padStart(2,"0"),"%S":e=>e.second()?.toString().padStart(2,"0"),"%f":e=>e.millisecond()?.toString().padStart(3,"0"),"%z":e=>{e=e.utcOffset();if(e)return(0<=e?"+":"-")+Math.floor(Math.abs(e)/60).toString().padStart(2,"0")+(Math.abs(e)%60).toString().padStart(2,"0")},"%s":e=>{e=e.valueOf();return e?Math.floor(e/1e3).toString():void 0}};static PREDEFINED_FORMATS={ISO:"%Y-%m-%dT%H:%M:%S.%fZ",ISO_DATE:"%Y-%m-%d",ISO_TIME:"%H:%M:%S.%fZ",COMPACT:"%Y%m%d%H%M%S",SLASH_DATETIME:"%Y/%m/%d %H:%M:%S.%fZ",SLASH_DATETIME_SEC:"%Y/%m/%d %H:%M:%S",SLASH_DATETIME_MIN:"%Y/%m/%d %H:%M",EUROPEAN:"%d/%m/%Y %H:%M:%S GMT%z",SLASH_DATE:"%Y/%m/%d",TIME_MICRO:"%H:%M:%S.%fZ",TIME_SEC:"%H:%M:%S",CUSTOM_GREETING:"[Bonjour celestin, ][la date actuelle est:: le] %d/%m/%Y [à] %H:%M:%S.%f[Z]"};constructor(e,t=!1){!1===this.dateChecker(e)?this._date=void 0:e instanceof Timez&&e&&e?._date?this._date=new Date(e?._date):e instanceof Date?this._date=new Date(e):"string"==typeof e?this._date=Timez.parseString(e,t):"number"==typeof e?this._date=new Date(e):null==e||"number"==typeof e&&isNaN(e)?this._date=new Date:this._date=void 0}static now(){return new Timez}static parse(e,t){return"string"==typeof t&&0<t.length&&(e instanceof Timez&&e&&e?._date||e instanceof Date||"string"==typeof e||"number"==typeof e||null==e||"number"==typeof e&&isNaN(e))&&Timez.parseWithFormat(e,t)||new Timez(e)}static unix(e){return new Timez(1e3*e)}static utc(){var e=new Date;return new Timez(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds()))}year(){return this._date?.getFullYear()}month(){return this._date?this._date.getMonth()+1:void 0}date(){return this._date?.getDate()}hour(){return this._date?.getHours()}minute(){return this._date?.getMinutes()}second(){return this._date?.getSeconds()}millisecond(){return this._date?.getMilliseconds()}day(){return this._date?.getDay()}add(e,t){if(!this._date)return new Timez(void 0);var r=new Date(this._date);switch(t){case"years":r.setFullYear(r.getFullYear()+e);break;case"months":r.setMonth(r.getMonth()+e);break;case"days":r.setDate(r.getDate()+e);break;case"hours":r.setHours(r.getHours()+e);break;case"minutes":r.setMinutes(r.getMinutes()+e);break;case"seconds":r.setSeconds(r.getSeconds()+e);break;case"milliseconds":r.setMilliseconds(r.getMilliseconds()+e)}return new Timez(r)}subtract(e,t){return this.add(-e,t)}startOf(e){if(!this._date)return new Timez(void 0);var t=new Date(this._date);switch(e){case"year":t.setMonth(0,1),t.setHours(0,0,0,0);break;case"month":t.setDate(1),t.setHours(0,0,0,0);break;case"day":t.setHours(0,0,0,0);break;case"hour":t.setMinutes(0,0,0);break;case"minute":t.setSeconds(0,0);break;case"second":t.setMilliseconds(0)}return new Timez(t)}endOf(e){var t=this.startOf(e);switch(e){case"year":return t.add(1,"years").subtract(1,"milliseconds");case"month":return t.add(1,"months").subtract(1,"milliseconds");case"day":return t.add(1,"days").subtract(1,"milliseconds");case"hour":return t.add(1,"hours").subtract(1,"milliseconds");case"minute":return t.add(1,"minutes").subtract(1,"milliseconds");case"second":return t.add(1,"seconds").subtract(1,"milliseconds");default:return t}}isBefore(e,t="()"){t="]"===t[1],e=e instanceof Timez?e:new Timez(e);return!(!this._date||!e._date)&&(!t&&this._date<e._date||!!t&&this._date<=e._date)}isAfter(e,t="()"){t="["===t[0],e=e instanceof Timez?e:new Timez(e);return!(!this._date||!e._date)&&(!t&&this._date>e._date||!!t&&this._date>=e._date)}isSame(e,t){var r,e=e instanceof Timez?e:new Timez(e);return!t&&this._date&&e._date?this._date.getTime()===e._date.getTime():(r=t?this.startOf(t):void 0,e=t?e.startOf(t):void 0,!!(r&&r?._date&&e&&e?._date)&&r._date.getTime()===e._date.getTime())}isBetween(e,t,r="()"){var e=e instanceof Timez?e:new Timez(e),t=t instanceof Timez?t:new Timez(t),i="["===r[0],r="]"===r[1],i=i&&this.isSame(e)||this.isAfter(e),e=r&&this.isSame(t)||this.isBefore(t);return i&&e}format(e){if(!e)return this.toISOString();var t,r,i=Timez.PREDEFINED_FORMATS[e];if(i)return this.format(i);let a="",_=0;for(;_<e.length;)"["===e[_]?-1===(r=e.indexOf("]",_))?(a+=e[_],_++):(t=e.substring(_+1,r),a+=t,_=r+1):"%"===e[_]&&_+1<e.length?(t="%"+e[_+1],r=Timez.FORMAT_TOKENS[t],a+=r?r(this):t,_+=2):(a+=e[_],_++);return a}setTimezone(e){var t;return this._date?(t=this._date.getTimezoneOffset(),e=this.parseTimezoneOffset(e),e=new Date(this._date.getTime()+6e4*(e-t)),new Timez(e)):new Timez(void 0)}utc(){return this._date?new Timez(new Date(Date.UTC(this._date.getUTCFullYear(),this._date.getUTCMonth(),this._date.getUTCDate(),this._date.getUTCHours(),this._date.getUTCMinutes(),this._date.getUTCSeconds(),this._date.getUTCMilliseconds()))):new Timez(void 0)}local(){return this._date?new Timez(new Date(this._date.getFullYear(),this._date.getMonth(),this._date.getDate(),this._date.getHours(),this._date.getMinutes(),this._date.getSeconds(),this._date.getMilliseconds())):new Timez(void 0)}toString(){return this._date?.toString()}toISOString(){return this._date?.toISOString()}toDate(){return this._date?new Date(this._date):void 0}valueOf(){return this._date?.getTime()}unix(){return this._date?Math.floor(this._date.getTime()/1e3):void 0}utcOffset(){return this._date?-this._date.getTimezoneOffset():void 0}isCorrect(){return!!this._date&&!isNaN(this._date.getTime())}timezone(){if(this._date)try{return(new Intl.DateTimeFormat).resolvedOptions().timeZone||void 0}catch(e){return this.timezoneFromOffset()}}timezoneAbbr(){if(this._date)try{return new Intl.DateTimeFormat("en",{timeZoneName:"short"}).formatToParts(this._date).find(e=>"timeZoneName"===e.type)?.value||void 0}catch(e){return this.timezoneAbbrFromOffset()}}timezoneName(){if(this._date)try{return new Intl.DateTimeFormat("en",{timeZoneName:"long"}).formatToParts(this._date).find(e=>"timeZoneName"===e.type)?.value||void 0}catch(e){return this.timezoneNameFromOffset()}}timezoneOffsetString(){var e=this.utcOffset();if(void 0!==e)return(0<=e?"+":"-")+Math.floor(Math.abs(e)/60).toString().padStart(2,"0")+":"+(Math.abs(e)%60).toString().padStart(2,"0")}dateChecker(e){return e instanceof Timez&&!!e&&!!e?._date||e instanceof Date||"string"==typeof e||"number"==typeof e||null==e||"number"==typeof e&&isNaN(e)}timezoneFromOffset(){var e=this.utcOffset();if(void 0!==e)return{0:"Etc/UTC",60:"Europe/Paris",120:"Europe/Athens",180:"Europe/Moscow",240:"Asia/Dubai",270:"Asia/Tehran",300:"Asia/Karachi",330:"Asia/Kolkata",345:"Asia/Rangoon",360:"Asia/Dhaka",390:"Asia/Yangon",420:"Asia/Bangkok",480:"Asia/Shanghai",525:"Asia/Kathmandu",540:"Asia/Tokyo",570:"Australia/Adelaide",600:"Australia/Sydney",630:"Australia/Lord_Howe",660:"Pacific/Noumea",675:"Australia/Eucla",720:"Pacific/Auckland",780:"Pacific/Chatham","-60":"Atlantic/Azores","-120":"America/Noronha","-180":"America/Argentina/Buenos_Aires","-210":"America/St_Johns","-240":"America/Halifax","-270":"America/Caracas","-300":"America/New_York","-360":"America/Chicago","-420":"America/Denver","-480":"America/Los_Angeles","-540":"America/Anchorage","-600":"Pacific/Honolulu","-660":"Pacific/Pago_Pago","-720":"Pacific/Kiritimati"}[e]||"Etc/GMT"+(0<=e?"-":"+")+Math.abs(e)/60}timezoneAbbrFromOffset(){var e=this.utcOffset();if(void 0!==e)return{0:"GMT",60:"CET","-300":"EST","-360":"CST","-420":"MST","-480":"PST"}[e]||"GMT"+(0<=e?"+":"")+e/60}timezoneNameFromOffset(){var e=this.utcOffset();if(void 0!==e)return{0:"Greenwich Mean Time",60:"Central European Time","-300":"Eastern Standard Time","-360":"Central Standard Time","-420":"Mountain Standard Time","-480":"Pacific Standard Time"}[e]||"GMT"+(0<=e?"+":"")+e/60}isDST(){if(this._date)try{var e=new Date(this._date.getFullYear(),0,1),t=new Date(this._date.getFullYear(),6,1),r=Math.max(e.getTimezoneOffset(),t.getTimezoneOffset());return this._date.getTimezoneOffset()<r}catch(e){}}static parseString(e,t=!1){var r=new Date(e);if(!isNaN(r.getTime()))return r;var i,a=[/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})\.(\d{3})Z$/,/^(\d{4})-(\d{2})-(\d{2})$/,/^(\d{4})\/(\d{2})\/(\d{2}) (\d{2}):(\d{2}):(\d{2})$/,/^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})$/];for(i of a){var _=e.match(i);if(_){_=_.slice(1).map(Number);if(i===a[0])return new Date(Date.UTC(_[0],_[1]-1,_[2],_[3],_[4],_[5],_[6]));if(i===a[1])return new Date(_[0],_[1]-1,_[2]);if(i===a[2])return new Date(_[0],_[1]-1,_[2],_[3],_[4],_[5]);if(i===a[3])return new Date(_[0],_[1]-1,_[2],_[3],_[4],_[5])}}r=new Date(e);if(!isNaN(r.getTime()))return r;if(t)throw new Error("Unable to parse date string: "+e)}static parseWithFormat(e,a){if(e&&a){var _=String(e).trim();if(_){var o={Y:{regex:/\d{4}/,extract:e=>parseInt(e,10)},y:{regex:/\d{2}/,extract:e=>{e=parseInt(e,10);return 70<=e?1900+e:2e3+e}},m:{regex:/\d{1,2}/,extract:e=>parseInt(e,10)},d:{regex:/\d{1,2}/,extract:e=>parseInt(e,10)},H:{regex:/\d{1,2}/,extract:e=>parseInt(e,10)},M:{regex:/\d{1,2}/,extract:e=>parseInt(e,10)},S:{regex:/\d{1,2}/,extract:e=>parseInt(e,10)},f:{regex:/\d{1,3}/,extract:e=>parseInt(e,10)}},n={year:(new Date).getFullYear(),month:1,day:1,hour:0,minute:0,second:0,millisecond:0};let e=0,t=0,r=!1,i="";for(;t<a.length&&e<_.length;){var s=a[t];if("["===s)r=!0,i="",t++;else if("]"===s&&r){if(_.substring(e,e+i.length)!==i)return;e+=i.length,r=!1,i="",t++}else if(r)i+=s,t++;else if("%"===s&&t+1<a.length){var l=a[t+1],d=o[l];if(d){var h=_.substring(e).match(d.regex);if(!h||0!==h.index)return;var h=h[0],u=d.extract(h);switch(l){case"Y":case"y":n.year=u;break;case"m":n.month=u;break;case"d":n.day=u;break;case"H":n.hour=u;break;case"M":n.minute=u;break;case"S":n.second=u;break;case"f":n.millisecond=u}e+=h.length}else e++;t+=2}else{if(s!==_[e])return;e++,t++}}if(!(n.month<1||12<n.month||n.day<1||31<n.day||n.hour<0||23<n.hour||n.minute<0||59<n.minute||n.second<0||59<n.second||n.millisecond<0||999<n.millisecond))try{var E=new Date(n.year,n.month-1,n.day,n.hour,n.minute,n.second,n.millisecond);if(!isNaN(E.getTime()))return new Timez(E)}catch(e){}}}}static getTokenLength(e){return{Y:4,y:2,m:2,d:2,H:2,M:2,S:2,f:3,z:5}[e]||1}parseTimezoneOffset(e){var t={UTC:0,EST:-300,EDT:-240,CST:-360,CDT:-300,PST:-480,PDT:-420};return void 0!==t[e.toUpperCase()]?t[e.toUpperCase()]:(t=e.match(/^([+-])(\d{1,2}):?(\d{2})?$/))?("+"===t[1]?1:-1)*(60*parseInt(t[2],10)+(t[3]?parseInt(t[3],10):0)):this._date?-this._date.getTimezoneOffset():0}static get FORMATS(){return{...Timez.PREDEFINED_FORMATS}}static exposeToGlobal(){"undefined"!=typeof window&&(window.Timez=Timez)}}function InitialMapFunct(e){return e}function cleanField(e,t=15,r=!1){r="boolean"==typeof r&&r,t="number"==typeof t&&0<t?t:15;e=String(e);return e.length>t?r?"..."+e.slice(-t):e.slice(0,t)+"...":e}function defaultMapError(e,t,r=0,i,a){return e}function isDatetimeFormat(e,t){let r=!1;try{r=Timez.parse(e,t).isCorrect()}catch(e){r=!1}return r}"undefined"!=typeof window&&(window.Timez=Timez);let defaultDateFormats={datetime:dateTimeFormatInitial,date:dateFormat5,time:timeFormat3};function isNotNull(e){return!(null==e||"number"==typeof e&&isNaN(e))}function isDate(e,t=void 0,r=dateTimeFormatInitial){r="string"==typeof r&&0<r.length?r:void 0;var i=Object.keys(defaultDateFormats),i=((t=[...i,"undefined","string"].includes(t||"")?t:void 0)&&i.includes(t||"")&&(r=defaultDateFormats[t]),Timez.parse(e,r).isCorrect(),"string"==typeof r&&0<r.length&&Timez.parse(e,r).isCorrect()||"string"===t&&"string"==typeof e&&0<e.length&&void 0!==r&&Timez.parse(e,r).isCorrect());return i}function isString(e,t=void 0,r=void 0){r="string"==typeof r&&0<r.length?r:void 0;var i=Object.keys(defaultDateFormats);return(t=[...i,"undefined","other"].includes(t||"")?t:void 0)&&i.includes(t||"")&&(r=defaultDateFormats[t]),!("boolean"==typeof e)&&!e||"string"==typeof r&&0<r.length&&Timez.parse(e,r).isCorrect()||("other"===t||void 0===t)&&typeof e in["string","number","boolean"]||"undefined"===t&&void 0===e}function isNumber(e){let t=!0;try{var r;void 0!==e&&(r=Number(e),t=!isNaN(r)&&isFinite(r))}catch{t=!1}return t}function isBoolean(e,t=[],r=!1){return"boolean"==typeof e||t.includes(e)||"string"==typeof e&&t.includes(e.toLowerCase())||!e&&!r}function convertToBoolean(e){let t=e;return"boolean"==typeof e?t=e:void 0!==e&&["true","t","1","false","f","0"].includes(String(e).toLowerCase())&&(t=["true","t","1"].includes(String(e).toLowerCase())),t}class JONDefaultSchema{_label=void 0;_lang="fr";_default=void 0;_rules=[];_value=void 0;_default_error=void 0;map=void 0;preMap=void 0;_mapError={map:defaultMapError};_errMsgs=void 0;_PRIMARY__REQUIRED__RULE=void 0;_PRIMARY__ENUM__RULE=void 0;_PRIMARY__ENUM_NOT__RULE=void 0;_PRIMARY__CUSTOM01__RULE=void 0;_PRIMARY__CUSTOM02__RULE=void 0;_PRIMARY__CUSTOM03__RULE=void 0;_PRIMARY__CUSTOM04__RULE=void 0;_PRIMARY__CUSTOM05__RULE=void 0;_PRIMARY__CUSTOM06__RULE=void 0;_PRIMARY__CUSTOM07__RULE=void 0;_PRIMARY__CUSTOM08__RULE=void 0;_PRIMARY__CUSTOM09__RULE=void 0;_PRIMARY__CUSTOM10__RULE=void 0;_PRIMARY__CUSTOM11__RULE=void 0;_PRIMARY__CUSTOM12__RULE=void 0;_PRIMARY__CUSTOM13__RULE=void 0;_PRIMARY__CUSTOM14__RULE=void 0;_PRIMARY__CUSTOM15__RULE=void 0;_PRIMARY__CUSTOM16__RULE=void 0;_PRIMARY__CUSTOM17__RULE=void 0;_PRIMARY__CUSTOM18__RULE=void 0;_PRIMARY__CUSTOM19__RULE=void 0;_PRIMARY__CUSTOM20__RULE=void 0;_PRIMARY__CUSTOM21__RULE=void 0;_PRIMARY__CUSTOM22__RULE=void 0;_PRIMARY__CUSTOM23__RULE=void 0;_PRIMARY__CUSTOM24__RULE=void 0;_PRIMARY__CUSTOM25__RULE=void 0;_PRIMARY__CUSTOM26__RULE=void 0;_PRIMARY__CUSTOM27__RULE=void 0;_PRIMARY__CUSTOM28__RULE=void 0;_PRIMARY__CUSTOM29__RULE=void 0;_PRIMARY__CUSTOM30__RULE=void 0;_PRIMARY__CUSTOM31__RULE=void 0;_PRIMARY__CUSTOM32__RULE=void 0;_PRIMARY__CUSTOM33__RULE=void 0;_PRIMARY__CUSTOM34__RULE=void 0;_PRIMARY__CUSTOM35__RULE=void 0;_PRIMARY__CUSTOM36__RULE=void 0;_PRIMARY__CUSTOM37__RULE=void 0;_PRIMARY__CUSTOM38__RULE=void 0;_PRIMARY__CUSTOM39__RULE=void 0;_PRIMARY__CUSTOM40__RULE=void 0;_PRIMARY__CUSTOM41__RULE=void 0;_PRIMARY__CUSTOM42__RULE=void 0;_PRIMARY__CUSTOM43__RULE=void 0;_PRIMARY__CUSTOM44__RULE=void 0;_PRIMARY__CUSTOM45__RULE=void 0;_PRIMARY__CUSTOM46__RULE=void 0;_PRIMARY__CUSTOM47__RULE=void 0;_PRIMARY__CUSTOM48__RULE=void 0;_PRIMARY__CUSTOM49__RULE=void 0;_PRIMARY__CUSTOM50__RULE=void 0;_errorRule=void 0;constructor(e="fr"){this._lang=getLang(e)}applyApp(a=e=>!!e,_=e=>e,o=void 0){let t=e=>{let t=e=>a(e);var e=void 0!==e?e:this._default,r=t(e),i=r?t(i=e)?_(i):i:void 0,e=(this._value=i,r?void 0:(e=>{if(t(e))return new Error("Unknown error");{let t=void 0;try{t=o&&o(this.get_label())}catch(e){t=o}return t instanceof Error?t:"string"==typeof t&&0<t.length?new Error(t):"object"==typeof t&&void 0!==t&&this.get_lang()in t?new Error(t[this.get_lang()]):new Error({fr:"Erreur inconnue",en:"Unknown error"}[this.get_lang()])}})(e));return{valid:r,data:i,error:e}};this.addRule(t);return(()=>{var e;for(e of["_PRIMARY__CUSTOM01__RULE","_PRIMARY__CUSTOM02__RULE","_PRIMARY__CUSTOM03__RULE","_PRIMARY__CUSTOM04__RULE","_PRIMARY__CUSTOM05__RULE","_PRIMARY__CUSTOM06__RULE","_PRIMARY__CUSTOM07__RULE","_PRIMARY__CUSTOM08__RULE","_PRIMARY__CUSTOM09__RULE","_PRIMARY__CUSTOM10__RULE","_PRIMARY__CUSTOM11__RULE","_PRIMARY__CUSTOM12__RULE","_PRIMARY__CUSTOM13__RULE","_PRIMARY__CUSTOM14__RULE","_PRIMARY__CUSTOM15__RULE","_PRIMARY__CUSTOM16__RULE","_PRIMARY__CUSTOM17__RULE","_PRIMARY__CUSTOM18__RULE","_PRIMARY__CUSTOM19__RULE","_PRIMARY__CUSTOM20__RULE","_PRIMARY__CUSTOM21__RULE","_PRIMARY__CUSTOM22__RULE","_PRIMARY__CUSTOM23__RULE","_PRIMARY__CUSTOM24__RULE","_PRIMARY__CUSTOM25__RULE","_PRIMARY__CUSTOM26__RULE","_PRIMARY__CUSTOM27__RULE","_PRIMARY__CUSTOM28__RULE","_PRIMARY__CUSTOM29__RULE","_PRIMARY__CUSTOM30__RULE","_PRIMARY__CUSTOM31__RULE","_PRIMARY__CUSTOM32__RULE","_PRIMARY__CUSTOM33__RULE","_PRIMARY__CUSTOM34__RULE","_PRIMARY__CUSTOM35__RULE","_PRIMARY__CUSTOM36__RULE","_PRIMARY__CUSTOM37__RULE","_PRIMARY__CUSTOM38__RULE","_PRIMARY__CUSTOM39__RULE","_PRIMARY__CUSTOM40__RULE","_PRIMARY__CUSTOM41__RULE","_PRIMARY__CUSTOM42__RULE","_PRIMARY__CUSTOM43__RULE","_PRIMARY__CUSTOM44__RULE","_PRIMARY__CUSTOM45__RULE","_PRIMARY__CUSTOM46__RULE","_PRIMARY__CUSTOM47__RULE","_PRIMARY__CUSTOM48__RULE","_PRIMARY__CUSTOM49__RULE","_PRIMARY__CUSTOM50__RULE"])if(void 0===this[e]){this[e]=t;break}})(),this}required(e=!0){e="boolean"!=typeof e||e;var t=e=>{let t=e=>void 0!==e;var e=void 0!==e?e:this._default,r=t(e),i=r?(t(i=e),i):void 0,e=(this._value=i,r?void 0:t(e=e)?new Error("Unknown error"):(e=JSON.stringify(""+this.get_label()),new Error({fr:e+" est requis",en:e+" is required"}[this.get_lang()])));return{valid:r,data:i,error:e}};return this.addRule(t),this._PRIMARY__REQUIRED__RULE=e?t:void 0,this}enum(...a){a=Array.isArray(a)?a:[];var e=e=>{let t=e=>!e||void 0===e||a.includes(e);var e=void 0!==e?e:this._default,r=t(e),i=r?(t(i=e),i):void 0,e=(this._value=i,r?void 0:t(e=e)?new Error("Unknown error"):(e=JSON.stringify(""+this.get_label()),new Error({fr:e+" correspond à aucun choix défini",en:e+" correspond to any defined choice"}[this.get_lang()])));return{valid:r,data:i,error:e}};return this.addRule(e),this._PRIMARY__ENUM__RULE=e,this}enumNot(...a){a=Array.isArray(a)?a:[];var e=e=>{let t=e=>!e||void 0===e||!a.includes(e);var e=void 0!==e?e:this._default,r=t(e),i=r?(t(i=e),i):void 0,e=(this._value=i,r?void 0:t(e=e)?new Error("Unknown error"):(e=JSON.stringify(""+this.get_label()),new Error({fr:e+" ne correspond à aucun choix défini",en:e+" does not correspond to any defined choice"}[this.get_lang()])));return{valid:r,data:i,error:e}};return this.addRule(e),this._PRIMARY__ENUM_NOT__RULE=e,this}get_default(){return this._default}set_default(e){this._default=e}get_lang(){return this._lang}set_lang(e){this._lang=getLang(e)}get_label(){return cleanField("string"==typeof this._label&&0<this._label.length?this._label:{fr:"l'element",en:"the element"}[this._lang],30,!0)}set_label(e){this._label="string"==typeof e&&0<e.length?e:void 0}get_error(){return this._default_error}set_error(e){e instanceof Error?this._default_error=e:"string"==typeof e&&0<e.length?this._default_error=new Error(e):"object"==typeof e&&void 0!==e&&this.get_lang()in e&&(this._default_error=new Error(e[this.get_lang()]))}defaultError(e){return this.set_error(e),this}lang(e){return this.set_lang(e),this}label(e){return this.set_label(e),this}default(e){return this.set_default(e),this}getLang(){return this._lang}setLang(e){this._lang=getLang(e)}addRule(e){this._rules.push(e)}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a=this.primaryValidation(e?.data??t);return(e=a?a:e)&&!e.valid?(r=e.error,e.error=void 0!==this._default_error?this._default_error:e.error,this._mapError.map(e,r,this._errorRule,this.get_label(),this.getLang())):e?(e&&e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(i={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this._mapError.map(i,void 0,"NO_RULE__RULE",this.get_label(),this.getLang()))}catch(e){t={data:void 0,valid:!1,error:String(e)};return this._mapError.map(t,void 0,"UNKNOWN__RULE",this.get_label(),this.getLang())}}isValid(e){return this.validate(e),this.validate(e).valid}error(e){return this.validate(e)?.error}sanitize(e){return this.validate(e)?.data}primaryValidation(t){try{let e=void 0;var r,i;for({rule:r,name:i}of[{rule:this._PRIMARY__REQUIRED__RULE,name:"REQUIRED__RULE"},{rule:this._PRIMARY__ENUM__RULE,name:"ENUM__RULE"},{rule:this._PRIMARY__ENUM_NOT__RULE,name:"ENUM_NOT__RULE"},{rule:this._PRIMARY__CUSTOM01__RULE,name:"CUSTOM01__RULE"},{rule:this._PRIMARY__CUSTOM02__RULE,name:"CUSTOM02__RULE"},{rule:this._PRIMARY__CUSTOM03__RULE,name:"CUSTOM03__RULE"},{rule:this._PRIMARY__CUSTOM04__RULE,name:"CUSTOM04__RULE"},{rule:this._PRIMARY__CUSTOM05__RULE,name:"CUSTOM05__RULE"},{rule:this._PRIMARY__CUSTOM06__RULE,name:"CUSTOM06__RULE"},{rule:this._PRIMARY__CUSTOM07__RULE,name:"CUSTOM07__RULE"},{rule:this._PRIMARY__CUSTOM08__RULE,name:"CUSTOM08__RULE"},{rule:this._PRIMARY__CUSTOM09__RULE,name:"CUSTOM09__RULE"},{rule:this._PRIMARY__CUSTOM10__RULE,name:"CUSTOM10__RULE"},{rule:this._PRIMARY__CUSTOM11__RULE,name:"CUSTOM11__RULE"},{rule:this._PRIMARY__CUSTOM12__RULE,name:"CUSTOM12__RULE"},{rule:this._PRIMARY__CUSTOM13__RULE,name:"CUSTOM13__RULE"},{rule:this._PRIMARY__CUSTOM14__RULE,name:"CUSTOM14__RULE"},{rule:this._PRIMARY__CUSTOM15__RULE,name:"CUSTOM15__RULE"},{rule:this._PRIMARY__CUSTOM16__RULE,name:"CUSTOM16__RULE"},{rule:this._PRIMARY__CUSTOM17__RULE,name:"CUSTOM17__RULE"},{rule:this._PRIMARY__CUSTOM18__RULE,name:"CUSTOM18__RULE"},{rule:this._PRIMARY__CUSTOM19__RULE,name:"CUSTOM19__RULE"},{rule:this._PRIMARY__CUSTOM20__RULE,name:"CUSTOM20__RULE"},{rule:this._PRIMARY__CUSTOM21__RULE,name:"CUSTOM21__RULE"},{rule:this._PRIMARY__CUSTOM22__RULE,name:"CUSTOM22__RULE"},{rule:this._PRIMARY__CUSTOM23__RULE,name:"CUSTOM23__RULE"},{rule:this._PRIMARY__CUSTOM24__RULE,name:"CUSTOM24__RULE"},{rule:this._PRIMARY__CUSTOM25__RULE,name:"CUSTOM25__RULE"},{rule:this._PRIMARY__CUSTOM26__RULE,name:"CUSTOM26__RULE"},{rule:this._PRIMARY__CUSTOM27__RULE,name:"CUSTOM27__RULE"},{rule:this._PRIMARY__CUSTOM28__RULE,name:"CUSTOM28__RULE"},{rule:this._PRIMARY__CUSTOM29__RULE,name:"CUSTOM29__RULE"},{rule:this._PRIMARY__CUSTOM30__RULE,name:"CUSTOM30__RULE"},{rule:this._PRIMARY__CUSTOM31__RULE,name:"CUSTOM31__RULE"},{rule:this._PRIMARY__CUSTOM32__RULE,name:"CUSTOM32__RULE"},{rule:this._PRIMARY__CUSTOM33__RULE,name:"CUSTOM33__RULE"},{rule:this._PRIMARY__CUSTOM34__RULE,name:"CUSTOM34__RULE"},{rule:this._PRIMARY__CUSTOM35__RULE,name:"CUSTOM35__RULE"},{rule:this._PRIMARY__CUSTOM36__RULE,name:"CUSTOM36__RULE"},{rule:this._PRIMARY__CUSTOM37__RULE,name:"CUSTOM37__RULE"},{rule:this._PRIMARY__CUSTOM38__RULE,name:"CUSTOM38__RULE"},{rule:this._PRIMARY__CUSTOM39__RULE,name:"CUSTOM39__RULE"},{rule:this._PRIMARY__CUSTOM40__RULE,name:"CUSTOM40__RULE"},{rule:this._PRIMARY__CUSTOM41__RULE,name:"CUSTOM41__RULE"},{rule:this._PRIMARY__CUSTOM42__RULE,name:"CUSTOM42__RULE"},{rule:this._PRIMARY__CUSTOM43__RULE,name:"CUSTOM43__RULE"},{rule:this._PRIMARY__CUSTOM44__RULE,name:"CUSTOM44__RULE"},{rule:this._PRIMARY__CUSTOM45__RULE,name:"CUSTOM45__RULE"},{rule:this._PRIMARY__CUSTOM46__RULE,name:"CUSTOM46__RULE"},{rule:this._PRIMARY__CUSTOM47__RULE,name:"CUSTOM47__RULE"},{rule:this._PRIMARY__CUSTOM48__RULE,name:"CUSTOM48__RULE"},{rule:this._PRIMARY__CUSTOM49__RULE,name:"CUSTOM49__RULE"},{rule:this._PRIMARY__CUSTOM50__RULE,name:"CUSTOM50__RULE"}])if(void 0!==r){var a=r(e?.data??t);if((e=a?a:e)&&!e.valid)return e.error=void 0!==this._default_error?this._default_error:e.error,this._errorRule=i,e}return e}catch(e){return{data:void 0,valid:!1,error:String(e)}}}getMapError(){return this._mapError="object"==typeof this._mapError&&void 0!==this._mapError?this._mapError:{},"map"in this._mapError?this._mapError.map:defaultMapError}initMapError(e){return this._mapError="object"==typeof this._mapError&&void 0!==this._mapError?this._mapError:{},this._mapError.map="function"==typeof e?e:defaultMapError,this}applyPreMapping(e=InitialMapFunct){return this.preMap=e,this}applyMapping(e=InitialMapFunct){return this.map=e,this}getErrorRule(){return this._errorRule}}class Fodat{static transform(e){if(e instanceof FormData){var t,r,i={};for([t,r]of e.entries()){var a=this.parseKeyPath(t);this.setDeepValue(i,a,this.wrapValue(r))}return i}if("object"==typeof e&&!Array.isArray(e))return e}static toFormData(t,r=new FormData,i){return null!=t&&(!0===t?.__file&&t.file instanceof File?r.append(i,t.file):"object"!=typeof t||t instanceof File?i&&r.append(i,t):Array.isArray(t)?t.forEach((e,t)=>{this.toFormData(e,r,i?i+`[${t}]`:""+t)}):Object.keys(t).forEach(e=>{this.toFormData(t[e],r,i?i+"."+e:e)})),r}static wrapValue(e){return e instanceof File?e:"true"===(e=e.toString())||"false"!==e&&(isNaN(Number(e))?e:Number(e))}static setDeepValue(e,t,r){let i=e;for(let e=0;e<t.length-1;e++){var a=t[e],_=t[e+1];void 0===i[a]&&(i[a]="number"==typeof _?[]:{}),i=i[a]}e=t[t.length-1];i[e]=r}static parseKeyPath(e){var t,r=[];for(t of e.split(/\.|(\[\d+\])/).filter(Boolean)){var i=t.match(/\[(\d+)\]/);r.push(i?Number(i[1]):t)}return r}static exposeToGlobal(){"undefined"!=typeof window&&(window.Fodat=Fodat)}}function checkIfCorrectTypeSchema(e){return e instanceof StringSchema$1||e instanceof NumberSchema$1||e instanceof BooleanSchema$1||e instanceof DateSchema$1||e instanceof ArraySchema$1||e instanceof ObjectSchema$1||e instanceof ChosenTypeSchema$1||e instanceof EnumSchema$1||e instanceof NotEnumSchema$1||e instanceof AnyTypeSchema$1}"undefined"!=typeof window&&(window.Fodat=Fodat);let ArraySchema$1=class extends JONDefaultSchema{_maxValue=void 0;_minValue=void 0;_lessValue=void 0;_greaterValue=void 0;_lengthValue=void 0;_types=[];_ARRAY__RULE=void 0;_ARRAY__TYPE__RULE=void 0;_ARRAY__MIN__RULE=void 0;_ARRAY__MAX__RULE=void 0;_ARRAY__LESS__RULE=void 0;_ARRAY__GREATER__RULE=void 0;_ARRAY__LENGTH__RULE=void 0;constructor(e="fr"){super(e),this.array()}array(){var e=e=>{let t=e=>Array.isArray(e)||null==e;var r,e=null!=e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas un tableau",en:r+" is not an array"}[this.get_lang()]))}};return this.addRule(e),this._ARRAY__RULE=e,this}types(...i){let s=JSON.stringify(""+this.get_label());if(Array.isArray(i)&&0!==i.length){var a=[];for(let t of i){if(!checkIfCorrectTypeSchema(t)){let e=e=>({valid:!1,data:void 0,error:new Error({fr:`${s} a un ou plusieurs types invalides (${cleanField(String(t))}) pour analyse`,en:`${s} has one or more invalid types (${cleanField(String(t))}) for analysis`}[this.get_lang()])});return this.addRule(e),this._ARRAY__TYPE__RULE=e,this}a.push(t)}this._types=a;let n=(i,a)=>{try{let r={valid:!0,data:a,error:void 0};if(null!=a){let e=!1,t=void 0;for(var _ of this._types){var o=_.label(this.get_label()+`[${i}]`).validate(a);if(NODEENV,o.valid){r=o,e=!0;break}t=t||o}!e&&t&&(r=t)}return r}catch(e){return{data:void 0,valid:!1,error:String(e)}}},r=a=>{try{if(!Array.isArray(a)&&null!=a)return{valid:!1,data:void 0,error:new Error({fr:s+" a un type invalide pour analyse",en:s+" has an invalid type for analyse"}[this.get_lang()])};let t=[],r={data:a,valid:!0,error:void 0},i=void 0;if(null!=a)for(let e=0;e<a.length;e++){var _=a[e],o=n(e,_);if(NODEENV,o.valid)r=o,t.push(o.data),i=void 0;else if(!i){t=[],i=o;break}}return i?i:{data:null!=a?t:void 0,valid:r.valid,error:r.error}}catch(e){return{data:void 0,valid:!1,error:String(e)}}},e=e=>{let t=r(e);null==e&&this.get_default();e=t.valid;return{valid:e,data:e?t.data:void 0,error:e?void 0:t.error}};this.addRule(e),this._ARRAY__TYPE__RULE=e}else{let e=e=>({valid:!1,data:void 0,error:new Error({fr:s+" a un ou plusieurs types invalides pour analyse",en:s+" has one or more invalid types for analysis"}[this.get_lang()])});this.addRule(e),this._ARRAY__TYPE__RULE=e}return this}min(a){this._minValue=a;var e=e=>{let r=e=>null==e||Array.isArray(e)&&e.length>=a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._maxValue?new Error({fr:`la taille de ${t} doit être compris entre ${a} et `+this._maxValue,en:`the size of ${t} must be between ${a} and `+this._maxValue}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être au minimum `+a,en:`the size of ${t} must be at least `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._ARRAY__MIN__RULE=e,this}max(a){this._maxValue=a;var e=e=>{let r=e=>null==e||Array.isArray(e)&&e.length<=a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._minValue?new Error({fr:`la taille de ${t} doit être compris entre ${this._minValue} et `+a,en:`the size of ${t} must be between ${this._minValue} and `+a}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être au maximum `+a,en:`the size of ${t} must be maximum `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._ARRAY__MAX__RULE=e,this}less(a){this._lessValue=a;var e=e=>{let r=e=>null==e||Array.isArray(e)&&e.length<a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._greaterValue?new Error({fr:`la taille de ${t} doit être inférieure à ${a} et superieure à `+this._greaterValue,en:`the size of ${t} must be less than ${a} and greater than `+this._greaterValue}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être inferieure à `+a,en:`the size of ${t} must be less than `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._ARRAY__LESS__RULE=e,this}greater(a){this._greaterValue=a;var e=e=>{let r=e=>null==e||Array.isArray(e)&&e.length>a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._lessValue?new Error({fr:`la taille de ${t} doit être inférieure à ${this._lessValue} et superieure à `+a,en:`the size of ${t} must be less than ${this._lessValue} and greater than `+a}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être supérieur à `+a,en:`the size of ${t} must be greater than `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._ARRAY__GREATER__RULE=e,this}length(a){this._lengthValue=a;var e=e=>{let t=e=>null==e||Array.isArray(e)&&e.length===a;var r,e=null!=e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être égale à `+a,en:`the size of ${r} must be equal to `+a}[this.get_lang()]))}};return this.addRule(e),this._ARRAY__LENGTH__RULE=e,this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.arrayValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}arrayValidation(t){try{let e=void 0;var r,i;for({rule:r,name:i}of[{rule:this._ARRAY__RULE,name:"ARRAY__RULE"},{rule:this._ARRAY__MIN__RULE,name:"ARRAY__MIN__RULE"},{rule:this._ARRAY__MAX__RULE,name:"ARRAY__MAX__RULE"},{rule:this._ARRAY__LESS__RULE,name:"ARRAY__LESS__RULE"},{rule:this._ARRAY__GREATER__RULE,name:"ARRAY__GREATER__RULE"},{rule:this._ARRAY__LENGTH__RULE,name:"ARRAY__LENGTH__RULE"},{rule:this._ARRAY__TYPE__RULE,name:"ARRAY__TYPE__RULE"}])if(void 0!==r){var a=r(e?.data||t);if(void 0!==(e=void 0!==a?a:e)&&!e.valid)return e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule=i,e}return e}catch(e){var _={data:void 0,valid:!1,error:String(e)};return this.getMapError()(_,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},ObjectSchema$1=class extends JONDefaultSchema{_struct={};_primaryStruct=!1;_maxValue=void 0;_minValue=void 0;_lessValue=void 0;_greaterValue=void 0;_lengthValue=void 0;_oldValueForStruct=void 0;_OBJECT__RULE=void 0;_OBJECT__STRUCT__RULE=void 0;_OBJECT__PRIMARY_STRUCT__RULE=void 0;_OBJECT__TYPES_VALUES__RULE=void 0;_OBJECT__CONTAINS_KEYS__RULE=void 0;_OBJECT__NO_CONTAINS_KEYS__RULE=void 0;_OBJECT__REGEXP_CONTAINS_KEYS__RULE=void 0;_OBJECT__REGEXP_NO_CONTAINS_KEYS__RULE=void 0;_OBJECT__MIN__RULE=void 0;_OBJECT__MAX__RULE=void 0;_OBJECT__LESS__RULE=void 0;_OBJECT__GREATER__RULE=void 0;_OBJECT__LENGTH__RULE=void 0;constructor(e="fr"){super(e),this.object()}object(){var e=e=>{let t=e=>"object"==typeof e&&null!==e&&!Array.isArray(e)||e instanceof FormData||null==e;var r,i,e=null!=e?e:this.get_default(),a=t(e);return{valid:a,data:a?t(r=e)&&r instanceof FormData?"object"!=typeof(i=Fodat.transform(r))||null===i||Array.isArray(i)?void 0:i:r:void 0,error:a?void 0:t(i=e)?new Error("Unknown error"):(i=JSON.stringify(""+this.get_label()),new Error({fr:i+" n'est pas un objet",en:i+" is not an object"}[this.get_lang()]))}};return this.addRule(e),this._OBJECT__RULE=e,this}structAction(i){let h=JSON.stringify(""+this.get_label());if("object"!=typeof i||null===i||0===Object.keys(i).length){let e=e=>({valid:!1,data:void 0,error:new Error({fr:h+" a un ou plusieurs types invalides pour analyse",en:h+" has one or more invalid types for analysis"}[this.get_lang()])});this.addRule(e),this._OBJECT__STRUCT__RULE=e}else{let d={};for(let[t,r]of Object.entries(i)){if(!checkIfCorrectTypeSchema(r)){let e=e=>({valid:!1,data:void 0,error:new Error({fr:`L'attribut '${t}' de l'element ${h} a un type invalide (${cleanField(String(r))}) pour analyse`,en:`The '${t}' attribute of the ${h} element has an invalid type (${cleanField(String(r))}) for analysis.`}[this.get_lang()])});return this.addRule(e),this._OBJECT__STRUCT__RULE=e,this}d[t]=r}this._struct=d;let r=r=>{try{var i=null!==r&&"object"==typeof r?{...r}:r;if(("object"!=typeof r||null===r||Array.isArray(r))&&null!=r)return{valid:!1,data:void 0,error:new Error({fr:h+" a un type invalide pour analyse",en:h+" has an invalid type for analyse"}[this.get_lang()])};var a={};let e={data:r,valid:!0,error:void 0},t=void 0;if(null!=r){NODEENV;for(var[_,o]of Object.entries(d)){var n=o.label(`${this.get_label()}['${_}']`),s=void 0!==r[_]?r[_]:void 0,l=n.validate(s);if("debug"===NODEENV&&l.valid,NODEENV,!l.valid){a[_]=void 0,t=l;break}e=l,a[_]=l.data,t=void 0}}return t?t:(NODEENV,this._primaryStruct&&null!=r&&i&&Object.keys(i).length!==Object.keys(a).length?{valid:!1,data:void 0,error:new Error({fr:h+" doit avoir le même nombre d'attributs que la structure de validation",en:h+" must have the same number of attributes as the validation structure"}[this.get_lang()])}:{data:null!=r?a:void 0,valid:e.valid,error:e.error})}catch(e){return{data:void 0,valid:!1,error:String(e)}}},e=e=>{let t=r(e);null==e&&this.get_default();e=t.valid;return{valid:e,data:e?t.data:void 0,error:e?void 0:t.error}};this.addRule(e),this._primaryStruct?this._OBJECT__PRIMARY_STRUCT__RULE=e:this._OBJECT__STRUCT__RULE=e}return this}struct(e){return this._primaryStruct=!1,this.structAction(e)}primaryStruct(e){return this._primaryStruct=!0,this.structAction(e)}getStruct(){return this._struct}typesValues(...i){let d=JSON.stringify(""+this.get_label());if(Array.isArray(i)&&0!==i.length){let s=[];for(let t of i){if(!checkIfCorrectTypeSchema(t)){let e=e=>({valid:!1,data:void 0,error:new Error({fr:`${d} a un ou plusieurs typesValues invalides (${cleanField(String(t))}) pour analyse`,en:`${d} has one or more invalid typesValues (${cleanField(String(t))}) for analysis`}[this.get_lang()])});return this.addRule(e),this._OBJECT__TYPES_VALUES__RULE=e,this}s.push(t)}let l=(i,a)=>{try{let e={valid:!0,data:a,error:void 0},t=void 0,r=void 0;var _,o=[];for(_ of s){var n=_.label(this.get_label()+`['${i}']`).validate(a);if(NODEENV,o.push(n),n.valid){t=n;break}r=n}return t?e=t:r&&(e=r),"debug"===NODEENV&&t,NODEENV,e}catch(e){return{data:void 0,valid:!1,error:String(e)}}},r=i=>{try{if(("object"!=typeof i||null===i||Array.isArray(i))&&null!=i)return{valid:!1,data:void 0,error:new Error({fr:d+" a un type invalide pour analyse",en:d+" has an invalid type for analyse"}[this.get_lang()])};var a={};let e={data:i,valid:!0,error:void 0},t=void 0,r=void 0;var _=[];if(null!=i)for(var[o,n]of Object.entries(i)){var s=l(o,n);if(NODEENV,_.push(s),s.valid)t=s,e=s,a[o]=s.data;else if(!r){r=s;break}}return r?e=r:t&&(e=t),NODEENV,{data:null!=i?a:void 0,valid:e.valid,error:e.error}}catch(e){return{data:void 0,valid:!1,error:String(e)}}},e=e=>{let t=r(e);null==e&&this.get_default();e=t.valid;return{valid:e,data:e?t.data:void 0,error:e?void 0:t.error}};this.addRule(e),this._OBJECT__TYPES_VALUES__RULE=e}else{let e=e=>({valid:!1,data:void 0,error:new Error({fr:d+" a un ou plusieurs typesValues invalides pour analyse",en:d+" has one or more invalid typesValues for analysis"}[this.get_lang()])});this.addRule(e),this._OBJECT__TYPES_VALUES__RULE=e}return this}containsKeys(_=[],i=!1){var e=e=>{let a=t=>null==t||"object"==typeof t&&!Array.isArray(t)&&"object"==typeof _&&Array.isArray(_)&&(!i&&0<_.filter(e=>Object.keys(t).includes(e)).length||i&&_.filter(e=>Object.keys(t).includes(e)).length===Object(t).keys().length);var t,e=null!=e?e:this.get_default(),r=a(e);return{valid:r,data:r?(a(t=e),t):void 0,error:r?void 0:(t=>{if(a(t))return new Error("Unknown error");{var r,i=JSON.stringify(this.get_label());let e=[];return t&&"object"==typeof t&&(e=_.filter(e=>!(e in t))),0===_.length?new Error({fr:i+" ne possede aucune clé à verifier pour la validation",en:i+" has no key to check for validation"}[this.get_lang()]):0<e.length?(r=e.map(e=>`"${e}"`).join(", "),new Error({fr:i+" possède une ou plusieurs clés indefinis: "+r,en:i+" has one or more undefined keys: "+r}[this.get_lang()])):new Error({fr:i+" est d'un type invalide",en:i+" is of an invalid type"}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__CONTAINS_KEYS__RULE=e,this}noContainsKeys(_=[],i=!1){var e=e=>{let a=t=>null==t||"object"==typeof t&&!Array.isArray(t)&&(!i&&_.some(e=>!(e in t))||i&&_.every(e=>!(e in t)));var t,e=null!=e?e:this.get_default(),r=a(e);return{valid:r,data:r?(a(t=e),t):void 0,error:r?void 0:(t=>{if(a(t))return new Error("Unknown error");{var r,i=JSON.stringify(this.get_label());let e=[];return t&&"object"==typeof t&&(e=_.filter(e=>e in t)),0===_.length?new Error({fr:i+" ne possede aucune clé à verifier pour la validation",en:i+" has no key to check for validation"}[this.get_lang()]):0<e.length?(r=e.map(e=>`"${e}"`).join(", "),new Error({fr:i+" possède une ou plusieurs clés definis: "+r,en:i+" has one or more defined keys: "+r}[this.get_lang()])):new Error({fr:i+" est d'un type invalide",en:i+" is of an invalid type"}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__NO_CONTAINS_KEYS__RULE=e,this}regExpContainsKeys(a,_=void 0,o=!1){var e=e=>{let i=e=>{if(null==e)return!0;if("object"!=typeof e||Array.isArray(e))return!1;e=Object.keys(e);let t=new StringSchema$1(this.get_lang());return o?e.every(e=>t.regexp(a,_).isValid(e)):e.some(e=>t.regexp(a,_).isValid(e))};var t,e=null!=e?e:this.get_default(),r=i(e);return{valid:r,data:r?(i(t=e),t):void 0,error:r?void 0:(r=>{if(i(r))return new Error("Unknown error");{var t=JSON.stringify(this.get_label());let e=[];if(r&&"object"==typeof r){let t=new StringSchema$1(this.get_lang());e=Object.keys(r).filter(e=>!t.regexp(a,_).isValid(e))}return 0===Object.keys(r||{}).length?new Error({fr:t+" ne possede aucune clé à verifier pour la validation",en:t+" has no key to check for validation"}[this.get_lang()]):0<e.length?(r=e.map(e=>`"${e}"`).join(", "),new Error({fr:t+" possède une ou plusieurs clés au format invalide: "+r,en:t+" has one or more invalidly formatted keys: "+r}[this.get_lang()])):new Error({fr:t+" est d'un type invalide",en:t+" is of an invalid type"}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__REGEXP_CONTAINS_KEYS__RULE=e,this}regExpNoContainsKeys(a,_=void 0,o=!1){var e=e=>{let i=e=>{if(null==e)return!0;if("object"!=typeof e||Array.isArray(e))return!1;e=Object.keys(e);let t=new StringSchema$1(this.get_lang());return o?e.every(e=>!t.regexp(a,_).isValid(e)):e.some(e=>!t.regexp(a,_).isValid(e))};var t,e=null!=e?e:this.get_default(),r=i(e);return{valid:r,data:r?(i(t=e),t):void 0,error:r?void 0:(r=>{if(i(r))return new Error("Unknown error");{var t=JSON.stringify(this.get_label());let e=[];if(r&&"object"==typeof r){let t=new StringSchema$1(this.get_lang());e=Object.keys(r).filter(e=>t.regexp(a,_).isValid(e))}return 0===Object.keys(r||{}).length?new Error({fr:t+" ne possede aucune clé à verifier pour la validation",en:t+" has no key to check for validation"}[this.get_lang()]):0<e.length?(r=e.map(e=>`"${e}"`).join(", "),new Error({fr:t+" ne possède pas des clés au format: "+r,en:t+" does not have keys in: "+r}[this.get_lang()])):new Error({fr:t+" est d'un type invalide",en:t+" is of an invalid type"}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__REGEXP_NO_CONTAINS_KEYS__RULE=e,this}min(a){this._minValue=a;var e=e=>{let r=e=>null==e||"object"==typeof e&&!Array.isArray(e)&&Object.keys(e).length>=a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._maxValue?new Error({fr:`la taille de ${t} doit être compris entre ${a} et `+this._maxValue,en:`the size of ${t} must be between ${a} and `+this._maxValue}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être au minimum `+a,en:`the size of ${t} must be at least `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__MIN__RULE=e,this}max(a){this._maxValue=a;var e=e=>{let r=e=>null==e||"object"==typeof e&&!Array.isArray(e)&&Object.keys(e).length<=a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._minValue?new Error({fr:`la taille de ${t} doit être compris entre ${this._minValue} et `+a,en:`the size of ${t} must be between ${this._minValue} and `+a}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être au maximum `+a,en:`the size of ${t} must be maximum `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__MAX__RULE=e,this}less(a){this._lessValue=a;var e=e=>{let r=e=>null==e||"object"==typeof e&&!Array.isArray(e)&&Object.keys(e).length<a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._greaterValue?new Error({fr:`la taille de ${t} doit être inférieure à ${a} et superieure à `+this._greaterValue,en:`the size of ${t} must be less than ${a} and greater than `+this._greaterValue}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être inferieure à `+a,en:`the size of ${t} must be less than `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__LESS__RULE=e,this}greater(a){this._greaterValue=a;var e=e=>{let r=e=>null==e||"object"==typeof e&&!Array.isArray(e)&&Object.keys(e).length>a;var t,e=null!=e?e:this.get_default(),i=r(e);return{valid:i,data:i?(r(t=e),t):void 0,error:i?void 0:(t=>{if(r(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e;return e=void 0!==this._lessValue?new Error({fr:`la taille de ${t} doit être inférieure à ${this._lessValue} et superieure à `+a,en:`the size of ${t} must be less than ${this._lessValue} and greater than `+a}[this.get_lang()]):new Error({fr:`la taille de ${t} doit être supérieur à `+a,en:`the size of ${t} must be greater than `+a}[this.get_lang()])}})(e)}};return this.addRule(e),this._OBJECT__GREATER__RULE=e,this}length(a){this._lengthValue=a;var e=e=>{let t=e=>null==e||"object"==typeof e&&!Array.isArray(e)&&Object.keys(e).length===a;var r,e=null!=e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être égale à `+a,en:`the size of ${r} must be equal to `+a}[this.get_lang()]))}};return this.addRule(e),this._OBJECT__LENGTH__RULE=e,this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.objectValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}objectValidation(t){try{let e=void 0;var r,i;for({rule:r,name:i}of[{rule:this._OBJECT__RULE,name:"OBJECT__RULE"},{rule:this._OBJECT__STRUCT__RULE,name:"OBJECT__STRUCT__RULE"},{rule:this._OBJECT__PRIMARY_STRUCT__RULE,name:"OBJECT__PRIMARY_STRUCT__RULE"},{rule:this._OBJECT__TYPES_VALUES__RULE,name:"OBJECT__TYPES_VALUES__RULE"},{rule:this._OBJECT__CONTAINS_KEYS__RULE,name:"OBJECT__CONTAINS_KEYS__RULE"},{rule:this._OBJECT__NO_CONTAINS_KEYS__RULE,name:"OBJECT__NO_CONTAINS_KEYS__RULE"},{rule:this._OBJECT__REGEXP_CONTAINS_KEYS__RULE,name:"OBJECT__REGEXP_CONTAINS_KEYS__RULE"},{rule:this._OBJECT__REGEXP_NO_CONTAINS_KEYS__RULE,name:"OBJECT__REGEXP_NO_CONTAINS_KEYS__RULE"},{rule:this._OBJECT__MIN__RULE,name:"OBJECT__MIN__RULE"},{rule:this._OBJECT__MAX__RULE,name:"OBJECT__MAX__RULE"},{rule:this._OBJECT__LESS__RULE,name:"OBJECT__LESS__RULE"},{rule:this._OBJECT__GREATER__RULE,name:"OBJECT__GREATER__RULE"},{rule:this._OBJECT__LENGTH__RULE,name:"OBJECT__LENGTH__RULE"}])if(void 0!==r){var a=r(e?.data||t);if(void 0!==(e=void 0!==a?a:e)&&!e.valid)return e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule=i,e}return e}catch(e){var _={data:void 0,valid:!1,error:String(e)};return this.getMapError()(_,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},ChosenTypeSchema$1=class extends JONDefaultSchema{_types=[];_invalid_types=[];_CHOSEN_TYPE__RULE=void 0;constructor(e="fr"){super(e)}chosenTypes(){let r=i=>{try{let e={valid:!0,data:i,error:void 0},t=void 0,r=void 0;var a,_=[];for(a of this._types){let e=i;null==i&&(e=(void 0!==a.get_default()?a:this).get_default());var o=a.label(this.get_label()).validate(e);if(NODEENV,_.push(o),o.valid){t=o;break}r=o}return t?e=t:r&&(e=r),e}catch(e){return{data:void 0,valid:!1,error:String(e)}}};var e=e=>{let t=r(e);null==e&&this.get_default();e=t.valid;return{valid:e,data:e?t.data:void 0,error:e?void 0:t.error}};return this.addRule(e),this._CHOSEN_TYPE__RULE=e,this}choices(...e){let r=JSON.stringify(""+this.get_label());var t;if(!Array.isArray(e)||0===e.length)return this.addRule(t=e=>({valid:!1,data:void 0,error:new Error({fr:r+" a un ou plusieurs types invalides pour analyse",en:r+" has one or more invalid types for analysis"}[this.get_lang()])})),this._CHOSEN_TYPE__RULE=t,this;var i=[];for(let t of e){if(!checkIfCorrectTypeSchema(t))return this.addRule(a=e=>({valid:!1,data:void 0,error:new Error({fr:`${r} a un ou plusieurs types invalides (${cleanField(String(t))}) pour analyse`,en:`${r} has one or more invalid types (${cleanField(String(t))}) for analysis`}[this.get_lang()])})),this._CHOSEN_TYPE__RULE=a,this;var a=t.label(this.get_label());void 0===a.get_default()&&a.default(this.get_default()),i.push(a)}return this._types=i,this.chosenTypes()}types(){return this._types}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.chosenTypesValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}chosenTypesValidation(t){try{let e=void 0;if(void 0!==this._CHOSEN_TYPE__RULE){var r=this._CHOSEN_TYPE__RULE(e?.data||t);if(void 0!==(e=void 0!==r?r:e)&&!e.valid)e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule="CHOSEN_TYPES__RULE"}return e}catch(e){t={data:void 0,valid:!1,error:String(e)};return this.getMapError()(t,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},EnumSchema$1=class extends JONDefaultSchema{_choices=[];_ENUM__RULE=void 0;constructor(e="fr"){super(e)}enum(){var e=e=>{let t=t=>this._choices.some(e=>e===t)||void 0===t;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),i=this._choices.map(e=>`"${e}"`).join(" ou "),new Error({fr:r+` ne correspond à aucune de ses valeurs (${i})`,en:r+` does not correspond to any of its values (${i})`}[this.get_lang()]))}};return this.addRule(e),this._ENUM__RULE=e,this}choices(...e){return this._choices=Array.isArray(e)&&0<e.length?[...e]:[],this.enum()}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.enumValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}enumValidation(t){try{let e=void 0;if(void 0!==this._ENUM__RULE){var r=this._ENUM__RULE(e?.data||t);if(void 0!==(e=void 0!==r?r:e)&&!e.valid)e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule="ENUM__RULE"}return e}catch(e){t={data:void 0,valid:!1,error:String(e)};return this.getMapError()(t,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},NotEnumSchema$1=class extends JONDefaultSchema{_choices=[];_NOT_ENUM__RULE=void 0;constructor(e="fr"){super(e)}notEnum(){var e=e=>{let t=t=>!this._choices.some(e=>e===t)||void 0===t;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),i=this._choices.map(e=>`"${e}"`).join(" ou "),new Error({fr:r+` ne doit pas correspondre à une de ses valeurs (${i})`,en:r+` must not correspond to one of its values (${i})`}[this.get_lang()]))}};return this.addRule(e),this._NOT_ENUM__RULE=e,this}choices(...e){return this._choices=Array.isArray(e)&&0<e.length?[...e]:[],this.notEnum()}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.notEnumValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}notEnumValidation(t){try{let e=void 0;if(void 0!==this._NOT_ENUM__RULE){var r=this._NOT_ENUM__RULE(e?.data||t);if(void 0!==(e=void 0!==r?r:e)&&!e.valid)e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule="NOT_ENUM__RULE"}return e}catch(e){t={data:void 0,valid:!1,error:String(e)};return this.getMapError()(t,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},StringSchema$1=class extends JONDefaultSchema{_maxValue=void 0;_minValue=void 0;_lessValue=void 0;_greaterValue=void 0;_lengthValue=void 0;_format=void 0;_dateFormat=dateFormat5;_timeFormat=timeFormat3;_enum_choices=[];_not_enum_choices=[];_STRING__RULE=void 0;_STRING__MIN__RULE=void 0;_STRING__MAX__RULE=void 0;_STRING__LESS__RULE=void 0;_STRING__GREATER__RULE=void 0;_STRING__LENGTH__RULE=void 0;_STRING__REGEXP__RULE=void 0;_STRING__ALPHANUM__RULE=void 0;_STRING__BASE64__RULE=void 0;_STRING__LOWERCASE__RULE=void 0;_STRING__UPPERCASE__RULE=void 0;_STRING__CAPITALIZE__RULE=void 0;_STRING__UC_FIRST__RULE=void 0;_STRING__CREDIT_CARD__RULE=void 0;_STRING__DATAURI__RULE=void 0;_STRING__DOMAIN__RULE=void 0;_STRING__URL__RULE=void 0;_STRING__HOSTNAME__RULE=void 0;_STRING__IP_ADDRESS__RULE=void 0;_STRING__EMAIL__RULE=void 0;_STRING__GUID__RULE=void 0;_STRING__HEXA__RULE=void 0;_STRING__BINARY__RULE=void 0;_STRING__DATE__RULE=void 0;_STRING__IDENTIFIER__RULE=void 0;_STRING__ENUM__RULE=void 0;_STRING__NOT_ENUM__RULE=void 0;constructor(e="fr"){super(e),this.string()}string(){var e=e=>{let a=e=>"string"==typeof e||"number"==typeof e||"boolean"==typeof e||void 0===e;var e=void 0!==e?e:this.get_default(),t=a(e);return{valid:t,data:t?(e=>{if(a(e)){if(void 0===e)return;var t=isString(e,"datetime",this._format),r=isString(e,"date",this._format),i=isString(e,"time",this._format);if(void 0===this._format&&(t?this.changeFormat(dateTimeFormatInitial):r?this.changeFormat(this._dateFormat):isString(e,"time",this._format)&&this.changeFormat(this._timeFormat)),"string"==typeof e)return e;if(t||r||i)return Timez.parse(e,this._format).format(this._format)}return e})(e):void 0,error:t?void 0:a(t=e)?new Error("Unknown error"):(t=JSON.stringify(""+this.get_label()),new Error({fr:t+" n'est pas une chaîne de caractères",en:t+" is not a string"}[this.get_lang()]))}};return this.addRule(e),this._STRING__RULE=e,this}min(a){var e=e=>{let t=e=>"string"==typeof e&&e.length>=a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être au minimum `+a,en:`the size of ${r} must be at least `+a}[this.get_lang()]))}};return this.addRule(e),this._STRING__MIN__RULE=e,this}max(a){var e=e=>{let t=e=>"string"==typeof e&&e.length<=a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être au maximum `+a,en:`the size of ${r} must be maximum `+a}[this.get_lang()]))}};return this.addRule(e),this._STRING__MAX__RULE=e,this}less(a){var e=e=>{let t=e=>"string"==typeof e&&e.length>a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être inférieure à `+a,en:`the size of ${r} must be less than `+a}[this.get_lang()]))}};return this.addRule(e),this._STRING__LESS__RULE=e,this}greater(a){var e=e=>{let t=e=>"string"==typeof e&&e.length<a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être supérieure à `+a,en:`the size of ${r} must be greater than `+a}[this.get_lang()]))}};return this.addRule(e),this._STRING__GREATER__RULE=e,this}length(a){var e=e=>{let t=e=>"string"==typeof e&&e.length===a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être égale à `+a,en:`the size of ${r} must be equal to `+a}[this.get_lang()]))}};return this.addRule(e),this._STRING__LENGTH__RULE=e,this}regexp(e,t=void 0,a=void 0){let _;_=e instanceof RegExp?e:"string"==typeof e&&0<e.length?t?new RegExp(e,t):new RegExp(e):/.*/;t=e=>{let t=e=>"string"==typeof e&&_.test(e)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(i={fr:(r=JSON.stringify(""+this.get_label()))+" ne respecte pas la règle appliquée",en:r+" does not respect the rule applied"}[this.get_lang()],new Error(a&&a(this.getLang(),r)[this.get_lang()]||i))}};return this.addRule(t),this._STRING__REGEXP__RULE=t,this}alphanum(){return this.regexp(/^[\w\s]+$/,void 0,(e,t)=>({fr:t+" n'est pas de type alphanumérique",en:t+" is not alphanumeric"}))}base64(e=!0,t=!0){t=t?"\\-":"\\+";return this.regexp(`^(?:[A-Za-z0-9${t}/]{4})*(?:[A-Za-z0-9${t}/]{2}==|[A-Za-z0-9${t}/]{3}${e?"=":"(={0,1})"}|[A-Za-z0-9${t}/]{4})$`,void 0,(e,t)=>({fr:t+" n'a pas un format base64 valide",en:t+" does not have a valid base64 format"}))}lowercase(a=!1){var e=e=>{let t=e=>"string"==typeof e&&(!!a&&e===e.toLowerCase()||!a)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?t(r=e)?void 0!==r?String(r).toLowerCase():void 0:r:void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas en minuscule",en:r+" is not lowercase"}[this.get_lang()]))}};return this.addRule(e),this._STRING__LOWERCASE__RULE=e,this}uppercase(a=!1){var e=e=>{let t=e=>"string"==typeof e&&(!!a&&e===e.toUpperCase()||!a)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?t(r=e)?void 0!==r?String(r).toUpperCase():void 0:r:void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas en majuscule",en:r+" is not uppercase"}[this.get_lang()]))}};return this.addRule(e),this._STRING__UPPERCASE__RULE=e,this}capitalize(a=!1){var e=e=>{let t=e=>"string"==typeof e&&(!!a&&e===String(e).replace(/\w\S*/g,e=>e.charAt(0).toUpperCase()+e.substr(1).toLowerCase())||!a)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?t(r=e)?void 0!==r?String(r).replace(/\w\S*/g,e=>e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()):void 0:r:void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas en lettre capitale",en:r+" is not capitalized"}[this.get_lang()]))}};return this.addRule(e),this._STRING__CAPITALIZE__RULE=e,this}ucFirst(a=!1){var e=e=>{let t=e=>"string"==typeof e&&(!!a&&e===String(e).charAt(0).toUpperCase()+String(e).slice(1)||!a)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?t(r=e)?void 0!==r?String(r).charAt(0).toUpperCase()+String(r).slice(1):void 0:r:void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'a pas de première lettre en majuscule",en:r+" does not have a capitalized first letter"}[this.get_lang()]))}};return this.addRule(e),this._STRING__UC_FIRST__RULE=e,this}creditCard(e=[]){let a={visa:/^(4[0-9]{12}(?:[0-9]{3}))$/,mastercard:/^((?:5[1-5][0-9]{2}|222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12})$/,"american-express":/^(3[47][0-9]{13})$/,discover:/^(6(?:011|5[0-9]{2})[0-9]{12})$/,"diners-club":/^(3(?:0[0-5]|[68][0-9])[0-9]{11})$/,jcb:/^((?:2131|1800|35\d{3})\d{11})$/},t=["mastercard","visa","american-express","discover","diners-club","jcb"],_=e.filter(e=>t.includes(e));e=e=>{let t=t=>"string"!=typeof t||void 0===t?void 0===t:0===_.length?Object.values(a).some(e=>e.test(t)):_.some(e=>a[e]&&a[e].test(t));var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas une chaîne de caractères au format d'une carte de crédit",en:r+" is not a string in the format of a credit card"}[this.get_lang()]))}};return this.addRule(e),this._STRING__CREDIT_CARD__RULE=e,this}dataUri(){return this.regexp(/^data:([\w\/\+]+);(charset=[\w-]+|base64).*,([a-zA-Z0-9+/]+={0,2})$/,void 0,(e,t)=>({fr:t+" n'a pas un format Data-URI valide",en:t+" does not have a valid Data-URI format"}))}domain(){return this.regexp(/^(?!-)[A-Za-z0-9-]+([\-\.]{1}[a-z0-9]+)*\.[A-Za-z]{2,6}$/,void 0,(e,t)=>({fr:t+" n'est pas un domaine valide",en:t+" is not a valid domain"}))}url(){var e=new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i");return this.regexp(e)}hostname(){let a=/^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])$/,_=/^(([a-zA-Z]|[a-zA-Z][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z]|[A-Za-z][A-Za-z0-9\-]*[A-Za-z0-9])$/;var e=e=>{let t=e=>"string"==typeof e&&(a.test(e)||_.test(e))||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas une chaîne de caractères au format d'un nom d'hôte valide",en:r+" is not a string in the format of a valid hostname"}[this.get_lang()]))}};return this.addRule(e),this._STRING__HOSTNAME__RULE=e,this}IPAddress(e=[]){let a={ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/,ipv6:new RegExp(["^(?:[0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$","^::(?:[0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4}$","^[0-9a-fA-F]{1,4}::(?:[0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4}$","^[0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4}::(?:[0-9a-fA-F]{1,4}:){0,4}[0-9a-fA-F]{1,4}$","^(?:[0-9a-fA-F]{1,4}:){0,2}[0-9a-fA-F]{1,4}::(?:[0-9a-fA-F]{1,4}:){0,3}[0-9a-fA-F]{1,4}$","^(?:[0-9a-fA-F]{1,4}:){0,3}[0-9a-fA-F]{1,4}::(?:[0-9a-fA-F]{1,4}:){0,2}[0-9a-fA-F]{1,4}$","^(?:[0-9a-fA-F]{1,4}:){0,4}[0-9a-fA-F]{1,4}::(?:[0-9a-fA-F]{1,4}:)?[0-9a-fA-F]{1,4}$","^(?:[0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4}::[0-9a-fA-F]{1,4}$","^(?:[0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4}::$"].join("|"))},t=["ipv4","ipv6"],_=e.filter(e=>t.includes(e));e=e=>{let t=t=>"string"!=typeof t||void 0===t?void 0===t:0===_.length?a.ipv4.test(t)||a.ipv6.test(t):_.some(e=>a[e]&&a[e].test(t));var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas une chaîne de caractères au format d'une adresse IP valide",en:r+" is not a string in the format of a valid IP address"}[this.get_lang()]))}};return this.addRule(e),this._STRING__IP_ADDRESS__RULE=e,this}email(){let a=/^(([^<>()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/,_=/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;var e=e=>{let t=e=>"string"==typeof e&&(a.test(e)||_.test(e))||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas une chaîne de caractères au format d'un email valide",en:r+" is not a string in the format of a valid email"}[this.get_lang()]))}};return this.addRule(e),this._STRING__EMAIL__RULE=e,this}guid(e=[]){let a={v1:/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1][0-9a-fA-F]{3}-[89AB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/,v2:/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[2][0-9a-fA-F]{3}-[89AB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/,v3:/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[3][0-9a-fA-F]{3}-[89AB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/,v4:/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[4][0-9a-fA-F]{3}-[89AB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/,v5:/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[5][0-9a-fA-F]{3}-[89AB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/},t=["v1","v2","v3","v4","v5"],_=e.filter(e=>t.includes(e));e=e=>{let t=t=>"string"!=typeof t||void 0===t?void 0===t:0===_.length?Object.values(a).some(e=>e.test(t)):_.some(e=>a[e]&&a[e].test(t));var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas une chaîne de caractères au format GUID valide",en:r+" is not a string in valid GUID format"}[this.get_lang()]))}};return this.addRule(e),this._STRING__GUID__RULE=e,this}hexa(e=!1){return this.regexp(e?/^[0-9a-fA-F]+$/:/^[0-9A-F]+$/,void 0,(e,t)=>({fr:t+" n'a pas un format hexadecimal valide",en:t+" does not have a valid hexadecimal format"}))}binary(){return this.regexp(/^[01]+$/,void 0,(e,t)=>({fr:t+" n'a pas un format binaire valide",en:t+" does not have a valid binary format"}))}date(e=void 0){let a=e&&0<e.length?e:dateTimeFormatInitial;e=e=>{let t=e=>"string"==typeof e&&isDatetimeFormat(e,a)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas une chaîne de caractères au format d'une date valide",en:r+" is not a string in the format of a valid date"}[this.get_lang()]))}};return this.addRule(e),this._STRING__DATE__RULE=e,this}identifier(){return this.regexp(/^[a-zA-Z]{1,}\w{0,}$/,void 0,(e,t)=>({fr:t+" n'est pas un identifiant valide",en:t+" is not a valid identifier"}))}enum(...e){this.enumChoices(...e);e=e=>{let t=e=>this._enum_choices.includes(e)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" est d'un type invalide",en:r+" is of an invalid type"}[this.get_lang()]))}};return this.addRule(e),this._STRING__ENUM__RULE=e,this}enumChoices(...e){return this._enum_choices=Array.isArray(e)&&0<e.length?[...e]:[],this}notEnum(...e){this.notEnumchoices(...e);e=e=>{let t=e=>!this._not_enum_choices.includes(e)||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" est d'un type invalide",en:r+" is of an invalid type"}[this.get_lang()]))}};return this.addRule(e),this._STRING__NOT_ENUM__RULE=e,this}notEnumchoices(...e){return this._not_enum_choices=Array.isArray(e)&&0<e.length?[...e]:[],this}changeFormat(e){return"string"==typeof e&&0<e.length&&(this._format=e),this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.stringValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}stringValidation(t){try{let e=void 0;var r,i;for({rule:r,name:i}of[{rule:this._STRING__RULE,name:"STRING__RULE"},{rule:this._STRING__MIN__RULE,name:"STRING__MIN__RULE"},{rule:this._STRING__MAX__RULE,name:"STRING__MAX__RULE"},{rule:this._STRING__LESS__RULE,name:"STRING__LESS__RULE"},{rule:this._STRING__GREATER__RULE,name:"STRING__GREATER__RULE"},{rule:this._STRING__LENGTH__RULE,name:"STRING__LENGTH__RULE"},{rule:this._STRING__REGEXP__RULE,name:"STRING__REGEXP__RULE"},{rule:this._STRING__ALPHANUM__RULE,name:"STRING__ALPHANUM__RULE"},{rule:this._STRING__BASE64__RULE,name:"STRING__BASE64__RULE"},{rule:this._STRING__LOWERCASE__RULE,name:"STRING__LOWERCASE__RULE"},{rule:this._STRING__UPPERCASE__RULE,name:"STRING__UPPERCASE__RULE"},{rule:this._STRING__CAPITALIZE__RULE,name:"STRING__CAPITALIZE__RULE"},{rule:this._STRING__UC_FIRST__RULE,name:"STRING__UC_FIRST__RULE"},{rule:this._STRING__CREDIT_CARD__RULE,name:"STRING__CREDIT_CARD__RULE"},{rule:this._STRING__DATAURI__RULE,name:"STRING__DATAURI__RULE"},{rule:this._STRING__DOMAIN__RULE,name:"STRING__DOMAIN__RULE"},{rule:this._STRING__URL__RULE,name:"STRING__URL__RULE"},{rule:this._STRING__HOSTNAME__RULE,name:"STRING__HOSTNAME__RULE"},{rule:this._STRING__IP_ADDRESS__RULE,name:"STRING__IP_ADDRESS__RULE"},{rule:this._STRING__EMAIL__RULE,name:"STRING__EMAIL__RULE"},{rule:this._STRING__GUID__RULE,name:"STRING__GUID__RULE"},{rule:this._STRING__HEXA__RULE,name:"STRING__HEXA__RULE"},{rule:this._STRING__BINARY__RULE,name:"STRING__BINARY__RULE"},{rule:this._STRING__DATE__RULE,name:"STRING__DATE__RULE"},{rule:this._STRING__IDENTIFIER__RULE,name:"STRING__IDENTIFIER__RULE"},{rule:this._STRING__ENUM__RULE,name:"STRING__ENUM__RULE"},{rule:this._STRING__NOT_ENUM__RULE,name:"STRING__NOT_ENUM__RULE"}])if(void 0!==r){var a=r(e?.data||t);if(void 0!==(e=void 0!==a?a:e)&&!e.valid)return e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule=i,e}return e}catch(e){var _={data:void 0,valid:!1,error:String(e)};return this.getMapError()(_,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},NumberSchema$1=class extends JONDefaultSchema{_NUMBER__RULE=void 0;_NUMBER__MIN__RULE=void 0;_NUMBER__MAX__RULE=void 0;_NUMBER__LESS__RULE=void 0;_NUMBER__GREATER__RULE=void 0;_NUMBER__NEGATIVE__RULE=void 0;_NUMBER__POSITIVE__RULE=void 0;_NUMBER__SIGNED__RULE=void 0;_NUMBER__INTEGER__RULE=void 0;_NUMBER__DECIMAL__RULE=void 0;_NUMBER__MULTIPLE__RULE=void 0;_NUMBER__TCP_PORT__RULE=void 0;constructor(e="fr"){super(e),this.number()}number(){var e=e=>{let t=e=>isNumber(e)||!isNotNull(e);var r,i,e=isNotNull(e)?e:this.get_default(),a=t(e);return{valid:a,data:a?t(r=e)&&(isNumber(r)||!isNotNull(r))?(i=Number(r),Number.isInteger(i)?parseInt(r,10):parseFloat(r)):r:void 0,error:a?void 0:t(i=e)?new Error("Unknown error"):(i=JSON.stringify(""+this.get_label()),new Error({fr:i+" n'est pas un nombre",en:i+" is not a number"}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__RULE=e,this}min(a){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&"number"==typeof a&&a<=e||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être au minimum "+a,en:r+" must be at least "+a}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__MIN__RULE=e,this}max(a){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&"number"==typeof a&&e<=a||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être au maximum "+a,en:r+" must be maximum "+a}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__MAX__RULE=e,this}less(a){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&"number"==typeof a&&a<e||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être inférieure à "+a,en:r+" must be less than "+a}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__LESS__RULE=e,this}greater(a){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&"number"==typeof a&&e<a||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être supérieur à "+a,en:r+" must be greater than "+a}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__GREATER__RULE=e,this}negative(){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&e<=0||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être un nombre negatif",en:r+" must be a negative number"}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__NEGATIVE__RULE=e,this}positive(){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&0<=e||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être un nombre positif",en:r+" must be a positive number"}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__POSITIVE__RULE=e,this}signed(){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&(0<e||e<0)||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être soit un nombre négatif soit un nombre positif",en:r+" must be either a negative number or a positive number"}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__SIGNED__RULE=e,this}integer(){var e=e=>{let t=e=>"number"==typeof e&&isNumber(e)&&Number.isInteger(e)||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être un nombre entier valide",en:r+" must be a valid integer number"}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__INTEGER__RULE=e,this}decimal(){var e=e=>{let t=e=>"number"==typeof e&&isNumber(e)||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être un nombre décimal valide",en:r+" must be a valid decimal number"}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__DECIMAL__RULE=e,this}multiple(a){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&"number"==typeof a&&e%a==0||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être un multiple de "+a,en:r+" must be a multiple of "+a}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__MULTIPLE__RULE=e,this}TCPPort(){var e=e=>{let t=e=>isNumber(e)&&"number"==typeof e&&9<e&&e<=99999||!!isNotNull(e);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" doit être au format d'un port TCP",en:r+" must be in the format of a TCP port"}[this.get_lang()]))}};return this.addRule(e),this._NUMBER__TCP_PORT__RULE=e,this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.numberValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}numberValidation(t){try{let e=void 0;var r,i;for({rule:r,name:i}of[{rule:this._NUMBER__RULE,name:"NUMBER__RULE"},{rule:this._NUMBER__MIN__RULE,name:"NUMBER__MIN__RULE"},{rule:this._NUMBER__MAX__RULE,name:"NUMBER__MAX__RULE"},{rule:this._NUMBER__LESS__RULE,name:"NUMBER__LESS__RULE"},{rule:this._NUMBER__GREATER__RULE,name:"NUMBER__GREATER__RULE"},{rule:this._NUMBER__NEGATIVE__RULE,name:"NUMBER__NEGATIVE__RULE"},{rule:this._NUMBER__POSITIVE__RULE,name:"NUMBER__POSITIVE__RULE"},{rule:this._NUMBER__SIGNED__RULE,name:"NUMBER__SIGNED__RULE"},{rule:this._NUMBER__INTEGER__RULE,name:"NUMBER__INTEGER__RULE"},{rule:this._NUMBER__DECIMAL__RULE,name:"NUMBER__DECIMAL__RULE"},{rule:this._NUMBER__MULTIPLE__RULE,name:"NUMBER__MULTIPLE__RULE"},{rule:this._NUMBER__TCP_PORT__RULE,name:"NUMBER__TCP_PORT__RULE"}])if(void 0!==r){var a=r(e?.data||t);if(void 0!==(e=void 0!==a?a:e)&&!e.valid)return e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule=i,e}return e}catch(e){var _={data:void 0,valid:!1,error:String(e)};return this.getMapError()(_,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},BooleanSchema$1=class extends JONDefaultSchema{_trueValues=["true","t","1",1,!0];_falseValues=["false","f","0",0,!1];_BOOLEAN__RULE=void 0;constructor(e="fr"){super(e),this.boolean()}boolean(){var e=e=>{let t=e=>isBoolean(e,[...this._trueValues,...this._falseValues],!1);var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?t(r=e)?convertToBoolean(r):r:void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas un booléen",en:r+" is not a boolean"}[this.get_lang()]))}};return this.addRule(e),this._BOOLEAN__RULE=e,this}required(e=!0){e="boolean"!=typeof e||e;var t=e=>{let t=e=>null!=e||"boolean"==typeof e;var r,e=isNotNull(e)?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" est requis",en:r+" is required"}[this.get_lang()]))}};return this.addRule(t),this._PRIMARY__REQUIRED__RULE=e?t:void 0,this}trueValues(e){e=Array.isArray(e)?e:[];return 0<e.length&&(this._trueValues=[...e]),this}falseValues(e){e=Array.isArray(e)?e:[];return 0<e.length&&(this._falseValues=[...e]),this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.booleanValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}booleanValidation(t){try{let e=void 0;if(void 0!==this._BOOLEAN__RULE){var r=this._BOOLEAN__RULE(e?.data||t);if(void 0!==(e=void 0!==r?r:e)&&!e.valid)e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule="BOOLEAN__RULE"}return e}catch(e){t={data:void 0,valid:!1,error:String(e)};return this.getMapError()(t,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}getMapError(){return defaultMapError}},DateSchema$1=class extends JONDefaultSchema{_timezone=void 0;_format=void 0;_dateFormat=dateFormat5;_timeFormat=timeFormat3;_maxValue=void 0;_minValue=void 0;_lessValue=void 0;_greaterValue=void 0;_equalValue=void 0;_DATE__RULE=void 0;_DATE__MIN__RULE=void 0;_DATE__MAX__RULE=void 0;_DATE__LESS__RULE=void 0;_DATE__GREATER__RULE=void 0;_DATE__EQUAL_TO__RULE=void 0;_DATE__TO_DATE__RULE=void 0;_DATE__TO_TIME__RULE=void 0;constructor(e="fr"){super(e),this.date()}date(){var e=e=>{let t=e=>isDate(e,void 0,this._format)||void 0===e;var e=isNotNull(e)?e:this.get_default(),r=t(e);return{valid:r,data:r?(t=>{if(null==t)return t;{void 0===this._format&&this.changeFormat(dateTimeFormatInitial);let e;if("string"==typeof t&&isDatetimeFormat(t,this._format))e=Timez.parse(t,this._format);else if(t instanceof Date)e=new Timez(t);else{if(!(t instanceof Timez))return t;e=t}return(e=void 0!==this._timezone?e.setTimezone(this._timezone):e).toDate()}})(e):void 0,error:r?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:r+" n'est pas une date",en:r+" is not a date"}[this.get_lang()]))}};return this.addRule(e),this._DATE__RULE=e,this}min(a){var e=e=>{let r=Timez.parse(a,this._format),i=((r=r.isCorrect()&&this._timezone?r.setTimezone(this._timezone):r).isCorrect()&&(this._minValue=r.toDate()),e=>{if(!isNotNull(e))return!0;let t=Timez.parse(e,this._format);return!!(t=t.isCorrect()&&this._timezone?t.setTimezone(this._timezone):t).isCorrect()&&t.isAfter(r,"[)")});var e=isNotNull(e)?e:this.get_default(),t=i(e);return{valid:t,data:t?e:void 0,error:t?void 0:(t=>{if(i(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e=t+" must be at least "+r.format();return e=void 0!==this._maxValue?{fr:`${t} doit être compris entre ${r.format()} et `+Timez.parse(this._maxValue).format(),en:`${t} must be between ${r.format()} and `+Timez.parse(this._maxValue).format()}[this.get_lang()]||e:{fr:t+" doit être au minimum "+r.format(),en:t+" must be at least "+r.format()}[this.get_lang()]||e,new Error(e)}})(e)}};return this.addRule(e),this._DATE__MIN__RULE=e,this}max(_){var e=e=>{let r=Timez.parse(_,this._format),i=((r=r.isCorrect()&&this._timezone?r.setTimezone(this._timezone):r).isCorrect()&&(this._maxValue=r.toDate()),e=>{if(!isNotNull(e))return!0;let t=Timez.parse(e,this._format);return!!(t=t.isCorrect()&&this._timezone?t.setTimezone(this._timezone):t).isCorrect()&&t.isBefore(r,"(]")});var t,e=isNotNull(e)?e:this.get_default(),a=i(e);return{valid:a,data:a?(i(t=e),t):void 0,error:a?void 0:(t=>{if(i(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e=t+" must be maximum "+this._maxValue;return e=void 0!==this._minValue?{fr:`${t} doit être compris entre ${this._minValue} et `+this._maxValue,en:`${t} must be between ${this._minValue} and `+this._maxValue}[this.get_lang()]||e:{fr:t+" doit être au maximum "+this._maxValue,en:t+" must be maximum "+this._maxValue}[this.get_lang()]||e,new Error(e)}})(e)}};return this.addRule(e),this._DATE__MAX__RULE=e,this}less(_){var e=e=>{let r=Timez.parse(_,this._format),i=((r=r.isCorrect()&&this._timezone?r.setTimezone(this._timezone):r).isCorrect()&&(this._lessValue=r.toDate()),e=>{if(!isNotNull(e))return!0;let t=Timez.parse(e,this._format);return!!(t=t.isCorrect()&&this._timezone?t.setTimezone(this._timezone):t).isCorrect()&&t.isAfter(r,"()")});var t,e=isNotNull(e)?e:this.get_default(),a=i(e);return{valid:a,data:a?(i(t=e),t):void 0,error:a?void 0:(t=>{if(i(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e=t+" must be less than "+this._lessValue;return e=void 0!==this._greaterValue?{fr:`${t} doit être inférieure à ${this._lessValue} et superieure à `+this._greaterValue,en:`${t} must be less than ${this._lessValue} and greater than `+this._greaterValue}[this.get_lang()]||e:{fr:t+" doit être inferieure à "+this._lessValue,en:t+" must be less than "+this._lessValue}[this.get_lang()]||e,new Error(e)}})(e)}};return this.addRule(e),this._DATE__LESS__RULE=e,this}greater(_){var e=e=>{let r=Timez.parse(_,this._format),i=((r=r.isCorrect()&&this._timezone?r.setTimezone(this._timezone):r).isCorrect()&&(this._greaterValue=r.toDate()),e=>{if(!isNotNull(e))return!0;let t=Timez.parse(e,this._format);return!!(t=t.isCorrect()&&this._timezone?t.setTimezone(this._timezone):t).isCorrect()&&t.isBefore(r,"()")});var t,e=isNotNull(e)?e:this.get_default(),a=i(e);return{valid:a,data:a?(i(t=e),t):void 0,error:a?void 0:(t=>{if(i(t))return new Error("Unknown error");{t=JSON.stringify(""+this.get_label());let e=t+" must be greater than "+this._greaterValue;return e=void 0!==this._lessValue?{fr:`${t} doit être inférieure à ${this._lessValue} et superieure à `+this._greaterValue,en:`${t} must be less than ${this._lessValue} and greater than `+this._greaterValue}[this.get_lang()]||e:{fr:t+" doit être supérieur à "+this._greaterValue,en:t+" must be greater than "+this._greaterValue}[this.get_lang()]||e,new Error(e)}})(e)}};return this.addRule(e),this._DATE__GREATER__RULE=e,this}equalTo(_){var e=e=>{let r=Timez.parse(_,this._format),t=((r=r.isCorrect()&&this._timezone?r.setTimezone(this._timezone):r).isCorrect()&&(this._equalValue=r.toDate()),e=>{if(!isNotNull(e))return!0;let t=Timez.parse(e,this._format);return!!(t=t.isCorrect()&&this._timezone?t.setTimezone(this._timezone):t).isCorrect()&&t.isSame(r)});var i,e=isNotNull(e)?e:this.get_default(),a=t(e);return{valid:a,data:a?(t(i=e),i):void 0,error:a?void 0:t(i=e)?new Error("Unknown error"):(i={fr:(i=JSON.stringify(""+this.get_label()))+" doit être égale à "+this._equalValue,en:i+" must be equal to "+this._equalValue}[this.get_lang()],new Error(i))}};return this.addRule(e),this._DATE__EQUAL_TO__RULE=e,this}changeFormat(e){return"string"==typeof e&&0<e.length&&(this._format=e),this}changeTimezone(e){return null!=e&&(this._timezone=e),this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.dateValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}dateValidation(t){try{let e=void 0;var r,i;for({rule:r,name:i}of[{rule:this._DATE__RULE,name:"DATE__RULE"},{rule:this._DATE__MIN__RULE,name:"DATE__MIN__RULE"},{rule:this._DATE__MAX__RULE,name:"DATE__MAX__RULE"},{rule:this._DATE__LESS__RULE,name:"DATE__LESS__RULE"},{rule:this._DATE__GREATER__RULE,name:"DATE__GREATER__RULE"},{rule:this._DATE__EQUAL_TO__RULE,name:"DATE__EQUAL_TO__RULE"},{rule:this._DATE__TO_DATE__RULE,name:"DATE__TO_DATE__RULE"},{rule:this._DATE__TO_TIME__RULE,name:"DATE__TO_TIME__RULE"}])if(void 0!==r){var a=e?.data||t,_=r(a);if(isNotNull(_)&&(e=_),i,isNotNull(e)&&e&&!e.valid)return e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule=i,e}return e}catch(e){var o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}},AnyTypeSchema$1=class extends JONDefaultSchema{_ANY_TYPE__RULE=void 0;constructor(e="fr"){super(e),this.anyType()}anyType(){var e=e=>({valid:!0,data:void 0!==e?e:this.get_default(),error:void 0});return this.addRule(e),this._ANY_TYPE__RULE=e,this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.anyTypeValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}anyTypeValidation(t){try{let e=void 0;if(void 0!==this._ANY_TYPE__RULE){var r=this._ANY_TYPE__RULE(e?.data||t);if(void 0!==(e=void 0!==r?r:e)&&!e.valid)e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule="ANY_TYPE__RULE"}return e}catch(e){t={data:void 0,valid:!1,error:String(e)};return this.getMapError()(t,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}};class FileSchema extends JONDefaultSchema{_maxValue=void 0;_minValue=void 0;_lessValue=void 0;_greaterValue=void 0;_lengthValue=void 0;_FILE__RULE=void 0;_FILE__MIN__RULE=void 0;_FILE__MAX__RULE=void 0;_FILE__LESS__RULE=void 0;_FILE__GREATER__RULE=void 0;_FILE__LENGTH__RULE=void 0;constructor(e="fr"){super(e),this.file()}file(){var e=e=>{let r=e=>e instanceof Blob||e instanceof File||"string"==typeof e&&new StringSchema$1(this._lang).dataUri().isValid(e)||void 0===e;var e=void 0!==e?e:this.get_default(),t=r(e);return{valid:t,data:t?(e=>{if(r(e)){var t=JSON.stringify(""+this.get_label());if(void 0===e)return;if(e instanceof Blob||e instanceof File)return e;if("string"==typeof e&&new StringSchema$1(this._lang).dataUri().isValid(e))return this.dataUrlToFile(e,t.replace(/[^a-zA-Z0-9]/g,""))}return e})(e):void 0,error:t?void 0:r(t=e)?new Error("Unknown error"):(t=JSON.stringify(""+this.get_label()),new Error({fr:t+" n'est pas un fichier",en:t+" is not a file"}[this.get_lang()]))}};return this.addRule(e),this._FILE__RULE=e,this}min(a){var e=e=>{let t=e=>(e instanceof Blob||e instanceof File)&&e.size>=a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être au minimum `+a,en:`the size of ${r} must be at least `+a}[this.get_lang()]))}};return this.addRule(e),this._FILE__MIN__RULE=e,this}max(a){var e=e=>{let t=e=>(e instanceof Blob||e instanceof File)&&e.size<=a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être au maximum `+a,en:`the size of ${r} must be maximum `+a}[this.get_lang()]))}};return this.addRule(e),this._FILE__MAX__RULE=e,this}less(a){var e=e=>{let t=e=>(e instanceof Blob||e instanceof File)&&e.size>a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être inférieure à `+a,en:`the size of ${r} must be less than `+a}[this.get_lang()]))}};return this.addRule(e),this._FILE__LESS__RULE=e,this}greater(a){var e=e=>{let t=e=>(e instanceof Blob||e instanceof File)&&e.size<a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être supérieure à `+a,en:`the size of ${r} must be greater than `+a}[this.get_lang()]))}};return this.addRule(e),this._FILE__GREATER__RULE=e,this}length(a){var e=e=>{let t=e=>(e instanceof Blob||e instanceof File)&&e.size===a||void 0===e;var r,e=void 0!==e?e:this.get_default(),i=t(e);return{valid:i,data:i?(t(r=e),r):void 0,error:i?void 0:t(r=e)?new Error("Unknown error"):(r=JSON.stringify(""+this.get_label()),new Error({fr:`la taille de ${r} doit être égale à `+a,en:`the size of ${r} must be equal to `+a}[this.get_lang()]))}};return this.addRule(e),this._FILE__LENGTH__RULE=e,this}validate(t){try{void 0!==this.preMap&&"function"==typeof this.preMap&&(t=this.preMap(t));let e=void 0;var r,i,a,_,o=this.fileValidation(e?.data||t);return void 0===(e=void 0!==o?o:e)||e.valid?(i=this.primaryValidation(e?.data||t),void 0===(e=void 0!==i?i:e)||e.valid?void 0===e?(_={data:void 0,valid:!1,error:{fr:"Aucune règle defini",en:"No rule define"}[this.getLang()]},this.getMapError()(_,void 0,"NO_RULE__RULE",this.get_label(),this.getLang())):(e.valid&&void 0!==this.map&&"function"==typeof this.map&&(e.data=this.map(e.data)),e):(a=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,a,this._errorRule,this.get_label(),this.getLang()))):(r=e.error,e.error=void 0!==this.get_error()?this.get_error():e.error,this.getMapError()(e,r,this._errorRule,this.get_label(),this.getLang()))}catch(e){o={data:void 0,valid:!1,error:String(e)};return this.getMapError()(o,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}fileValidation(t){try{let e=void 0;var r,i;for({rule:r,name:i}of[{rule:this._FILE__RULE,name:"FILE__RULE"},{rule:this._FILE__MIN__RULE,name:"FILE__MIN__RULE"},{rule:this._FILE__MAX__RULE,name:"FILE__MAX__RULE"},{rule:this._FILE__LESS__RULE,name:"FILE__LESS__RULE"},{rule:this._FILE__GREATER__RULE,name:"FILE__GREATER__RULE"},{rule:this._FILE__LENGTH__RULE,name:"FILE__LENGTH__RULE"}])if(void 0!==r){var a=r(e?.data||t);if(void 0!==(e=void 0!==a?a:e)&&!e.valid)return e.error=void 0!==this.get_error()?this.get_error():e.error,this._errorRule=i,e}return e}catch(e){var _={data:void 0,valid:!1,error:String(e)};return this.getMapError()(_,e,"UNKNOWN__RULE",this.get_label(),this.getLang())}}dataUrlToFile(e,t="file"){var e=e.split(","),r=e[0].match(/:(.*?);/);if(!r)throw new Error("Le DataURL ne contient pas de MIME valide");var r=r[1],i={"image/jpeg":"jpg","image/png":"png","image/gif":"gif","image/webp":"webp","image/bmp":"bmp","image/tiff":"tif","image/svg+xml":"svg","image/x-icon":"ico","image/heic":"heic","image/heif":"heif","image/avif":"avif","video/mp4":"mp4","video/webm":"webm","video/ogg":"ogv","video/x-msvideo":"avi","video/quicktime":"mov","video/mpeg":"mpeg","video/x-matroska":"mkv","audio/mpeg":"mp3","audio/ogg":"ogg","audio/wav":"wav","audio/webm":"weba","audio/aac":"aac","audio/flac":"flac","audio/opus":"opus","application/pdf":"pdf","application/msword":"doc","application/vnd.openxmlformats-officedocument.wordprocessingml.document":"docx","application/vnd.ms-excel":"xls","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"xlsx","application/vnd.ms-powerpoint":"ppt","application/vnd.openxmlformats-officedocument.presentationml.presentation":"pptx","text/plain":"txt","text/csv":"csv","text/rtf":"rtf","application/epub+zip":"epub","text/html":"html","text/css":"css","text/javascript":"js","application/javascript":"js","application/json":"json","application/xml":"xml","text/xml":"xml","application/zip":"zip","application/gzip":"gz","application/x-tar":"tar","application/x-rar-compressed":"rar","application/x-7z-compressed":"7z","application/x-bzip2":"bz2","application/x-xz":"xz","text/x-python":"py","text/x-c":"c","text/x-c++":"cpp","text/x-java-source":"java","application/java-archive":"jar","application/x-sh":"sh","application/x-bat":"bat","text/x-php":"php","text/x-typescript":"ts","application/x-sql":"sql","font/ttf":"ttf","font/otf":"otf","font/woff":"woff","font/woff2":"woff2","application/octet-stream":"bin","application/x-executable":"exe","application/x-dosexec":"exe","application/x-msdownload":"msi","application/x-iso9660-image":"iso"}[r]||r.split("/")[1]||"bin",a=atob(e[1]),_=a.length,o=new Uint8Array(_);for(let e=0;e<_;e++)o[e]=a.charCodeAt(e);e=`${t}-${Date.now()}.`+i;return new File([o],e,{type:r})}}var JONSchemas={String:StringSchema$1,Number:NumberSchema$1,Boolean:BooleanSchema$1,Date:DateSchema$1,Enum:EnumSchema$1,NotEnum:NotEnumSchema$1,Array:ArraySchema$1,File:FileSchema,Object:ObjectSchema$1,ChosenType:ChosenTypeSchema$1,AnyType:AnyTypeSchema$1};"undefined"!=typeof window&&(window.JON=JONSchemas);let StringSchema=JONSchemas.String,NumberSchema=JONSchemas.Number,BooleanSchema=JONSchemas.Boolean,DateSchema=JONSchemas.Date,EnumSchema=JONSchemas.Enum,NotEnumSchema=JONSchemas.NotEnum,ArraySchema=JONSchemas.Array,ObjectSchema=JONSchemas.Object,ChosenTypeSchema=JONSchemas.ChosenType,AnyTypeSchema=JONSchemas.AnyType;var index_all={...JONSchemas};
2
2
  //# sourceMappingURL=jon.all.min.js.map