reslib 1.0.0 → 1.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.
Files changed (42) hide show
  1. package/build/auth/index.d.ts +495 -83
  2. package/build/auth/index.js +2 -2
  3. package/build/auth/types.d.ts +88 -15
  4. package/build/countries/index.js +1 -1
  5. package/build/currency/index.d.ts +1 -1
  6. package/build/currency/index.js +1 -1
  7. package/build/currency/session.d.ts +1 -1
  8. package/build/currency/session.js +2 -2
  9. package/build/i18n/index.js +1 -1
  10. package/build/inputFormatter/index.js +1 -1
  11. package/build/logger/index.js +1 -1
  12. package/build/resources/index.js +3 -3
  13. package/build/resources/types/index.d.ts +11 -11
  14. package/build/session/index.d.ts +6 -6
  15. package/build/session/index.js +1 -1
  16. package/build/utils/date/dateHelper.js +1 -1
  17. package/build/utils/date/index.js +1 -1
  18. package/build/utils/index.d.ts +2 -0
  19. package/build/utils/index.js +2 -2
  20. package/build/utils/isHexadecimal.d.ts +23 -0
  21. package/build/utils/isHexadecimal.js +1 -0
  22. package/build/utils/isMongoId.d.ts +25 -0
  23. package/build/utils/isMongoId.js +1 -0
  24. package/build/utils/numbers.js +1 -1
  25. package/build/validator/index.js +3 -3
  26. package/build/validator/rules/array.d.ts +1 -1
  27. package/build/validator/rules/array.js +1 -1
  28. package/build/validator/rules/boolean.js +1 -1
  29. package/build/validator/rules/date.js +1 -1
  30. package/build/validator/rules/default.js +1 -1
  31. package/build/validator/rules/enum.js +1 -1
  32. package/build/validator/rules/file.js +1 -1
  33. package/build/validator/rules/format.js +2 -2
  34. package/build/validator/rules/index.js +3 -3
  35. package/build/validator/rules/multiRules.js +1 -1
  36. package/build/validator/rules/numeric.js +1 -1
  37. package/build/validator/rules/string.js +1 -1
  38. package/build/validator/rules/target.js +1 -1
  39. package/build/validator/types.d.ts +8 -13
  40. package/build/validator/validator.d.ts +8 -19
  41. package/build/validator/validator.js +1 -1
  42. package/package.json +1 -1
@@ -2,4 +2,4 @@
2
2
  %{failedRulesErrors}`,oneOf:`The field %{fieldName} must match at least one of the following validation rules:
3
3
  %{failedRulesErrors}`,allOf:`The field %{fieldName} must match all of the following validation rules:
4
4
  %{failedRulesErrors}`,validateNested:`The field %{fieldName} must be a valid nested object. Errors:
5
- %{nestedErrors}`,validateNestedInvalidType:"The field %{fieldName} must be an object, but received %{receivedType}",dateAfter:"This field must be after %{date}",dateBefore:"This field must be before %{date}",dateBetween:"This field must be between %{startDate} and %{endDate}",dateEquals:"This field must be equal to %{date}",futureDate:"This field must be a date in the future",pastDate:"This field must be a date in the past",file:"This field must be a valid file",fileSize:"This field must not exceed %{maxSize} bytes",fileType:"This field must be one of the following types: %{allowedTypes}",image:"This field must be a valid image file",fileExtension:"This field must have one of the following extensions: %{allowedExtensions}",minFileSize:"This field must be at least %{minSize} bytes",uuid:"This field must be a valid UUID",json:"This field must be valid JSON",base64:"This field must be valid Base64 encoded data",hexColor:"This field must be a valid hexadecimal color code",creditCard:"This field must be a valid credit card number",ip:"This field must be a valid IP address (version %{version})",macAddress:"This field must be a valid MAC address",matches:"This field must match the pattern %{pattern}",tests:{entity:{name:"Name",id:"Id",email:"Email",aString:"A String",url:"Url",note:"Note",createdAt:"Created At",updatedAt:"Updated At"}}};var pt={auth:Be,currencies:Ke,countries:ke,dates:He,resources:Ge,validator:Ue};var K=class K{static get logger(){let e=Reflect.getMetadata(K.loggerMetaData,K);return $e(e)&&(this._logger=e),this._logger?this._logger:console}static set logger(e){$e(e)&&Reflect.defineMetadata(K.loggerMetaData,e,K);}static _log(e,...r){let n=K.logger;e=g(e),e&&typeof n[e]=="function"?n[e](K.getDateTimeString(),...r):console.log("Logger level not found : [",e,"]",...r);}static getDateTimeString(){let{day:e,year:r,hours:n,minutes:a,seconds:i,dayNameShort:o,monthName:s}=w.getUTCDateTimeDetails(),l=e<10?"0"+e:e,u=n<10?"0"+n:n,d=a<10?"0"+a:a,y=i<10?"0"+i:i;return "["+[o,l,s,r].join(" ")+" "+[u,d,y].join(":")+"]"}static log(...e){this._log("log",...e);}static info(...e){this._log("info",...e);}static debug(...e){this._log("debug",...e);}static warn(...e){this._log("warn",...e);}static error(...e){this._log("error",...e);}};K.loggerMetaData=Symbol("logger-meta-data");var oe=K,$e=t=>{if(!t)return false;try{return ["warn","info","error"].every(e=>typeof t[e]=="function")}catch(e){return false}};function bt(t){return typeof t=="boolean"||!t||typeof t=="number"||typeof t=="string"||typeof t=="symbol"?false:Object(t).constructor===Promise||t.constructor&&(t.constructor.name==="Promise"||t.constructor.name==="AsyncFunction")||t instanceof Promise||typeof(t==null?void 0:t.then)=="function"&&typeof(t==null?void 0:t.catch)=="function"&&typeof(t==null?void 0:t.finally)=="function"?true:t&&typeof t.constructor=="function"&&Function.prototype.toString.call(t.constructor).replace(/\(.*\)/,"()")===Function.prototype.toString.call(Function).replace("Function","Promise").replace(/\(.*\)/,"()")}function Se(t){return t&&Object.prototype.toString.call(t)==="[object Promise]"?true:bt(t)}function ze(){return typeof window!="undefined"&&(window==null?void 0:window.document)!==void 0&&typeof document!="undefined"&&typeof navigator!="undefined"}var ge=()=>{var t;try{if(typeof process!="undefined"&&(process!=null&&process.versions)&&((t=process==null?void 0:process.versions)!=null&&t.node)||typeof global=="object"&&(global==null?void 0:global.toString.call(global))==="[object global]")return !0}catch(e){}return false},ht=()=>{var t,e;return !!(typeof window!="undefined"&&window&&typeof(window==null?void 0:window.process)=="object"&&((t=window==null?void 0:window.process)==null?void 0:t.type)==="renderer"||typeof process!="undefined"&&typeof(process==null?void 0:process.versions)=="object"&&((e=process.versions)!=null&&e.electron)||typeof navigator=="object"&&typeof navigator.userAgent=="string"&&String(navigator==null?void 0:navigator.userAgent).toLowerCase().indexOf("electron")>=0)},Ct=()=>{if(typeof document!="undefined"&&document)try{return document.createEvent("TouchEvent"),!0}catch(t){try{return "ontouchstart"in window||"onmsgesturechange"in window}catch(e){}}return false},Dt=()=>typeof window=="undefined"&&typeof process!="undefined",We=()=>!!(typeof window!="undefined"&&typeof window=="object"&&window),Tt=()=>{if(!ze()||typeof navigator!="object"||!navigator||typeof navigator.userAgent!="string")return false;let t=navigator.userAgent.toLowerCase();return /android/i.test(t)},Rt=()=>{var t;return !We()||!(window!=null&&window.ReactNativeWebView)?false:typeof((t=window==null?void 0:window.ReactNativeWebView)==null?void 0:t.postMessage)=="function"},St=()=>ge()&&process.platform==="darwin",Nt=()=>ge()&&process.platform==="win32",Mt=()=>ge()&&process.platform==="linux",Ze={isWeb:ze,isLinux:Mt,isDarwin:St,isWin32:Nt,isNode:ge,isElectron:ht,isTouchDevice:Ct,isServerSide:Dt,isClientSide:We,isAndroidMobileBrowser:Tt,isReactNativeWebview:Rt};var X=class t{static decycle(e,r=[]){if(typeof e=="function")return;if(!e||typeof e!="object")return e;if(r.includes(e))return null;let n=r.concat([e]);return Array.isArray(e)?e.map(a=>t.decycle(a,n)):Object.fromEntries(Object.entries(e).map(([a,i])=>[a,t.decycle(i,n)]))}static stringify(e,r=false){return typeof e=="string"?e:JSON.stringify(r!==false?t.decycle(e):e)}static isJSON(e){if(typeof e!="string")return false;let r=e.trim();if(r.length===0)return false;let n=r[0];if(n!=="{"&&n!=="[")return false;try{let a=JSON.parse(r);return a!==null&&typeof a=="object"}catch(a){return false}}static parse(e,r){if(typeof e=="string")try{e=JSON.parse(e,r);}catch(n){return e}if(e&&typeof e=="object")for(let n in e){let a=e[n];t.isJSON(a)&&(e[n]=t.parse(a,r));}return e}};var W=class W{static get storage(){var r;let e=Reflect.getMetadata(W.sessionStorageMetaData,W);if(Ne(e)&&(this._storage=e),this._storage)return this._storage;if(Ze.isClientSide()&&typeof window!="undefined"&&window.localStorage&&((r=window.localStorage)!=null&&r.getItem))this._storage={get:n=>window.localStorage.getItem(n),set:(n,a)=>window.localStorage.setItem(n,a),remove:n=>window.localStorage.removeItem(n),removeAll:()=>window.localStorage.clear()};else {let n={};this._storage={get:a=>n[a],set:(a,i)=>n[a]=i,remove:a=>delete n[a],removeAll:()=>n={}};}return this._storage}static set storage(e){Ne(e)&&Reflect.defineMetadata(W.sessionStorageMetaData,e,W);}static get keyNamespace(){return m(this._keyNamespace)?this._keyNamespace:""}static set keyNamespace(e){m(e)&&(this._keyNamespace=e.trim().replace(/\s+/g,"-"));}static sanitizeKey(e){if(!e||!m(e))return "";e=e.trim().replace(/\s+/g,"-");let r=this.keyNamespace;return r?`${r}-${e}`:e}};W.sessionStorageMetaData=Symbol("sessionStorage"),W._keyNamespace=void 0;var L=W;function pe(t){return L.sanitizeKey(t)}var je=(t,e)=>(t=t&&X.stringify(t,e),t==null&&(t=""),t),Je=t=>{if(Se(t))return new Promise((e,r)=>{t.then(n=>{e(X.parse(n));}).catch(n=>{r(n);});});if(t!=null)return X.parse(t)},vt=t=>{if(t=pe(t),L.storage&&t&&typeof t=="string"){let e=L.storage.get(t);return Je(e)}},Pt=t=>{if(t=pe(t),L.storage&&t&&typeof t=="string")return L.storage.remove(t)},xt=()=>{if(L.storage)return L.storage.removeAll()},Ne=t=>{if(!t)return false;try{return ["get","set","remove","removeAll"].every(e=>typeof t[e]=="function")}catch(e){return false}},H={get:vt,set:(t,e,r=true)=>(t=pe(t),L.storage.set(t,je(e,r))),remove:Pt,handleGetValue:Je,sanitizeKey:pe,handleSetValue:je,isValidStorage:Ne,Manager:L,removeAll:xt};function G(t){return t==null||typeof t=="string"||typeof t=="number"||typeof t=="boolean"}function ee(t){if(t instanceof RegExp)return true;if(!t||typeof t!="object"||!Object.prototype.toString.call(t).includes("RegExp"))return false;try{return new RegExp(t),!0}catch(e){return false}}function se(t){return !t||typeof t!="object"?false:t instanceof Date?true:typeof t.getTime!="function"?false:!(Object.prototype.toString.call(t)!=="[object Date]"||isNaN(t.getTime()))}function Me(t){return typeof window!="object"||!window||typeof document=="undefined"||typeof HTMLElement=="undefined"||!HTMLElement?false:t===document?true:"HTMLElement"in window?!!t&&t instanceof HTMLElement:!!t&&typeof t=="object"&&t.nodeType===1&&!!t.nodeName}function T(t){if(t===null||typeof t!="object"||Me(t)||se(t)||ee(t)||G(t))return false;let e=Object.getPrototypeOf(t);if(e===null)return true;let r=e.constructor;if(typeof r!="function")return false;if(r===Object)return true;let n=r.prototype;return typeof n!="object"?false:n===Object.prototype?true:typeof e.hasOwnProperty=="function"&&Object.prototype.hasOwnProperty.call(e,"isPrototypeOf")&&typeof e.isPrototypeOf=="function"}function ve(t){if(Array.isArray(t)){let n=[];for(var e=0;e<t.length;e++)n[e]=ve(t[e]);return n}else if(T(t)&&t){let n={};for(var r in t)t.hasOwnProperty(r)&&(n[r]=ve(t[r]));return n}else return t}Object.getSize=function(t,e=false){if(!t||typeof t!="object")return 0;if(Array.isArray(t))return t.length;typeof e!="boolean"&&(e=false);let r=0;for(let n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&(r++,e===true))return r;return r};function le(t,...e){let r=Array.isArray(t),n=T(t);(t==null||!r&&!n)&&(t={});for(let a=0;a<e.length;a++){let i=e[a];if(i==null)continue;let o=T(i),s=Array.isArray(i);if(!(!o&&!s)){if(r){s&&Qe(t,i);continue}else if(s)continue;for(let l in i){let u=i[l];if(u==null)continue;if(u===i){t[l]=t;continue}let d=t[l],y=Array.isArray(d),f=Array.isArray(u);if(y){f?Qe(t[l],u):t[l]=u;continue}else if(!T(d)){t[l]=u;continue}if(f||!T(u)){t[l]=u;continue}t[l]=le({},d,u);}}}return t}var Qe=(t,e)=>{let r=e.length,n=0;for(let a=0;a<t.length;a++){let i=t[a],o=e[a];if(a<r){let s=Array.isArray(i),l=Array.isArray(o),u=T(i),d=T(o);s&&l||u&&d?(t[n]=le(s?[]:{},i,o),n++):o!=null?(t[n]=o,n++):i!=null&&(t[n]=i,n++);}}for(let a=t.length;a<r;a++)e[a]!==void 0&&e[a]!==null&&t.push(e[a]);return t};function At(t,e){return be(t,"",{},e)}function be(t,e="",r={},n){if(r=T(r)?r:{},G(t)||se(t)||ee(t)||Array.isArray(t)&&(n!=null&&n.skipArrays))return e&&(r[e]=t),r;if(typeof t=="function"||typeof t=="object"&&!T(t)&&!Ot(t))return r;if(t instanceof Map||t instanceof WeakMap)return Array.from(t.entries()).forEach(([a,i])=>{let o=e?`${e}[${String(a)}]`:String(a);be(i,o,r,n);}),r;if(Array.isArray(t)||t instanceof Set||t instanceof WeakSet)return (Array.isArray(t)?t:Array.from(t)).forEach((i,o)=>{let s=e?`${e}[${o}]`:String(o);be(i,s,r,n);}),r;if(T(t))for(let a in t){if(!Object.prototype.hasOwnProperty.call(t,a))continue;let i=t[a],o=e?e.endsWith("]")?`${e}.${a}`:`${e}.${a}`:a;be(i,o,r,n);}return r}function Ot(t){return Array.isArray(t)||t instanceof Set||t instanceof Map||t instanceof WeakMap||t instanceof WeakSet}function Vt(t){return Object.entries(t)}Object.typedEntries=Vt;Object.flatten=At;Object.clone=ve;function ue(t,e){if(t==null)return "";if(typeof t=="string")return t;if((typeof t=="number"||typeof t=="object"&&t instanceof Number)&&typeof t.formatNumber=="function")return t.formatNumber();if(t instanceof Date||typeof t=="object"&&t!==null&&t.constructor===Date)return typeof t.toFormat=="function"?t.toFormat():t.toISOString();if(t instanceof Error)return `Error: ${t.message}`;if(ee(t))return t.toString();if(G(t))return String(t);if(Array.isArray(t))return JSON.stringify(t);if(typeof t=="object"&&t!==null){if(typeof t.toString=="function"&&t.toString!==Object.prototype.toString)return t.toString();if(typeof t.toString=="function"){let r=t.toString();if(r!=="[object Object]")return r}return JSON.stringify(t)}return typeof(t==null?void 0:t.toString)=="function"?t.toString():String(t)}function qe(t,e,r){let n=ue,a=g(t);if(!T(e)||!e)return a;let i=/%\{([^}]+)\}/g,o=new Set,s,l=g(t);for(;(s=i.exec(l))!==null;){let u=s[1];u!==void 0&&o.add(u);}return o.forEach(u=>{let d;d=`%{${u}}`;let y=Object.prototype.hasOwnProperty.call(e,u)?e[u]:void 0,f=y===void 0?"":(()=>{try{return n(y,u,ue)}catch(C){return ue(y)}})(),p=d.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");a=a.replace(new RegExp(p,"g"),f);}),a}function Pe(t){return !!(t==null||typeof t=="number"&&isNaN(t)||typeof t=="string"&&t.trim()==="")}function wt(t){return g(t).replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\v/g,"\\v").replace(/[\b]/g,"\\b").replace(/\f/g,"\\f")}function he(t,e){var r=Object.prototype.toString.call(t);return r==="[object "+e+"]"}function F(t,e){if(["boolean","undefined"].includes(typeof t)||t===null)return String(t);if(N(t))return t.formatNumber();if(t instanceof Date)return t.toFormat();if(t instanceof Error)return t==null?void 0:t.toString();e=Object.assign({},e);let{parenthesis:r}=e,n=r?"(":"",a=r?")":"";return typeof t=="string"?(e==null?void 0:e.escapeString)!==false?"'"+wt(t)+"'":t:he(t,"RegExp")||he(t,"Number")||he(t,"Boolean")?t.toString():he(t,"Date")?"new Date("+t.getTime()+")":Array.isArray(t)?"["+t.map(i=>F(i,e)).join(",")+"]":typeof t=="object"?n+"{"+Object.keys(t).map(i=>{var o=t[i];return F(i,e)+":"+F(o,e)}).join(",")+"}"+a:t&&typeof(t==null?void 0:t.toString)=="function"?t==null?void 0:t.toString():String(t)}var Xe=Symbol("TRANSLATION_KEY");var V=class V extends i18nJs.I18n{constructor(r={},n={}){super({},n);this._isLoading=false;this._locales=[];this.namespaceResolvers={};this._observableFactory=Fe();this._____isObservable=true;this.hasRegisteredDefaultTranslations=false;this._namespacesLoaded={};this.hasRegisteredDefaultTranslations||(this.registerTranslations(Re),this.hasRegisteredDefaultTranslations=true),this.registerTranslations(r),this.loadNamespaces();}static[Symbol.hasInstance](r){return this.isI18nInstance(r)}static isI18nInstance(r){if(!r||typeof r!="object")return false;try{if(r instanceof i18nJs.I18n)return !0}catch(n){}return typeof r.getLocale=="function"&&typeof r.translate=="function"&&typeof r.translateTarget=="function"}translate(r,n){return this.isPluralizeOptions(n)&&this.canPluralize(r)?(typeof n.count=="number"&&(n.countStr=n.count.formatNumber()),this.pluralize(n.count,r,n)):super.translate(r,n)}translateTarget(r,n){let a=V.getTargetTanslationKeys(r);for(let i in a)m(a[i])&&(a[i]=this.translate(a[i],n));return a}translateObject(r,n){if(!T(r))return {};let a={};for(let i in r){let o=r[i];m(o)&&(a[i]=te.translate(o,n));}return a}static getTargetTanslationKeys(r){return ye(r,Xe)}on(r,n){return this._observableFactory.on.call(this,r,n)}finally(r,n){return this._observableFactory.finally.call(this,r,n)}off(r,n){var a;return (a=this._observableFactory)==null?void 0:a.off.call(this,r,n)}trigger(r,...n){var a;return (a=this._observableFactory)==null?void 0:a.trigger.call(this,r,...n)}offAll(){var r;return (r=this._observableFactory)==null?void 0:r.offAll.call(this)}once(r,n){var a;return (a=this._observableFactory)==null?void 0:a.once.call(this,r,n)}getEventCallBacks(){var r;return (r=this._observableFactory)==null?void 0:r.getEventCallBacks.call(this)}static getInstance(r){if(!this.isI18nInstance(V.instance)){let n=V.getLocaleFromSession();V.instance=this.createInstance({},Object.assign({},n?{locale:n}:{},r));}return V.instance}isDefaultInstance(){return this===V.instance}static setLocaleToSession(r){H.set("i18n.locale",r);}static getLocaleFromSession(){let r=H.get("i18n.locale");return m(r)?r:""}canPluralize(r,n){n=g(n,this.getLocale());let a=this.getNestedTranslation(r,n);return !T(a)||!a?false:m(a==null?void 0:a.one)&&m(a==null?void 0:a.other)}getNestedTranslation(r,n){n=g(n,this.getLocale());let a=(m(r)?r.trim().split("."):Array.isArray(r)?r:[]).filter(m);if(!a.length)return;let i=this.getTranslations(n);for(let o of a)if(T(i))i=i[o];else return;return i}isPluralizeOptions(r){return !!(T(r)&&r&&typeof r.count=="number")}static RegisterTranslations(r){return V.getInstance().registerTranslations(r)}static createInstance(r={},n={}){let s=Object.assign({},n),{interpolate:a}=s,i=x(s,["interpolate"]),o=new V(r,i);return o.interpolate=(l,u,d)=>{let y=V.flattenObject(d),f=this.defaultInterpolator(l,u,y);return m(f)&&f!==u&&(u=f),typeof a=="function"?a(l,u,d):qe(u,d)},o}getTranslations(r){let n=T(this.translations)?this.translations:{};return m(r)?T(n[r])?n[r]:{}:n}static registerMomentLocale(r,n){return m(r)&&T(n)&&Array.isArray(n.months)&&(this.momentLocales[r]=le({},this.momentLocales[r],n)),this.momentLocales}static getMomentLocale(r){return this.momentLocales[r]}static setMomentLocale(r){try{return q__default.default.updateLocale(r,this.getMomentLocale(r)),!0}catch(n){console.error(n," setting moment locale : ",r);}return false}registerTranslations(r){return this.store(r),this.getTranslations()}store(r){super.store(r),this.trigger("translations-changed",this.getLocale(),this.getTranslations());}resolveTranslations(r){try{let n=Object.getOwnPropertyNames(r);for(let a of n){let i=Reflect.getMetadata(Xe,r,a);if(i)try{r[a]=this.translate(i);}catch(o){oe.error(o," resolving translation for key : ",i);}}}catch(n){oe.error(n," resolving translations for target : ",r);}}getMissingPlaceholderString(r,n,a){return typeof this.missingPlaceholder=="function"?this.missingPlaceholder(this,r,g(n),Object.assign({},a)):r}getLocale(){return super.locale}setLocales(r){return this._locales=Array.isArray(r)?r:["en"],this._locales.includes("en")||this._locales.push("en"),this.getLocales()}hasLocale(r){return m(r)&&this.getLocales().includes(r)}getLocales(){let r=Object.keys(this.getTranslations()),n=Array.isArray(this._locales)?this._locales:["en"],a=[...r,...n.filter(i=>!r.includes(i))];return a.includes("en")||a.push("en"),a}isLocaleSupported(r){return m(r)?this.getLocales().includes(r):false}isLoading(){return this._isLoading}setLocale(r,n=false){return super.locale===r&&n!==true&&this._namespacesLoaded[r]?Promise.resolve(this.getLocale()):new Promise((a,i)=>(this._isLoading=true,this.trigger("namespaces-before-load",r),this.loadNamespaces(r).then(o=>{this.isDefaultInstance()&&(V.instance=this,this.isLocaleSupported(r)&&V.setLocaleToSession(r)),super.locale=r,V.setMomentLocale(r),this.trigger("locale-changed",r,o),a(r);}).catch(i).finally(()=>{this._isLoading=false;})))}registerNamespaceResolver(r,n){if(!m(r)||typeof n!="function"){console.warn("Invalid arguments for registerNamespaceResolver.",r,n);return}this.namespaceResolvers[r]=n;}static RegisterNamespaceResolver(r,n){return V.getInstance().registerNamespaceResolver(r,n)}loadNamespace(r,n,a=true){return !m(r)||!this.namespaceResolvers[r]?Promise.reject(new Error(`Invalid namespace or resolver for namespace "${r}".`)):(n=g(n,this.getLocale()),m(n)?this.namespaceResolvers[r](n).then(i=>{let o={};return o[n]=Object.assign({},i),T(i)&&(a!==false&&this.store(o),this.trigger("namespace-loaded",r,n,o)),o}):Promise.reject(new Error(`Locale is not set. Cannot load namespace "${r}".`)))}static LoadNamespace(r,n,a=true){return V.getInstance().loadNamespace(r,n,a)}loadNamespaces(r,n=true){let a=[],i={};r=g(r,this.getLocale()),this._isLoading=true;for(let o in this.namespaceResolvers)Object.prototype.hasOwnProperty.call(this.namespaceResolvers,o)&&typeof this.namespaceResolvers[o]=="function"&&a.push(new Promise(s=>{this.namespaceResolvers[o](r).then(l=>{le(i,l);}).finally(()=>{s(true);});}));return Promise.all(a).then(()=>{let o={};return o[r]=i,n!==false&&this.store(o),setTimeout(()=>{this.trigger("namespaces-loaded",r,o);},100),o}).finally(()=>{this._isLoading=false;})}static LoadNamespaces(r,n=true){return V.getInstance().loadNamespaces(r,n)}static flattenObject(r){return T(r)?Object.flatten(r):r}static defaultInterpolator(r,n,a){return Pe(n)?"":G(n)?(n=String(n),!T(a)||!a||!T(a)||!a?n:n.replace(/%{(.*?)}/g,(i,o)=>Pe(a[o])?"":G(a[o])?String(a[o]):F(a[o],{escapeString:false}))):F(n,{escapeString:false})}};V.momentLocales={};var U=V,te=U.getInstance();try{Object.setPrototypeOf(te,U.prototype);}catch(t){}function Z(t){return !!(t==null||typeof t=="undefined"||typeof t=="string"&&t===""||Array.isArray(t)&&!t.length)}var h=class h{static parseString(e,r){if(m(e)&&m(r))try{let n=q__default.default(e,r,!0);if(n.isValid())return {date:n.toDate(),matchedFormat:r,isValid:!0}}catch(n){}try{if(Array.isArray(r)&&(r!=null&&r.length))for(let n of r){let a=et(e,n);if(a)return a}for(let n of h.DATE_FORMATS){let a=et(e,n);if(a)return a}return {date:null,matchedFormat:null,isValid:!1,error:"Unable to parse date string with any known format"}}catch(n){return {date:null,matchedFormat:null,isValid:false,error:n instanceof Error?n.message:"Unknown error occurred while parsing date"}}}static toIsoString(e){let r=e?h.parseDate(e):new Date;return r?r.toISOString():""}static isoStringToDate(e){return new Date(e)}static parseDate(e,r){if(h.isDateObj(e))return e;if(!m(r)){let n=h.parseString(e);return n!=null&&n.isValid?n.date:null}if(Z(e))return null;try{let n=q__default.default(e,r,!0);if(n!=null&&n.isValid())return n.toDate()}catch(n){console.error(n," parsing date with moment : ",e," format is : ",r);}return null}static toSQLDateTimeFormat(e){if(!h.isDateObj(e))return "";let r=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),a=String(e.getDate()).padStart(2,"0"),i=String(e.getHours()).padStart(2,"0"),o=String(e.getMinutes()).padStart(2,"0"),s=String(e.getSeconds()).padStart(2,"0");return `${r}-${n}-${a} ${i}:${o}:${s}`}static getI18n(e){return U.isI18nInstance(e)?e:U.getInstance()}static getDefaultDateTimeFormat(e){return g(this.getI18n(e).getNestedTranslation("dates.defaultDateTimeFormat"),"YYYY-MM-DD HH:mm")}static getDefaultDateFormat(e){return g(this.getI18n(e).getNestedTranslation("dates.defaultDateFormat"),"YYYY-MM-DD")}static toSQLDateFormat(e){if(!h.isDateObj(e))return "";let r=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),a=String(e.getDate()).padStart(2,"0");return `${r}-${n}-${a}`}static toSQLTimeFormat(e){if(!h.isDateObj(e))return "";let r=String(e.getHours()).padStart(2,"0"),n=String(e.getMinutes()).padStart(2,"0"),a=String(e.getSeconds()).padStart(2,"0");return `${r}:${n}:${a}`}static getDefaultTimeFormat(e){return g(this.getI18n(e).getNestedTranslation("dates.defaultTimeFormat"),"HH:mm")}static isValidDate(e,r){if(e==null||typeof e=="boolean")return false;if(h.isDateObj(e))return true;if(N(e)){let a=new Date(e);return a&&!isNaN(a.getTime())}if(m(e))return !!h.parseDate(e,r);if(e!=null&&e.toString&&(e==null?void 0:e.toString())==parseInt(e).toString())return false;let n=new Date(e);return h.isDateObj(n)}static addToDate(e,r,n){if(N(e)||(e=0),Z(r)&&(r=new Date),h.isValidDate(r)&&m(r)&&(r=new Date(r)),h.isValidDate(r)||(r=m(r)?new Date(r):new Date),m(n)&&typeof r["set"+n]=="function"&&typeof r["get"+n]=="function"){let a="set"+n,i="get"+n;r=new Date(r[a](r[i]()+e));}return r}static addDays(e,r){return h.addToDate(e,r,"Date")}static addMilliseconds(e,r){return N(e)||(e=0),h.isDateObj(r)||(r=new Date),r=r||new Date,new Date(r.getTime()+e)}static addSeconds(e,r){return N(e)||(e=0),h.addMilliseconds(e*1e3,r)}static addMinutes(e,r){return N(e)||(e=0),h.addMilliseconds(e*6e4,r)}static addHours(e,r){return N(e)||(e=0),h.addMilliseconds(e*36e5,r)}static addMonths(e,r,n){return h.addToDate(e,r,"Month")}static addWeeks(e,r){return e=(N(e)?e:0)*7,h.addToDate(e,r,"Date")}static addYears(e,r){N(e)||(e=0);let n=new Date(h.addToDate(0,r)),a=n.getFullYear();return a+e<0?e=0:e+=a,n.setFullYear(e),new Date(n)}static formatDate(e,r){try{let n=q__default.default(e);if(n.isValid())return n.format(g(r,h.getDefaultDateTimeFormat()))}catch(n){}return g(h.isValidDate(e)?e==null?void 0:e.toString():"")}static getUTCDateTimeDetails(e){let r=e?q__default.default.utc(e):q__default.default.utc();return {year:r.year(),day:r.day(),month:r.month(),monthString:r.format("MM"),hours:r.hours(),date:r.date(),minutes:r.minutes(),seconds:r.seconds(),monthName:r.format("MMMM"),dayName:r.format("dddd"),dayNameShort:r.format("ddd")}}};h.DATE_FORMATS=["YYYY-MM-DD","YYYY-MM-DDTHH:mm:ss","YYYY-MM-DDTHH:mm:ssZ","YYYY-MM-DDTHH:mm:ss.SSSZ","YYYY-MM-DDTHH:mm:ss[Z]","YYYY-MM-DDTHH:mm:ss.SSS[Z]","YYYY-MM-DDTHH:mm:ss.SSSZ ","YYYY-MM-DDTHH:mm:ss.SSS","YYYY-MM-DD HH:mm:ss","YYYY-MM-DD HH:mm:ss.SSSZ","YYYY-MM-DDTHH:mm:ss.SSS[Z]","YYYY-MM-DD HH:mm:ssZ","YYYY-MM-DD HH:mmZ","MM/DD/YYYY","MM-DD-YYYY","MM.DD.YYYY","MM/DD/YY","MMMM DD, YYYY","MMM DD, YYYY","DD/MM/YYYY","DD-MM-YYYY","DD.MM.YYYY","DD/MM/YY","DD MMMM YYYY","DD MMM YYYY","HH:mm:ss.SSSZ","HH:mm:ssZ","HH:mmZ","YYYYMMDD","YYYYMMDDTHHMM","YYYYMMDDTHHMMSS","HH:mm:ss","HH:mm","hh:mm A","h:mm A","HH:mm:ss.SSS","YYYY-DDD","YYYY-Www","YYYY-Www-D","YYYY/MM/DD","YYYY.MM.DD","MMM D, YYYY","MMMM D, YYYY","D MMM YYYY","D MMMM YYYY","MMM D YYYY","ddd, DD MMM YYYY HH:mm:ss ZZ","ddd, DD MMM YYYY HH:mm:ss","dddd, MMMM D, YYYY","dddd, D MMMM YYYY","hh:mm:ss A","H:mm:ss","YYYY-[W]WW","YYYY-[W]WW-E","YYYY-MM-DDTHH:mm:ss.SSS","DD-MM-YYYY HH:mm:ss","YYYY/MM/DD HH:mm:ss","YYYY.MM.DD HH:mm:ss","DD/MM/YYYY HH:mm:ss","MMM D YYYY, h:mm a","MMMM D YYYY, h:mm a","h:mm A MMM D, YYYY","MMMM D, YYYY","YY-MM-DD","DD-MM-YY","MM/DD/YY","MMM DD, YY","D MMM YY","D MMMM YY","YYYY MMM D","YYYY-MM-DD HH:mm","YYYY-MM-DD HH:mm:ss.SSS"],h.SQL_DATE_FORMAT="YYYY-MM-DD",h.SQL_DATE_TIME_FORMAT="YYYY-MM-DD HH:mm:ss",h.SQL_TIME_FORMAT="HH:mm:ss",h.getCurrentMonthDaysRange=e=>{let r=h.isValidDate(e)?new Date(e):new Date().resetHours2Minutes2Seconds(),n=new Date(r.getFullYear(),r.getMonth(),1),a=new Date(r.getFullYear(),r.getMonth()+1,0);return {first:n,last:a}},h.getPreviousWeekDaysRange=e=>{let r=h.isValidDate(e)?new Date(e):new Date().resetHours2Minutes2Seconds(),n=new Date(r.getTime()-3600*24*7*1e3),a=new Date(n),i=n.getDay(),o=n.getDate()-i+(i===0?-6:1),s=new Date(n.setDate(o)),l=new Date(a.setDate(o+6));return {first:s,last:l}},h.getCurrentWeekDaysRange=e=>{let r=h.isValidDate(e)?new Date(e):new Date().resetHours2Minutes2Seconds(),n=r.getDay(),a=r.getDate()-n+(n==0?-6:1),i=new Date(r),o=new Date(r.setDate(a));return i.setDate(i.getDate()+6),{first:o,last:i}},h.isDateObj=se;var w=h,et=(t,e)=>{let r=q__default.default(t,e,true);try{if(r.isValid()&&r.format(e)===t||q__default.default.utc(r,!0).format(e)===t)return {date:r.toDate(),matchedFormat:e,isValid:!0}}catch(n){}return null};Date.prototype.toSQLDateTimeFormat=function(){return w.toSQLDateTimeFormat(this)};Date.prototype.toSQLDateFormat=function(){return w.toSQLDateFormat(this)};Date.prototype.toSQLTimeFormat=function(){return w.toSQLTimeFormat(this)};Date.prototype.resetHours=function(){return this.setHours(0),this};Date.prototype.resetMinutes=function(){return this.setMinutes(0),this};Date.prototype.resetSeconds=function(){return this.setSeconds(0),this};Date.prototype.resetMilliseconds=function(){return this.setMilliseconds(0),this};Date.prototype.resetHours2Minutes2Seconds=function(){return this.setHours(0),this.setMinutes(0),this.setSeconds(0),this.setMilliseconds(0),this};Date.prototype.toFormat=function(t){return w.formatDate(this,t)};Date.prototype.addYears=function(t){return w.addYears(t,this)};Date.prototype.addMonths=function(t){return w.addMonths(t,this)};Date.prototype.addMinutes=function(t){return w.addMinutes(t,this)};Date.prototype.addSeconds=function(t){return w.addSeconds(t,this)};Date.prototype.addDays=function(t){return w.addDays(t,this)};Date.prototype.addWeeks=function(t){return w.addWeeks(t,this)};Date.prototype.addHours=function(t){return w.addHours(t,this)};var tt=function(t,e=""){if(!t||typeof t!="string")return "";if(!e||typeof e!="string")return t.trim();let r=t.length;for(;t.startsWith(e)&&r>=0;)t=t.slice(e.length),--r;return t.toString()},rt=function(t,e=""){if(!t||typeof t!="string")return "";if(!e||typeof e!="string")return t.trim();let r=t.length;for(;t.endsWith(e)&&r>=0;)t=t.slice(0,-e.length),--r;return t.toString()},Yt=(t,e=true)=>typeof t!="string"?false:e!==false?/^\d*\.?\d+$/.test(t):/^\d+$/.test(t);String.prototype.ltrim=function(t){return tt(this.toString(),t)};String.prototype.rtrim=function(t){return rt(this.toString(),t)};String.prototype.isNumber=function(t=true){return Yt(this.toString(),t)};String.prototype.replaceAll=function(t,e){return !m(t)||!m(e)?this.toString():this.toString().split(t).join(e)};var It=t=>m(t)?(t=t.trim(),t.replace(/(.)([A-Z][a-z]+)/,"$1_$2").replace(/([a-z0-9])([A-Z])/,"$1_$2").toUpperCase()):"";String.prototype.toSnakeCase=function(){return It(this.toString())};var Lt=t=>m(t)?(t=t.trim(),t.charAt(0)+t.replace(/(_\w)/g,e=>e[1].toUpperCase()).substring(1)):"";String.prototype.toCamelCase=function(){return Lt(this.toString())};var Ft=function(t){return !t||typeof t!="string"?"":(t=t.trim(),t.charAt(0).toUpperCase()+t.slice(1))};String.prototype.upperFirst=function(){return Ft(this.toString())};var xe=function(t){return !t||typeof t!="string"?"":(t=t.trim(),t.charAt(0).toLowerCase()+t.slice(1))};String.prototype.lowerFirst=function(){return xe(this.toString())};var k={USD:{symbol:"$",name:"US Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"USD",namePlural:"US dollars"},CAD:{symbol:"CA$",name:"Canadian Dollar",symbolNative:"$",decimalDigits:2,format:"%s %v",rounding:0,code:"CAD",namePlural:"Canadian dollars"},EUR:{symbol:"\u20AC",name:"Euro",symbolNative:"\u20AC",decimalDigits:2,rounding:0,code:"EUR",namePlural:"euros"},AED:{symbol:"AED",name:"United Arab Emirates Dirham",symbolNative:"\u062F.\u0625.\u200F",decimalDigits:2,rounding:0,code:"AED",namePlural:"UAE dirhams"},AFN:{symbol:"Af",name:"Afghan Afghani",symbolNative:"\u060B",decimalDigits:0,rounding:0,code:"AFN",namePlural:"Afghan Afghanis"},ALL:{symbol:"ALL",name:"Albanian Lek",symbolNative:"Lek",decimalDigits:0,rounding:0,code:"ALL",namePlural:"Albanian lek\xEB"},AMD:{symbol:"AMD",name:"Armenian Dram",symbolNative:"\u0564\u0580.",decimalDigits:0,rounding:0,code:"AMD",namePlural:"Armenian drams"},ARS:{symbol:"AR$",name:"Argentine Peso",symbolNative:"$",decimalDigits:2,rounding:0,code:"ARS",namePlural:"Argentine pesos"},AUD:{symbol:"AU$",name:"Australian Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"AUD",namePlural:"Australian dollars"},AZN:{symbol:"man.",name:"Azerbaijani Manat",symbolNative:"\u043C\u0430\u043D.",decimalDigits:2,rounding:0,code:"AZN",namePlural:"Azerbaijani manats"},BAM:{symbol:"KM",name:"Bosnia-Herzegovina Convertible Mark",symbolNative:"KM",decimalDigits:2,rounding:0,code:"BAM",namePlural:"Bosnia-Herzegovina convertible marks"},BDT:{symbol:"Tk",name:"Bangladeshi Taka",symbolNative:"\u09F3",decimalDigits:2,rounding:0,code:"BDT",namePlural:"Bangladeshi takas"},BGN:{symbol:"BGN",name:"Bulgarian Lev",symbolNative:"\u043B\u0432.",decimalDigits:2,rounding:0,code:"BGN",namePlural:"Bulgarian leva"},BHD:{symbol:"BD",name:"Bahraini Dinar",symbolNative:"\u062F.\u0628.\u200F",decimalDigits:2,rounding:0,code:"BHD",namePlural:"Bahraini dinars"},BIF:{symbol:"FBu",name:"Burundian Franc",symbolNative:"FBu",decimalDigits:0,rounding:0,code:"BIF",namePlural:"Burundian francs"},BND:{symbol:"BN$",name:"Brunei Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"BND",namePlural:"Brunei dollars"},BOB:{symbol:"Bs",name:"Bolivian Boliviano",symbolNative:"Bs",decimalDigits:2,rounding:0,code:"BOB",namePlural:"Bolivian bolivianos"},BRL:{symbol:"R$",name:"Brazilian Real",symbolNative:"R$",decimalDigits:2,rounding:0,code:"BRL",namePlural:"Brazilian reals"},BWP:{symbol:"BWP",name:"Botswanan Pula",symbolNative:"P",decimalDigits:2,rounding:0,code:"BWP",namePlural:"Botswanan pulas"},BYR:{symbol:"BYR",name:"Belarusian Ruble",symbolNative:"BYR",decimalDigits:0,rounding:0,code:"BYR",namePlural:"Belarusian rubles"},BZD:{symbol:"BZ$",name:"Belize Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"BZD",namePlural:"Belize dollars"},CDF:{symbol:"CDF",name:"Congolese Franc",symbolNative:"FrCD",decimalDigits:2,rounding:0,code:"CDF",namePlural:"Congolese francs"},CHF:{symbol:"CHF",name:"Swiss Franc",symbolNative:"CHF",decimalDigits:2,rounding:.05,code:"CHF",namePlural:"Swiss francs"},CLP:{symbol:"CL$",name:"Chilean Peso",symbolNative:"$",decimalDigits:0,rounding:0,code:"CLP",namePlural:"Chilean pesos"},CNY:{symbol:"CN\xA5",name:"Chinese Yuan",symbolNative:"CN\xA5",decimalDigits:2,rounding:0,code:"CNY",namePlural:"Chinese yuan"},COP:{symbol:"CO$",name:"Colombian Peso",symbolNative:"$",decimalDigits:0,rounding:0,code:"COP",namePlural:"Colombian pesos"},CRC:{symbol:"\u20A1",name:"Costa Rican Col\xF3n",symbolNative:"\u20A1",decimalDigits:0,rounding:0,code:"CRC",namePlural:"Costa Rican col\xF3ns"},CVE:{symbol:"CV$",name:"Cape Verdean Escudo",symbolNative:"CV$",decimalDigits:2,rounding:0,code:"CVE",namePlural:"Cape Verdean escudos"},CZK:{symbol:"K\u010D",name:"Czech Republic Koruna",symbolNative:"K\u010D",decimalDigits:2,rounding:0,code:"CZK",namePlural:"Czech Republic korunas"},DJF:{symbol:"Fdj",name:"Djiboutian Franc",symbolNative:"Fdj",decimalDigits:0,rounding:0,code:"DJF",namePlural:"Djiboutian francs"},DKK:{symbol:"Dkr",name:"Danish Krone",symbolNative:"kr",decimalDigits:2,rounding:0,code:"DKK",namePlural:"Danish kroner"},DOP:{symbol:"RD$",name:"Dominican Peso",symbolNative:"RD$",decimalDigits:2,rounding:0,code:"DOP",namePlural:"Dominican pesos"},DZD:{symbol:"DA",name:"Algerian Dinar",symbolNative:"\u062F.\u062C.\u200F",decimalDigits:2,rounding:0,code:"DZD",namePlural:"Algerian dinars"},EEK:{symbol:"Ekr",name:"Estonian Kroon",symbolNative:"kr",decimalDigits:2,rounding:0,code:"EEK",namePlural:"Estonian kroons"},EGP:{symbol:"EGP",name:"Egyptian Pound",symbolNative:"\u062C.\u0645.\u200F",decimalDigits:2,rounding:0,code:"EGP",namePlural:"Egyptian pounds"},ERN:{symbol:"Nfk",name:"Eritrean Nakfa",symbolNative:"Nfk",decimalDigits:2,rounding:0,code:"ERN",namePlural:"Eritrean nakfas"},ETB:{symbol:"Br",name:"Ethiopian Birr",symbolNative:"Br",decimalDigits:2,rounding:0,code:"ETB",namePlural:"Ethiopian birrs"},GBP:{symbol:"\xA3",name:"British Pound Sterling",symbolNative:"\xA3",decimalDigits:2,rounding:0,code:"GBP",namePlural:"British pounds sterling"},GEL:{symbol:"GEL",name:"Georgian Lari",symbolNative:"GEL",decimalDigits:2,rounding:0,code:"GEL",namePlural:"Georgian laris"},GHS:{symbol:"GH\u20B5",name:"Ghanaian Cedi",symbolNative:"GH\u20B5",decimalDigits:2,rounding:0,code:"GHS",namePlural:"Ghanaian cedis"},GNF:{symbol:"FG",name:"Guinean Franc",symbolNative:"FG",decimalDigits:0,rounding:0,code:"GNF",namePlural:"Guinean francs"},GTQ:{symbol:"GTQ",name:"Guatemalan Quetzal",symbolNative:"Q",decimalDigits:2,rounding:0,code:"GTQ",namePlural:"Guatemalan quetzals"},HKD:{symbol:"HK$",name:"Hong Kong Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"HKD",namePlural:"Hong Kong dollars"},HNL:{symbol:"HNL",name:"Honduran Lempira",symbolNative:"L",decimalDigits:2,rounding:0,code:"HNL",namePlural:"Honduran lempiras"},HRK:{symbol:"kn",name:"Croatian Kuna",symbolNative:"kn",decimalDigits:2,rounding:0,code:"HRK",namePlural:"Croatian kunas"},HUF:{symbol:"Ft",name:"Hungarian Forint",symbolNative:"Ft",decimalDigits:0,rounding:0,code:"HUF",namePlural:"Hungarian forints"},IDR:{symbol:"Rp",name:"Indonesian Rupiah",symbolNative:"Rp",decimalDigits:0,rounding:0,code:"IDR",namePlural:"Indonesian rupiahs"},ILS:{symbol:"\u20AA",name:"Israeli New Sheqel",symbolNative:"\u20AA",decimalDigits:2,rounding:0,code:"ILS",namePlural:"Israeli new sheqels"},INR:{symbol:"Rs",name:"Indian Rupee",symbolNative:"\u099F\u0995\u09BE",decimalDigits:2,rounding:0,code:"INR",namePlural:"Indian rupees"},IQD:{symbol:"IQD",name:"Iraqi Dinar",symbolNative:"\u062F.\u0639.\u200F",decimalDigits:0,rounding:0,code:"IQD",namePlural:"Iraqi dinars"},IRR:{symbol:"IRR",name:"Iranian Rial",symbolNative:"\uFDFC",decimalDigits:0,rounding:0,code:"IRR",namePlural:"Iranian rials"},ISK:{symbol:"Ikr",name:"Icelandic Kr\xF3na",symbolNative:"kr",decimalDigits:0,rounding:0,code:"ISK",namePlural:"Icelandic kr\xF3nur"},JMD:{symbol:"J$",name:"Jamaican Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"JMD",namePlural:"Jamaican dollars"},JOD:{symbol:"JD",name:"Jordanian Dinar",symbolNative:"\u062F.\u0623.\u200F",decimalDigits:2,rounding:0,code:"JOD",namePlural:"Jordanian dinars"},JPY:{symbol:"\xA5",name:"Japanese Yen",symbolNative:"\uFFE5",decimalDigits:0,rounding:0,code:"JPY",namePlural:"Japanese yen"},KES:{symbol:"Ksh",name:"Kenyan Shilling",symbolNative:"Ksh",decimalDigits:2,rounding:0,code:"KES",namePlural:"Kenyan shillings"},KHR:{symbol:"KHR",name:"Cambodian Riel",symbolNative:"\u17DB",decimalDigits:2,rounding:0,code:"KHR",namePlural:"Cambodian riels"},KMF:{symbol:"CF",name:"Comorian Franc",symbolNative:"FC",decimalDigits:0,rounding:0,code:"KMF",namePlural:"Comorian francs"},KRW:{symbol:"\u20A9",name:"South Korean Won",symbolNative:"\u20A9",decimalDigits:0,rounding:0,code:"KRW",namePlural:"South Korean won"},KWD:{symbol:"KD",name:"Kuwaiti Dinar",symbolNative:"\u062F.\u0643.\u200F",decimalDigits:2,rounding:0,code:"KWD",namePlural:"Kuwaiti dinars"},KZT:{symbol:"KZT",name:"Kazakhstani Tenge",symbolNative:"\u0442\u04A3\u0433.",decimalDigits:2,rounding:0,code:"KZT",namePlural:"Kazakhstani tenges"},LBP:{symbol:"LB\xA3",name:"Lebanese Pound",symbolNative:"\u0644.\u0644.\u200F",decimalDigits:0,rounding:0,code:"LBP",namePlural:"Lebanese pounds"},LKR:{symbol:"SLRs",name:"Sri Lankan Rupee",symbolNative:"SL Re",decimalDigits:2,rounding:0,code:"LKR",namePlural:"Sri Lankan rupees"},LTL:{symbol:"Lt",name:"Lithuanian Litas",symbolNative:"Lt",decimalDigits:2,rounding:0,code:"LTL",namePlural:"Lithuanian litai"},LVL:{symbol:"Ls",name:"Latvian Lats",symbolNative:"Ls",decimalDigits:2,rounding:0,code:"LVL",namePlural:"Latvian lati"},LYD:{symbol:"LD",name:"Libyan Dinar",symbolNative:"\u062F.\u0644.\u200F",decimalDigits:2,rounding:0,code:"LYD",namePlural:"Libyan dinars"},MAD:{symbol:"MAD",name:"Moroccan Dirham",symbolNative:"\u062F.\u0645.\u200F",decimalDigits:2,rounding:0,code:"MAD",namePlural:"Moroccan dirhams"},MDL:{symbol:"MDL",name:"Moldovan Leu",symbolNative:"MDL",decimalDigits:2,rounding:0,code:"MDL",namePlural:"Moldovan lei"},MGA:{symbol:"MGA",name:"Malagasy Ariary",symbolNative:"MGA",decimalDigits:0,rounding:0,code:"MGA",namePlural:"Malagasy Ariaries"},MKD:{symbol:"MKD",name:"Macedonian Denar",symbolNative:"MKD",decimalDigits:2,rounding:0,code:"MKD",namePlural:"Macedonian denari"},MMK:{symbol:"MMK",name:"Myanma Kyat",symbolNative:"K",decimalDigits:0,rounding:0,code:"MMK",namePlural:"Myanma kyats"},MOP:{symbol:"MOP$",name:"Macanese Pataca",symbolNative:"MOP$",decimalDigits:2,rounding:0,code:"MOP",namePlural:"Macanese patacas"},MUR:{symbol:"MURs",name:"Mauritian Rupee",symbolNative:"MURs",decimalDigits:0,rounding:0,code:"MUR",namePlural:"Mauritian rupees"},MXN:{symbol:"MX$",name:"Mexican Peso",symbolNative:"$",decimalDigits:2,rounding:0,code:"MXN",namePlural:"Mexican pesos"},MYR:{symbol:"RM",name:"Malaysian Ringgit",symbolNative:"RM",decimalDigits:2,rounding:0,code:"MYR",namePlural:"Malaysian ringgits"},MZN:{symbol:"MTn",name:"Mozambican Metical",symbolNative:"MTn",decimalDigits:2,rounding:0,code:"MZN",namePlural:"Mozambican meticals"},NAD:{symbol:"N$",name:"Namibian Dollar",symbolNative:"N$",decimalDigits:2,rounding:0,code:"NAD",namePlural:"Namibian dollars"},NGN:{symbol:"\u20A6",name:"Nigerian Naira",symbolNative:"\u20A6",decimalDigits:2,rounding:0,code:"NGN",namePlural:"Nigerian nairas"},NIO:{symbol:"C$",name:"Nicaraguan C\xF3rdoba",symbolNative:"C$",decimalDigits:2,rounding:0,code:"NIO",namePlural:"Nicaraguan c\xF3rdobas"},NOK:{symbol:"Nkr",name:"Norwegian Krone",symbolNative:"kr",decimalDigits:2,rounding:0,code:"NOK",namePlural:"Norwegian kroner"},NPR:{symbol:"NPRs",name:"Nepalese Rupee",symbolNative:"\u0928\u0947\u0930\u0942",decimalDigits:2,rounding:0,code:"NPR",namePlural:"Nepalese rupees"},NZD:{symbol:"NZ$",name:"New Zealand Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"NZD",namePlural:"New Zealand dollars"},OMR:{symbol:"OMR",name:"Omani Rial",symbolNative:"\u0631.\u0639.\u200F",decimalDigits:2,rounding:0,code:"OMR",namePlural:"Omani rials"},PAB:{symbol:"B/.",name:"Panamanian Balboa",symbolNative:"B/.",decimalDigits:2,rounding:0,code:"PAB",namePlural:"Panamanian balboas"},PEN:{symbol:"S/.",name:"Peruvian Nuevo Sol",symbolNative:"S/.",decimalDigits:2,rounding:0,code:"PEN",namePlural:"Peruvian nuevos soles"},PHP:{symbol:"\u20B1",name:"Philippine Peso",symbolNative:"\u20B1",decimalDigits:2,rounding:0,code:"PHP",namePlural:"Philippine pesos"},PKR:{symbol:"PKRs",name:"Pakistani Rupee",symbolNative:"\u20A8",decimalDigits:0,rounding:0,code:"PKR",namePlural:"Pakistani rupees"},PLN:{symbol:"z\u0142",name:"Polish Zloty",symbolNative:"z\u0142",decimalDigits:2,rounding:0,code:"PLN",namePlural:"Polish zlotys"},PYG:{symbol:"\u20B2",name:"Paraguayan Guarani",symbolNative:"\u20B2",decimalDigits:0,rounding:0,code:"PYG",namePlural:"Paraguayan guaranis"},QAR:{symbol:"QR",name:"Qatari Rial",symbolNative:"\u0631.\u0642.\u200F",decimalDigits:2,rounding:0,code:"QAR",namePlural:"Qatari rials"},RON:{symbol:"RON",name:"Romanian Leu",symbolNative:"RON",decimalDigits:2,rounding:0,code:"RON",namePlural:"Romanian lei"},RSD:{symbol:"din.",name:"Serbian Dinar",symbolNative:"\u0434\u0438\u043D.",decimalDigits:0,rounding:0,code:"RSD",namePlural:"Serbian dinars"},RUB:{symbol:"RUB",name:"Russian Ruble",symbolNative:"\u0440\u0443\u0431.",decimalDigits:2,rounding:0,code:"RUB",namePlural:"Russian rubles"},RWF:{symbol:"RWF",name:"Rwandan Franc",symbolNative:"FR",decimalDigits:0,rounding:0,code:"RWF",namePlural:"Rwandan francs"},SAR:{symbol:"SR",name:"Saudi Riyal",symbolNative:"\u0631.\u0633.\u200F",decimalDigits:2,rounding:0,code:"SAR",namePlural:"Saudi riyals"},SDG:{symbol:"SDG",name:"Sudanese Pound",symbolNative:"SDG",decimalDigits:2,rounding:0,code:"SDG",namePlural:"Sudanese pounds"},SEK:{symbol:"Skr",name:"Swedish Krona",symbolNative:"kr",decimalDigits:2,rounding:0,code:"SEK",namePlural:"Swedish kronor"},SGD:{symbol:"S$",name:"Singapore Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"SGD",namePlural:"Singapore dollars"},SOS:{symbol:"Ssh",name:"Somali Shilling",symbolNative:"Ssh",decimalDigits:0,rounding:0,code:"SOS",namePlural:"Somali shillings"},SYP:{symbol:"SY\xA3",name:"Syrian Pound",symbolNative:"\u0644.\u0633.\u200F",decimalDigits:0,rounding:0,code:"SYP",namePlural:"Syrian pounds"},THB:{symbol:"\u0E3F",name:"Thai Baht",symbolNative:"\u0E3F",decimalDigits:2,rounding:0,code:"THB",namePlural:"Thai baht"},TND:{symbol:"DT",name:"Tunisian Dinar",symbolNative:"\u062F.\u062A.\u200F",decimalDigits:2,rounding:0,code:"TND",namePlural:"Tunisian dinars"},TOP:{symbol:"T$",name:"Tongan Pa\u02BBanga",symbolNative:"T$",decimalDigits:2,rounding:0,code:"TOP",namePlural:"Tongan pa\u02BBanga"},TRY:{symbol:"TL",name:"Turkish Lira",symbolNative:"TL",decimalDigits:2,rounding:0,code:"TRY",namePlural:"Turkish Lira"},TTD:{symbol:"TT$",name:"Trinidad and Tobago Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"TTD",namePlural:"Trinidad and Tobago dollars"},TWD:{symbol:"NT$",name:"New Taiwan Dollar",symbolNative:"NT$",decimalDigits:2,rounding:0,code:"TWD",namePlural:"New Taiwan dollars"},TZS:{symbol:"TSh",name:"Tanzanian Shilling",symbolNative:"TSh",decimalDigits:0,rounding:0,code:"TZS",namePlural:"Tanzanian shillings"},UAH:{symbol:"\u20B4",name:"Ukrainian Hryvnia",symbolNative:"\u20B4",decimalDigits:2,rounding:0,code:"UAH",namePlural:"Ukrainian hryvnias"},UGX:{symbol:"USh",name:"Ugandan Shilling",symbolNative:"USh",decimalDigits:0,rounding:0,code:"UGX",namePlural:"Ugandan shillings"},UYU:{symbol:"$U",name:"Uruguayan Peso",symbolNative:"$",decimalDigits:2,rounding:0,code:"UYU",namePlural:"Uruguayan pesos"},UZS:{symbol:"UZS",name:"Uzbekistan Som",symbolNative:"UZS",decimalDigits:0,rounding:0,code:"UZS",namePlural:"Uzbekistan som"},VEF:{symbol:"Bs.F.",name:"Venezuelan Bol\xEDvar",symbolNative:"Bs.F.",decimalDigits:2,rounding:0,code:"VEF",namePlural:"Venezuelan bol\xEDvars"},VND:{symbol:"\u20AB",name:"Vietnamese Dong",symbolNative:"\u20AB",decimalDigits:0,rounding:0,code:"VND",namePlural:"Vietnamese dong"},XAF:{symbol:"FCFA",name:"CFA Franc BEAC",symbolNative:"FCFA",decimalDigits:0,rounding:0,code:"XAF",namePlural:"francs CFA"},XOF:{symbol:"CFA",name:"CFA Franc BCEAO",symbolNative:"CFA",decimalDigits:0,rounding:0,code:"XOF",namePlural:"francs CFA"},YER:{symbol:"YR",name:"Yemeni Rial",symbolNative:"\u0631.\u064A.\u200F",decimalDigits:0,rounding:0,code:"YER",namePlural:"Yemeni rials"},ZAR:{symbol:"R",name:"South African Rand",symbolNative:"R",decimalDigits:2,rounding:0,code:"ZAR",namePlural:"South African rand"},ZMK:{symbol:"ZK",name:"Zambian Kwacha",symbolNative:"ZK",decimalDigits:0,rounding:0,code:"ZMK",namePlural:"Zambian kwachas"}};var $=t=>t&&typeof t=="object"&&!Array.isArray(t)&&t.name&&typeof t.name=="string"&&t.symbol&&typeof t.symbol=="string";var nt="%v %s",Ae=t=>{let e=H.get("currencyFormat");return e&&typeof e=="string"&&e.includes("%v")?e:t!==false?nt:""};function at(t){return t=t&&typeof t=="string"?t.trim():"",H.set("currencyFormat",t)}var kt=t=>{if(!$(t)){let r=typeof t=="object"&&t&&!Array.isArray(t)?g(t.code,t.name):typeof t=="string"?t:void 0;r&&(r=r.trim().toUpperCase()),r&&$(k[r])?t=k[r]:typeof t=="string"&&(r=t.trim().toUpperCase(),$(k[r])&&(t=k[r]));}let e=Object.assign({},t);if(!e.format){let r=Ae();r&&(e.format=r);}return e.format&&at(e.format),H.set("appConfigCurrency",e),e},Bt=()=>{var a,i,o,s;let t=Object.assign({},H.get("appConfigCurrency")),e=H.get("currencyCode");if(m(e)&&$(k[e.trim().toUpperCase()])&&(t=c(c({},k[e.trim().toUpperCase()]),t)),!m(t==null?void 0:t.format)){let l=Ae(false);m(l)&&l.includes("%v")&&(t.format=l);}let n=k["USD"];return c(c({symbol:n.symbol,format:(a=n.format)!=null?a:"%v %s",decimalSeparator:(i=n.decimalSeparator)!=null?i:".",thousandSeparator:(o=n.thousandSeparator)!=null?o:",",decimalDigits:(s=n.decimalDigits)!=null?s:0},Object.assign({},te.getNestedTranslation("currencies"))),t)},j={getFormat:Ae,setFormat:at,setCurrency:kt,getCurrency:Bt,defaultCurrencyFormat:nt};var Kt=t=>t&&typeof t=="object";function Ve(t){let e=Object.assign({},j.getCurrency());if(t&&Kt(t))for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&t[r]!==void 0&&(e[r]=t[r]);if(m(e.format)){let r=st(e.format);r.format&&(e.format=r.format),typeof r.decimalDigits=="number"&&(e.decimalDigits=r.decimalDigits);}return e}function we(t,e){return t=typeof t=="number"?t:0,e=typeof e=="number"?e:0,t=Math.round(Math.abs(t)),isNaN(t)?e:t}function Ht(t){let e=j.getCurrency(),r=(e==null?void 0:e.format).toLowerCase();return typeof t=="string"&&(t=t.toLowerCase()),(typeof t!="string"||!t.match("%v"))&&(t=r),{pos:t,neg:t.replace("-","").replace("%v","-%v"),zero:t}}var Ce=(t,e)=>{let r=j.getCurrency();if(t=t||0,typeof t=="number")return t;e=e||r.decimalSeparator;let n=new RegExp("[^0-9-"+e+"]","g"),a=parseFloat((""+t).replace(/\((?=\d+)(.*)\)/,"-$1").replace(n,"").replace(e,"."));return isNaN(a)?0:a},Oe=(t,e)=>{let r=j.getCurrency();e=we(e,r.decimalDigits);let a=String(t).replace(/[^\d.-]/g,"");if(a.length>15&&!a.includes("."))return a+"."+"0".repeat(e);try{let i=Number(a);if(isNaN(i))return "NaN";let o=+(i+"e"+e);return (+(Math.round(o)+"e-"+e)).toFixed(e)}catch(i){return "NaN"}},it=(t,e,r,n)=>{var y;t=Ce(t);let a=$(e)?e:j.getCurrency();typeof e=="number"&&(a.decimalDigits=e),typeof a.decimalDigits!="number"&&(a.decimalDigits=(y=String(t).split(".")[1])==null?void 0:y.length),r!==void 0&&(a.thousandSeparator=r),n!==void 0&&(a.decimalSeparator=n);let i=Ve(a),o=we(i.decimalDigits),s=t<0?"-":"",l=parseInt(Oe(Math.abs(t||0),o),10)+"",u=l.length>3?l.length%3:0,d="";if(o){let f=String(parseFloat(Oe(Math.abs(t),o))||0);f.includes(".")&&(d=g(f.split(".")[1]).trim());}return s+(u?l.substring(0,u)+i.thousandSeparator:"")+l.substring(u).replace(/(\d{3})(?=\d)/g,"$1"+i.thousandSeparator)+(o&&d?i.decimalSeparator+d:"")},ot=(t,e,r,n,a,i)=>{t=Ce(t);let o=$(e)?e:j.getCurrency();e!==void 0&&typeof e=="string"&&(o.symbol=e),r!==void 0&&(o.decimalDigits=r),n!==void 0&&(o.thousandSeparator=n),a!==void 0&&(o.decimalSeparator=a),m(i)&&(o.format=i);let s=Ve(o),l=Ht(s.format),u=g(t>0?l.pos:t<0?l.neg:l.zero),d=g(s.symbol),y=u.replace(d&&"%s",d),f=it(Math.abs(t),we(s.decimalDigits),s.thousandSeparator,s.decimalSeparator),p=y.replace("%v",f);return D(c({},s),{formattedValue:y,formattedNumber:f,symbol:s.symbol,usedFormat:u,result:p})},Gt=(t,e,r,n,a,i)=>ot(t,e,r,n,a,i).result,st=t=>{t=g(t).trim();let e={};if(t){let r=/(\.)(\#{0,9}\s*$)/,n=t.match(r);Array.isArray(n)&&n.length===3&&(e.decimalDigits=g(n[2]).trim().length),t=t.replace(r,"");}return e.format=t,e},re={parse:Ce,session:j,formatMoney:Gt,currencies:k,isCurrency:$,formatNumber:it,formatMoneyAsObject:ot,unformat:Ce,toFixed:Oe,prepareOptions:Ve,parseFormat:st};var{currencies:lt}=re;Number.prototype.countDecimals=function(){let t=String(this.toString()).match(/\.(\d+)/);return t?t[1].length:0};Number.prototype.formatNumber=function(t,e,r){return re.formatNumber(this.valueOf(),t,e,r)};Number.prototype.formatMoney=function(t,e,r,n,a){return re.formatMoney(this.valueOf(),t,e,r,n,a)};var Ut=(t,e,r,n)=>{var R;if(t===null||typeof t!="number"||isNaN(t))return {result:"",format:"",suffix:"",formattedValue:"",minAbreviationDecimalDigits:0,value:NaN};if(!isFinite(t)){let S=t>0?"\u221E":"-\u221E";return {result:S,value:t,format:"",suffix:"",formattedValue:S,minAbreviationDecimalDigits:0}}let a=Math.abs(t)<1e3,i=[{value:1e12,suffix:"T"},{value:1e9,suffix:"B"},{value:1e6,suffix:"M"},{value:1e3,suffix:"K"},{value:1,suffix:""}],o=t.countDecimals?t.countDecimals():Math.floor(t)===t?0:((R=t.toString().split(".")[1])==null?void 0:R.length)||0,s=i.find(S=>Math.abs(t)>=S.value)||i[i.length-1],l=a?t:t/(s.value===1?1:s.value),u=s.suffix,d=$t(l,5);if(t===0)return {result:"0",value:0,format:"",suffix:"",formattedValue:"0",minAbreviationDecimalDigits:0};let f=N(e)&&e>0?e:s.value===1?Math.min(o,5):Math.max(d,0),p=l.toFixed(f);r=g(r),n=g(n,".");let C=p.toString().split(".");return C[0]=C[0].replace(/\B(?=(\d{3})+(?!\d))/g,r),f>0&&C.length===1?C.push("0".repeat(f)):f>0&&C.length>1&&C[1].length<f&&(C[1]=C[1].padEnd(f,"0")),p=C.join(n),{result:p+u,value:t,format:u,suffix:u,formattedValue:p,minAbreviationDecimalDigits:d}};function $t(t,e){let r=Math.abs(t);if(Number.isInteger(r))return 0;let n=r.toString().split(".")[1]||"",a=0;for(;a<n.length&&n[a]==="0";)a++;return r<1&&a>0?Math.min(a+e,n.length):Math.min(e,n.length)}var ut=(t,e,r,n)=>Ut(t,e,r,n).result;Number.prototype.abreviate2FormatNumber=function(t,e,r){return ut(this.valueOf(),t,e,r)};var dt=(t,e,r,n,a,i)=>{if(!N(t))return "";let l=re.formatMoneyAsObject(t,e,r,n,a,i),{formattedValue:o}=l,s=x(l,["formattedValue"]);return o.replace("%v",ut(t,s.decimalDigits,s.thousandSeparator,s.decimalSeparator))};Number.prototype.abreviate2FormatMoney=function(t,e,r,n,a){return dt(this.valueOf(),t,e,r,n,a)};Object.keys(lt).forEach(t=>{let e=t,r=lt[e],n=`format${e}`,a=`abreviate2Format${e}`;Number.prototype[n]=function(i,o,s,l){return re.formatMoney(this.valueOf(),r,i,o,s,l)},Number.prototype[a]=function(i,o,s,l){return dt(this.valueOf(),r,i,o,s,l)};});var ne={optional:Symbol.for("validatorOptionalRuleMarker"),empty:Symbol.for("validatorEmptyRuleMarker"),nullable:Symbol.for("validatorNullableRuleMarker"),ruleName:Symbol.for("validatorRuleNameMarker")};var M=class M{static registerRule(e,r){if(!m(e))throw new Error("Rule name must be a non-empty string");if(typeof r!="function")throw new Error("Rule handler must be a function");let n=M.getRules(),a=D(c({},n),{[e]:r});Reflect.defineMetadata(M.RULES_METADATA_KEY,a,M);}static getRules(){let e=Reflect.getMetadata(M.RULES_METADATA_KEY,M);return T(e)?c({},e):{}}static getRule(e){return this.getRules()[e]}static hasRule(e){return m(e)?!!this.getRule(e):false}static getI18n(e){return U.isI18nInstance(e==null?void 0:e.i18n)?e.i18n:te}static getErrorMessageSeparators(e){let r=this.getI18n({i18n:e}),n=Object.assign({},r.getNestedTranslation("validator.separators"));return {multiple:g(n.multiple,", "),single:g(n.single,", ")}}static parseAndValidateRules(e){let r=[],n=this.getRules(),a=[],i=Array.isArray(e)?e:[];for(let o of i)if(typeof o=="function")r.push(o);else if(m(o)){let s=this.parseStringRule(o,n);s?r.push(s):a.push(o);}else if(T(o)&&typeof o=="object"){let s=this.parseObjectRule(o,n);s.length&&r.push(...s);}return {sanitizedRules:r,invalidRules:a}}static parseStringRule(e,r){let n=String(e).trim(),a=[],i=r[n];return typeof i=="function"?{ruleName:n,params:a,ruleFunction:i,rawRuleName:String(e)}:null}static parseFunctionRule(e){var n;let r=(n=Jt(e))!=null?n:e.name;return {ruleFunction:e,ruleName:r,rawRuleName:r,params:[]}}static parseObjectRule(e,r){let n=[];if(!T(e))return n;if(this.isSanitizedRuleObject(e))return n.push(e),n;for(let a in e)if(Object.hasOwnProperty.call(e,a)){let i=a;if(typeof r[i]!="function")continue;let o=r[i],s=e[i];Array.isArray(s)&&n.push({ruleName:i,ruleFunction:o,params:s,rawRuleName:i});}return n}static isSanitizedRuleObject(e){if(!T(e))return false;let r=e;return typeof r.ruleFunction=="function"&&typeof r.ruleName=="string"&&Array.isArray(r.params)}static validate(n){return Q(this,null,function*(){var a=n,{rules:e}=a,r=x(a,["rules"]);let i=this.getI18n(r),o=Date.now(),{sanitizedRules:s,invalidRules:l}=M.parseAndValidateRules(e),u=M.getErrorMessageSeparators(i),{value:d,context:y,data:f}=r,p=this.getI18nTranslateOptions(r),C=D(c({},p),{context:y,value:d,data:f});if(l.length){let v=l.map(S=>i.t("validator.invalidRule",D(c({},p),{rule:m(S)?S:"unnamed rule"}))).join(u.multiple),R=de(v,{value:d,fieldName:r.fieldName,propertyName:r.propertyName,ruleParams:[]});return ce(R,C,o)}return !s.length||this.shouldSkipValidation({value:d,rules:s})?De(C,o):(r.fieldName=r.propertyName=g(r.fieldName,r.propertyName),new Promise(v=>{let R=-1,S=s.length,I=function(){return Q(this,null,function*(){if(R++,R>=S)return v(De(C,o));let P=s[R],A,Y,O=[],_=typeof P=="function"?P:void 0;if(M.isSanitizedRuleObject(P))_=P.ruleFunction,O=Array.isArray(P.params)?P.params:[],A=P.ruleName,Y=P.rawRuleName;else if(typeof P=="function"){let b=M.parseFunctionRule(P);b?A=b.ruleName:A=P.name,Y=A;}let J=D(c({value:d,rules:e},p),{rule:g(A),ruleName:A,rawRuleName:Y,ruleParams:O}),me=D(c(D(c({},r),{data:f!=null?f:Object.assign({},f),startTime:o}),J),{ruleName:A,rule:A,rawRuleName:Y,ruleParams:O,rules:e,value:d,i18n:i}),ie=b=>{if(M.isFailure(b)){let B={validatedValue:d,validatedRuleName:A,validatedParams:O};v(c(c({},b),B));}if(b=typeof b=="string"?m(b)?b:i.t("validator.invalidMessage",J):b,b===false){let B=de(i.t("validator.invalidMessage",J),D(c({value:d,ruleName:A,rawRuleName:Y},p),{ruleParams:O}));return v(ce(B,C,o))}else if(m(b)){let B=de(b,c({value:d,ruleName:A,rawRuleName:Y,ruleParams:O},p));return v(ce(B,C,o))}else if(b instanceof Error||m(b==null?void 0:b.message)||m(b)){let B=de(F(b),c({value:d,ruleName:A,rawRuleName:Y,ruleParams:O},p));return v(ce(B,C,o))}return I()};if(typeof _!="function"){let b=de(i.t("validator.invalidRule",J),c({value:d,ruleName:A,rawRuleName:Y,ruleParams:O},p));return v(ce(b,C,o))}try{let b=yield _(me);return ie(b)}catch(b){return ie(typeof b=="string"?b:(b==null?void 0:b.message)||(b==null?void 0:b.toString())||F(b))}})};return I()}))})}static shouldSkipValidation({value:e,rules:r}){if(Z(e)&&Array.isArray(r)){let n={IsEmpty:{validate:a=>a==="",symbol:ne.empty},Nullable:{validate:a=>a==null,symbol:ne.nullable},Optional:{validate:a=>a===void 0,symbol:ne.optional}};for(let a of r){let i=typeof a=="object"&&a?a.ruleFunction:typeof a=="function"?a:void 0;if(typeof i=="function")for(let o in n){let s=n[o];if(Zt(i,s.symbol)&&s.validate(e))return true}}}return false}static validateOneOfRule(e){return this.validateMultiRule("OneOf",e)}static validateAllOfRule(e){return this.validateMultiRule("AllOf",e)}static validateArrayOfRule(e){return Q(this,null,function*(){let f=e,{value:r,ruleParams:n,startTime:a}=f,i=x(f,["value","ruleParams","startTime"]);a=N(a)?a:Date.now();let o=Array.isArray(n)?n:[],s=this.getI18n(i);if(!Array.isArray(r))return s.t("validator.array",D(c({field:i.translatedPropertyName||i.fieldName,value:r},i),{context:void 0}));if(o.length===0||r.length===0)return true;let{multiple:l,single:u}=this.getErrorMessageSeparators(s),d=[];for(let p=0;p<r.length;p++){let C=r[p],v=yield M.validateMultiRule("AllOf",c({value:C,ruleParams:o,startTime:a},i));v!==true&&d.push(`#${p}: ${String(v)}`);}return d.length===0?true:`${s.t("validator.failedForNItems",{count:d.length})}${u}${d.join(l)}`})}static getI18nTranslateOptions(s){var l=s,{fieldName:e,propertyName:r,fieldLabel:n,translatedPropertyName:a,context:i}=l,o=x(l,["fieldName","propertyName","fieldLabel","translatedPropertyName","context"]);e=g(e,r),n=g(n,a,e);let u={fieldLabel:n,translatedPropertyName:g(a,n),propertyName:g(r,e),fieldName:e};return "value"in o&&(u.value=o.value),u}static validateNestedRule(n){return Q(this,null,function*(){var a=n,{ruleParams:e}=a,r=x(a,["ruleParams"]);let v=r,{startTime:i,value:o}=v,s=x(v,["startTime","value"]);i=N(i)?i:Date.now();let l=this.getI18n(s),d=(Array.isArray(e)?e:[])[0],y=D(c({rule:"ValidateNested"},this.getI18nTranslateOptions(s)),{startTime:i,value:o});if(!d)return l.t("validator.invalidRule",y);if(typeof o!="object"||o===null||Array.isArray(o)){let R=Array.isArray(o)?"array":o===void 0?"undefined":o===null?"null":typeof o;return l.t("validator.validateNestedInvalidType",D(c({},y),{receivedType:R}))||`The field must be an object, but received ${R}`}let f=yield this.validateTarget(d,D(c({},r),{data:o,parentData:s.data,startTime:i}));if(f.success)return true;let C=(f.errors||[]).map(R=>{var S;return `[${(S=R.translatedPropertyName)!=null?S:R.propertyName}]: ${R.message}`}).join("; ");return l.t("validator.validateNested",c({nestedErrors:C},y))})}static validateMultiRule(e,o){return Q(this,null,function*(){var s=o,{value:r,ruleParams:n,startTime:a}=s,i=x(s,["value","ruleParams","startTime"]);var C;a=N(a)?a:Date.now();let l=Array.isArray(n)?n:[],u=this.getI18n(i),d=e==="AllOf";if(l.length===0)return true;let y=[],f=[],p=null;for(let v of l){let R=yield M.validate(D(c({value:r},i),{rules:[v],i18n:u}));if(R.success){if(!d)return true;p!=null||(p=R);}else f.push(R),m((C=R==null?void 0:R.error)==null?void 0:C.message)&&y.push(R.error.message);}return !d&&p||f.length===0?true:u.t(`validator.${xe(e)}`,D(c({},this.getI18nTranslateOptions(i)),{value:r,ruleName:e,rawRuleName:e,rules:[e],rule:e,ruleParams:[],failedRulesErrors:y.join("; ")}))})}static oneOf(e){return function(n){return M.validateOneOfRule(D(c({},n),{ruleParams:e}))}}static allOf(e){return function(n){return M.validateAllOfRule(D(c({},n),{ruleParams:e}))}}static arrayOf(e){return function(n){return M.validateArrayOfRule(D(c({},n),{ruleParams:e}))}}static validateNested(e){return function(n){return M.validateNestedRule(D(c({},n),{ruleParams:[e]}))}}static isSuccess(e){return T(e)&&e.success===true}static isFailure(e){return T(e)&&e.success===false&&T(e.error)&&e.error.name=="ValidatorValidationError"}static validateTarget(e,r){return Q(this,null,function*(){let n=Date.now(),a=M.getTargetRules(e),R=Object.assign({},M.getValidateTargetOptions(e),r),{context:i,errorMessageBuilder:o}=R,s=x(R,["context","errorMessageBuilder"]),l=Object.assign({},r.data),u=this.getI18n(r),d=M.getErrorMessageSeparators(u),y=typeof o=="function"?o:(S,I)=>`[${String(S)}] : ${I}`,f=[],p=[],v=u.translateTarget(e,{data:l});for(let S in a){let I=a[S],{sanitizedRules:P}=this.parseAndValidateRules(I),A=l[S];if(this.shouldSkipValidation({value:A,rules:P}))continue;let Y=g(v[S],S);p.push(M.validate(D(c({context:i},s),{i18n:u,value:A,data:l,translatedPropertyName:Y,fieldName:S,propertyName:S,rules:P,fieldLabel:Y})).then(O=>{var _,J,me,ie;if(O.success);else {let b=F((_=O.error)==null?void 0:_.message),B=y(Y,b,D(c({},Object.assign({},O.error)),{separators:d,data:l,propertyName:S,translatedPropertyName:Y,i18n:u}));f.push({name:"ValidatorValidationError",status:"error",fieldName:S,value:O.value,propertyName:S,message:B,ruleName:(J=O.error)==null?void 0:J.ruleName,ruleParams:(me=O.error)==null?void 0:me.ruleParams,rawRuleName:(ie=O.error)==null?void 0:ie.rawRuleName});}return O}));}return new Promise(S=>Promise.all(p).then(()=>{if(!f.length)S(D(c({},De({data:l,value:void 0,context:i},n)),{status:"success",data:l}));else {let P=u.translate("validator.failedForNFields",{count:f.length});S({success:false,message:P,errors:f,failureCount:f.length,status:"error",failedAt:new Date,duration:Date.now()-n,data:l});}}))})}static getTargetRules(e){return ye(e,ct)}static getValidateTargetOptions(e){return Object.assign({},Reflect.getMetadata(Wt,e)||{})}static buildRuleDecorator(e,r,n){return r&&this._prepareRuleDecorator(e,r,n),(...a)=>this._buildRuleDecorator(a,e,r,n)}static _prepareRuleDecorator(e,r,n){return m(r)&&(M.registerRule(r,e),mt(e,r)),n&&Qt(e,n,{ruleName:r}),e}static _buildRuleDecorator(e,r,n,a){var i;return this._prepareRuleDecorator(r,n,a),n=g(n,a==null?void 0:a.toString(),r.name,(i=r.constructor)==null?void 0:i.name),mt(r,n),M.buildPropertyDecorator({ruleName:n,ruleFunction:r,params:e})}static buildTargetRuleDecorator(e,r){return this.buildRuleDecorator(e,void 0,r)}static buildMultiRuleDecorator(e,r){return n=>this._buildRuleDecorator(n,e,void 0,r)}static buildPropertyDecorator(e){return Te(ct,r=>[...Array.isArray(r)?r:[],...Array.isArray(e)?e:[e]])}};M.RULES_METADATA_KEY=Symbol.for("validationRules");var E=M;function de(t,e){var r,n;return {name:"ValidatorValidationError",message:t,status:"error",value:e.value,fieldName:(r=e.fieldName)!=null?r:"",propertyName:(n=e.propertyName)!=null?n:"",translatedPropertyName:e.translatedPropertyName,ruleName:e.ruleName,rawRuleName:e.rawRuleName,ruleParams:e.ruleParams}}function De(t,e){return D(c({},t),{success:true,validatedAt:new Date,duration:Date.now()-e})}function ce(t,e,r){return D(c({},e),{error:t,success:false,failedAt:new Date,duration:Date.now()-r})}var ct=Symbol.for("validatorTargetRules"),Wt=Symbol.for("validatorTargetOptions");function Zt(t,e){if(typeof t!="function")return false;let r=jt(t,e);return !!(r!=null&&r.validatorRuleFuncMarked)}function jt(t,e){return typeof t!="function"?null:Object.assign({},t[e])}function mt(t,e){typeof t=="function"&&(t[ne.ruleName]=e);}function Jt(t){if(typeof t=="function"){let e=t[ne.ruleName];return m(e)?e:void 0}}function Qt(t,e,r){var n;typeof t=="function"&&(t[e]=D(c({},r),{validatorRuleFuncMarked:true,ruleName:(n=r==null?void 0:r.ruleName)!=null?n:e}));}var z=t=>{if(Z(t))return NaN;if(typeof t=="number")return t;try{let e=Number(t);return isNaN(e)?NaN:e}catch(e){}return NaN};function ae(t,e,s,o){var l=s,{value:r,ruleParams:n,i18n:a}=l,i=x(l,["value","ruleParams","i18n"]);n=Array.isArray(n)?n:[];let u=n||[];e=g(e);let d=a.t(e,D(c({},i),{value:r,ruleParams:n})),y=z(r);r=typeof r=="number"?r:isNaN(y)?NaN:y;let f=z(u[0]);return N(f)?isNaN(r)||u[0]===void 0||isNaN(f)?d:t(r,f)?true:d:a.t("validator.invalidRuleParams",D(c({value:r},i),{rule:o,ruleParams:n}))}var Oi=E.buildRuleDecorator(function(e){return ae((r,n)=>r<=n,"validator.numberLTE",e,"NumberLTE")},"NumberLTE"),Vi=E.buildRuleDecorator(function(e){return ae((r,n)=>r<n,"validator.numberLT",e,"NumberLT")},"NumberLT"),wi=E.buildRuleDecorator(function(e){return ae((r,n)=>r>=n,"validator.numberGTE",e,"NumberGTE")},"NumberGTE"),Ei=E.buildRuleDecorator(function(e){return ae((r,n)=>r>n,"validator.numberGT",e,"NumberGT")},"NumberGT"),Yi=E.buildRuleDecorator(function(e){return ae((r,n)=>r===n,"validator.numberEquals",e,"NumberEQ")},"NumberEQ"),Ii=E.buildRuleDecorator(function(e){return ae((r,n)=>r!==n,"validator.numberIsDifferentFrom",e,"NumberNE")},"NumberNE"),Li=E.buildRuleDecorator(function(e){let{value:r,i18n:n}=e;return N(r)||n.t("validator.isNumber",e)},"Number"),Fi=E.buildRuleDecorator(function(s){var l=s,{value:e,ruleParams:r,fieldName:n,translatedPropertyName:a,i18n:i}=l,o=x(l,["value","ruleParams","fieldName","translatedPropertyName","i18n"]);if(!r||r.length<2)return i.t("validator.invalidRuleParams",c({rule:"NumberBetween",field:a||n,ruleParams:r},o));if(!N(e))return i.t("validator.numeric",c({field:a||n,value:e},o));let u=z(r[0]),d=z(r[1]);return isNaN(u)||isNaN(d)||u>d?i.t("validator.invalidRuleParams",c({rule:"NumberBetween",field:a||n,ruleParams:r},o)):e>=u&&e<=d?true:i.t("validator.numberBetween",c({field:a||n,value:e,min:u,max:d},o))},"NumberBetween"),ki=E.buildRuleDecorator(function(s){var l=s,{value:e,ruleParams:r,fieldName:n,translatedPropertyName:a,i18n:i}=l,o=x(l,["value","ruleParams","fieldName","translatedPropertyName","i18n"]);if(!Array.isArray(r)||!r.length)return i.t("validator.invalidRuleParams",c({rule:"DecimalPlaces",field:a||n,ruleParams:r},o));if(!N(e))return i.t("validator.number",c({rule:"DecimalPlaces",field:a||n,value:e,ruleParams:r},o));let u=String(e),d=u.indexOf("."),y=d===-1?0:u.length-d-1,f=false;if(r.length===1){let p=z(r[0]);f=y===p;}else if(r.length===2){let p=z(r[0]),C=z(r[1]);f=!isNaN(p)&&!isNaN(C)&&y>=p&&y<=C;}return f?true:i.t("validator.decimalPlaces",c({field:a||n,value:e,places:r.join("-"),actualPlaces:y},o))},"DecimalPlaces"),Bi=E.buildRuleDecorator(function(o){var s=o,{value:e,fieldName:r,translatedPropertyName:n,i18n:a}=s,i=x(s,["value","fieldName","translatedPropertyName","i18n"]);return !N(e)||!Number.isInteger(e)?a.t("validator.integer",c({field:n||r,value:e},i)):true},"Integer"),Ki=E.buildRuleDecorator(function(o){var s=o,{value:e,fieldName:r,translatedPropertyName:n,i18n:a}=s,i=x(s,["value","fieldName","translatedPropertyName","i18n"]);return N(e)?Number.isInteger(e)?e%2===0?true:a.t("validator.evenNumber",c({field:n||r,value:e},i)):a.t("validator.integer",c({field:n||r,value:e},i)):a.t("validator.number",c({field:n||r,value:e},i))},"EvenNumber"),Hi=E.buildRuleDecorator(function(o){var s=o,{value:e,fieldName:r,translatedPropertyName:n,i18n:a}=s,i=x(s,["value","fieldName","translatedPropertyName","i18n"]);return N(e)?Number.isInteger(e)?e%2!==0?true:a.t("validator.oddNumber",c({field:n||r,value:e},i)):a.t("validator.integer",c({field:n||r,value:e},i)):a.t("validator.number",c({field:n||r,value:e},i))},"OddNumber"),Gi=E.buildRuleDecorator(function(s){var l=s,{value:e,ruleParams:r,fieldName:n,translatedPropertyName:a,i18n:i}=l,o=x(l,["value","ruleParams","fieldName","translatedPropertyName","i18n"]);if(!r||!r.length)return i.t("validator.invalidRuleParams",D(c({rule:"MultipleOf",field:a||n},o),{ruleParams:r}));if(!N(e))return i.t("validator.number",c({field:a||n,value:e,ruleParams:r},o));let u=z(r[0]);if(isNaN(u)||u===0)return i.t("validator.invalidRuleParams",c({rule:"MultipleOf",ruleParams:r,field:a||n},o));let d=e%u;return Math.abs(d)<Number.EPSILON?true:i.t("validator.multipleOf",c({field:a||n,value:e,multipleOf:u,ruleParams:r},o))},"MultipleOf");exports.HasDecimalPlaces=ki;exports.IsEvenNumber=Ki;exports.IsInteger=Bi;exports.IsMultipleOf=Gi;exports.IsNumber=Li;exports.IsNumberBetween=Fi;exports.IsNumberEQ=Yi;exports.IsNumberGT=Ei;exports.IsNumberGTE=wi;exports.IsNumberLT=Vi;exports.IsNumberLTE=Oi;exports.IsNumberNE=Ii;exports.IsOddNumber=Hi;
5
+ %{nestedErrors}`,validateNestedInvalidType:"The field %{fieldName} must be an object, but received %{receivedType}",dateAfter:"This field must be after %{date}",dateBefore:"This field must be before %{date}",dateBetween:"This field must be between %{startDate} and %{endDate}",dateEquals:"This field must be equal to %{date}",futureDate:"This field must be a date in the future",pastDate:"This field must be a date in the past",file:"This field must be a valid file",fileSize:"This field must not exceed %{maxSize} bytes",fileType:"This field must be one of the following types: %{allowedTypes}",image:"This field must be a valid image file",fileExtension:"This field must have one of the following extensions: %{allowedExtensions}",minFileSize:"This field must be at least %{minSize} bytes",uuid:"This field must be a valid UUID",json:"This field must be valid JSON",base64:"This field must be valid Base64 encoded data",hexColor:"This field must be a valid hexadecimal color code",creditCard:"This field must be a valid credit card number",ip:"This field must be a valid IP address (version %{version})",macAddress:"This field must be a valid MAC address",matches:"This field must match the pattern %{pattern}",tests:{entity:{name:"Name",id:"Id",email:"Email",aString:"A String",url:"Url",note:"Note",createdAt:"Created At",updatedAt:"Updated At"}}};var pt={auth:Be,currencies:Ke,countries:ke,dates:He,resources:Ge,validator:Ue};var K=class K{static get logger(){let e=Reflect.getMetadata(K.loggerMetaData,K);return $e(e)&&(this._logger=e),this._logger?this._logger:console}static set logger(e){$e(e)&&Reflect.defineMetadata(K.loggerMetaData,e,K);}static _log(e,...r){let n=K.logger;e=g(e),e&&typeof n[e]=="function"?n[e](K.getDateTimeString(),...r):console.log("Logger level not found : [",e,"]",...r);}static getDateTimeString(){let{day:e,year:r,hours:n,minutes:a,seconds:i,dayNameShort:o,monthName:s}=w.getUTCDateTimeDetails(),l=e<10?"0"+e:e,u=n<10?"0"+n:n,d=a<10?"0"+a:a,y=i<10?"0"+i:i;return "["+[o,l,s,r].join(" ")+" "+[u,d,y].join(":")+"]"}static log(...e){this._log("log",...e);}static info(...e){this._log("info",...e);}static debug(...e){this._log("debug",...e);}static warn(...e){this._log("warn",...e);}static error(...e){this._log("error",...e);}};K.loggerMetaData=Symbol("logger-meta-data");var oe=K,$e=t=>{if(!t)return false;try{return ["warn","info","error"].every(e=>typeof t[e]=="function")}catch(e){return false}};function bt(t){return typeof t=="boolean"||!t||typeof t=="number"||typeof t=="string"||typeof t=="symbol"?false:Object(t).constructor===Promise||t.constructor&&(t.constructor.name==="Promise"||t.constructor.name==="AsyncFunction")||t instanceof Promise||typeof(t==null?void 0:t.then)=="function"&&typeof(t==null?void 0:t.catch)=="function"&&typeof(t==null?void 0:t.finally)=="function"?true:t&&typeof t.constructor=="function"&&Function.prototype.toString.call(t.constructor).replace(/\(.*\)/,"()")===Function.prototype.toString.call(Function).replace("Function","Promise").replace(/\(.*\)/,"()")}function Se(t){return t&&Object.prototype.toString.call(t)==="[object Promise]"?true:bt(t)}function ze(){return typeof window!="undefined"&&(window==null?void 0:window.document)!==void 0&&typeof document!="undefined"&&typeof navigator!="undefined"}var ge=()=>{var t;try{if(typeof process!="undefined"&&(process!=null&&process.versions)&&((t=process==null?void 0:process.versions)!=null&&t.node)||typeof global=="object"&&(global==null?void 0:global.toString.call(global))==="[object global]")return !0}catch(e){}return false},ht=()=>{var t,e;return !!(typeof window!="undefined"&&window&&typeof(window==null?void 0:window.process)=="object"&&((t=window==null?void 0:window.process)==null?void 0:t.type)==="renderer"||typeof process!="undefined"&&typeof(process==null?void 0:process.versions)=="object"&&((e=process.versions)!=null&&e.electron)||typeof navigator=="object"&&typeof navigator.userAgent=="string"&&String(navigator==null?void 0:navigator.userAgent).toLowerCase().indexOf("electron")>=0)},Ct=()=>{if(typeof document!="undefined"&&document)try{return document.createEvent("TouchEvent"),!0}catch(t){try{return "ontouchstart"in window||"onmsgesturechange"in window}catch(e){}}return false},Dt=()=>typeof window=="undefined"&&typeof process!="undefined",We=()=>!!(typeof window!="undefined"&&typeof window=="object"&&window),Tt=()=>{if(!ze()||typeof navigator!="object"||!navigator||typeof navigator.userAgent!="string")return false;let t=navigator.userAgent.toLowerCase();return /android/i.test(t)},Rt=()=>{var t;return !We()||!(window!=null&&window.ReactNativeWebView)?false:typeof((t=window==null?void 0:window.ReactNativeWebView)==null?void 0:t.postMessage)=="function"},St=()=>ge()&&process.platform==="darwin",Nt=()=>ge()&&process.platform==="win32",Mt=()=>ge()&&process.platform==="linux",Ze={isWeb:ze,isLinux:Mt,isDarwin:St,isWin32:Nt,isNode:ge,isElectron:ht,isTouchDevice:Ct,isServerSide:Dt,isClientSide:We,isAndroidMobileBrowser:Tt,isReactNativeWebview:Rt};var X=class t{static decycle(e,r=[]){if(typeof e=="function")return;if(!e||typeof e!="object")return e;if(r.includes(e))return null;let n=r.concat([e]);return Array.isArray(e)?e.map(a=>t.decycle(a,n)):Object.fromEntries(Object.entries(e).map(([a,i])=>[a,t.decycle(i,n)]))}static stringify(e,r=false){return typeof e=="string"?e:JSON.stringify(r!==false?t.decycle(e):e)}static isJSON(e){if(typeof e!="string")return false;let r=e.trim();if(r.length===0)return false;let n=r[0];if(n!=="{"&&n!=="[")return false;try{let a=JSON.parse(r);return a!==null&&typeof a=="object"}catch(a){return false}}static parse(e,r){if(typeof e=="string")try{e=JSON.parse(e,r);}catch(n){return e}if(e&&typeof e=="object")for(let n in e){let a=e[n];t.isJSON(a)&&(e[n]=t.parse(a,r));}return e}};var W=class W{static get storage(){var r;let e=Reflect.getMetadata(W.sessionStorageMetaData,W);if(Ne(e)&&(this._storage=e),this._storage)return this._storage;if(Ze.isClientSide()&&typeof window!="undefined"&&window.localStorage&&((r=window.localStorage)!=null&&r.getItem))this._storage={get:n=>window.localStorage.getItem(n),set:(n,a)=>window.localStorage.setItem(n,a),remove:n=>window.localStorage.removeItem(n),removeAll:()=>window.localStorage.clear()};else {let n={};this._storage={get:a=>n[a],set:(a,i)=>n[a]=i,remove:a=>{delete n[a];},removeAll:()=>n={}};}return this._storage}static set storage(e){Ne(e)&&Reflect.defineMetadata(W.sessionStorageMetaData,e,W);}static get keyNamespace(){return m(this._keyNamespace)?this._keyNamespace:""}static set keyNamespace(e){m(e)&&(this._keyNamespace=e.trim().replace(/\s+/g,"-"));}static sanitizeKey(e){if(!e||!m(e))return "";e=e.trim().replace(/\s+/g,"-");let r=this.keyNamespace;return r?`${r}-${e}`:e}};W.sessionStorageMetaData=Symbol("sessionStorage"),W._keyNamespace=void 0;var L=W;function pe(t){return L.sanitizeKey(t)}var je=(t,e)=>(t=t&&X.stringify(t,e),t==null&&(t=""),t),Je=t=>{if(Se(t))return new Promise((e,r)=>{t.then(n=>{e(X.parse(n));}).catch(n=>{r(n);});});if(t!=null)return X.parse(t)},vt=t=>{if(t=pe(t),L.storage&&t&&typeof t=="string"){let e=L.storage.get(t);return Je(e)}},Pt=t=>{if(t=pe(t),L.storage&&t&&typeof t=="string")return L.storage.remove(t)},xt=()=>{if(L.storage)return L.storage.removeAll()},Ne=t=>{if(!t)return false;try{return ["get","set","remove","removeAll"].every(e=>typeof t[e]=="function")}catch(e){return false}},H={get:vt,set:(t,e,r=true)=>(t=pe(t),L.storage.set(t,je(e,r))),remove:Pt,handleGetValue:Je,sanitizeKey:pe,handleSetValue:je,isValidStorage:Ne,Manager:L,removeAll:xt};function G(t){return t==null||typeof t=="string"||typeof t=="number"||typeof t=="boolean"}function ee(t){if(t instanceof RegExp)return true;if(!t||typeof t!="object"||!Object.prototype.toString.call(t).includes("RegExp"))return false;try{return new RegExp(t),!0}catch(e){return false}}function se(t){return !t||typeof t!="object"?false:t instanceof Date?true:typeof t.getTime!="function"?false:!(Object.prototype.toString.call(t)!=="[object Date]"||isNaN(t.getTime()))}function Me(t){return typeof window!="object"||!window||typeof document=="undefined"||typeof HTMLElement=="undefined"||!HTMLElement?false:t===document?true:"HTMLElement"in window?!!t&&t instanceof HTMLElement:!!t&&typeof t=="object"&&t.nodeType===1&&!!t.nodeName}function T(t){if(t===null||typeof t!="object"||Me(t)||se(t)||ee(t)||G(t))return false;let e=Object.getPrototypeOf(t);if(e===null)return true;let r=e.constructor;if(typeof r!="function")return false;if(r===Object)return true;let n=r.prototype;return typeof n!="object"?false:n===Object.prototype?true:typeof e.hasOwnProperty=="function"&&Object.prototype.hasOwnProperty.call(e,"isPrototypeOf")&&typeof e.isPrototypeOf=="function"}function ve(t){if(Array.isArray(t)){let n=[];for(var e=0;e<t.length;e++)n[e]=ve(t[e]);return n}else if(T(t)&&t){let n={};for(var r in t)t.hasOwnProperty(r)&&(n[r]=ve(t[r]));return n}else return t}Object.getSize=function(t,e=false){if(!t||typeof t!="object")return 0;if(Array.isArray(t))return t.length;typeof e!="boolean"&&(e=false);let r=0;for(let n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&(r++,e===true))return r;return r};function le(t,...e){let r=Array.isArray(t),n=T(t);(t==null||!r&&!n)&&(t={});for(let a=0;a<e.length;a++){let i=e[a];if(i==null)continue;let o=T(i),s=Array.isArray(i);if(!(!o&&!s)){if(r){s&&Qe(t,i);continue}else if(s)continue;for(let l in i){let u=i[l];if(u==null)continue;if(u===i){t[l]=t;continue}let d=t[l],y=Array.isArray(d),f=Array.isArray(u);if(y){f?Qe(t[l],u):t[l]=u;continue}else if(!T(d)){t[l]=u;continue}if(f||!T(u)){t[l]=u;continue}t[l]=le({},d,u);}}}return t}var Qe=(t,e)=>{let r=e.length,n=0;for(let a=0;a<t.length;a++){let i=t[a],o=e[a];if(a<r){let s=Array.isArray(i),l=Array.isArray(o),u=T(i),d=T(o);s&&l||u&&d?(t[n]=le(s?[]:{},i,o),n++):o!=null?(t[n]=o,n++):i!=null&&(t[n]=i,n++);}}for(let a=t.length;a<r;a++)e[a]!==void 0&&e[a]!==null&&t.push(e[a]);return t};function At(t,e){return be(t,"",{},e)}function be(t,e="",r={},n){if(r=T(r)?r:{},G(t)||se(t)||ee(t)||Array.isArray(t)&&(n!=null&&n.skipArrays))return e&&(r[e]=t),r;if(typeof t=="function"||typeof t=="object"&&!T(t)&&!Ot(t))return r;if(t instanceof Map||t instanceof WeakMap)return Array.from(t.entries()).forEach(([a,i])=>{let o=e?`${e}[${String(a)}]`:String(a);be(i,o,r,n);}),r;if(Array.isArray(t)||t instanceof Set||t instanceof WeakSet)return (Array.isArray(t)?t:Array.from(t)).forEach((i,o)=>{let s=e?`${e}[${o}]`:String(o);be(i,s,r,n);}),r;if(T(t))for(let a in t){if(!Object.prototype.hasOwnProperty.call(t,a))continue;let i=t[a],o=e?e.endsWith("]")?`${e}.${a}`:`${e}.${a}`:a;be(i,o,r,n);}return r}function Ot(t){return Array.isArray(t)||t instanceof Set||t instanceof Map||t instanceof WeakMap||t instanceof WeakSet}function Vt(t){return Object.entries(t)}Object.typedEntries=Vt;Object.flatten=At;Object.clone=ve;function ue(t,e){if(t==null)return "";if(typeof t=="string")return t;if((typeof t=="number"||typeof t=="object"&&t instanceof Number)&&typeof t.formatNumber=="function")return t.formatNumber();if(t instanceof Date||typeof t=="object"&&t!==null&&t.constructor===Date)return typeof t.toFormat=="function"?t.toFormat():t.toISOString();if(t instanceof Error)return `Error: ${t.message}`;if(ee(t))return t.toString();if(G(t))return String(t);if(Array.isArray(t))return JSON.stringify(t);if(typeof t=="object"&&t!==null){if(typeof t.toString=="function"&&t.toString!==Object.prototype.toString)return t.toString();if(typeof t.toString=="function"){let r=t.toString();if(r!=="[object Object]")return r}return JSON.stringify(t)}return typeof(t==null?void 0:t.toString)=="function"?t.toString():String(t)}function qe(t,e,r){let n=ue,a=g(t);if(!T(e)||!e)return a;let i=/%\{([^}]+)\}/g,o=new Set,s,l=g(t);for(;(s=i.exec(l))!==null;){let u=s[1];u!==void 0&&o.add(u);}return o.forEach(u=>{let d;d=`%{${u}}`;let y=Object.prototype.hasOwnProperty.call(e,u)?e[u]:void 0,f=y===void 0?"":(()=>{try{return n(y,u,ue)}catch(C){return ue(y)}})(),p=d.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");a=a.replace(new RegExp(p,"g"),f);}),a}function Pe(t){return !!(t==null||typeof t=="number"&&isNaN(t)||typeof t=="string"&&t.trim()==="")}function wt(t){return g(t).replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\v/g,"\\v").replace(/[\b]/g,"\\b").replace(/\f/g,"\\f")}function he(t,e){var r=Object.prototype.toString.call(t);return r==="[object "+e+"]"}function F(t,e){if(["boolean","undefined"].includes(typeof t)||t===null)return String(t);if(N(t))return t.formatNumber();if(t instanceof Date)return t.toFormat();if(t instanceof Error)return t==null?void 0:t.toString();e=Object.assign({},e);let{parenthesis:r}=e,n=r?"(":"",a=r?")":"";return typeof t=="string"?(e==null?void 0:e.escapeString)!==false?"'"+wt(t)+"'":t:he(t,"RegExp")||he(t,"Number")||he(t,"Boolean")?t.toString():he(t,"Date")?"new Date("+t.getTime()+")":Array.isArray(t)?"["+t.map(i=>F(i,e)).join(",")+"]":typeof t=="object"?n+"{"+Object.keys(t).map(i=>{var o=t[i];return F(i,e)+":"+F(o,e)}).join(",")+"}"+a:t&&typeof(t==null?void 0:t.toString)=="function"?t==null?void 0:t.toString():String(t)}var Xe=Symbol("TRANSLATION_KEY");var V=class V extends i18nJs.I18n{constructor(r={},n={}){super({},n);this._isLoading=false;this._locales=[];this.namespaceResolvers={};this._observableFactory=Fe();this._____isObservable=true;this.hasRegisteredDefaultTranslations=false;this._namespacesLoaded={};this.hasRegisteredDefaultTranslations||(this.registerTranslations(Re),this.hasRegisteredDefaultTranslations=true),this.registerTranslations(r),this.loadNamespaces();}static[Symbol.hasInstance](r){return this.isI18nInstance(r)}static isI18nInstance(r){if(!r||typeof r!="object")return false;try{if(r instanceof i18nJs.I18n)return !0}catch(n){}return typeof r.getLocale=="function"&&typeof r.translate=="function"&&typeof r.translateTarget=="function"}translate(r,n){return this.isPluralizeOptions(n)&&this.canPluralize(r)?(typeof n.count=="number"&&(n.countStr=n.count.formatNumber()),this.pluralize(n.count,r,n)):super.translate(r,n)}translateTarget(r,n){let a=V.getTargetTanslationKeys(r);for(let i in a)m(a[i])&&(a[i]=this.translate(a[i],n));return a}translateObject(r,n){if(!T(r))return {};let a={};for(let i in r){let o=r[i];m(o)&&(a[i]=te.translate(o,n));}return a}static getTargetTanslationKeys(r){return ye(r,Xe)}on(r,n){return this._observableFactory.on.call(this,r,n)}finally(r,n){return this._observableFactory.finally.call(this,r,n)}off(r,n){var a;return (a=this._observableFactory)==null?void 0:a.off.call(this,r,n)}trigger(r,...n){var a;return (a=this._observableFactory)==null?void 0:a.trigger.call(this,r,...n)}offAll(){var r;return (r=this._observableFactory)==null?void 0:r.offAll.call(this)}once(r,n){var a;return (a=this._observableFactory)==null?void 0:a.once.call(this,r,n)}getEventCallBacks(){var r;return (r=this._observableFactory)==null?void 0:r.getEventCallBacks.call(this)}static getInstance(r){if(!this.isI18nInstance(V.instance)){let n=V.getLocaleFromSession();V.instance=this.createInstance({},Object.assign({},n?{locale:n}:{},r));}return V.instance}isDefaultInstance(){return this===V.instance}static setLocaleToSession(r){H.set("i18n.locale",r);}static getLocaleFromSession(){let r=H.get("i18n.locale");return m(r)?r:""}canPluralize(r,n){n=g(n,this.getLocale());let a=this.getNestedTranslation(r,n);return !T(a)||!a?false:m(a==null?void 0:a.one)&&m(a==null?void 0:a.other)}getNestedTranslation(r,n){n=g(n,this.getLocale());let a=(m(r)?r.trim().split("."):Array.isArray(r)?r:[]).filter(m);if(!a.length)return;let i=this.getTranslations(n);for(let o of a)if(T(i))i=i[o];else return;return i}isPluralizeOptions(r){return !!(T(r)&&r&&typeof r.count=="number")}static RegisterTranslations(r){return V.getInstance().registerTranslations(r)}static createInstance(r={},n={}){let s=Object.assign({},n),{interpolate:a}=s,i=x(s,["interpolate"]),o=new V(r,i);return o.interpolate=(l,u,d)=>{let y=V.flattenObject(d),f=this.defaultInterpolator(l,u,y);return m(f)&&f!==u&&(u=f),typeof a=="function"?a(l,u,d):qe(u,d)},o}getTranslations(r){let n=T(this.translations)?this.translations:{};return m(r)?T(n[r])?n[r]:{}:n}static registerMomentLocale(r,n){return m(r)&&T(n)&&Array.isArray(n.months)&&(this.momentLocales[r]=le({},this.momentLocales[r],n)),this.momentLocales}static getMomentLocale(r){return this.momentLocales[r]}static setMomentLocale(r){try{return q__default.default.updateLocale(r,this.getMomentLocale(r)),!0}catch(n){console.error(n," setting moment locale : ",r);}return false}registerTranslations(r){return this.store(r),this.getTranslations()}store(r){super.store(r),this.trigger("translations-changed",this.getLocale(),this.getTranslations());}resolveTranslations(r){try{let n=Object.getOwnPropertyNames(r);for(let a of n){let i=Reflect.getMetadata(Xe,r,a);if(i)try{r[a]=this.translate(i);}catch(o){oe.error(o," resolving translation for key : ",i);}}}catch(n){oe.error(n," resolving translations for target : ",r);}}getMissingPlaceholderString(r,n,a){return typeof this.missingPlaceholder=="function"?this.missingPlaceholder(this,r,g(n),Object.assign({},a)):r}getLocale(){return super.locale}setLocales(r){return this._locales=Array.isArray(r)?r:["en"],this._locales.includes("en")||this._locales.push("en"),this.getLocales()}hasLocale(r){return m(r)&&this.getLocales().includes(r)}getLocales(){let r=Object.keys(this.getTranslations()),n=Array.isArray(this._locales)?this._locales:["en"],a=[...r,...n.filter(i=>!r.includes(i))];return a.includes("en")||a.push("en"),a}isLocaleSupported(r){return m(r)?this.getLocales().includes(r):false}isLoading(){return this._isLoading}setLocale(r,n=false){return super.locale===r&&n!==true&&this._namespacesLoaded[r]?Promise.resolve(this.getLocale()):new Promise((a,i)=>(this._isLoading=true,this.trigger("namespaces-before-load",r),this.loadNamespaces(r).then(o=>{this.isDefaultInstance()&&(V.instance=this,this.isLocaleSupported(r)&&V.setLocaleToSession(r)),super.locale=r,V.setMomentLocale(r),this.trigger("locale-changed",r,o),a(r);}).catch(i).finally(()=>{this._isLoading=false;})))}registerNamespaceResolver(r,n){if(!m(r)||typeof n!="function"){console.warn("Invalid arguments for registerNamespaceResolver.",r,n);return}this.namespaceResolvers[r]=n;}static RegisterNamespaceResolver(r,n){return V.getInstance().registerNamespaceResolver(r,n)}loadNamespace(r,n,a=true){return !m(r)||!this.namespaceResolvers[r]?Promise.reject(new Error(`Invalid namespace or resolver for namespace "${r}".`)):(n=g(n,this.getLocale()),m(n)?this.namespaceResolvers[r](n).then(i=>{let o={};return o[n]=Object.assign({},i),T(i)&&(a!==false&&this.store(o),this.trigger("namespace-loaded",r,n,o)),o}):Promise.reject(new Error(`Locale is not set. Cannot load namespace "${r}".`)))}static LoadNamespace(r,n,a=true){return V.getInstance().loadNamespace(r,n,a)}loadNamespaces(r,n=true){let a=[],i={};r=g(r,this.getLocale()),this._isLoading=true;for(let o in this.namespaceResolvers)Object.prototype.hasOwnProperty.call(this.namespaceResolvers,o)&&typeof this.namespaceResolvers[o]=="function"&&a.push(new Promise(s=>{this.namespaceResolvers[o](r).then(l=>{le(i,l);}).finally(()=>{s(true);});}));return Promise.all(a).then(()=>{let o={};return o[r]=i,n!==false&&this.store(o),setTimeout(()=>{this.trigger("namespaces-loaded",r,o);},100),o}).finally(()=>{this._isLoading=false;})}static LoadNamespaces(r,n=true){return V.getInstance().loadNamespaces(r,n)}static flattenObject(r){return T(r)?Object.flatten(r):r}static defaultInterpolator(r,n,a){return Pe(n)?"":G(n)?(n=String(n),!T(a)||!a||!T(a)||!a?n:n.replace(/%{(.*?)}/g,(i,o)=>Pe(a[o])?"":G(a[o])?String(a[o]):F(a[o],{escapeString:false}))):F(n,{escapeString:false})}};V.momentLocales={};var U=V,te=U.getInstance();try{Object.setPrototypeOf(te,U.prototype);}catch(t){}function Z(t){return !!(t==null||typeof t=="undefined"||typeof t=="string"&&t===""||Array.isArray(t)&&!t.length)}var h=class h{static parseString(e,r){if(m(e)&&m(r))try{let n=q__default.default(e,r,!0);if(n.isValid())return {date:n.toDate(),matchedFormat:r,isValid:!0}}catch(n){}try{if(Array.isArray(r)&&(r!=null&&r.length))for(let n of r){let a=et(e,n);if(a)return a}for(let n of h.DATE_FORMATS){let a=et(e,n);if(a)return a}return {date:null,matchedFormat:null,isValid:!1,error:"Unable to parse date string with any known format"}}catch(n){return {date:null,matchedFormat:null,isValid:false,error:n instanceof Error?n.message:"Unknown error occurred while parsing date"}}}static toIsoString(e){let r=e?h.parseDate(e):new Date;return r?r.toISOString():""}static isoStringToDate(e){return new Date(e)}static parseDate(e,r){if(h.isDateObj(e))return e;if(!m(r)){let n=h.parseString(e);return n!=null&&n.isValid?n.date:null}if(Z(e))return null;try{let n=q__default.default(e,r,!0);if(n!=null&&n.isValid())return n.toDate()}catch(n){console.error(n," parsing date with moment : ",e," format is : ",r);}return null}static toSQLDateTimeFormat(e){if(!h.isDateObj(e))return "";let r=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),a=String(e.getDate()).padStart(2,"0"),i=String(e.getHours()).padStart(2,"0"),o=String(e.getMinutes()).padStart(2,"0"),s=String(e.getSeconds()).padStart(2,"0");return `${r}-${n}-${a} ${i}:${o}:${s}`}static getI18n(e){return U.isI18nInstance(e)?e:U.getInstance()}static getDefaultDateTimeFormat(e){return g(this.getI18n(e).getNestedTranslation("dates.defaultDateTimeFormat"),"YYYY-MM-DD HH:mm")}static getDefaultDateFormat(e){return g(this.getI18n(e).getNestedTranslation("dates.defaultDateFormat"),"YYYY-MM-DD")}static toSQLDateFormat(e){if(!h.isDateObj(e))return "";let r=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),a=String(e.getDate()).padStart(2,"0");return `${r}-${n}-${a}`}static toSQLTimeFormat(e){if(!h.isDateObj(e))return "";let r=String(e.getHours()).padStart(2,"0"),n=String(e.getMinutes()).padStart(2,"0"),a=String(e.getSeconds()).padStart(2,"0");return `${r}:${n}:${a}`}static getDefaultTimeFormat(e){return g(this.getI18n(e).getNestedTranslation("dates.defaultTimeFormat"),"HH:mm")}static isValidDate(e,r){if(e==null||typeof e=="boolean")return false;if(h.isDateObj(e))return true;if(N(e)){let a=new Date(e);return a&&!isNaN(a.getTime())}if(m(e))return !!h.parseDate(e,r);if(e!=null&&e.toString&&(e==null?void 0:e.toString())==parseInt(e).toString())return false;let n=new Date(e);return h.isDateObj(n)}static addToDate(e,r,n){if(N(e)||(e=0),Z(r)&&(r=new Date),h.isValidDate(r)&&m(r)&&(r=new Date(r)),h.isValidDate(r)||(r=m(r)?new Date(r):new Date),m(n)&&typeof r["set"+n]=="function"&&typeof r["get"+n]=="function"){let a="set"+n,i="get"+n;r=new Date(r[a](r[i]()+e));}return r}static addDays(e,r){return h.addToDate(e,r,"Date")}static addMilliseconds(e,r){return N(e)||(e=0),h.isDateObj(r)||(r=new Date),r=r||new Date,new Date(r.getTime()+e)}static addSeconds(e,r){return N(e)||(e=0),h.addMilliseconds(e*1e3,r)}static addMinutes(e,r){return N(e)||(e=0),h.addMilliseconds(e*6e4,r)}static addHours(e,r){return N(e)||(e=0),h.addMilliseconds(e*36e5,r)}static addMonths(e,r,n){return h.addToDate(e,r,"Month")}static addWeeks(e,r){return e=(N(e)?e:0)*7,h.addToDate(e,r,"Date")}static addYears(e,r){N(e)||(e=0);let n=new Date(h.addToDate(0,r)),a=n.getFullYear();return a+e<0?e=0:e+=a,n.setFullYear(e),new Date(n)}static formatDate(e,r){try{let n=q__default.default(e);if(n.isValid())return n.format(g(r,h.getDefaultDateTimeFormat()))}catch(n){}return g(h.isValidDate(e)?e==null?void 0:e.toString():"")}static getUTCDateTimeDetails(e){let r=e?q__default.default.utc(e):q__default.default.utc();return {year:r.year(),day:r.day(),month:r.month(),monthString:r.format("MM"),hours:r.hours(),date:r.date(),minutes:r.minutes(),seconds:r.seconds(),monthName:r.format("MMMM"),dayName:r.format("dddd"),dayNameShort:r.format("ddd")}}};h.DATE_FORMATS=["YYYY-MM-DD","YYYY-MM-DDTHH:mm:ss","YYYY-MM-DDTHH:mm:ssZ","YYYY-MM-DDTHH:mm:ss.SSSZ","YYYY-MM-DDTHH:mm:ss[Z]","YYYY-MM-DDTHH:mm:ss.SSS[Z]","YYYY-MM-DDTHH:mm:ss.SSSZ ","YYYY-MM-DDTHH:mm:ss.SSS","YYYY-MM-DD HH:mm:ss","YYYY-MM-DD HH:mm:ss.SSSZ","YYYY-MM-DDTHH:mm:ss.SSS[Z]","YYYY-MM-DD HH:mm:ssZ","YYYY-MM-DD HH:mmZ","MM/DD/YYYY","MM-DD-YYYY","MM.DD.YYYY","MM/DD/YY","MMMM DD, YYYY","MMM DD, YYYY","DD/MM/YYYY","DD-MM-YYYY","DD.MM.YYYY","DD/MM/YY","DD MMMM YYYY","DD MMM YYYY","HH:mm:ss.SSSZ","HH:mm:ssZ","HH:mmZ","YYYYMMDD","YYYYMMDDTHHMM","YYYYMMDDTHHMMSS","HH:mm:ss","HH:mm","hh:mm A","h:mm A","HH:mm:ss.SSS","YYYY-DDD","YYYY-Www","YYYY-Www-D","YYYY/MM/DD","YYYY.MM.DD","MMM D, YYYY","MMMM D, YYYY","D MMM YYYY","D MMMM YYYY","MMM D YYYY","ddd, DD MMM YYYY HH:mm:ss ZZ","ddd, DD MMM YYYY HH:mm:ss","dddd, MMMM D, YYYY","dddd, D MMMM YYYY","hh:mm:ss A","H:mm:ss","YYYY-[W]WW","YYYY-[W]WW-E","YYYY-MM-DDTHH:mm:ss.SSS","DD-MM-YYYY HH:mm:ss","YYYY/MM/DD HH:mm:ss","YYYY.MM.DD HH:mm:ss","DD/MM/YYYY HH:mm:ss","MMM D YYYY, h:mm a","MMMM D YYYY, h:mm a","h:mm A MMM D, YYYY","MMMM D, YYYY","YY-MM-DD","DD-MM-YY","MM/DD/YY","MMM DD, YY","D MMM YY","D MMMM YY","YYYY MMM D","YYYY-MM-DD HH:mm","YYYY-MM-DD HH:mm:ss.SSS"],h.SQL_DATE_FORMAT="YYYY-MM-DD",h.SQL_DATE_TIME_FORMAT="YYYY-MM-DD HH:mm:ss",h.SQL_TIME_FORMAT="HH:mm:ss",h.getCurrentMonthDaysRange=e=>{let r=h.isValidDate(e)?new Date(e):new Date().resetHours2Minutes2Seconds(),n=new Date(r.getFullYear(),r.getMonth(),1),a=new Date(r.getFullYear(),r.getMonth()+1,0);return {first:n,last:a}},h.getPreviousWeekDaysRange=e=>{let r=h.isValidDate(e)?new Date(e):new Date().resetHours2Minutes2Seconds(),n=new Date(r.getTime()-3600*24*7*1e3),a=new Date(n),i=n.getDay(),o=n.getDate()-i+(i===0?-6:1),s=new Date(n.setDate(o)),l=new Date(a.setDate(o+6));return {first:s,last:l}},h.getCurrentWeekDaysRange=e=>{let r=h.isValidDate(e)?new Date(e):new Date().resetHours2Minutes2Seconds(),n=r.getDay(),a=r.getDate()-n+(n==0?-6:1),i=new Date(r),o=new Date(r.setDate(a));return i.setDate(i.getDate()+6),{first:o,last:i}},h.isDateObj=se;var w=h,et=(t,e)=>{let r=q__default.default(t,e,true);try{if(r.isValid()&&r.format(e)===t||q__default.default.utc(r,!0).format(e)===t)return {date:r.toDate(),matchedFormat:e,isValid:!0}}catch(n){}return null};Date.prototype.toSQLDateTimeFormat=function(){return w.toSQLDateTimeFormat(this)};Date.prototype.toSQLDateFormat=function(){return w.toSQLDateFormat(this)};Date.prototype.toSQLTimeFormat=function(){return w.toSQLTimeFormat(this)};Date.prototype.resetHours=function(){return this.setHours(0),this};Date.prototype.resetMinutes=function(){return this.setMinutes(0),this};Date.prototype.resetSeconds=function(){return this.setSeconds(0),this};Date.prototype.resetMilliseconds=function(){return this.setMilliseconds(0),this};Date.prototype.resetHours2Minutes2Seconds=function(){return this.setHours(0),this.setMinutes(0),this.setSeconds(0),this.setMilliseconds(0),this};Date.prototype.toFormat=function(t){return w.formatDate(this,t)};Date.prototype.addYears=function(t){return w.addYears(t,this)};Date.prototype.addMonths=function(t){return w.addMonths(t,this)};Date.prototype.addMinutes=function(t){return w.addMinutes(t,this)};Date.prototype.addSeconds=function(t){return w.addSeconds(t,this)};Date.prototype.addDays=function(t){return w.addDays(t,this)};Date.prototype.addWeeks=function(t){return w.addWeeks(t,this)};Date.prototype.addHours=function(t){return w.addHours(t,this)};var tt=function(t,e=""){if(!t||typeof t!="string")return "";if(!e||typeof e!="string")return t.trim();let r=t.length;for(;t.startsWith(e)&&r>=0;)t=t.slice(e.length),--r;return t.toString()},rt=function(t,e=""){if(!t||typeof t!="string")return "";if(!e||typeof e!="string")return t.trim();let r=t.length;for(;t.endsWith(e)&&r>=0;)t=t.slice(0,-e.length),--r;return t.toString()},Yt=(t,e=true)=>typeof t!="string"?false:e!==false?/^\d*\.?\d+$/.test(t):/^\d+$/.test(t);String.prototype.ltrim=function(t){return tt(this.toString(),t)};String.prototype.rtrim=function(t){return rt(this.toString(),t)};String.prototype.isNumber=function(t=true){return Yt(this.toString(),t)};String.prototype.replaceAll=function(t,e){return !m(t)||!m(e)?this.toString():this.toString().split(t).join(e)};var It=t=>m(t)?(t=t.trim(),t.replace(/(.)([A-Z][a-z]+)/,"$1_$2").replace(/([a-z0-9])([A-Z])/,"$1_$2").toUpperCase()):"";String.prototype.toSnakeCase=function(){return It(this.toString())};var Lt=t=>m(t)?(t=t.trim(),t.charAt(0)+t.replace(/(_\w)/g,e=>e[1].toUpperCase()).substring(1)):"";String.prototype.toCamelCase=function(){return Lt(this.toString())};var Ft=function(t){return !t||typeof t!="string"?"":(t=t.trim(),t.charAt(0).toUpperCase()+t.slice(1))};String.prototype.upperFirst=function(){return Ft(this.toString())};var xe=function(t){return !t||typeof t!="string"?"":(t=t.trim(),t.charAt(0).toLowerCase()+t.slice(1))};String.prototype.lowerFirst=function(){return xe(this.toString())};var k={USD:{symbol:"$",name:"US Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"USD",namePlural:"US dollars"},CAD:{symbol:"CA$",name:"Canadian Dollar",symbolNative:"$",decimalDigits:2,format:"%s %v",rounding:0,code:"CAD",namePlural:"Canadian dollars"},EUR:{symbol:"\u20AC",name:"Euro",symbolNative:"\u20AC",decimalDigits:2,rounding:0,code:"EUR",namePlural:"euros"},AED:{symbol:"AED",name:"United Arab Emirates Dirham",symbolNative:"\u062F.\u0625.\u200F",decimalDigits:2,rounding:0,code:"AED",namePlural:"UAE dirhams"},AFN:{symbol:"Af",name:"Afghan Afghani",symbolNative:"\u060B",decimalDigits:0,rounding:0,code:"AFN",namePlural:"Afghan Afghanis"},ALL:{symbol:"ALL",name:"Albanian Lek",symbolNative:"Lek",decimalDigits:0,rounding:0,code:"ALL",namePlural:"Albanian lek\xEB"},AMD:{symbol:"AMD",name:"Armenian Dram",symbolNative:"\u0564\u0580.",decimalDigits:0,rounding:0,code:"AMD",namePlural:"Armenian drams"},ARS:{symbol:"AR$",name:"Argentine Peso",symbolNative:"$",decimalDigits:2,rounding:0,code:"ARS",namePlural:"Argentine pesos"},AUD:{symbol:"AU$",name:"Australian Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"AUD",namePlural:"Australian dollars"},AZN:{symbol:"man.",name:"Azerbaijani Manat",symbolNative:"\u043C\u0430\u043D.",decimalDigits:2,rounding:0,code:"AZN",namePlural:"Azerbaijani manats"},BAM:{symbol:"KM",name:"Bosnia-Herzegovina Convertible Mark",symbolNative:"KM",decimalDigits:2,rounding:0,code:"BAM",namePlural:"Bosnia-Herzegovina convertible marks"},BDT:{symbol:"Tk",name:"Bangladeshi Taka",symbolNative:"\u09F3",decimalDigits:2,rounding:0,code:"BDT",namePlural:"Bangladeshi takas"},BGN:{symbol:"BGN",name:"Bulgarian Lev",symbolNative:"\u043B\u0432.",decimalDigits:2,rounding:0,code:"BGN",namePlural:"Bulgarian leva"},BHD:{symbol:"BD",name:"Bahraini Dinar",symbolNative:"\u062F.\u0628.\u200F",decimalDigits:2,rounding:0,code:"BHD",namePlural:"Bahraini dinars"},BIF:{symbol:"FBu",name:"Burundian Franc",symbolNative:"FBu",decimalDigits:0,rounding:0,code:"BIF",namePlural:"Burundian francs"},BND:{symbol:"BN$",name:"Brunei Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"BND",namePlural:"Brunei dollars"},BOB:{symbol:"Bs",name:"Bolivian Boliviano",symbolNative:"Bs",decimalDigits:2,rounding:0,code:"BOB",namePlural:"Bolivian bolivianos"},BRL:{symbol:"R$",name:"Brazilian Real",symbolNative:"R$",decimalDigits:2,rounding:0,code:"BRL",namePlural:"Brazilian reals"},BWP:{symbol:"BWP",name:"Botswanan Pula",symbolNative:"P",decimalDigits:2,rounding:0,code:"BWP",namePlural:"Botswanan pulas"},BYR:{symbol:"BYR",name:"Belarusian Ruble",symbolNative:"BYR",decimalDigits:0,rounding:0,code:"BYR",namePlural:"Belarusian rubles"},BZD:{symbol:"BZ$",name:"Belize Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"BZD",namePlural:"Belize dollars"},CDF:{symbol:"CDF",name:"Congolese Franc",symbolNative:"FrCD",decimalDigits:2,rounding:0,code:"CDF",namePlural:"Congolese francs"},CHF:{symbol:"CHF",name:"Swiss Franc",symbolNative:"CHF",decimalDigits:2,rounding:.05,code:"CHF",namePlural:"Swiss francs"},CLP:{symbol:"CL$",name:"Chilean Peso",symbolNative:"$",decimalDigits:0,rounding:0,code:"CLP",namePlural:"Chilean pesos"},CNY:{symbol:"CN\xA5",name:"Chinese Yuan",symbolNative:"CN\xA5",decimalDigits:2,rounding:0,code:"CNY",namePlural:"Chinese yuan"},COP:{symbol:"CO$",name:"Colombian Peso",symbolNative:"$",decimalDigits:0,rounding:0,code:"COP",namePlural:"Colombian pesos"},CRC:{symbol:"\u20A1",name:"Costa Rican Col\xF3n",symbolNative:"\u20A1",decimalDigits:0,rounding:0,code:"CRC",namePlural:"Costa Rican col\xF3ns"},CVE:{symbol:"CV$",name:"Cape Verdean Escudo",symbolNative:"CV$",decimalDigits:2,rounding:0,code:"CVE",namePlural:"Cape Verdean escudos"},CZK:{symbol:"K\u010D",name:"Czech Republic Koruna",symbolNative:"K\u010D",decimalDigits:2,rounding:0,code:"CZK",namePlural:"Czech Republic korunas"},DJF:{symbol:"Fdj",name:"Djiboutian Franc",symbolNative:"Fdj",decimalDigits:0,rounding:0,code:"DJF",namePlural:"Djiboutian francs"},DKK:{symbol:"Dkr",name:"Danish Krone",symbolNative:"kr",decimalDigits:2,rounding:0,code:"DKK",namePlural:"Danish kroner"},DOP:{symbol:"RD$",name:"Dominican Peso",symbolNative:"RD$",decimalDigits:2,rounding:0,code:"DOP",namePlural:"Dominican pesos"},DZD:{symbol:"DA",name:"Algerian Dinar",symbolNative:"\u062F.\u062C.\u200F",decimalDigits:2,rounding:0,code:"DZD",namePlural:"Algerian dinars"},EEK:{symbol:"Ekr",name:"Estonian Kroon",symbolNative:"kr",decimalDigits:2,rounding:0,code:"EEK",namePlural:"Estonian kroons"},EGP:{symbol:"EGP",name:"Egyptian Pound",symbolNative:"\u062C.\u0645.\u200F",decimalDigits:2,rounding:0,code:"EGP",namePlural:"Egyptian pounds"},ERN:{symbol:"Nfk",name:"Eritrean Nakfa",symbolNative:"Nfk",decimalDigits:2,rounding:0,code:"ERN",namePlural:"Eritrean nakfas"},ETB:{symbol:"Br",name:"Ethiopian Birr",symbolNative:"Br",decimalDigits:2,rounding:0,code:"ETB",namePlural:"Ethiopian birrs"},GBP:{symbol:"\xA3",name:"British Pound Sterling",symbolNative:"\xA3",decimalDigits:2,rounding:0,code:"GBP",namePlural:"British pounds sterling"},GEL:{symbol:"GEL",name:"Georgian Lari",symbolNative:"GEL",decimalDigits:2,rounding:0,code:"GEL",namePlural:"Georgian laris"},GHS:{symbol:"GH\u20B5",name:"Ghanaian Cedi",symbolNative:"GH\u20B5",decimalDigits:2,rounding:0,code:"GHS",namePlural:"Ghanaian cedis"},GNF:{symbol:"FG",name:"Guinean Franc",symbolNative:"FG",decimalDigits:0,rounding:0,code:"GNF",namePlural:"Guinean francs"},GTQ:{symbol:"GTQ",name:"Guatemalan Quetzal",symbolNative:"Q",decimalDigits:2,rounding:0,code:"GTQ",namePlural:"Guatemalan quetzals"},HKD:{symbol:"HK$",name:"Hong Kong Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"HKD",namePlural:"Hong Kong dollars"},HNL:{symbol:"HNL",name:"Honduran Lempira",symbolNative:"L",decimalDigits:2,rounding:0,code:"HNL",namePlural:"Honduran lempiras"},HRK:{symbol:"kn",name:"Croatian Kuna",symbolNative:"kn",decimalDigits:2,rounding:0,code:"HRK",namePlural:"Croatian kunas"},HUF:{symbol:"Ft",name:"Hungarian Forint",symbolNative:"Ft",decimalDigits:0,rounding:0,code:"HUF",namePlural:"Hungarian forints"},IDR:{symbol:"Rp",name:"Indonesian Rupiah",symbolNative:"Rp",decimalDigits:0,rounding:0,code:"IDR",namePlural:"Indonesian rupiahs"},ILS:{symbol:"\u20AA",name:"Israeli New Sheqel",symbolNative:"\u20AA",decimalDigits:2,rounding:0,code:"ILS",namePlural:"Israeli new sheqels"},INR:{symbol:"Rs",name:"Indian Rupee",symbolNative:"\u099F\u0995\u09BE",decimalDigits:2,rounding:0,code:"INR",namePlural:"Indian rupees"},IQD:{symbol:"IQD",name:"Iraqi Dinar",symbolNative:"\u062F.\u0639.\u200F",decimalDigits:0,rounding:0,code:"IQD",namePlural:"Iraqi dinars"},IRR:{symbol:"IRR",name:"Iranian Rial",symbolNative:"\uFDFC",decimalDigits:0,rounding:0,code:"IRR",namePlural:"Iranian rials"},ISK:{symbol:"Ikr",name:"Icelandic Kr\xF3na",symbolNative:"kr",decimalDigits:0,rounding:0,code:"ISK",namePlural:"Icelandic kr\xF3nur"},JMD:{symbol:"J$",name:"Jamaican Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"JMD",namePlural:"Jamaican dollars"},JOD:{symbol:"JD",name:"Jordanian Dinar",symbolNative:"\u062F.\u0623.\u200F",decimalDigits:2,rounding:0,code:"JOD",namePlural:"Jordanian dinars"},JPY:{symbol:"\xA5",name:"Japanese Yen",symbolNative:"\uFFE5",decimalDigits:0,rounding:0,code:"JPY",namePlural:"Japanese yen"},KES:{symbol:"Ksh",name:"Kenyan Shilling",symbolNative:"Ksh",decimalDigits:2,rounding:0,code:"KES",namePlural:"Kenyan shillings"},KHR:{symbol:"KHR",name:"Cambodian Riel",symbolNative:"\u17DB",decimalDigits:2,rounding:0,code:"KHR",namePlural:"Cambodian riels"},KMF:{symbol:"CF",name:"Comorian Franc",symbolNative:"FC",decimalDigits:0,rounding:0,code:"KMF",namePlural:"Comorian francs"},KRW:{symbol:"\u20A9",name:"South Korean Won",symbolNative:"\u20A9",decimalDigits:0,rounding:0,code:"KRW",namePlural:"South Korean won"},KWD:{symbol:"KD",name:"Kuwaiti Dinar",symbolNative:"\u062F.\u0643.\u200F",decimalDigits:2,rounding:0,code:"KWD",namePlural:"Kuwaiti dinars"},KZT:{symbol:"KZT",name:"Kazakhstani Tenge",symbolNative:"\u0442\u04A3\u0433.",decimalDigits:2,rounding:0,code:"KZT",namePlural:"Kazakhstani tenges"},LBP:{symbol:"LB\xA3",name:"Lebanese Pound",symbolNative:"\u0644.\u0644.\u200F",decimalDigits:0,rounding:0,code:"LBP",namePlural:"Lebanese pounds"},LKR:{symbol:"SLRs",name:"Sri Lankan Rupee",symbolNative:"SL Re",decimalDigits:2,rounding:0,code:"LKR",namePlural:"Sri Lankan rupees"},LTL:{symbol:"Lt",name:"Lithuanian Litas",symbolNative:"Lt",decimalDigits:2,rounding:0,code:"LTL",namePlural:"Lithuanian litai"},LVL:{symbol:"Ls",name:"Latvian Lats",symbolNative:"Ls",decimalDigits:2,rounding:0,code:"LVL",namePlural:"Latvian lati"},LYD:{symbol:"LD",name:"Libyan Dinar",symbolNative:"\u062F.\u0644.\u200F",decimalDigits:2,rounding:0,code:"LYD",namePlural:"Libyan dinars"},MAD:{symbol:"MAD",name:"Moroccan Dirham",symbolNative:"\u062F.\u0645.\u200F",decimalDigits:2,rounding:0,code:"MAD",namePlural:"Moroccan dirhams"},MDL:{symbol:"MDL",name:"Moldovan Leu",symbolNative:"MDL",decimalDigits:2,rounding:0,code:"MDL",namePlural:"Moldovan lei"},MGA:{symbol:"MGA",name:"Malagasy Ariary",symbolNative:"MGA",decimalDigits:0,rounding:0,code:"MGA",namePlural:"Malagasy Ariaries"},MKD:{symbol:"MKD",name:"Macedonian Denar",symbolNative:"MKD",decimalDigits:2,rounding:0,code:"MKD",namePlural:"Macedonian denari"},MMK:{symbol:"MMK",name:"Myanma Kyat",symbolNative:"K",decimalDigits:0,rounding:0,code:"MMK",namePlural:"Myanma kyats"},MOP:{symbol:"MOP$",name:"Macanese Pataca",symbolNative:"MOP$",decimalDigits:2,rounding:0,code:"MOP",namePlural:"Macanese patacas"},MUR:{symbol:"MURs",name:"Mauritian Rupee",symbolNative:"MURs",decimalDigits:0,rounding:0,code:"MUR",namePlural:"Mauritian rupees"},MXN:{symbol:"MX$",name:"Mexican Peso",symbolNative:"$",decimalDigits:2,rounding:0,code:"MXN",namePlural:"Mexican pesos"},MYR:{symbol:"RM",name:"Malaysian Ringgit",symbolNative:"RM",decimalDigits:2,rounding:0,code:"MYR",namePlural:"Malaysian ringgits"},MZN:{symbol:"MTn",name:"Mozambican Metical",symbolNative:"MTn",decimalDigits:2,rounding:0,code:"MZN",namePlural:"Mozambican meticals"},NAD:{symbol:"N$",name:"Namibian Dollar",symbolNative:"N$",decimalDigits:2,rounding:0,code:"NAD",namePlural:"Namibian dollars"},NGN:{symbol:"\u20A6",name:"Nigerian Naira",symbolNative:"\u20A6",decimalDigits:2,rounding:0,code:"NGN",namePlural:"Nigerian nairas"},NIO:{symbol:"C$",name:"Nicaraguan C\xF3rdoba",symbolNative:"C$",decimalDigits:2,rounding:0,code:"NIO",namePlural:"Nicaraguan c\xF3rdobas"},NOK:{symbol:"Nkr",name:"Norwegian Krone",symbolNative:"kr",decimalDigits:2,rounding:0,code:"NOK",namePlural:"Norwegian kroner"},NPR:{symbol:"NPRs",name:"Nepalese Rupee",symbolNative:"\u0928\u0947\u0930\u0942",decimalDigits:2,rounding:0,code:"NPR",namePlural:"Nepalese rupees"},NZD:{symbol:"NZ$",name:"New Zealand Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"NZD",namePlural:"New Zealand dollars"},OMR:{symbol:"OMR",name:"Omani Rial",symbolNative:"\u0631.\u0639.\u200F",decimalDigits:2,rounding:0,code:"OMR",namePlural:"Omani rials"},PAB:{symbol:"B/.",name:"Panamanian Balboa",symbolNative:"B/.",decimalDigits:2,rounding:0,code:"PAB",namePlural:"Panamanian balboas"},PEN:{symbol:"S/.",name:"Peruvian Nuevo Sol",symbolNative:"S/.",decimalDigits:2,rounding:0,code:"PEN",namePlural:"Peruvian nuevos soles"},PHP:{symbol:"\u20B1",name:"Philippine Peso",symbolNative:"\u20B1",decimalDigits:2,rounding:0,code:"PHP",namePlural:"Philippine pesos"},PKR:{symbol:"PKRs",name:"Pakistani Rupee",symbolNative:"\u20A8",decimalDigits:0,rounding:0,code:"PKR",namePlural:"Pakistani rupees"},PLN:{symbol:"z\u0142",name:"Polish Zloty",symbolNative:"z\u0142",decimalDigits:2,rounding:0,code:"PLN",namePlural:"Polish zlotys"},PYG:{symbol:"\u20B2",name:"Paraguayan Guarani",symbolNative:"\u20B2",decimalDigits:0,rounding:0,code:"PYG",namePlural:"Paraguayan guaranis"},QAR:{symbol:"QR",name:"Qatari Rial",symbolNative:"\u0631.\u0642.\u200F",decimalDigits:2,rounding:0,code:"QAR",namePlural:"Qatari rials"},RON:{symbol:"RON",name:"Romanian Leu",symbolNative:"RON",decimalDigits:2,rounding:0,code:"RON",namePlural:"Romanian lei"},RSD:{symbol:"din.",name:"Serbian Dinar",symbolNative:"\u0434\u0438\u043D.",decimalDigits:0,rounding:0,code:"RSD",namePlural:"Serbian dinars"},RUB:{symbol:"RUB",name:"Russian Ruble",symbolNative:"\u0440\u0443\u0431.",decimalDigits:2,rounding:0,code:"RUB",namePlural:"Russian rubles"},RWF:{symbol:"RWF",name:"Rwandan Franc",symbolNative:"FR",decimalDigits:0,rounding:0,code:"RWF",namePlural:"Rwandan francs"},SAR:{symbol:"SR",name:"Saudi Riyal",symbolNative:"\u0631.\u0633.\u200F",decimalDigits:2,rounding:0,code:"SAR",namePlural:"Saudi riyals"},SDG:{symbol:"SDG",name:"Sudanese Pound",symbolNative:"SDG",decimalDigits:2,rounding:0,code:"SDG",namePlural:"Sudanese pounds"},SEK:{symbol:"Skr",name:"Swedish Krona",symbolNative:"kr",decimalDigits:2,rounding:0,code:"SEK",namePlural:"Swedish kronor"},SGD:{symbol:"S$",name:"Singapore Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"SGD",namePlural:"Singapore dollars"},SOS:{symbol:"Ssh",name:"Somali Shilling",symbolNative:"Ssh",decimalDigits:0,rounding:0,code:"SOS",namePlural:"Somali shillings"},SYP:{symbol:"SY\xA3",name:"Syrian Pound",symbolNative:"\u0644.\u0633.\u200F",decimalDigits:0,rounding:0,code:"SYP",namePlural:"Syrian pounds"},THB:{symbol:"\u0E3F",name:"Thai Baht",symbolNative:"\u0E3F",decimalDigits:2,rounding:0,code:"THB",namePlural:"Thai baht"},TND:{symbol:"DT",name:"Tunisian Dinar",symbolNative:"\u062F.\u062A.\u200F",decimalDigits:2,rounding:0,code:"TND",namePlural:"Tunisian dinars"},TOP:{symbol:"T$",name:"Tongan Pa\u02BBanga",symbolNative:"T$",decimalDigits:2,rounding:0,code:"TOP",namePlural:"Tongan pa\u02BBanga"},TRY:{symbol:"TL",name:"Turkish Lira",symbolNative:"TL",decimalDigits:2,rounding:0,code:"TRY",namePlural:"Turkish Lira"},TTD:{symbol:"TT$",name:"Trinidad and Tobago Dollar",symbolNative:"$",decimalDigits:2,rounding:0,code:"TTD",namePlural:"Trinidad and Tobago dollars"},TWD:{symbol:"NT$",name:"New Taiwan Dollar",symbolNative:"NT$",decimalDigits:2,rounding:0,code:"TWD",namePlural:"New Taiwan dollars"},TZS:{symbol:"TSh",name:"Tanzanian Shilling",symbolNative:"TSh",decimalDigits:0,rounding:0,code:"TZS",namePlural:"Tanzanian shillings"},UAH:{symbol:"\u20B4",name:"Ukrainian Hryvnia",symbolNative:"\u20B4",decimalDigits:2,rounding:0,code:"UAH",namePlural:"Ukrainian hryvnias"},UGX:{symbol:"USh",name:"Ugandan Shilling",symbolNative:"USh",decimalDigits:0,rounding:0,code:"UGX",namePlural:"Ugandan shillings"},UYU:{symbol:"$U",name:"Uruguayan Peso",symbolNative:"$",decimalDigits:2,rounding:0,code:"UYU",namePlural:"Uruguayan pesos"},UZS:{symbol:"UZS",name:"Uzbekistan Som",symbolNative:"UZS",decimalDigits:0,rounding:0,code:"UZS",namePlural:"Uzbekistan som"},VEF:{symbol:"Bs.F.",name:"Venezuelan Bol\xEDvar",symbolNative:"Bs.F.",decimalDigits:2,rounding:0,code:"VEF",namePlural:"Venezuelan bol\xEDvars"},VND:{symbol:"\u20AB",name:"Vietnamese Dong",symbolNative:"\u20AB",decimalDigits:0,rounding:0,code:"VND",namePlural:"Vietnamese dong"},XAF:{symbol:"FCFA",name:"CFA Franc BEAC",symbolNative:"FCFA",decimalDigits:0,rounding:0,code:"XAF",namePlural:"francs CFA"},XOF:{symbol:"CFA",name:"CFA Franc BCEAO",symbolNative:"CFA",decimalDigits:0,rounding:0,code:"XOF",namePlural:"francs CFA"},YER:{symbol:"YR",name:"Yemeni Rial",symbolNative:"\u0631.\u064A.\u200F",decimalDigits:0,rounding:0,code:"YER",namePlural:"Yemeni rials"},ZAR:{symbol:"R",name:"South African Rand",symbolNative:"R",decimalDigits:2,rounding:0,code:"ZAR",namePlural:"South African rand"},ZMK:{symbol:"ZK",name:"Zambian Kwacha",symbolNative:"ZK",decimalDigits:0,rounding:0,code:"ZMK",namePlural:"Zambian kwachas"}};var $=t=>t&&typeof t=="object"&&!Array.isArray(t)&&t.name&&typeof t.name=="string"&&t.symbol&&typeof t.symbol=="string";var nt="%v %s",Ae=t=>{let e=H.get("currencyFormat");return e&&typeof e=="string"&&e.includes("%v")?e:t!==false?nt:""};function at(t){return t=t&&typeof t=="string"?t.trim():"",H.set("currencyFormat",t)}var kt=t=>{if(!$(t)){let r=typeof t=="object"&&t&&!Array.isArray(t)?g(t.code,t.name):typeof t=="string"?t:void 0;r&&(r=r.trim().toUpperCase()),r&&$(k[r])?t=k[r]:typeof t=="string"&&(r=t.trim().toUpperCase(),$(k[r])&&(t=k[r]));}let e=Object.assign({},t);if(!e.format){let r=Ae();r&&(e.format=r);}return e.format&&at(e.format),H.set("appConfigCurrency",e),e},Bt=()=>{var a,i,o,s;let t=Object.assign({},H.get("appConfigCurrency")),e=H.get("currencyCode");if(m(e)&&$(k[e.trim().toUpperCase()])&&(t=c(c({},k[e.trim().toUpperCase()]),t)),!m(t==null?void 0:t.format)){let l=Ae(false);m(l)&&l.includes("%v")&&(t.format=l);}let n=k["USD"];return c(c({symbol:n.symbol,format:(a=n.format)!=null?a:"%v %s",decimalSeparator:(i=n.decimalSeparator)!=null?i:".",thousandSeparator:(o=n.thousandSeparator)!=null?o:",",decimalDigits:(s=n.decimalDigits)!=null?s:0},Object.assign({},te.getNestedTranslation("currencies"))),t)},j={getFormat:Ae,setFormat:at,setCurrency:kt,getCurrency:Bt,defaultCurrencyFormat:nt};var Kt=t=>t&&typeof t=="object";function Ve(t){let e=Object.assign({},j.getCurrency());if(t&&Kt(t))for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&t[r]!==void 0&&(e[r]=t[r]);if(m(e.format)){let r=st(e.format);r.format&&(e.format=r.format),typeof r.decimalDigits=="number"&&(e.decimalDigits=r.decimalDigits);}return e}function we(t,e){return t=typeof t=="number"?t:0,e=typeof e=="number"?e:0,t=Math.round(Math.abs(t)),isNaN(t)?e:t}function Ht(t){let e=j.getCurrency(),r=(e==null?void 0:e.format).toLowerCase();return typeof t=="string"&&(t=t.toLowerCase()),(typeof t!="string"||!t.match("%v"))&&(t=r),{pos:t,neg:t.replace("-","").replace("%v","-%v"),zero:t}}var Ce=(t,e)=>{let r=j.getCurrency();if(t=t||0,typeof t=="number")return t;e=e||r.decimalSeparator;let n=new RegExp("[^0-9-"+e+"]","g"),a=parseFloat((""+t).replace(/\((?=\d+)(.*)\)/,"-$1").replace(n,"").replace(e,"."));return isNaN(a)?0:a},Oe=(t,e)=>{let r=j.getCurrency();e=we(e,r.decimalDigits);let a=String(t).replace(/[^\d.-]/g,"");if(a.length>15&&!a.includes("."))return a+"."+"0".repeat(e);try{let i=Number(a);if(isNaN(i))return "NaN";let o=+(i+"e"+e);return (+(Math.round(o)+"e-"+e)).toFixed(e)}catch(i){return "NaN"}},it=(t,e,r,n)=>{var y;t=Ce(t);let a=$(e)?e:j.getCurrency();typeof e=="number"&&(a.decimalDigits=e),typeof a.decimalDigits!="number"&&(a.decimalDigits=(y=String(t).split(".")[1])==null?void 0:y.length),r!==void 0&&(a.thousandSeparator=r),n!==void 0&&(a.decimalSeparator=n);let i=Ve(a),o=we(i.decimalDigits),s=t<0?"-":"",l=parseInt(Oe(Math.abs(t||0),o),10)+"",u=l.length>3?l.length%3:0,d="";if(o){let f=String(parseFloat(Oe(Math.abs(t),o))||0);f.includes(".")&&(d=g(f.split(".")[1]).trim());}return s+(u?l.substring(0,u)+i.thousandSeparator:"")+l.substring(u).replace(/(\d{3})(?=\d)/g,"$1"+i.thousandSeparator)+(o&&d?i.decimalSeparator+d:"")},ot=(t,e,r,n,a,i)=>{t=Ce(t);let o=$(e)?e:j.getCurrency();e!==void 0&&typeof e=="string"&&(o.symbol=e),r!==void 0&&(o.decimalDigits=r),n!==void 0&&(o.thousandSeparator=n),a!==void 0&&(o.decimalSeparator=a),m(i)&&(o.format=i);let s=Ve(o),l=Ht(s.format),u=g(t>0?l.pos:t<0?l.neg:l.zero),d=g(s.symbol),y=u.replace(d&&"%s",d),f=it(Math.abs(t),we(s.decimalDigits),s.thousandSeparator,s.decimalSeparator),p=y.replace("%v",f);return D(c({},s),{formattedValue:y,formattedNumber:f,symbol:s.symbol,usedFormat:u,result:p})},Gt=(t,e,r,n,a,i)=>ot(t,e,r,n,a,i).result,st=t=>{t=g(t).trim();let e={};if(t){let r=/(\.)(\#{0,9}\s*$)/,n=t.match(r);Array.isArray(n)&&n.length===3&&(e.decimalDigits=g(n[2]).trim().length),t=t.replace(r,"");}return e.format=t,e},re={parse:Ce,session:j,formatMoney:Gt,currencies:k,isCurrency:$,formatNumber:it,formatMoneyAsObject:ot,unformat:Ce,toFixed:Oe,prepareOptions:Ve,parseFormat:st};var{currencies:lt}=re;Number.prototype.countDecimals=function(){let t=String(this.toString()).match(/\.(\d+)/);return t?t[1].length:0};Number.prototype.formatNumber=function(t,e,r){return re.formatNumber(this.valueOf(),t,e,r)};Number.prototype.formatMoney=function(t,e,r,n,a){return re.formatMoney(this.valueOf(),t,e,r,n,a)};var Ut=(t,e,r,n)=>{var R;if(t===null||typeof t!="number"||isNaN(t))return {result:"",format:"",suffix:"",formattedValue:"",minAbreviationDecimalDigits:0,value:NaN};if(!isFinite(t)){let S=t>0?"\u221E":"-\u221E";return {result:S,value:t,format:"",suffix:"",formattedValue:S,minAbreviationDecimalDigits:0}}let a=Math.abs(t)<1e3,i=[{value:1e12,suffix:"T"},{value:1e9,suffix:"B"},{value:1e6,suffix:"M"},{value:1e3,suffix:"K"},{value:1,suffix:""}],o=t.countDecimals?t.countDecimals():Math.floor(t)===t?0:((R=t.toString().split(".")[1])==null?void 0:R.length)||0,s=i.find(S=>Math.abs(t)>=S.value)||i[i.length-1],l=a?t:t/(s.value===1?1:s.value),u=s.suffix,d=$t(l,5);if(t===0)return {result:"0",value:0,format:"",suffix:"",formattedValue:"0",minAbreviationDecimalDigits:0};let f=N(e)&&e>0?e:s.value===1?Math.min(o,5):Math.max(d,0),p=l.toFixed(f);r=g(r),n=g(n,".");let C=p.toString().split(".");return C[0]=C[0].replace(/\B(?=(\d{3})+(?!\d))/g,r),f>0&&C.length===1?C.push("0".repeat(f)):f>0&&C.length>1&&C[1].length<f&&(C[1]=C[1].padEnd(f,"0")),p=C.join(n),{result:p+u,value:t,format:u,suffix:u,formattedValue:p,minAbreviationDecimalDigits:d}};function $t(t,e){let r=Math.abs(t);if(Number.isInteger(r))return 0;let n=r.toString().split(".")[1]||"",a=0;for(;a<n.length&&n[a]==="0";)a++;return r<1&&a>0?Math.min(a+e,n.length):Math.min(e,n.length)}var ut=(t,e,r,n)=>Ut(t,e,r,n).result;Number.prototype.abreviate2FormatNumber=function(t,e,r){return ut(this.valueOf(),t,e,r)};var dt=(t,e,r,n,a,i)=>{if(!N(t))return "";let l=re.formatMoneyAsObject(t,e,r,n,a,i),{formattedValue:o}=l,s=x(l,["formattedValue"]);return o.replace("%v",ut(t,s.decimalDigits,s.thousandSeparator,s.decimalSeparator))};Number.prototype.abreviate2FormatMoney=function(t,e,r,n,a){return dt(this.valueOf(),t,e,r,n,a)};Object.keys(lt).forEach(t=>{let e=t,r=lt[e],n=`format${e}`,a=`abreviate2Format${e}`;Number.prototype[n]=function(i,o,s,l){return re.formatMoney(this.valueOf(),r,i,o,s,l)},Number.prototype[a]=function(i,o,s,l){return dt(this.valueOf(),r,i,o,s,l)};});var ne={optional:Symbol.for("validatorOptionalRuleMarker"),empty:Symbol.for("validatorEmptyRuleMarker"),nullable:Symbol.for("validatorNullableRuleMarker"),ruleName:Symbol.for("validatorRuleNameMarker")};var M=class M{static registerRule(e,r){if(!m(e))throw new Error("Rule name must be a non-empty string");if(typeof r!="function")throw new Error("Rule handler must be a function");let n=M.getRules(),a=D(c({},n),{[e]:r});Reflect.defineMetadata(M.RULES_METADATA_KEY,a,M);}static getRules(){let e=Reflect.getMetadata(M.RULES_METADATA_KEY,M);return T(e)?c({},e):{}}static getRule(e){return this.getRules()[e]}static hasRule(e){return m(e)?!!this.getRule(e):false}static getI18n(e){return U.isI18nInstance(e==null?void 0:e.i18n)?e.i18n:te}static getErrorMessageSeparators(e){let r=this.getI18n({i18n:e}),n=Object.assign({},r.getNestedTranslation("validator.separators"));return {multiple:g(n.multiple,", "),single:g(n.single,", ")}}static parseAndValidateRules(e){let r=[],n=this.getRules(),a=[],i=Array.isArray(e)?e:[];for(let o of i)if(typeof o=="function")r.push(o);else if(m(o)){let s=this.parseStringRule(o,n);s?r.push(s):a.push(o);}else if(T(o)&&typeof o=="object"){let s=this.parseObjectRule(o,n);s.length&&r.push(...s);}return {sanitizedRules:r,invalidRules:a}}static parseStringRule(e,r){let n=String(e).trim(),a=[],i=r[n];return typeof i=="function"?{ruleName:n,params:a,ruleFunction:i,rawRuleName:String(e)}:null}static parseFunctionRule(e){var n;let r=(n=Jt(e))!=null?n:e.name;return {ruleFunction:e,ruleName:r,rawRuleName:r,params:[]}}static parseObjectRule(e,r){let n=[];if(!T(e))return n;if(this.isSanitizedRuleObject(e))return n.push(e),n;for(let a in e)if(Object.hasOwnProperty.call(e,a)){let i=a;if(typeof r[i]!="function")continue;let o=r[i],s=e[i];Array.isArray(s)&&n.push({ruleName:i,ruleFunction:o,params:s,rawRuleName:i});}return n}static isSanitizedRuleObject(e){if(!T(e))return false;let r=e;return typeof r.ruleFunction=="function"&&typeof r.ruleName=="string"&&Array.isArray(r.params)}static validate(n){return Q(this,null,function*(){var a=n,{rules:e}=a,r=x(a,["rules"]);let i=this.getI18n(r),o=Date.now(),{sanitizedRules:s,invalidRules:l}=M.parseAndValidateRules(e),u=M.getErrorMessageSeparators(i),{value:d,context:y,data:f}=r,p=this.getI18nTranslateOptions(r),C=D(c({},p),{context:y,value:d,data:f});if(l.length){let v=l.map(S=>i.t("validator.invalidRule",D(c({},p),{rule:m(S)?S:"unnamed rule"}))).join(u.multiple),R=de(v,{value:d,fieldName:r.fieldName,propertyName:r.propertyName,ruleParams:[]});return ce(R,C,o)}return !s.length||this.shouldSkipValidation({value:d,rules:s})?De(C,o):(r.fieldName=r.propertyName=g(r.fieldName,r.propertyName),new Promise(v=>{let R=-1,S=s.length,I=function(){return Q(this,null,function*(){if(R++,R>=S)return v(De(C,o));let P=s[R],A,Y,O=[],_=typeof P=="function"?P:void 0;if(M.isSanitizedRuleObject(P))_=P.ruleFunction,O=Array.isArray(P.params)?P.params:[],A=P.ruleName,Y=P.rawRuleName;else if(typeof P=="function"){let b=M.parseFunctionRule(P);b?A=b.ruleName:A=P.name,Y=A;}let J=D(c({value:d,rules:e},p),{rule:g(A),ruleName:A,rawRuleName:Y,ruleParams:O}),me=D(c(D(c({},r),{data:f!=null?f:Object.assign({},f),startTime:o}),J),{ruleName:A,rule:A,rawRuleName:Y,ruleParams:O,rules:e,value:d,i18n:i}),ie=b=>{if(M.isFailure(b)){let B={validatedValue:d,validatedRuleName:A,validatedParams:O};v(c(c({},b),B));}if(b=typeof b=="string"?m(b)?b:i.t("validator.invalidMessage",J):b,b===false){let B=de(i.t("validator.invalidMessage",J),D(c({value:d,ruleName:A,rawRuleName:Y},p),{ruleParams:O}));return v(ce(B,C,o))}else if(m(b)){let B=de(b,c({value:d,ruleName:A,rawRuleName:Y,ruleParams:O},p));return v(ce(B,C,o))}else if(b instanceof Error||m(b==null?void 0:b.message)||m(b)){let B=de(F(b),c({value:d,ruleName:A,rawRuleName:Y,ruleParams:O},p));return v(ce(B,C,o))}return I()};if(typeof _!="function"){let b=de(i.t("validator.invalidRule",J),c({value:d,ruleName:A,rawRuleName:Y,ruleParams:O},p));return v(ce(b,C,o))}try{let b=yield _(me);return ie(b)}catch(b){return ie(typeof b=="string"?b:(b==null?void 0:b.message)||(b==null?void 0:b.toString())||F(b))}})};return I()}))})}static shouldSkipValidation({value:e,rules:r}){if(Z(e)&&Array.isArray(r)){let n={IsEmpty:{validate:a=>a==="",symbol:ne.empty},Nullable:{validate:a=>a==null,symbol:ne.nullable},Optional:{validate:a=>a===void 0,symbol:ne.optional}};for(let a of r){let i=typeof a=="object"&&a?a.ruleFunction:typeof a=="function"?a:void 0;if(typeof i=="function")for(let o in n){let s=n[o];if(Zt(i,s.symbol)&&s.validate(e))return true}}}return false}static validateOneOfRule(e){return this.validateMultiRule("OneOf",e)}static validateAllOfRule(e){return this.validateMultiRule("AllOf",e)}static validateArrayOfRule(e){return Q(this,null,function*(){let f=e,{value:r,ruleParams:n,startTime:a}=f,i=x(f,["value","ruleParams","startTime"]);a=N(a)?a:Date.now();let o=Array.isArray(n)?n:[],s=this.getI18n(i);if(!Array.isArray(r))return s.t("validator.array",D(c({field:i.translatedPropertyName||i.fieldName,value:r},i),{context:void 0}));if(o.length===0||r.length===0)return true;let{multiple:l,single:u}=this.getErrorMessageSeparators(s),d=[];for(let p=0;p<r.length;p++){let C=r[p],v=yield M.validateMultiRule("AllOf",c({value:C,ruleParams:o,startTime:a},i));v!==true&&d.push(`#${p}: ${String(v)}`);}return d.length===0?true:`${s.t("validator.failedForNItems",{count:d.length})}${u}${d.join(l)}`})}static getI18nTranslateOptions(s){var l=s,{fieldName:e,propertyName:r,fieldLabel:n,translatedPropertyName:a,context:i}=l,o=x(l,["fieldName","propertyName","fieldLabel","translatedPropertyName","context"]);e=g(e,r),n=g(n,a,e);let u={fieldLabel:n,translatedPropertyName:g(a,n),propertyName:g(r,e),fieldName:e};return "value"in o&&(u.value=o.value),u}static validateNestedRule(n){return Q(this,null,function*(){var a=n,{ruleParams:e}=a,r=x(a,["ruleParams"]);let v=r,{startTime:i,value:o}=v,s=x(v,["startTime","value"]);i=N(i)?i:Date.now();let l=this.getI18n(s),d=(Array.isArray(e)?e:[])[0],y=D(c({rule:"ValidateNested"},this.getI18nTranslateOptions(s)),{startTime:i,value:o});if(!d)return l.t("validator.invalidRule",y);if(typeof o!="object"||o===null||Array.isArray(o)){let R=Array.isArray(o)?"array":o===void 0?"undefined":o===null?"null":typeof o;return l.t("validator.validateNestedInvalidType",D(c({},y),{receivedType:R}))||`The field must be an object, but received ${R}`}let f=yield this.validateTarget(d,D(c({},r),{data:o,parentData:s.data,startTime:i}));if(f.success)return true;let C=(f.errors||[]).map(R=>{var S;return `[${(S=R.translatedPropertyName)!=null?S:R.propertyName}]: ${R.message}`}).join("; ");return l.t("validator.validateNested",c({nestedErrors:C},y))})}static validateMultiRule(e,o){return Q(this,null,function*(){var s=o,{value:r,ruleParams:n,startTime:a}=s,i=x(s,["value","ruleParams","startTime"]);var C;a=N(a)?a:Date.now();let l=Array.isArray(n)?n:[],u=this.getI18n(i),d=e==="AllOf";if(l.length===0)return true;let y=[],f=[],p=null;for(let v of l){let R=yield M.validate(D(c({value:r},i),{rules:[v],i18n:u}));if(R.success){if(!d)return true;p!=null||(p=R);}else f.push(R),m((C=R==null?void 0:R.error)==null?void 0:C.message)&&y.push(R.error.message);}return !d&&p||f.length===0?true:u.t(`validator.${xe(e)}`,D(c({},this.getI18nTranslateOptions(i)),{value:r,ruleName:e,rawRuleName:e,rules:[e],rule:e,ruleParams:[],failedRulesErrors:y.join("; ")}))})}static oneOf(e){return function(n){return M.validateOneOfRule(D(c({},n),{ruleParams:e}))}}static allOf(e){return function(n){return M.validateAllOfRule(D(c({},n),{ruleParams:e}))}}static arrayOf(e){return function(n){return M.validateArrayOfRule(D(c({},n),{ruleParams:e}))}}static validateNested(e){return function(n){return M.validateNestedRule(D(c({},n),{ruleParams:[e]}))}}static isSuccess(e){return T(e)&&e.success===true}static isFailure(e){return T(e)&&e.success===false&&T(e.error)&&e.error.name=="ValidatorValidationError"}static validateTarget(e,r){return Q(this,null,function*(){let n=Date.now(),a=M.getTargetRules(e),R=Object.assign({},M.getValidateTargetOptions(e),r),{context:i,errorMessageBuilder:o}=R,s=x(R,["context","errorMessageBuilder"]),l=Object.assign({},r.data),u=this.getI18n(r),d=M.getErrorMessageSeparators(u),y=typeof o=="function"?o:(S,I)=>`[${String(S)}] : ${I}`,f=[],p=[],v=u.translateTarget(e,{data:l});for(let S in a){let I=a[S],{sanitizedRules:P}=this.parseAndValidateRules(I),A=l[S];if(this.shouldSkipValidation({value:A,rules:P}))continue;let Y=g(v[S],S);p.push(M.validate(D(c({context:i},s),{i18n:u,value:A,data:l,translatedPropertyName:Y,fieldName:S,propertyName:S,rules:P,fieldLabel:Y})).then(O=>{var _,J,me,ie;if(O.success);else {let b=F((_=O.error)==null?void 0:_.message),B=y(Y,b,D(c({},Object.assign({},O.error)),{separators:d,data:l,propertyName:S,translatedPropertyName:Y,i18n:u}));f.push({name:"ValidatorValidationError",status:"error",fieldName:S,value:O.value,propertyName:S,message:B,ruleName:(J=O.error)==null?void 0:J.ruleName,ruleParams:(me=O.error)==null?void 0:me.ruleParams,rawRuleName:(ie=O.error)==null?void 0:ie.rawRuleName});}return O}));}return new Promise(S=>Promise.all(p).then(()=>{if(!f.length)S(D(c({},De({data:l,value:void 0,context:i},n)),{status:"success",data:l}));else {let P=u.translate("validator.failedForNFields",{count:f.length});S({success:false,message:P,errors:f,failureCount:f.length,status:"error",failedAt:new Date,duration:Date.now()-n,data:l});}}))})}static getTargetRules(e){return ye(e,ct)}static getValidateTargetOptions(e){return Object.assign({},Reflect.getMetadata(Wt,e)||{})}static buildRuleDecorator(e,r,n){return r&&this._prepareRuleDecorator(e,r,n),(...a)=>this._buildRuleDecorator(a,e,r,n)}static _prepareRuleDecorator(e,r,n){return m(r)&&(M.registerRule(r,e),mt(e,r)),n&&Qt(e,n,{ruleName:r}),e}static _buildRuleDecorator(e,r,n,a){var i;return this._prepareRuleDecorator(r,n,a),n=g(n,a==null?void 0:a.toString(),r.name,(i=r.constructor)==null?void 0:i.name),mt(r,n),M.buildPropertyDecorator({ruleName:n,ruleFunction:r,params:e})}static buildTargetRuleDecorator(e,r){return this.buildRuleDecorator(e,void 0,r)}static buildMultiRuleDecorator(e,r){return n=>this._buildRuleDecorator(n,e,void 0,r)}static buildPropertyDecorator(e){return Te(ct,r=>[...Array.isArray(r)?r:[],...Array.isArray(e)?e:[e]])}};M.RULES_METADATA_KEY=Symbol.for("validationRules");var E=M;function de(t,e){var r,n;return {name:"ValidatorValidationError",message:t,status:"error",value:e.value,fieldName:(r=e.fieldName)!=null?r:"",propertyName:(n=e.propertyName)!=null?n:"",translatedPropertyName:e.translatedPropertyName,ruleName:e.ruleName,rawRuleName:e.rawRuleName,ruleParams:e.ruleParams}}function De(t,e){return D(c({},t),{success:true,validatedAt:new Date,duration:Date.now()-e})}function ce(t,e,r){return D(c({},e),{error:t,success:false,failedAt:new Date,duration:Date.now()-r})}var ct=Symbol.for("validatorTargetRules"),Wt=Symbol.for("validatorTargetOptions");function Zt(t,e){if(typeof t!="function")return false;let r=jt(t,e);return !!(r!=null&&r.validatorRuleFuncMarked)}function jt(t,e){return typeof t!="function"?null:Object.assign({},t[e])}function mt(t,e){typeof t=="function"&&(t[ne.ruleName]=e);}function Jt(t){if(typeof t=="function"){let e=t[ne.ruleName];return m(e)?e:void 0}}function Qt(t,e,r){var n;typeof t=="function"&&(t[e]=D(c({},r),{validatorRuleFuncMarked:true,ruleName:(n=r==null?void 0:r.ruleName)!=null?n:e}));}var z=t=>{if(Z(t))return NaN;if(typeof t=="number")return t;try{let e=Number(t);return isNaN(e)?NaN:e}catch(e){}return NaN};function ae(t,e,s,o){var l=s,{value:r,ruleParams:n,i18n:a}=l,i=x(l,["value","ruleParams","i18n"]);n=Array.isArray(n)?n:[];let u=n||[];e=g(e);let d=a.t(e,D(c({},i),{value:r,ruleParams:n})),y=z(r);r=typeof r=="number"?r:isNaN(y)?NaN:y;let f=z(u[0]);return N(f)?isNaN(r)||u[0]===void 0||isNaN(f)?d:t(r,f)?true:d:a.t("validator.invalidRuleParams",D(c({value:r},i),{rule:o,ruleParams:n}))}var Yi=E.buildRuleDecorator(function(e){return ae((r,n)=>r<=n,"validator.numberLTE",e,"NumberLTE")},"NumberLTE"),Ii=E.buildRuleDecorator(function(e){return ae((r,n)=>r<n,"validator.numberLT",e,"NumberLT")},"NumberLT"),Li=E.buildRuleDecorator(function(e){return ae((r,n)=>r>=n,"validator.numberGTE",e,"NumberGTE")},"NumberGTE"),Fi=E.buildRuleDecorator(function(e){return ae((r,n)=>r>n,"validator.numberGT",e,"NumberGT")},"NumberGT"),ki=E.buildRuleDecorator(function(e){return ae((r,n)=>r===n,"validator.numberEquals",e,"NumberEQ")},"NumberEQ"),Bi=E.buildRuleDecorator(function(e){return ae((r,n)=>r!==n,"validator.numberIsDifferentFrom",e,"NumberNE")},"NumberNE"),Ki=E.buildRuleDecorator(function(e){let{value:r,i18n:n}=e;return N(r)||n.t("validator.isNumber",e)},"Number"),Hi=E.buildRuleDecorator(function(s){var l=s,{value:e,ruleParams:r,fieldName:n,translatedPropertyName:a,i18n:i}=l,o=x(l,["value","ruleParams","fieldName","translatedPropertyName","i18n"]);if(!r||r.length<2)return i.t("validator.invalidRuleParams",c({rule:"NumberBetween",field:a||n,ruleParams:r},o));if(!N(e))return i.t("validator.numeric",c({field:a||n,value:e},o));let u=z(r[0]),d=z(r[1]);return isNaN(u)||isNaN(d)||u>d?i.t("validator.invalidRuleParams",c({rule:"NumberBetween",field:a||n,ruleParams:r},o)):e>=u&&e<=d?true:i.t("validator.numberBetween",c({field:a||n,value:e,min:u,max:d},o))},"NumberBetween"),Gi=E.buildRuleDecorator(function(s){var l=s,{value:e,ruleParams:r,fieldName:n,translatedPropertyName:a,i18n:i}=l,o=x(l,["value","ruleParams","fieldName","translatedPropertyName","i18n"]);if(!Array.isArray(r)||!r.length)return i.t("validator.invalidRuleParams",c({rule:"DecimalPlaces",field:a||n,ruleParams:r},o));if(!N(e))return i.t("validator.number",c({rule:"DecimalPlaces",field:a||n,value:e,ruleParams:r},o));let u=String(e),d=u.indexOf("."),y=d===-1?0:u.length-d-1,f=false;if(r.length===1){let p=z(r[0]);f=y===p;}else if(r.length===2){let p=z(r[0]),C=z(r[1]);f=!isNaN(p)&&!isNaN(C)&&y>=p&&y<=C;}return f?true:i.t("validator.decimalPlaces",c({field:a||n,value:e,places:r.join("-"),actualPlaces:y},o))},"DecimalPlaces"),Ui=E.buildRuleDecorator(function(o){var s=o,{value:e,fieldName:r,translatedPropertyName:n,i18n:a}=s,i=x(s,["value","fieldName","translatedPropertyName","i18n"]);return !N(e)||!Number.isInteger(e)?a.t("validator.integer",c({field:n||r,value:e},i)):true},"Integer"),$i=E.buildRuleDecorator(function(o){var s=o,{value:e,fieldName:r,translatedPropertyName:n,i18n:a}=s,i=x(s,["value","fieldName","translatedPropertyName","i18n"]);return N(e)?Number.isInteger(e)?e%2===0?true:a.t("validator.evenNumber",c({field:n||r,value:e},i)):a.t("validator.integer",c({field:n||r,value:e},i)):a.t("validator.number",c({field:n||r,value:e},i))},"EvenNumber"),zi=E.buildRuleDecorator(function(o){var s=o,{value:e,fieldName:r,translatedPropertyName:n,i18n:a}=s,i=x(s,["value","fieldName","translatedPropertyName","i18n"]);return N(e)?Number.isInteger(e)?e%2!==0?true:a.t("validator.oddNumber",c({field:n||r,value:e},i)):a.t("validator.integer",c({field:n||r,value:e},i)):a.t("validator.number",c({field:n||r,value:e},i))},"OddNumber"),Wi=E.buildRuleDecorator(function(s){var l=s,{value:e,ruleParams:r,fieldName:n,translatedPropertyName:a,i18n:i}=l,o=x(l,["value","ruleParams","fieldName","translatedPropertyName","i18n"]);if(!r||!r.length)return i.t("validator.invalidRuleParams",D(c({rule:"MultipleOf",field:a||n},o),{ruleParams:r}));if(!N(e))return i.t("validator.number",c({field:a||n,value:e,ruleParams:r},o));let u=z(r[0]);if(isNaN(u)||u===0)return i.t("validator.invalidRuleParams",c({rule:"MultipleOf",ruleParams:r,field:a||n},o));let d=e%u;return Math.abs(d)<Number.EPSILON?true:i.t("validator.multipleOf",c({field:a||n,value:e,multipleOf:u,ruleParams:r},o))},"MultipleOf");exports.HasDecimalPlaces=Gi;exports.IsEvenNumber=$i;exports.IsInteger=Ui;exports.IsMultipleOf=Wi;exports.IsNumber=Ki;exports.IsNumberBetween=Hi;exports.IsNumberEQ=ki;exports.IsNumberGT=Fi;exports.IsNumberGTE=Li;exports.IsNumberLT=Ii;exports.IsNumberLTE=Yi;exports.IsNumberNE=Bi;exports.IsOddNumber=zi;