Socket
Socket
Sign inDemoInstall

ow

Package Overview
Dependencies
Maintainers
2
Versions
44
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ow - npm Package Compare versions

Comparing version 0.8.0 to 0.9.0

dist/lib/utils/infer-label.d.ts

61

dist/index.d.ts

@@ -19,3 +19,3 @@ /// <reference types="node" />

/**
* Test if the value matches the predicate. Throws an `ArgumentError` if the test fails..
* Test if the value matches the predicate. Throws an `ArgumentError` if the test fails.
*

@@ -27,29 +27,10 @@ * @param value Value to test.

/**
* Returns `true` if the value matches the predicate, otherwise returns `false`.
* Test if `value` matches the provided `predicate`. Throws an `ArgumentError` with the specified `label` if the test fails.
*
* @param value Value to test.
* @param label Label which should be used in error messages.
* @param predicate Predicate to test against.
*/
isValid<T>(value: T, predicate: BasePredicate<T>): value is T;
<T>(value: T, label: string, predicate: BasePredicate<T>): void;
/**
* Create a reusable validator.
*
* @param predicate Predicate used in the validator function.
*/
create<T>(predicate: BasePredicate<T>): (value: T) => void;
/**
* Test that the value matches at least one of the given predicates.
*/
any<T1>(p1: BasePredicate<T1>): AnyPredicate<T1>;
any<T1, T2>(p1: BasePredicate<T1>, p2: BasePredicate<T2>): AnyPredicate<T1 | T2>;
any<T1, T2, T3>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>): AnyPredicate<T1 | T2 | T3>;
any<T1, T2, T3, T4>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>, p4: BasePredicate<T4>): AnyPredicate<T1 | T2 | T3 | T4>;
any<T1, T2, T3, T4, T5>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>, p4: BasePredicate<T4>, p5: BasePredicate<T5>): AnyPredicate<T1 | T2 | T3 | T4 | T5>;
any<T1, T2, T3, T4, T5, T6>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>, p4: BasePredicate<T4>, p5: BasePredicate<T5>, p6: BasePredicate<T6>): AnyPredicate<T1 | T2 | T3 | T4 | T5 | T6>;
any<T1, T2, T3, T4, T5, T6, T7>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>, p4: BasePredicate<T4>, p5: BasePredicate<T5>, p6: BasePredicate<T6>, p7: BasePredicate<T7>): AnyPredicate<T1 | T2 | T3 | T4 | T5 | T6 | T7>;
any<T1, T2, T3, T4, T5, T6, T7, T8>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>, p4: BasePredicate<T4>, p5: BasePredicate<T5>, p6: BasePredicate<T6>, p7: BasePredicate<T7>, p8: BasePredicate<T8>): AnyPredicate<T1 | T2 | T3 | T4 | T5 | T6 | T7 | T8>;
any<T1, T2, T3, T4, T5, T6, T7, T8, T9>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>, p4: BasePredicate<T4>, p5: BasePredicate<T5>, p6: BasePredicate<T6>, p7: BasePredicate<T7>, p8: BasePredicate<T8>, p9: BasePredicate<T9>): AnyPredicate<T1 | T2 | T3 | T4 | T5 | T6 | T7 | T8 | T9>;
any<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>, p4: BasePredicate<T4>, p5: BasePredicate<T5>, p6: BasePredicate<T6>, p7: BasePredicate<T7>, p8: BasePredicate<T8>, p9: BasePredicate<T9>, p10: BasePredicate<T10>): AnyPredicate<T1 | T2 | T3 | T4 | T5 | T6 | T7 | T8 | T9 | T10>;
any(...predicate: BasePredicate[]): AnyPredicate;
/**
* Test the value to be a string.

@@ -186,2 +167,36 @@ */

readonly iterable: Predicate<Iterable<any>>;
/**
* Returns `true` if the value matches the predicate, otherwise returns `false`.
*
* @param value Value to test.
* @param predicate Predicate to test against.
*/
isValid<T>(value: T, predicate: BasePredicate<T>): value is T;
/**
* Create a reusable validator.
*
* @param predicate Predicate used in the validator function.
*/
create<T>(predicate: BasePredicate<T>): (value: T) => void;
/**
* Create a reusable validator.
*
* @param label Label which should be used in error messages.
* @param predicate Predicate used in the validator function.
*/
create<T>(label: string, predicate: BasePredicate<T>): (value: T) => void;
/**
* Test that the value matches at least one of the given predicates.
*/
any<T1>(p1: BasePredicate<T1>): AnyPredicate<T1>;
any<T1, T2>(p1: BasePredicate<T1>, p2: BasePredicate<T2>): AnyPredicate<T1 | T2>;
any<T1, T2, T3>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>): AnyPredicate<T1 | T2 | T3>;
any<T1, T2, T3, T4>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>, p4: BasePredicate<T4>): AnyPredicate<T1 | T2 | T3 | T4>;
any<T1, T2, T3, T4, T5>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>, p4: BasePredicate<T4>, p5: BasePredicate<T5>): AnyPredicate<T1 | T2 | T3 | T4 | T5>;
any<T1, T2, T3, T4, T5, T6>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>, p4: BasePredicate<T4>, p5: BasePredicate<T5>, p6: BasePredicate<T6>): AnyPredicate<T1 | T2 | T3 | T4 | T5 | T6>;
any<T1, T2, T3, T4, T5, T6, T7>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>, p4: BasePredicate<T4>, p5: BasePredicate<T5>, p6: BasePredicate<T6>, p7: BasePredicate<T7>): AnyPredicate<T1 | T2 | T3 | T4 | T5 | T6 | T7>;
any<T1, T2, T3, T4, T5, T6, T7, T8>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>, p4: BasePredicate<T4>, p5: BasePredicate<T5>, p6: BasePredicate<T6>, p7: BasePredicate<T7>, p8: BasePredicate<T8>): AnyPredicate<T1 | T2 | T3 | T4 | T5 | T6 | T7 | T8>;
any<T1, T2, T3, T4, T5, T6, T7, T8, T9>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>, p4: BasePredicate<T4>, p5: BasePredicate<T5>, p6: BasePredicate<T6>, p7: BasePredicate<T7>, p8: BasePredicate<T8>, p9: BasePredicate<T9>): AnyPredicate<T1 | T2 | T3 | T4 | T5 | T6 | T7 | T8 | T9>;
any<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(p1: BasePredicate<T1>, p2: BasePredicate<T2>, p3: BasePredicate<T3>, p4: BasePredicate<T4>, p5: BasePredicate<T5>, p6: BasePredicate<T6>, p7: BasePredicate<T7>, p8: BasePredicate<T8>, p9: BasePredicate<T9>, p10: BasePredicate<T10>): AnyPredicate<T1 | T2 | T3 | T4 | T5 | T6 | T7 | T8 | T9 | T10>;
any(...predicate: BasePredicate[]): AnyPredicate;
}

@@ -188,0 +203,0 @@ declare const _default: Ow;

@@ -1,2 +0,2 @@

module.exports=function(e){var t={};function r(a){if(t[a])return t[a].exports;var n=t[a]={i:a,l:!1,exports:{}};return e[a].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,a){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(r.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(a,n,function(t){return e[t]}.bind(null,n));return a},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=2)}([function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(3)),i=r(7),o=r(5),s=r(11);t.validatorSymbol=Symbol("validators");t.Predicate=class{constructor(e,t={validators:[]}){this.type=e,this.context=t;const r=this.type[0].toLowerCase()+this.type.slice(1);this.addValidator({message:e=>`Expected ${this.context.label||"argument"} to be of type \`${this.type}\` but received type \`${n.default(e)}\``,validator:e=>n.default[r](e)})}[o.testSymbol](e,t){const r=this.context.label?`${this.type} ${this.context.label}`:this.type;for(const{validator:a,message:n}of this.context.validators){const o=a(e);if("boolean"!=typeof o||!o)throw new i.ArgumentError(n(e,r,o),t)}}get[t.validatorSymbol](){return this.context.validators}get not(){return s.not(this)}label(e){return this.context.label=`\`${e}\``,this}is(e){return this.addValidator({message:(e,t,r)=>r?`(${t}) ${r}`:`Expected ${t} \`${e}\` to pass custom validation function`,validator:t=>e(t)})}addValidator(e){return this.context.validators.push(e),this}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=((e,t,r=5)=>{const a=[];for(const n of t)if(!e.has(n)&&(a.push(n),a.length===r))return a;return 0===a.length||a})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const a=r(0);t.Predicate=a.Predicate;const n=r(12);t.AnyPredicate=n.AnyPredicate;const i=r(5),o=r(13);t.StringPredicate=o.StringPredicate;const s=r(15);t.NumberPredicate=s.NumberPredicate;const d=r(16);t.BooleanPredicate=d.BooleanPredicate;const u=r(17);t.ArrayPredicate=u.ArrayPredicate;const l=r(19);t.ObjectPredicate=l.ObjectPredicate;const c=r(23);t.DatePredicate=c.DatePredicate;const f=r(24);t.ErrorPredicate=f.ErrorPredicate;const g=r(25);t.MapPredicate=g.MapPredicate;const p=r(26);t.WeakMapPredicate=p.WeakMapPredicate;const h=r(27);t.SetPredicate=h.SetPredicate;const y=r(28);t.WeakSetPredicate=y.WeakSetPredicate;const m=(e,t)=>t[i.testSymbol](e,m);Object.defineProperties(m,{isValid:{value:(e,t)=>{try{return m(e,t),!0}catch(e){return!1}}},create:{value:e=>t=>m(t,e)},any:{value:(...e)=>new n.AnyPredicate(e)},string:{get:()=>new o.StringPredicate},number:{get:()=>new s.NumberPredicate},boolean:{get:()=>new d.BooleanPredicate},undefined:{get:()=>new a.Predicate("undefined")},null:{get:()=>new a.Predicate("null")},nullOrUndefined:{get:()=>new a.Predicate("nullOrUndefined")},nan:{get:()=>new a.Predicate("nan")},symbol:{get:()=>new a.Predicate("symbol")},array:{get:()=>new u.ArrayPredicate},object:{get:()=>new l.ObjectPredicate},date:{get:()=>new c.DatePredicate},error:{get:()=>new f.ErrorPredicate},map:{get:()=>new g.MapPredicate},weakMap:{get:()=>new p.WeakMapPredicate},set:{get:()=>new h.SetPredicate},weakSet:{get:()=>new y.WeakSetPredicate},function:{get:()=>new a.Predicate("Function")},buffer:{get:()=>new a.Predicate("Buffer")},regExp:{get:()=>new a.Predicate("RegExp")},promise:{get:()=>new a.Predicate("Promise")},typedArray:{get:()=>new a.Predicate("TypedArray")},int8Array:{get:()=>new a.Predicate("Int8Array")},uint8Array:{get:()=>new a.Predicate("Uint8Array")},uint8ClampedArray:{get:()=>new a.Predicate("Uint8ClampedArray")},int16Array:{get:()=>new a.Predicate("Int16Array")},uint16Array:{get:()=>new a.Predicate("Uint16Array")},int32Array:{get:()=>new a.Predicate("Int32Array")},uint32Array:{get:()=>new a.Predicate("Uint32Array")},float32Array:{get:()=>new a.Predicate("Float32Array")},float64Array:{get:()=>new a.Predicate("Float64Array")},arrayBuffer:{get:()=>new a.Predicate("ArrayBuffer")},dataView:{get:()=>new a.Predicate("DataView")},iterable:{get:()=>new a.Predicate("Iterable")}}),t.default=m},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(9)),i=Object.prototype.toString,o=e=>t=>typeof t===e,s=e=>!l.nullOrUndefined(e)&&!l.nullOrUndefined(e.constructor)&&l.function_(e.constructor.isBuffer)&&e.constructor.isBuffer(e),d=e=>{const t=i.call(e).slice(8,-1);return t||null},u=e=>t=>d(t)===e;function l(e){switch(e){case null:return"null";case!0:case!1:return"boolean"}switch(typeof e){case"undefined":return"undefined";case"string":return"string";case"number":return"number";case"symbol":return"symbol"}if(l.function_(e))return"Function";if(l.observable(e))return"Observable";if(Array.isArray(e))return"Array";if(s(e))return"Buffer";const t=d(e);if(t)return t;if(e instanceof String||e instanceof Boolean||e instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return"Object"}!function(e){const t=e=>"object"==typeof e;e.undefined=o("undefined"),e.string=o("string"),e.number=o("number"),e.function_=o("function"),e.null_=(e=>null===e),e.class_=(t=>e.function_(t)&&t.toString().startsWith("class ")),e.boolean=(e=>!0===e||!1===e),e.symbol=o("symbol"),e.array=Array.isArray,e.buffer=s,e.nullOrUndefined=(t=>e.null_(t)||e.undefined(t)),e.object=(r=>!e.nullOrUndefined(r)&&(e.function_(r)||t(r))),e.iterable=(t=>!e.nullOrUndefined(t)&&e.function_(t[Symbol.iterator])),e.asyncIterable=(t=>!e.nullOrUndefined(t)&&e.function_(t[Symbol.asyncIterator])),e.generator=(t=>e.iterable(t)&&e.function_(t.next)&&e.function_(t.throw)),e.nativePromise=(e=>u("Promise")(e));e.promise=(r=>e.nativePromise(r)||(r=>!e.null_(r)&&t(r)&&e.function_(r.then)&&e.function_(r.catch))(r)),e.generatorFunction=u("GeneratorFunction"),e.asyncFunction=u("AsyncFunction"),e.boundFunction=(t=>e.function_(t)&&!t.hasOwnProperty("prototype")),e.regExp=u("RegExp"),e.date=u("Date"),e.error=u("Error"),e.map=(e=>u("Map")(e)),e.set=(e=>u("Set")(e)),e.weakMap=(e=>u("WeakMap")(e)),e.weakSet=(e=>u("WeakSet")(e)),e.int8Array=u("Int8Array"),e.uint8Array=u("Uint8Array"),e.uint8ClampedArray=u("Uint8ClampedArray"),e.int16Array=u("Int16Array"),e.uint16Array=u("Uint16Array"),e.int32Array=u("Int32Array"),e.uint32Array=u("Uint32Array"),e.float32Array=u("Float32Array"),e.float64Array=u("Float64Array"),e.arrayBuffer=u("ArrayBuffer"),e.sharedArrayBuffer=u("SharedArrayBuffer"),e.dataView=u("DataView"),e.directInstanceOf=((e,t)=>Object.getPrototypeOf(e)===t.prototype),e.urlInstance=(e=>u("URL")(e)),e.truthy=(e=>Boolean(e)),e.falsy=(e=>!e),e.nan=(e=>Number.isNaN(e));const r=new Set(["undefined","string","number","boolean","symbol"]);e.primitive=(t=>e.null_(t)||r.has(typeof t)),e.integer=(e=>Number.isInteger(e)),e.safeInteger=(e=>Number.isSafeInteger(e)),e.plainObject=(e=>{let t;return"Object"===d(e)&&(null===(t=Object.getPrototypeOf(e))||t===Object.getPrototypeOf({}))});const a=new Set(["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array"]);e.typedArray=(e=>{const t=d(e);return null!==t&&a.has(t)});e.arrayLike=(t=>!e.nullOrUndefined(t)&&!e.function_(t)&&(t=>e.safeInteger(t)&&t>-1)(t.length)),e.inRange=((t,r)=>{if(e.number(r))return t>=Math.min(0,r)&&t<=Math.max(r,0);if(e.array(r)&&2===r.length)return t>=Math.min(...r)&&t<=Math.max(...r);throw new TypeError(`Invalid range: ${JSON.stringify(r)}`)});const i=["innerHTML","ownerDocument","style","attributes","nodeValue"];e.domElement=(t=>e.object(t)&&1===t.nodeType&&e.string(t.nodeName)&&!e.plainObject(t)&&i.every(e=>e in t)),e.observable=(e=>Boolean(e&&e[n.default]&&e===e[n.default]())),e.nodeStream=(r=>!e.nullOrUndefined(r)&&t(r)&&e.function_(r.pipe)&&!e.observable(r)),e.infinite=(e=>e===1/0||e===-1/0);const l=t=>r=>e.integer(r)&&Math.abs(r%2)===t;e.even=l(0),e.odd=l(1);e.emptyArray=(t=>e.array(t)&&0===t.length),e.nonEmptyArray=(t=>e.array(t)&&t.length>0),e.emptyString=(t=>e.string(t)&&0===t.length),e.nonEmptyString=(t=>e.string(t)&&t.length>0),e.emptyStringOrWhitespace=(t=>e.emptyString(t)||(t=>e.string(t)&&!1===/\S/.test(t))(t)),e.emptyObject=(t=>e.object(t)&&!e.map(t)&&!e.set(t)&&0===Object.keys(t).length),e.nonEmptyObject=(t=>e.object(t)&&!e.map(t)&&!e.set(t)&&Object.keys(t).length>0),e.emptySet=(t=>e.set(t)&&0===t.size),e.nonEmptySet=(t=>e.set(t)&&t.size>0),e.emptyMap=(t=>e.map(t)&&0===t.size),e.nonEmptyMap=(t=>e.map(t)&&t.size>0);const c=(t,r,a)=>{if(!1===e.function_(r))throw new TypeError(`Invalid predicate: ${JSON.stringify(r)}`);if(0===a.length)throw new TypeError("Invalid number of values");return t.call(a,r)};e.any=((e,...t)=>c(Array.prototype.some,e,t)),e.all=((e,...t)=>c(Array.prototype.every,e,t))}(l||(l={})),Object.defineProperties(l,{class:{value:l.class_},function:{value:l.function_},null:{value:l.null_}}),t.default=l,e.exports=l,e.exports.default=l},function(e,t,r){(function(e){var r=200,a="__lodash_hash_undefined__",n=1,i=2,o=9007199254740991,s="[object Arguments]",d="[object Array]",u="[object AsyncFunction]",l="[object Boolean]",c="[object Date]",f="[object Error]",g="[object Function]",p="[object GeneratorFunction]",h="[object Map]",y="[object Number]",m="[object Null]",v="[object Object]",b="[object Proxy]",_="[object RegExp]",$="[object Set]",O="[object String]",x="[object Symbol]",P="[object Undefined]",E="[object ArrayBuffer]",j="[object DataView]",w=/^\[object .+?Constructor\]$/,A=/^(?:0|[1-9]\d*)$/,S={};S["[object Float32Array]"]=S["[object Float64Array]"]=S["[object Int8Array]"]=S["[object Int16Array]"]=S["[object Int32Array]"]=S["[object Uint8Array]"]=S["[object Uint8ClampedArray]"]=S["[object Uint16Array]"]=S["[object Uint32Array]"]=!0,S[s]=S[d]=S[E]=S[l]=S[j]=S[c]=S[f]=S[g]=S[h]=S[y]=S[v]=S[_]=S[$]=S[O]=S["[object WeakMap]"]=!1;var V="object"==typeof global&&global&&global.Object===Object&&global,M="object"==typeof self&&self&&self.Object===Object&&self,z=V||M||Function("return this")(),k="object"==typeof t&&t&&!t.nodeType&&t,N=k&&"object"==typeof e&&e&&!e.nodeType&&e,I=N&&N.exports===k,J=I&&V.process,T=function(){try{return J&&J.binding&&J.binding("util")}catch(e){}}(),U=T&&T.isTypedArray;function D(e,t){for(var r=-1,a=null==e?0:e.length;++r<a;)if(t(e[r],r,e))return!0;return!1}function W(e,t){return e.has(t)}function B(e){var t=-1,r=Array(e.size);return e.forEach(function(e,a){r[++t]=[a,e]}),r}function F(e){var t=-1,r=Array(e.size);return e.forEach(function(e){r[++t]=e}),r}var q=Array.prototype,L=Function.prototype,R=Object.prototype,C=z["__core-js_shared__"],K=L.toString,G=R.hasOwnProperty,H=function(){var e=/[^.]+$/.exec(C&&C.keys&&C.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),Q=R.toString,X=RegExp("^"+K.call(G).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Y=I?z.Buffer:void 0,Z=z.Symbol,ee=z.Uint8Array,te=R.propertyIsEnumerable,re=q.splice,ae=Z?Z.toStringTag:void 0,ne=Object.getOwnPropertySymbols,ie=Y?Y.isBuffer:void 0,oe=function(e,t){return function(r){return e(t(r))}}(Object.keys,Object),se=Ie(z,"DataView"),de=Ie(z,"Map"),ue=Ie(z,"Promise"),le=Ie(z,"Set"),ce=Ie(z,"WeakMap"),fe=Ie(Object,"create"),ge=De(se),pe=De(de),he=De(ue),ye=De(le),me=De(ce),ve=Z?Z.prototype:void 0,be=ve?ve.valueOf:void 0;function _e(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}function $e(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}function Oe(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}function xe(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new Oe;++t<r;)this.add(e[t])}function Pe(e){var t=this.__data__=new $e(e);this.size=t.size}function Ee(e,t){var r=Fe(e),a=!r&&Be(e),n=!r&&!a&&qe(e),i=!r&&!a&&!n&&Ge(e),o=r||a||n||i,s=o?function(e,t){for(var r=-1,a=Array(e);++r<e;)a[r]=t(r);return a}(e.length,String):[],d=s.length;for(var u in e)!t&&!G.call(e,u)||o&&("length"==u||n&&("offset"==u||"parent"==u)||i&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||Ue(u,d))||s.push(u);return s}function je(e,t){for(var r=e.length;r--;)if(We(e[r][0],t))return r;return-1}function we(e){return null==e?void 0===e?P:m:ae&&ae in Object(e)?function(e){var t=G.call(e,ae),r=e[ae];try{e[ae]=void 0;var a=!0}catch(e){}var n=Q.call(e);a&&(t?e[ae]=r:delete e[ae]);return n}(e):function(e){return Q.call(e)}(e)}function Ae(e){return Ke(e)&&we(e)==s}function Se(e,t,r,a,o){return e===t||(null==e||null==t||!Ke(e)&&!Ke(t)?e!=e&&t!=t:function(e,t,r,a,o,u){var g=Fe(e),p=Fe(t),m=g?d:Te(e),b=p?d:Te(t),P=(m=m==s?v:m)==v,w=(b=b==s?v:b)==v,A=m==b;if(A&&qe(e)){if(!qe(t))return!1;g=!0,P=!1}if(A&&!P)return u||(u=new Pe),g||Ge(e)?ze(e,t,r,a,o,u):function(e,t,r,a,o,s,d){switch(r){case j:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case E:return!(e.byteLength!=t.byteLength||!s(new ee(e),new ee(t)));case l:case c:case y:return We(+e,+t);case f:return e.name==t.name&&e.message==t.message;case _:case O:return e==t+"";case h:var u=B;case $:var g=a&n;if(u||(u=F),e.size!=t.size&&!g)return!1;var p=d.get(e);if(p)return p==t;a|=i,d.set(e,t);var m=ze(u(e),u(t),a,o,s,d);return d.delete(e),m;case x:if(be)return be.call(e)==be.call(t)}return!1}(e,t,m,r,a,o,u);if(!(r&n)){var S=P&&G.call(e,"__wrapped__"),V=w&&G.call(t,"__wrapped__");if(S||V){var M=S?e.value():e,z=V?t.value():t;return u||(u=new Pe),o(M,z,r,a,u)}}if(!A)return!1;return u||(u=new Pe),function(e,t,r,a,i,o){var s=r&n,d=ke(e),u=d.length,l=ke(t).length;if(u!=l&&!s)return!1;for(var c=u;c--;){var f=d[c];if(!(s?f in t:G.call(t,f)))return!1}var g=o.get(e);if(g&&o.get(t))return g==t;var p=!0;o.set(e,t),o.set(t,e);for(var h=s;++c<u;){f=d[c];var y=e[f],m=t[f];if(a)var v=s?a(m,y,f,t,e,o):a(y,m,f,e,t,o);if(!(void 0===v?y===m||i(y,m,r,a,o):v)){p=!1;break}h||(h="constructor"==f)}if(p&&!h){var b=e.constructor,_=t.constructor;b!=_&&"constructor"in e&&"constructor"in t&&!("function"==typeof b&&b instanceof b&&"function"==typeof _&&_ instanceof _)&&(p=!1)}return o.delete(e),o.delete(t),p}(e,t,r,a,o,u)}(e,t,r,a,Se,o))}function Ve(e){return!(!Ce(e)||function(e){return!!H&&H in e}(e))&&(Le(e)?X:w).test(De(e))}function Me(e){if(!function(e){var t=e&&e.constructor,r="function"==typeof t&&t.prototype||R;return e===r}(e))return oe(e);var t=[];for(var r in Object(e))G.call(e,r)&&"constructor"!=r&&t.push(r);return t}function ze(e,t,r,a,o,s){var d=r&n,u=e.length,l=t.length;if(u!=l&&!(d&&l>u))return!1;var c=s.get(e);if(c&&s.get(t))return c==t;var f=-1,g=!0,p=r&i?new xe:void 0;for(s.set(e,t),s.set(t,e);++f<u;){var h=e[f],y=t[f];if(a)var m=d?a(y,h,f,t,e,s):a(h,y,f,e,t,s);if(void 0!==m){if(m)continue;g=!1;break}if(p){if(!D(t,function(e,t){if(!W(p,t)&&(h===e||o(h,e,r,a,s)))return p.push(t)})){g=!1;break}}else if(h!==y&&!o(h,y,r,a,s)){g=!1;break}}return s.delete(e),s.delete(t),g}function ke(e){return function(e,t,r){var a=t(e);return Fe(e)?a:function(e,t){for(var r=-1,a=t.length,n=e.length;++r<a;)e[n+r]=t[r];return e}(a,r(e))}(e,He,Je)}function Ne(e,t){var r=e.__data__;return function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}(t)?r["string"==typeof t?"string":"hash"]:r.map}function Ie(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return Ve(r)?r:void 0}_e.prototype.clear=function(){this.__data__=fe?fe(null):{},this.size=0},_e.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},_e.prototype.get=function(e){var t=this.__data__;if(fe){var r=t[e];return r===a?void 0:r}return G.call(t,e)?t[e]:void 0},_e.prototype.has=function(e){var t=this.__data__;return fe?void 0!==t[e]:G.call(t,e)},_e.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=fe&&void 0===t?a:t,this},$e.prototype.clear=function(){this.__data__=[],this.size=0},$e.prototype.delete=function(e){var t=this.__data__,r=je(t,e);return!(r<0||(r==t.length-1?t.pop():re.call(t,r,1),--this.size,0))},$e.prototype.get=function(e){var t=this.__data__,r=je(t,e);return r<0?void 0:t[r][1]},$e.prototype.has=function(e){return je(this.__data__,e)>-1},$e.prototype.set=function(e,t){var r=this.__data__,a=je(r,e);return a<0?(++this.size,r.push([e,t])):r[a][1]=t,this},Oe.prototype.clear=function(){this.size=0,this.__data__={hash:new _e,map:new(de||$e),string:new _e}},Oe.prototype.delete=function(e){var t=Ne(this,e).delete(e);return this.size-=t?1:0,t},Oe.prototype.get=function(e){return Ne(this,e).get(e)},Oe.prototype.has=function(e){return Ne(this,e).has(e)},Oe.prototype.set=function(e,t){var r=Ne(this,e),a=r.size;return r.set(e,t),this.size+=r.size==a?0:1,this},xe.prototype.add=xe.prototype.push=function(e){return this.__data__.set(e,a),this},xe.prototype.has=function(e){return this.__data__.has(e)},Pe.prototype.clear=function(){this.__data__=new $e,this.size=0},Pe.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Pe.prototype.get=function(e){return this.__data__.get(e)},Pe.prototype.has=function(e){return this.__data__.has(e)},Pe.prototype.set=function(e,t){var a=this.__data__;if(a instanceof $e){var n=a.__data__;if(!de||n.length<r-1)return n.push([e,t]),this.size=++a.size,this;a=this.__data__=new Oe(n)}return a.set(e,t),this.size=a.size,this};var Je=ne?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var r=-1,a=null==e?0:e.length,n=0,i=[];++r<a;){var o=e[r];t(o,r,e)&&(i[n++]=o)}return i}(ne(e),function(t){return te.call(e,t)}))}:function(){return[]},Te=we;function Ue(e,t){return!!(t=null==t?o:t)&&("number"==typeof e||A.test(e))&&e>-1&&e%1==0&&e<t}function De(e){if(null!=e){try{return K.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function We(e,t){return e===t||e!=e&&t!=t}(se&&Te(new se(new ArrayBuffer(1)))!=j||de&&Te(new de)!=h||ue&&"[object Promise]"!=Te(ue.resolve())||le&&Te(new le)!=$||ce&&"[object WeakMap]"!=Te(new ce))&&(Te=function(e){var t=we(e),r=t==v?e.constructor:void 0,a=r?De(r):"";if(a)switch(a){case ge:return j;case pe:return h;case he:return"[object Promise]";case ye:return $;case me:return"[object WeakMap]"}return t});var Be=Ae(function(){return arguments}())?Ae:function(e){return Ke(e)&&G.call(e,"callee")&&!te.call(e,"callee")},Fe=Array.isArray;var qe=ie||function(){return!1};function Le(e){if(!Ce(e))return!1;var t=we(e);return t==g||t==p||t==u||t==b}function Re(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=o}function Ce(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Ke(e){return null!=e&&"object"==typeof e}var Ge=U?function(e){return function(t){return e(t)}}(U):function(e){return Ke(e)&&Re(e.length)&&!!S[we(e)]};function He(e){return function(e){return null!=e&&Re(e.length)&&!Le(e)}(e)?Ee(e):Me(e)}e.exports=function(e,t){return Se(e,t)}}).call(this,r(18)(e))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.testSymbol=Symbol("test")},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(2));t.default=((e,t)=>{try{for(const r of e)n.default(r,t);return!0}catch(e){return e.message}})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.ArgumentError=class extends Error{constructor(e,t){super(e),Error.captureStackTrace(this,t),this.name="ArgumentError"}}},function(e,t,r){"use strict";function a(e){var t,r=e.Symbol;return"function"==typeof r?r.observable?t=r.observable:(t=r("observable"),r.observable=t):t="@@observable",t}r.d(t,"a",function(){return a})},function(e,t,r){"use strict";r.r(t),function(e){var a,n=r(8);a="undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:e;var i=Object(n.a)(a);t.default=i}.call(this,r(10)(e))},function(e,t){e.exports=function(e){if(!e.webpackPolyfill){var t=Object.create(e);t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),Object.defineProperty(t,"exports",{enumerable:!0}),t.webpackPolyfill=1}return t}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const a=r(0);t.not=(e=>{const t=e.addValidator;return e.addValidator=(r=>{const n=r.validator,i=r.message;return r.message=((e,t)=>`[NOT] ${i(e,t)}`),r.validator=(e=>!n(e)),e[a.validatorSymbol].push(r),e.addValidator=t,e}),e})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const a=r(7),n=r(5);t.AnyPredicate=class{constructor(e){this.predicates=e}[n.testSymbol](e,t){const r=["Any predicate failed with the following errors:"];for(const a of this.predicates)try{return void t(e,a)}catch(e){r.push(`- ${e.message}`)}throw new a.ArgumentError(r.join("\n"),t)}}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(14)),i=r(0);t.StringPredicate=class extends i.Predicate{constructor(e){super("string",e)}length(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have length \`${e}\`, got \`${t}\``,validator:t=>t.length===e})}minLength(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a minimum length of \`${e}\`, got \`${t}\``,validator:t=>t.length>=e})}maxLength(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a maximum length of \`${e}\`, got \`${t}\``,validator:t=>t.length<=e})}matches(e){return this.addValidator({message:(t,r)=>`Expected ${r} to match \`${e}\`, got \`${t}\``,validator:t=>e.test(t)})}startsWith(e){return this.addValidator({message:(t,r)=>`Expected ${r} to start with \`${e}\`, got \`${t}\``,validator:t=>t.startsWith(e)})}endsWith(e){return this.addValidator({message:(t,r)=>`Expected ${r} to end with \`${e}\`, got \`${t}\``,validator:t=>t.endsWith(e)})}includes(e){return this.addValidator({message:(t,r)=>`Expected ${r} to include \`${e}\`, got \`${t}\``,validator:t=>t.includes(e)})}oneOf(e){return this.addValidator({message:(t,r)=>{let a=JSON.stringify(e);if(e.length>10){const t=e.length-10;a=JSON.stringify(e.slice(0,10)).replace(/]$/,`,…+${t} more]`)}return`Expected ${r} to be one of \`${a}\`, got \`${t}\``},validator:t=>e.includes(t)})}get empty(){return this.addValidator({message:(e,t)=>`Expected ${t} to be empty, got \`${e}\``,validator:e=>""===e})}get nonEmpty(){return this.addValidator({message:(e,t)=>`Expected ${t} to not be empty`,validator:e=>""!==e})}equals(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be equal to \`${e}\`, got \`${t}\``,validator:t=>t===e})}get alphanumeric(){return this.addValidator({message:(e,t)=>`Expected ${t} to be alphanumeric, got \`${e}\``,validator:e=>/^[a-z\d]+$/i.test(e)})}get alphabetical(){return this.addValidator({message:(e,t)=>`Expected ${t} to be alphabetical, got \`${e}\``,validator:e=>/^[a-z]+$/gi.test(e)})}get numeric(){return this.addValidator({message:(e,t)=>`Expected ${t} to be numeric, got \`${e}\``,validator:e=>/^\d+$/i.test(e)})}get date(){return this.addValidator({message:(e,t)=>`Expected ${t} to be a date, got \`${e}\``,validator:e=>n.default(e)})}get lowercase(){return this.addValidator({message:(e,t)=>`Expected ${t} to be lowercase, got \`${e}\``,validator:e=>""!==e.trim()&&e===e.toLowerCase()})}get uppercase(){return this.addValidator({message:(e,t)=>`Expected ${t} to be uppercase, got \`${e}\``,validator:e=>""!==e.trim()&&e===e.toUpperCase()})}}},function(e,t,r){"use strict";e.exports=function(e){return!isNaN(Date.parse(e))}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(3)),i=r(0);t.NumberPredicate=class extends i.Predicate{constructor(e){super("number",e)}inRange(e,t){return this.addValidator({message:(r,a)=>`Expected ${a} to be in range [${e}..${t}], got ${r}`,validator:r=>n.default.inRange(r,[e,t])})}greaterThan(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be greater than ${e}, got ${t}`,validator:t=>t>e})}greaterThanOrEqual(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be greater than or equal to ${e}, got ${t}`,validator:t=>t>=e})}lessThan(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be less than ${e}, got ${t}`,validator:t=>t<e})}lessThanOrEqual(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be less than or equal to ${e}, got ${t}`,validator:t=>t<=e})}equal(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be equal to ${e}, got ${t}`,validator:t=>t===e})}get integer(){return this.addValidator({message:(e,t)=>`Expected ${t} to be an integer, got ${e}`,validator:e=>n.default.integer(e)})}get finite(){return this.addValidator({message:(e,t)=>`Expected ${t} to be finite, got ${e}`,validator:e=>!n.default.infinite(e)})}get infinite(){return this.addValidator({message:(e,t)=>`Expected ${t} to be infinite, got ${e}`,validator:e=>n.default.infinite(e)})}get positive(){return this.addValidator({message:(e,t)=>`Expected ${t} to be positive, got ${e}`,validator:e=>e>0})}get negative(){return this.addValidator({message:(e,t)=>`Expected ${t} to be negative, got ${e}`,validator:e=>e<0})}get integerOrInfinite(){return this.addValidator({message:(e,t)=>`Expected ${t} to be an integer or infinite, got ${e}`,validator:e=>n.default.integer(e)||n.default.infinite(e)})}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const a=r(0);t.BooleanPredicate=class extends a.Predicate{constructor(e){super("boolean",e)}get true(){return this.addValidator({message:(e,t)=>`Expected ${t} to be true, got ${e}`,validator:e=>!0===e})}get false(){return this.addValidator({message:(e,t)=>`Expected ${t} to be false, got ${e}`,validator:e=>!1===e})}}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(4)),i=a(r(2)),o=r(0);t.ArrayPredicate=class extends o.Predicate{constructor(e){super("array",e)}length(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have length \`${e}\`, got \`${t.length}\``,validator:t=>t.length===e})}minLength(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a minimum length of \`${e}\`, got \`${t.length}\``,validator:t=>t.length>=e})}maxLength(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a maximum length of \`${e}\`, got \`${t.length}\``,validator:t=>t.length<=e})}startsWith(e){return this.addValidator({message:(t,r)=>`Expected ${r} to start with \`${e}\`, got \`${t[0]}\``,validator:t=>t[0]===e})}endsWith(e){return this.addValidator({message:(t,r)=>`Expected ${r} to end with \`${e}\`, got \`${t[t.length-1]}\``,validator:t=>t[t.length-1]===e})}includes(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to include all elements of \`${JSON.stringify(e)}\`, got \`${JSON.stringify(t)}\``,validator:t=>e.every(e=>-1!==t.indexOf(e))})}includesAny(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to include any element of \`${JSON.stringify(e)}\`, got \`${JSON.stringify(t)}\``,validator:t=>e.some(e=>-1!==t.indexOf(e))})}get empty(){return this.addValidator({message:(e,t)=>`Expected ${t} to be empty, got \`${JSON.stringify(e)}\``,validator:e=>0===e.length})}get nonEmpty(){return this.addValidator({message:(e,t)=>`Expected ${t} to not be empty`,validator:e=>e.length>0})}deepEqual(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be deeply equal to \`${JSON.stringify(e)}\`, got \`${JSON.stringify(t)}\``,validator:t=>n.default(t,e)})}ofType(e){let t;return this.addValidator({message:(e,r)=>`(${r}) ${t}`,validator:r=>{try{for(const t of r)i.default(t,e);return!0}catch(e){return t=e.message,!1}}})}}},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(3)),i=a(r(20)),o=a(r(4)),s=r(0),d=a(r(1)),u=a(r(6)),l=a(r(22));t.ObjectPredicate=class extends s.Predicate{constructor(e){super("object",e)}get plain(){return this.addValidator({message:(e,t)=>`Expected ${t} to be a plain object`,validator:e=>n.default.plainObject(e)})}get empty(){return this.addValidator({message:(e,t)=>`Expected ${t} to be empty, got \`${JSON.stringify(e)}\``,validator:e=>0===Object.keys(e).length})}get nonEmpty(){return this.addValidator({message:(e,t)=>`Expected ${t} to not be empty`,validator:e=>Object.keys(e).length>0})}valuesOfType(e){return this.addValidator({message:(e,t,r)=>`(${t}) ${r}`,validator:t=>{const r=Object.keys(t).map(e=>t[e]);return u.default(r,e)}})}deepValuesOfType(e){return this.addValidator({message:(e,t,r)=>`(${t}) ${r}`,validator:t=>l.default(t,e)})}deepEqual(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be deeply equal to \`${JSON.stringify(e)}\`, got \`${JSON.stringify(t)}\``,validator:t=>o.default(t,e)})}instanceOf(e){return this.addValidator({message:(t,r)=>{let a=t.constructor.name;return a&&"Object"!==a||(a=JSON.stringify(t)),`Expected ${r} \`${a}\` to be of type \`${e.name}\``},validator:t=>t instanceof e})}hasKeys(...e){return this.addValidator({message:(e,t,r)=>`Expected ${t} to have keys \`${JSON.stringify(r)}\``,validator:t=>d.default({has:e=>i.default.has(t,e)},e)})}hasAnyKeys(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to have any key of \`${JSON.stringify(e)}\``,validator:t=>e.some(e=>i.default.has(t,e))})}}},function(e,t,r){"use strict";const a=r(21);function n(e){const t=e.split("."),r=[];for(let e=0;e<t.length;e++){let a=t[e];for(;"\\"===a[a.length-1]&&void 0!==t[e+1];)a=a.slice(0,-1)+".",a+=t[++e];r.push(a)}return r}e.exports={get(e,t,r){if(!a(e)||"string"!=typeof t)return void 0===r?e:r;const i=n(t);for(let t=0;t<i.length;t++){if(!Object.prototype.propertyIsEnumerable.call(e,i[t]))return r;if(void 0===(e=e[i[t]])||null===e){if(t!==i.length-1)return r;break}}return e},set(e,t,r){if(!a(e)||"string"!=typeof t)return e;const i=e,o=n(t);for(let t=0;t<o.length;t++){const n=o[t];a(e[n])||(e[n]={}),t===o.length-1&&(e[n]=r),e=e[n]}return i},delete(e,t){if(!a(e)||"string"!=typeof t)return;const r=n(t);for(let t=0;t<r.length;t++){const n=r[t];if(t===r.length-1)return void delete e[n];if(e=e[n],!a(e))return}},has(e,t){if(!a(e)||"string"!=typeof t)return!1;const r=n(t);for(let t=0;t<r.length;t++){if(!a(e))return!1;if(!(r[t]in e))return!1;e=e[r[t]]}return!0}}},function(e,t,r){"use strict";e.exports=function(e){var t=typeof e;return null!==e&&("object"===t||"function"===t)}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(3)),i=a(r(2)),o=(e,t)=>n.default.plainObject(e)?Object.keys(e).every(r=>o(e[r],t)):(i.default(e,t),!0);t.default=((e,t)=>{try{return o(e,t)}catch(e){return e.message}})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const a=r(0);t.DatePredicate=class extends a.Predicate{constructor(e){super("date",e)}before(e){return this.addValidator({message:(t,r)=>`Expected ${r} ${t.toISOString()} to be before ${e.toISOString()}`,validator:t=>t.getTime()<e.getTime()})}after(e){return this.addValidator({message:(t,r)=>`Expected ${r} ${t.toISOString()} to be after ${e.toISOString()}`,validator:t=>t.getTime()>e.getTime()})}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const a=r(0);t.ErrorPredicate=class extends a.Predicate{constructor(e){super("error",e)}name(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have name \`${e}\`, got \`${t.name}\``,validator:t=>t.name===e})}message(e){return this.addValidator({message:(t,r)=>`Expected ${r} message to be \`${e}\`, got \`${t.message}\``,validator:t=>t.message===e})}messageIncludes(e){return this.addValidator({message:(t,r)=>`Expected ${r} message to include \`${e}\`, got \`${t.message}\``,validator:t=>t.message.includes(e)})}hasKeys(...e){return this.addValidator({message:(t,r)=>`Expected ${r} message to have keys \`${e.join("`, `")}\``,validator:t=>e.every(e=>t.hasOwnProperty(e))})}instanceOf(e){return this.addValidator({message:(t,r)=>`Expected ${r} \`${t.name}\` to be of type \`${e.name}\``,validator:t=>t instanceof e})}get typeError(){return this.instanceOf(TypeError)}get evalError(){return this.instanceOf(EvalError)}get rangeError(){return this.instanceOf(RangeError)}get referenceError(){return this.instanceOf(ReferenceError)}get syntaxError(){return this.instanceOf(SyntaxError)}get uriError(){return this.instanceOf(URIError)}}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(4)),i=r(0),o=a(r(1)),s=a(r(6));t.MapPredicate=class extends i.Predicate{constructor(e){super("Map",e)}size(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have size \`${e}\`, got \`${t.size}\``,validator:t=>t.size===e})}minSize(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a minimum size of \`${e}\`, got \`${t.size}\``,validator:t=>t.size>=e})}maxSize(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a maximum size of \`${e}\`, got \`${t.size}\``,validator:t=>t.size<=e})}hasKeys(...e){return this.addValidator({message:(e,t,r)=>`Expected ${t} to have keys \`${JSON.stringify(r)}\``,validator:t=>o.default(t,e)})}hasAnyKeys(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to have any key of \`${JSON.stringify(e)}\``,validator:t=>e.some(e=>t.has(e))})}hasValues(...e){return this.addValidator({message:(e,t,r)=>`Expected ${t} to have values \`${JSON.stringify(r)}\``,validator:t=>o.default(new Set(t.values()),e)})}hasAnyValues(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to have any value of \`${JSON.stringify(e)}\``,validator:t=>{const r=new Set(t.values());return e.some(e=>r.has(e))}})}keysOfType(e){return this.addValidator({message:(e,t,r)=>`(${t}) ${r}`,validator:t=>s.default(t.keys(),e)})}valuesOfType(e){return this.addValidator({message:(e,t,r)=>`(${t}) ${r}`,validator:t=>s.default(t.values(),e)})}get empty(){return this.addValidator({message:(e,t)=>`Expected ${t} to be empty, got \`${JSON.stringify(Array.from(e))}\``,validator:e=>0===e.size})}get nonEmpty(){return this.addValidator({message:(e,t)=>`Expected ${t} to not be empty`,validator:e=>e.size>0})}deepEqual(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be deeply equal to \`${JSON.stringify(Array.from(e))}\`, got \`${JSON.stringify(Array.from(t))}\``,validator:t=>n.default(t,e)})}}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=r(0),i=a(r(1));t.WeakMapPredicate=class extends n.Predicate{constructor(e){super("WeakMap",e)}hasKeys(...e){return this.addValidator({message:(e,t,r)=>`Expected ${t} to have keys \`${JSON.stringify(r)}\``,validator:t=>i.default(t,e)})}hasAnyKeys(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to have any key of \`${JSON.stringify(e)}\``,validator:t=>e.some(e=>t.has(e))})}}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(4)),i=r(0),o=a(r(1)),s=a(r(6));t.SetPredicate=class extends i.Predicate{constructor(e){super("Set",e)}size(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have size \`${e}\`, got \`${t.size}\``,validator:t=>t.size===e})}minSize(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a minimum size of \`${e}\`, got \`${t.size}\``,validator:t=>t.size>=e})}maxSize(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a maximum size of \`${e}\`, got \`${t.size}\``,validator:t=>t.size<=e})}has(...e){return this.addValidator({message:(e,t,r)=>`Expected ${t} to have items \`${JSON.stringify(r)}\``,validator:t=>o.default(t,e)})}hasAny(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to have any item of \`${JSON.stringify(e)}\``,validator:t=>e.some(e=>t.has(e))})}ofType(e){return this.addValidator({message:(e,t,r)=>`(${t}) ${r}`,validator:t=>s.default(t,e)})}get empty(){return this.addValidator({message:(e,t)=>`Expected ${t} to be empty, got \`${JSON.stringify(Array.from(e))}\``,validator:e=>0===e.size})}get nonEmpty(){return this.addValidator({message:(e,t)=>`Expected ${t} to not be empty`,validator:e=>e.size>0})}deepEqual(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be deeply equal to \`${JSON.stringify(Array.from(e))}\`, got \`${JSON.stringify(Array.from(t))}\``,validator:t=>n.default(t,e)})}}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=r(0),i=a(r(1));t.WeakSetPredicate=class extends n.Predicate{constructor(e){super("WeakSet",e)}has(...e){return this.addValidator({message:(e,t,r)=>`Expected ${t} to have items \`${JSON.stringify(r)}\``,validator:t=>i.default(t,e)})}hasAny(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to have any item of \`${JSON.stringify(e)}\``,validator:t=>e.some(e=>t.has(e))})}}}]);const __export__=module.exports.default;module.exports=__export__,module.exports.default=__export__;
module.exports=function(e){var t={};function r(a){if(t[a])return t[a].exports;var n=t[a]={i:a,l:!1,exports:{}};return e[a].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,a){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(r.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(a,n,function(t){return e[t]}.bind(null,n));return a},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=2)}([function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(3)),i=r(7),o=r(5),s=r(15);t.validatorSymbol=Symbol("validators");t.Predicate=class{constructor(e,t={validators:[]}){this.type=e,this.context=t;const r=this.type[0].toLowerCase()+this.type.slice(1);this.addValidator({message:(e,t)=>`Expected ${t&&t.substring(this.type.length+1)||"argument"} to be of type \`${this.type}\` but received type \`${n.default(e)}\``,validator:e=>n.default[r](e)})}[o.testSymbol](e,t,r){const a=r?`${this.type} \`${r}\``:this.type;for(const{validator:r,message:n}of this.context.validators){const o=r(e);if("boolean"!=typeof o||!o)throw new i.ArgumentError(n(e,a,o),t)}}get[t.validatorSymbol](){return this.context.validators}get not(){return s.not(this)}is(e){return this.addValidator({message:(e,t,r)=>r?`(${t}) ${r}`:`Expected ${t} \`${e}\` to pass custom validation function`,validator:t=>e(t)})}addValidator(e){return this.context.validators.push(e),this}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=((e,t,r=5)=>{const a=[];for(const n of t)if(!e.has(n)&&(a.push(n),a.length===r))return a;return 0===a.length||a})},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(8)),i=r(9),o=r(0);t.Predicate=o.Predicate;const s=r(16);t.AnyPredicate=s.AnyPredicate;const u=r(5),d=r(17);t.StringPredicate=d.StringPredicate;const l=r(19);t.NumberPredicate=l.NumberPredicate;const c=r(20);t.BooleanPredicate=c.BooleanPredicate;const f=r(21);t.ArrayPredicate=f.ArrayPredicate;const p=r(23);t.ObjectPredicate=p.ObjectPredicate;const g=r(27);t.DatePredicate=g.DatePredicate;const h=r(28);t.ErrorPredicate=h.ErrorPredicate;const y=r(29);t.MapPredicate=y.MapPredicate;const m=r(30);t.WeakMapPredicate=m.WeakMapPredicate;const v=r(31);t.SetPredicate=v.SetPredicate;const b=r(32);t.WeakSetPredicate=b.WeakSetPredicate;const _=(e,t,r)=>{let a=t,o=r;return u.isPredicate(t)&&(a=i.inferLabel(n.default()),o=t),o[u.testSymbol](e,_,a)};Object.defineProperties(_,{isValid:{value:(e,t)=>{try{return _(e,t),!0}catch(e){return!1}}},create:{value:(e,t)=>r=>u.isPredicate(e)?_(r,i.inferLabel(n.default()),e):_(r,e,t)},any:{value:(...e)=>new s.AnyPredicate(e)},string:{get:()=>new d.StringPredicate},number:{get:()=>new l.NumberPredicate},boolean:{get:()=>new c.BooleanPredicate},undefined:{get:()=>new o.Predicate("undefined")},null:{get:()=>new o.Predicate("null")},nullOrUndefined:{get:()=>new o.Predicate("nullOrUndefined")},nan:{get:()=>new o.Predicate("nan")},symbol:{get:()=>new o.Predicate("symbol")},array:{get:()=>new f.ArrayPredicate},object:{get:()=>new p.ObjectPredicate},date:{get:()=>new g.DatePredicate},error:{get:()=>new h.ErrorPredicate},map:{get:()=>new y.MapPredicate},weakMap:{get:()=>new m.WeakMapPredicate},set:{get:()=>new v.SetPredicate},weakSet:{get:()=>new b.WeakSetPredicate},function:{get:()=>new o.Predicate("Function")},buffer:{get:()=>new o.Predicate("Buffer")},regExp:{get:()=>new o.Predicate("RegExp")},promise:{get:()=>new o.Predicate("Promise")},typedArray:{get:()=>new o.Predicate("TypedArray")},int8Array:{get:()=>new o.Predicate("Int8Array")},uint8Array:{get:()=>new o.Predicate("Uint8Array")},uint8ClampedArray:{get:()=>new o.Predicate("Uint8ClampedArray")},int16Array:{get:()=>new o.Predicate("Int16Array")},uint16Array:{get:()=>new o.Predicate("Uint16Array")},int32Array:{get:()=>new o.Predicate("Int32Array")},uint32Array:{get:()=>new o.Predicate("Uint32Array")},float32Array:{get:()=>new o.Predicate("Float32Array")},float64Array:{get:()=>new o.Predicate("Float64Array")},arrayBuffer:{get:()=>new o.Predicate("ArrayBuffer")},dataView:{get:()=>new o.Predicate("DataView")},iterable:{get:()=>new o.Predicate("Iterable")}}),t.default=_},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const a="undefined"==typeof URL?r(14).URL:URL,n=Object.prototype.toString,i=e=>t=>typeof t===e,o=e=>!d.nullOrUndefined(e)&&!d.nullOrUndefined(e.constructor)&&d.function_(e.constructor.isBuffer)&&e.constructor.isBuffer(e),s=e=>{const t=n.call(e).slice(8,-1);return t||null},u=e=>t=>s(t)===e;function d(e){switch(e){case null:return"null";case!0:case!1:return"boolean"}switch(typeof e){case"undefined":return"undefined";case"string":return"string";case"number":return"number";case"symbol":return"symbol"}if(d.function_(e))return"Function";if(d.observable(e))return"Observable";if(Array.isArray(e))return"Array";if(o(e))return"Buffer";const t=s(e);if(t)return t;if(e instanceof String||e instanceof Boolean||e instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return"Object"}!function(e){const t=e=>"object"==typeof e;e.undefined=i("undefined"),e.string=i("string"),e.number=i("number"),e.function_=i("function"),e.null_=(e=>null===e),e.class_=(t=>e.function_(t)&&t.toString().startsWith("class ")),e.boolean=(e=>!0===e||!1===e),e.symbol=i("symbol"),e.numericString=(t=>e.string(t)&&t.length>0&&!Number.isNaN(Number(t))),e.array=Array.isArray,e.buffer=o,e.nullOrUndefined=(t=>e.null_(t)||e.undefined(t)),e.object=(r=>!e.nullOrUndefined(r)&&(e.function_(r)||t(r))),e.iterable=(t=>!e.nullOrUndefined(t)&&e.function_(t[Symbol.iterator])),e.asyncIterable=(t=>!e.nullOrUndefined(t)&&e.function_(t[Symbol.asyncIterator])),e.generator=(t=>e.iterable(t)&&e.function_(t.next)&&e.function_(t.throw)),e.nativePromise=(e=>u("Promise")(e));e.promise=(r=>e.nativePromise(r)||(r=>!e.null_(r)&&t(r)&&e.function_(r.then)&&e.function_(r.catch))(r)),e.generatorFunction=u("GeneratorFunction"),e.asyncFunction=u("AsyncFunction"),e.boundFunction=(t=>e.function_(t)&&!t.hasOwnProperty("prototype")),e.regExp=u("RegExp"),e.date=u("Date"),e.error=u("Error"),e.map=(e=>u("Map")(e)),e.set=(e=>u("Set")(e)),e.weakMap=(e=>u("WeakMap")(e)),e.weakSet=(e=>u("WeakSet")(e)),e.int8Array=u("Int8Array"),e.uint8Array=u("Uint8Array"),e.uint8ClampedArray=u("Uint8ClampedArray"),e.int16Array=u("Int16Array"),e.uint16Array=u("Uint16Array"),e.int32Array=u("Int32Array"),e.uint32Array=u("Uint32Array"),e.float32Array=u("Float32Array"),e.float64Array=u("Float64Array"),e.arrayBuffer=u("ArrayBuffer"),e.sharedArrayBuffer=u("SharedArrayBuffer"),e.dataView=u("DataView"),e.directInstanceOf=((e,t)=>Object.getPrototypeOf(e)===t.prototype),e.urlInstance=(e=>u("URL")(e)),e.urlString=(t=>{if(!e.string(t))return!1;try{return new a(t),!0}catch(e){return!1}}),e.truthy=(e=>Boolean(e)),e.falsy=(e=>!e),e.nan=(e=>Number.isNaN(e));const r=new Set(["undefined","string","number","boolean","symbol"]);e.primitive=(t=>e.null_(t)||r.has(typeof t)),e.integer=(e=>Number.isInteger(e)),e.safeInteger=(e=>Number.isSafeInteger(e)),e.plainObject=(e=>{let t;return"Object"===s(e)&&(null===(t=Object.getPrototypeOf(e))||t===Object.getPrototypeOf({}))});const n=new Set(["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array"]);e.typedArray=(e=>{const t=s(e);return null!==t&&n.has(t)});e.arrayLike=(t=>!e.nullOrUndefined(t)&&!e.function_(t)&&(t=>e.safeInteger(t)&&t>-1)(t.length)),e.inRange=((t,r)=>{if(e.number(r))return t>=Math.min(0,r)&&t<=Math.max(r,0);if(e.array(r)&&2===r.length)return t>=Math.min(...r)&&t<=Math.max(...r);throw new TypeError(`Invalid range: ${JSON.stringify(r)}`)});const d=["innerHTML","ownerDocument","style","attributes","nodeValue"];e.domElement=(t=>e.object(t)&&1===t.nodeType&&e.string(t.nodeName)&&!e.plainObject(t)&&d.every(e=>e in t)),e.observable=(e=>!!e&&(!(!e[Symbol.observable]||e!==e[Symbol.observable]())||!(!e["@@observable"]||e!==e["@@observable"]()))),e.nodeStream=(r=>!e.nullOrUndefined(r)&&t(r)&&e.function_(r.pipe)&&!e.observable(r)),e.infinite=(e=>e===1/0||e===-1/0);const l=t=>r=>e.integer(r)&&Math.abs(r%2)===t;e.even=l(0),e.odd=l(1);e.emptyArray=(t=>e.array(t)&&0===t.length),e.nonEmptyArray=(t=>e.array(t)&&t.length>0),e.emptyString=(t=>e.string(t)&&0===t.length),e.nonEmptyString=(t=>e.string(t)&&t.length>0),e.emptyStringOrWhitespace=(t=>e.emptyString(t)||(t=>e.string(t)&&!1===/\S/.test(t))(t)),e.emptyObject=(t=>e.object(t)&&!e.map(t)&&!e.set(t)&&0===Object.keys(t).length),e.nonEmptyObject=(t=>e.object(t)&&!e.map(t)&&!e.set(t)&&Object.keys(t).length>0),e.emptySet=(t=>e.set(t)&&0===t.size),e.nonEmptySet=(t=>e.set(t)&&t.size>0),e.emptyMap=(t=>e.map(t)&&0===t.size),e.nonEmptyMap=(t=>e.map(t)&&t.size>0);const c=(t,r,a)=>{if(!1===e.function_(r))throw new TypeError(`Invalid predicate: ${JSON.stringify(r)}`);if(0===a.length)throw new TypeError("Invalid number of values");return t.call(a,r)};e.any=((e,...t)=>c(Array.prototype.some,e,t)),e.all=((e,...t)=>c(Array.prototype.every,e,t))}(d||(d={})),Object.defineProperties(d,{class:{value:d.class_},function:{value:d.function_},null:{value:d.null_}}),t.default=d,e.exports=d,e.exports.default=d},function(e,t,r){(function(e){var r=200,a="__lodash_hash_undefined__",n=1,i=2,o=9007199254740991,s="[object Arguments]",u="[object Array]",d="[object AsyncFunction]",l="[object Boolean]",c="[object Date]",f="[object Error]",p="[object Function]",g="[object GeneratorFunction]",h="[object Map]",y="[object Number]",m="[object Null]",v="[object Object]",b="[object Proxy]",_="[object RegExp]",$="[object Set]",O="[object String]",x="[object Symbol]",P="[object Undefined]",E="[object ArrayBuffer]",j="[object DataView]",S=/^\[object .+?Constructor\]$/,w=/^(?:0|[1-9]\d*)$/,A={};A["[object Float32Array]"]=A["[object Float64Array]"]=A["[object Int8Array]"]=A["[object Int16Array]"]=A["[object Int32Array]"]=A["[object Uint8Array]"]=A["[object Uint8ClampedArray]"]=A["[object Uint16Array]"]=A["[object Uint32Array]"]=!0,A[s]=A[u]=A[E]=A[l]=A[j]=A[c]=A[f]=A[p]=A[h]=A[y]=A[v]=A[_]=A[$]=A[O]=A["[object WeakMap]"]=!1;var V="object"==typeof global&&global&&global.Object===Object&&global,M="object"==typeof self&&self&&self.Object===Object&&self,z=V||M||Function("return this")(),N=t&&!t.nodeType&&t,k=N&&"object"==typeof e&&e&&!e.nodeType&&e,I=k&&k.exports===N,T=I&&V.process,U=function(){try{return T&&T.binding&&T.binding("util")}catch(e){}}(),J=U&&U.isTypedArray;function D(e,t){for(var r=-1,a=null==e?0:e.length;++r<a;)if(t(e[r],r,e))return!0;return!1}function W(e){var t=-1,r=Array(e.size);return e.forEach(function(e,a){r[++t]=[a,e]}),r}function B(e){var t=-1,r=Array(e.size);return e.forEach(function(e){r[++t]=e}),r}var F,q,L,R=Array.prototype,C=Function.prototype,K=Object.prototype,G=z["__core-js_shared__"],H=C.toString,Q=K.hasOwnProperty,X=(F=/[^.]+$/.exec(G&&G.keys&&G.keys.IE_PROTO||""))?"Symbol(src)_1."+F:"",Y=K.toString,Z=RegExp("^"+H.call(Q).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ee=I?z.Buffer:void 0,te=z.Symbol,re=z.Uint8Array,ae=K.propertyIsEnumerable,ne=R.splice,ie=te?te.toStringTag:void 0,oe=Object.getOwnPropertySymbols,se=ee?ee.isBuffer:void 0,ue=(q=Object.keys,L=Object,function(e){return q(L(e))}),de=Ue(z,"DataView"),le=Ue(z,"Map"),ce=Ue(z,"Promise"),fe=Ue(z,"Set"),pe=Ue(z,"WeakMap"),ge=Ue(Object,"create"),he=Be(de),ye=Be(le),me=Be(ce),ve=Be(fe),be=Be(pe),_e=te?te.prototype:void 0,$e=_e?_e.valueOf:void 0;function Oe(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}function xe(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}function Pe(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}function Ee(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new Pe;++t<r;)this.add(e[t])}function je(e){var t=this.__data__=new xe(e);this.size=t.size}function Se(e,t){var r=Le(e),a=!r&&qe(e),n=!r&&!a&&Re(e),i=!r&&!a&&!n&&Qe(e),o=r||a||n||i,s=o?function(e,t){for(var r=-1,a=Array(e);++r<e;)a[r]=t(r);return a}(e.length,String):[],u=s.length;for(var d in e)!t&&!Q.call(e,d)||o&&("length"==d||n&&("offset"==d||"parent"==d)||i&&("buffer"==d||"byteLength"==d||"byteOffset"==d)||We(d,u))||s.push(d);return s}function we(e,t){for(var r=e.length;r--;)if(Fe(e[r][0],t))return r;return-1}function Ae(e){return null==e?void 0===e?P:m:ie&&ie in Object(e)?function(e){var t=Q.call(e,ie),r=e[ie];try{e[ie]=void 0;var a=!0}catch(e){}var n=Y.call(e);a&&(t?e[ie]=r:delete e[ie]);return n}(e):function(e){return Y.call(e)}(e)}function Ve(e){return He(e)&&Ae(e)==s}function Me(e,t,r,a,o){return e===t||(null==e||null==t||!He(e)&&!He(t)?e!=e&&t!=t:function(e,t,r,a,o,d){var p=Le(e),g=Le(t),m=p?u:De(e),b=g?u:De(t),P=(m=m==s?v:m)==v,S=(b=b==s?v:b)==v,w=m==b;if(w&&Re(e)){if(!Re(t))return!1;p=!0,P=!1}if(w&&!P)return d||(d=new je),p||Qe(e)?ke(e,t,r,a,o,d):function(e,t,r,a,o,s,u){switch(r){case j:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case E:return!(e.byteLength!=t.byteLength||!s(new re(e),new re(t)));case l:case c:case y:return Fe(+e,+t);case f:return e.name==t.name&&e.message==t.message;case _:case O:return e==t+"";case h:var d=W;case $:var p=a&n;if(d||(d=B),e.size!=t.size&&!p)return!1;var g=u.get(e);if(g)return g==t;a|=i,u.set(e,t);var m=ke(d(e),d(t),a,o,s,u);return u.delete(e),m;case x:if($e)return $e.call(e)==$e.call(t)}return!1}(e,t,m,r,a,o,d);if(!(r&n)){var A=P&&Q.call(e,"__wrapped__"),V=S&&Q.call(t,"__wrapped__");if(A||V){var M=A?e.value():e,z=V?t.value():t;return d||(d=new je),o(M,z,r,a,d)}}if(!w)return!1;return d||(d=new je),function(e,t,r,a,i,o){var s=r&n,u=Ie(e),d=u.length,l=Ie(t).length;if(d!=l&&!s)return!1;for(var c=d;c--;){var f=u[c];if(!(s?f in t:Q.call(t,f)))return!1}var p=o.get(e);if(p&&o.get(t))return p==t;var g=!0;o.set(e,t),o.set(t,e);for(var h=s;++c<d;){f=u[c];var y=e[f],m=t[f];if(a)var v=s?a(m,y,f,t,e,o):a(y,m,f,e,t,o);if(!(void 0===v?y===m||i(y,m,r,a,o):v)){g=!1;break}h||(h="constructor"==f)}if(g&&!h){var b=e.constructor,_=t.constructor;b!=_&&"constructor"in e&&"constructor"in t&&!("function"==typeof b&&b instanceof b&&"function"==typeof _&&_ instanceof _)&&(g=!1)}return o.delete(e),o.delete(t),g}(e,t,r,a,o,d)}(e,t,r,a,Me,o))}function ze(e){return!(!Ge(e)||(t=e,X&&X in t))&&(Ce(e)?Z:S).test(Be(e));var t}function Ne(e){if(r=(t=e)&&t.constructor,a="function"==typeof r&&r.prototype||K,t!==a)return ue(e);var t,r,a,n=[];for(var i in Object(e))Q.call(e,i)&&"constructor"!=i&&n.push(i);return n}function ke(e,t,r,a,o,s){var u=r&n,d=e.length,l=t.length;if(d!=l&&!(u&&l>d))return!1;var c=s.get(e);if(c&&s.get(t))return c==t;var f=-1,p=!0,g=r&i?new Ee:void 0;for(s.set(e,t),s.set(t,e);++f<d;){var h=e[f],y=t[f];if(a)var m=u?a(y,h,f,t,e,s):a(h,y,f,e,t,s);if(void 0!==m){if(m)continue;p=!1;break}if(g){if(!D(t,function(e,t){if(n=t,!g.has(n)&&(h===e||o(h,e,r,a,s)))return g.push(t);var n})){p=!1;break}}else if(h!==y&&!o(h,y,r,a,s)){p=!1;break}}return s.delete(e),s.delete(t),p}function Ie(e){return function(e,t,r){var a=t(e);return Le(e)?a:function(e,t){for(var r=-1,a=t.length,n=e.length;++r<a;)e[n+r]=t[r];return e}(a,r(e))}(e,Xe,Je)}function Te(e,t){var r,a,n=e.__data__;return("string"==(a=typeof(r=t))||"number"==a||"symbol"==a||"boolean"==a?"__proto__"!==r:null===r)?n["string"==typeof t?"string":"hash"]:n.map}function Ue(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return ze(r)?r:void 0}Oe.prototype.clear=function(){this.__data__=ge?ge(null):{},this.size=0},Oe.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Oe.prototype.get=function(e){var t=this.__data__;if(ge){var r=t[e];return r===a?void 0:r}return Q.call(t,e)?t[e]:void 0},Oe.prototype.has=function(e){var t=this.__data__;return ge?void 0!==t[e]:Q.call(t,e)},Oe.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=ge&&void 0===t?a:t,this},xe.prototype.clear=function(){this.__data__=[],this.size=0},xe.prototype.delete=function(e){var t=this.__data__,r=we(t,e);return!(r<0||(r==t.length-1?t.pop():ne.call(t,r,1),--this.size,0))},xe.prototype.get=function(e){var t=this.__data__,r=we(t,e);return r<0?void 0:t[r][1]},xe.prototype.has=function(e){return we(this.__data__,e)>-1},xe.prototype.set=function(e,t){var r=this.__data__,a=we(r,e);return a<0?(++this.size,r.push([e,t])):r[a][1]=t,this},Pe.prototype.clear=function(){this.size=0,this.__data__={hash:new Oe,map:new(le||xe),string:new Oe}},Pe.prototype.delete=function(e){var t=Te(this,e).delete(e);return this.size-=t?1:0,t},Pe.prototype.get=function(e){return Te(this,e).get(e)},Pe.prototype.has=function(e){return Te(this,e).has(e)},Pe.prototype.set=function(e,t){var r=Te(this,e),a=r.size;return r.set(e,t),this.size+=r.size==a?0:1,this},Ee.prototype.add=Ee.prototype.push=function(e){return this.__data__.set(e,a),this},Ee.prototype.has=function(e){return this.__data__.has(e)},je.prototype.clear=function(){this.__data__=new xe,this.size=0},je.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},je.prototype.get=function(e){return this.__data__.get(e)},je.prototype.has=function(e){return this.__data__.has(e)},je.prototype.set=function(e,t){var a=this.__data__;if(a instanceof xe){var n=a.__data__;if(!le||n.length<r-1)return n.push([e,t]),this.size=++a.size,this;a=this.__data__=new Pe(n)}return a.set(e,t),this.size=a.size,this};var Je=oe?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var r=-1,a=null==e?0:e.length,n=0,i=[];++r<a;){var o=e[r];t(o,r,e)&&(i[n++]=o)}return i}(oe(e),function(t){return ae.call(e,t)}))}:function(){return[]},De=Ae;function We(e,t){return!!(t=null==t?o:t)&&("number"==typeof e||w.test(e))&&e>-1&&e%1==0&&e<t}function Be(e){if(null!=e){try{return H.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Fe(e,t){return e===t||e!=e&&t!=t}(de&&De(new de(new ArrayBuffer(1)))!=j||le&&De(new le)!=h||ce&&"[object Promise]"!=De(ce.resolve())||fe&&De(new fe)!=$||pe&&"[object WeakMap]"!=De(new pe))&&(De=function(e){var t=Ae(e),r=t==v?e.constructor:void 0,a=r?Be(r):"";if(a)switch(a){case he:return j;case ye:return h;case me:return"[object Promise]";case ve:return $;case be:return"[object WeakMap]"}return t});var qe=Ve(function(){return arguments}())?Ve:function(e){return He(e)&&Q.call(e,"callee")&&!ae.call(e,"callee")},Le=Array.isArray;var Re=se||function(){return!1};function Ce(e){if(!Ge(e))return!1;var t=Ae(e);return t==p||t==g||t==d||t==b}function Ke(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=o}function Ge(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function He(e){return null!=e&&"object"==typeof e}var Qe=J?function(e){return function(t){return e(t)}}(J):function(e){return He(e)&&Ke(e.length)&&!!A[Ae(e)]};function Xe(e){return null!=(t=e)&&Ke(t.length)&&!Ce(t)?Se(e):Ne(e);var t}e.exports=function(e,t){return Me(e,t)}}).call(this,r(22)(e))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.testSymbol=Symbol("test"),t.isPredicate=(e=>Boolean(e&&e[t.testSymbol]))},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(2));t.default=((e,t)=>{try{for(const r of e)n.default(r,t);return!0}catch(e){return e.message}})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.ArgumentError=class extends Error{constructor(e,t){super(e),Error.captureStackTrace(this,t),this.name="ArgumentError"}}},function(e,t,r){"use strict";const a=()=>{const e=Error.prepareStackTrace;Error.prepareStackTrace=((e,t)=>t);const t=(new Error).stack.slice(1);return Error.prepareStackTrace=e,t};e.exports=a,e.exports.default=a},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=a(r(10)),o=n(r(12)),s=a(r(13)),u=/^.*?\((.*?)[,)]/;t.inferLabel=(e=>{if(!o)return;const t=e[1],r=t.getFileName(),a=t.getLineNumber(),n=t.getColumnNumber();if(!r||null===a||null===n)return;let d=[];try{d=i.default.readFileSync(r,"utf8").split("\n")}catch(e){return}let l=d[a-1];if(!l)return;l=l.slice(n-1);const c=u.exec(l);if(!c||!c[1])return;const f=c[1];return s.default(f)||s.default(f.split(".").pop())?f:void 0})},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(11));t.default=n.default("fs")},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default="function"==typeof global.__non_webpack_require__?global.__non_webpack_require__:eval("require")},function(e,t,r){"use strict";e.exports=!("undefined"==typeof process||!process.versions||!process.versions.node)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const a=/^[a-z$_][a-z$_0-9]*$/i,n=new Set(["undefined","null","true","false","super","this","Infinity","NaN"]);t.default=(e=>e&&!n.has(e)&&a.test(e))},function(e,t){e.exports=require("url")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const a=r(0);t.not=(e=>{const t=e.addValidator;return e.addValidator=(r=>{const n=r.validator,i=r.message;return r.message=((e,t)=>`[NOT] ${i(e,t)}`),r.validator=(e=>!n(e)),e[a.validatorSymbol].push(r),e.addValidator=t,e}),e})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const a=r(7),n=r(5);t.AnyPredicate=class{constructor(e){this.predicates=e}[n.testSymbol](e,t,r){const n=["Any predicate failed with the following errors:"];for(const a of this.predicates)try{return void t(e,r,a)}catch(e){n.push(`- ${e.message}`)}throw new a.ArgumentError(n.join("\n"),t)}}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(18)),i=r(0);t.StringPredicate=class extends i.Predicate{constructor(e){super("string",e)}length(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have length \`${e}\`, got \`${t}\``,validator:t=>t.length===e})}minLength(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a minimum length of \`${e}\`, got \`${t}\``,validator:t=>t.length>=e})}maxLength(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a maximum length of \`${e}\`, got \`${t}\``,validator:t=>t.length<=e})}matches(e){return this.addValidator({message:(t,r)=>`Expected ${r} to match \`${e}\`, got \`${t}\``,validator:t=>e.test(t)})}startsWith(e){return this.addValidator({message:(t,r)=>`Expected ${r} to start with \`${e}\`, got \`${t}\``,validator:t=>t.startsWith(e)})}endsWith(e){return this.addValidator({message:(t,r)=>`Expected ${r} to end with \`${e}\`, got \`${t}\``,validator:t=>t.endsWith(e)})}includes(e){return this.addValidator({message:(t,r)=>`Expected ${r} to include \`${e}\`, got \`${t}\``,validator:t=>t.includes(e)})}oneOf(e){return this.addValidator({message:(t,r)=>{let a=JSON.stringify(e);if(e.length>10){const t=e.length-10;a=JSON.stringify(e.slice(0,10)).replace(/]$/,`,…+${t} more]`)}return`Expected ${r} to be one of \`${a}\`, got \`${t}\``},validator:t=>e.includes(t)})}get empty(){return this.addValidator({message:(e,t)=>`Expected ${t} to be empty, got \`${e}\``,validator:e=>""===e})}get nonEmpty(){return this.addValidator({message:(e,t)=>`Expected ${t} to not be empty`,validator:e=>""!==e})}equals(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be equal to \`${e}\`, got \`${t}\``,validator:t=>t===e})}get alphanumeric(){return this.addValidator({message:(e,t)=>`Expected ${t} to be alphanumeric, got \`${e}\``,validator:e=>/^[a-z\d]+$/i.test(e)})}get alphabetical(){return this.addValidator({message:(e,t)=>`Expected ${t} to be alphabetical, got \`${e}\``,validator:e=>/^[a-z]+$/gi.test(e)})}get numeric(){return this.addValidator({message:(e,t)=>`Expected ${t} to be numeric, got \`${e}\``,validator:e=>/^(\+|-)?\d+$/i.test(e)})}get date(){return this.addValidator({message:(e,t)=>`Expected ${t} to be a date, got \`${e}\``,validator:e=>n.default(e)})}get lowercase(){return this.addValidator({message:(e,t)=>`Expected ${t} to be lowercase, got \`${e}\``,validator:e=>""!==e.trim()&&e===e.toLowerCase()})}get uppercase(){return this.addValidator({message:(e,t)=>`Expected ${t} to be uppercase, got \`${e}\``,validator:e=>""!==e.trim()&&e===e.toUpperCase()})}}},function(e,t,r){"use strict";e.exports=function(e){return!isNaN(Date.parse(e))}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(3)),i=r(0);t.NumberPredicate=class extends i.Predicate{constructor(e){super("number",e)}inRange(e,t){return this.addValidator({message:(r,a)=>`Expected ${a} to be in range [${e}..${t}], got ${r}`,validator:r=>n.default.inRange(r,[e,t])})}greaterThan(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be greater than ${e}, got ${t}`,validator:t=>t>e})}greaterThanOrEqual(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be greater than or equal to ${e}, got ${t}`,validator:t=>t>=e})}lessThan(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be less than ${e}, got ${t}`,validator:t=>t<e})}lessThanOrEqual(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be less than or equal to ${e}, got ${t}`,validator:t=>t<=e})}equal(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be equal to ${e}, got ${t}`,validator:t=>t===e})}get integer(){return this.addValidator({message:(e,t)=>`Expected ${t} to be an integer, got ${e}`,validator:e=>n.default.integer(e)})}get finite(){return this.addValidator({message:(e,t)=>`Expected ${t} to be finite, got ${e}`,validator:e=>!n.default.infinite(e)})}get infinite(){return this.addValidator({message:(e,t)=>`Expected ${t} to be infinite, got ${e}`,validator:e=>n.default.infinite(e)})}get positive(){return this.addValidator({message:(e,t)=>`Expected ${t} to be positive, got ${e}`,validator:e=>e>0})}get negative(){return this.addValidator({message:(e,t)=>`Expected ${t} to be negative, got ${e}`,validator:e=>e<0})}get integerOrInfinite(){return this.addValidator({message:(e,t)=>`Expected ${t} to be an integer or infinite, got ${e}`,validator:e=>n.default.integer(e)||n.default.infinite(e)})}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const a=r(0);t.BooleanPredicate=class extends a.Predicate{constructor(e){super("boolean",e)}get true(){return this.addValidator({message:(e,t)=>`Expected ${t} to be true, got ${e}`,validator:e=>!0===e})}get false(){return this.addValidator({message:(e,t)=>`Expected ${t} to be false, got ${e}`,validator:e=>!1===e})}}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(4)),i=a(r(2)),o=r(0);t.ArrayPredicate=class extends o.Predicate{constructor(e){super("array",e)}length(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have length \`${e}\`, got \`${t.length}\``,validator:t=>t.length===e})}minLength(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a minimum length of \`${e}\`, got \`${t.length}\``,validator:t=>t.length>=e})}maxLength(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a maximum length of \`${e}\`, got \`${t.length}\``,validator:t=>t.length<=e})}startsWith(e){return this.addValidator({message:(t,r)=>`Expected ${r} to start with \`${e}\`, got \`${t[0]}\``,validator:t=>t[0]===e})}endsWith(e){return this.addValidator({message:(t,r)=>`Expected ${r} to end with \`${e}\`, got \`${t[t.length-1]}\``,validator:t=>t[t.length-1]===e})}includes(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to include all elements of \`${JSON.stringify(e)}\`, got \`${JSON.stringify(t)}\``,validator:t=>e.every(e=>-1!==t.indexOf(e))})}includesAny(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to include any element of \`${JSON.stringify(e)}\`, got \`${JSON.stringify(t)}\``,validator:t=>e.some(e=>-1!==t.indexOf(e))})}get empty(){return this.addValidator({message:(e,t)=>`Expected ${t} to be empty, got \`${JSON.stringify(e)}\``,validator:e=>0===e.length})}get nonEmpty(){return this.addValidator({message:(e,t)=>`Expected ${t} to not be empty`,validator:e=>e.length>0})}deepEqual(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be deeply equal to \`${JSON.stringify(e)}\`, got \`${JSON.stringify(t)}\``,validator:t=>n.default(t,e)})}ofType(e){let t;return this.addValidator({message:(e,r)=>`(${r}) ${t}`,validator:r=>{try{for(const t of r)i.default(t,e);return!0}catch(e){return t=e.message,!1}}})}}},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(3)),i=a(r(24)),o=a(r(4)),s=r(0),u=a(r(1)),d=a(r(6)),l=a(r(26));t.ObjectPredicate=class extends s.Predicate{constructor(e){super("object",e)}get plain(){return this.addValidator({message:(e,t)=>`Expected ${t} to be a plain object`,validator:e=>n.default.plainObject(e)})}get empty(){return this.addValidator({message:(e,t)=>`Expected ${t} to be empty, got \`${JSON.stringify(e)}\``,validator:e=>0===Object.keys(e).length})}get nonEmpty(){return this.addValidator({message:(e,t)=>`Expected ${t} to not be empty`,validator:e=>Object.keys(e).length>0})}valuesOfType(e){return this.addValidator({message:(e,t,r)=>`(${t}) ${r}`,validator:t=>{const r=Object.keys(t).map(e=>t[e]);return d.default(r,e)}})}deepValuesOfType(e){return this.addValidator({message:(e,t,r)=>`(${t}) ${r}`,validator:t=>l.default(t,e)})}deepEqual(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be deeply equal to \`${JSON.stringify(e)}\`, got \`${JSON.stringify(t)}\``,validator:t=>o.default(t,e)})}instanceOf(e){return this.addValidator({message:(t,r)=>{let a=t.constructor.name;return a&&"Object"!==a||(a=JSON.stringify(t)),`Expected ${r} \`${a}\` to be of type \`${e.name}\``},validator:t=>t instanceof e})}hasKeys(...e){return this.addValidator({message:(e,t,r)=>`Expected ${t} to have keys \`${JSON.stringify(r)}\``,validator:t=>u.default({has:e=>i.default.has(t,e)},e)})}hasAnyKeys(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to have any key of \`${JSON.stringify(e)}\``,validator:t=>e.some(e=>i.default.has(t,e))})}}},function(e,t,r){"use strict";const a=r(25);function n(e){const t=e.split("."),r=[];for(let e=0;e<t.length;e++){let a=t[e];for(;"\\"===a[a.length-1]&&void 0!==t[e+1];)a=a.slice(0,-1)+".",a+=t[++e];r.push(a)}return r}e.exports={get(e,t,r){if(!a(e)||"string"!=typeof t)return void 0===r?e:r;const i=n(t);for(let t=0;t<i.length;t++){if(!Object.prototype.propertyIsEnumerable.call(e,i[t]))return r;if(null==(e=e[i[t]])){if(t!==i.length-1)return r;break}}return e},set(e,t,r){if(!a(e)||"string"!=typeof t)return e;const i=e,o=n(t);for(let t=0;t<o.length;t++){const n=o[t];a(e[n])||(e[n]={}),t===o.length-1&&(e[n]=r),e=e[n]}return i},delete(e,t){if(!a(e)||"string"!=typeof t)return;const r=n(t);for(let t=0;t<r.length;t++){const n=r[t];if(t===r.length-1)return void delete e[n];if(e=e[n],!a(e))return}},has(e,t){if(!a(e)||"string"!=typeof t)return!1;const r=n(t);for(let t=0;t<r.length;t++){if(!a(e))return!1;if(!(r[t]in e))return!1;e=e[r[t]]}return!0}}},function(e,t,r){"use strict";e.exports=function(e){var t=typeof e;return null!==e&&("object"===t||"function"===t)}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(3)),i=a(r(2)),o=(e,t)=>n.default.plainObject(e)?Object.keys(e).every(r=>o(e[r],t)):(i.default(e,t),!0);t.default=((e,t)=>{try{return o(e,t)}catch(e){return e.message}})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const a=r(0);t.DatePredicate=class extends a.Predicate{constructor(e){super("date",e)}before(e){return this.addValidator({message:(t,r)=>`Expected ${r} ${t.toISOString()} to be before ${e.toISOString()}`,validator:t=>t.getTime()<e.getTime()})}after(e){return this.addValidator({message:(t,r)=>`Expected ${r} ${t.toISOString()} to be after ${e.toISOString()}`,validator:t=>t.getTime()>e.getTime()})}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const a=r(0);t.ErrorPredicate=class extends a.Predicate{constructor(e){super("error",e)}name(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have name \`${e}\`, got \`${t.name}\``,validator:t=>t.name===e})}message(e){return this.addValidator({message:(t,r)=>`Expected ${r} message to be \`${e}\`, got \`${t.message}\``,validator:t=>t.message===e})}messageIncludes(e){return this.addValidator({message:(t,r)=>`Expected ${r} message to include \`${e}\`, got \`${t.message}\``,validator:t=>t.message.includes(e)})}hasKeys(...e){return this.addValidator({message:(t,r)=>`Expected ${r} message to have keys \`${e.join("`, `")}\``,validator:t=>e.every(e=>t.hasOwnProperty(e))})}instanceOf(e){return this.addValidator({message:(t,r)=>`Expected ${r} \`${t.name}\` to be of type \`${e.name}\``,validator:t=>t instanceof e})}get typeError(){return this.instanceOf(TypeError)}get evalError(){return this.instanceOf(EvalError)}get rangeError(){return this.instanceOf(RangeError)}get referenceError(){return this.instanceOf(ReferenceError)}get syntaxError(){return this.instanceOf(SyntaxError)}get uriError(){return this.instanceOf(URIError)}}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(4)),i=r(0),o=a(r(1)),s=a(r(6));t.MapPredicate=class extends i.Predicate{constructor(e){super("Map",e)}size(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have size \`${e}\`, got \`${t.size}\``,validator:t=>t.size===e})}minSize(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a minimum size of \`${e}\`, got \`${t.size}\``,validator:t=>t.size>=e})}maxSize(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a maximum size of \`${e}\`, got \`${t.size}\``,validator:t=>t.size<=e})}hasKeys(...e){return this.addValidator({message:(e,t,r)=>`Expected ${t} to have keys \`${JSON.stringify(r)}\``,validator:t=>o.default(t,e)})}hasAnyKeys(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to have any key of \`${JSON.stringify(e)}\``,validator:t=>e.some(e=>t.has(e))})}hasValues(...e){return this.addValidator({message:(e,t,r)=>`Expected ${t} to have values \`${JSON.stringify(r)}\``,validator:t=>o.default(new Set(t.values()),e)})}hasAnyValues(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to have any value of \`${JSON.stringify(e)}\``,validator:t=>{const r=new Set(t.values());return e.some(e=>r.has(e))}})}keysOfType(e){return this.addValidator({message:(e,t,r)=>`(${t}) ${r}`,validator:t=>s.default(t.keys(),e)})}valuesOfType(e){return this.addValidator({message:(e,t,r)=>`(${t}) ${r}`,validator:t=>s.default(t.values(),e)})}get empty(){return this.addValidator({message:(e,t)=>`Expected ${t} to be empty, got \`${JSON.stringify(Array.from(e))}\``,validator:e=>0===e.size})}get nonEmpty(){return this.addValidator({message:(e,t)=>`Expected ${t} to not be empty`,validator:e=>e.size>0})}deepEqual(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be deeply equal to \`${JSON.stringify(Array.from(e))}\`, got \`${JSON.stringify(Array.from(t))}\``,validator:t=>n.default(t,e)})}}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=r(0),i=a(r(1));t.WeakMapPredicate=class extends n.Predicate{constructor(e){super("WeakMap",e)}hasKeys(...e){return this.addValidator({message:(e,t,r)=>`Expected ${t} to have keys \`${JSON.stringify(r)}\``,validator:t=>i.default(t,e)})}hasAnyKeys(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to have any key of \`${JSON.stringify(e)}\``,validator:t=>e.some(e=>t.has(e))})}}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(r(4)),i=r(0),o=a(r(1)),s=a(r(6));t.SetPredicate=class extends i.Predicate{constructor(e){super("Set",e)}size(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have size \`${e}\`, got \`${t.size}\``,validator:t=>t.size===e})}minSize(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a minimum size of \`${e}\`, got \`${t.size}\``,validator:t=>t.size>=e})}maxSize(e){return this.addValidator({message:(t,r)=>`Expected ${r} to have a maximum size of \`${e}\`, got \`${t.size}\``,validator:t=>t.size<=e})}has(...e){return this.addValidator({message:(e,t,r)=>`Expected ${t} to have items \`${JSON.stringify(r)}\``,validator:t=>o.default(t,e)})}hasAny(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to have any item of \`${JSON.stringify(e)}\``,validator:t=>e.some(e=>t.has(e))})}ofType(e){return this.addValidator({message:(e,t,r)=>`(${t}) ${r}`,validator:t=>s.default(t,e)})}get empty(){return this.addValidator({message:(e,t)=>`Expected ${t} to be empty, got \`${JSON.stringify(Array.from(e))}\``,validator:e=>0===e.size})}get nonEmpty(){return this.addValidator({message:(e,t)=>`Expected ${t} to not be empty`,validator:e=>e.size>0})}deepEqual(e){return this.addValidator({message:(t,r)=>`Expected ${r} to be deeply equal to \`${JSON.stringify(Array.from(e))}\`, got \`${JSON.stringify(Array.from(t))}\``,validator:t=>n.default(t,e)})}}},function(e,t,r){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=r(0),i=a(r(1));t.WeakSetPredicate=class extends n.Predicate{constructor(e){super("WeakSet",e)}has(...e){return this.addValidator({message:(e,t,r)=>`Expected ${t} to have items \`${JSON.stringify(r)}\``,validator:t=>i.default(t,e)})}hasAny(...e){return this.addValidator({message:(t,r)=>`Expected ${r} to have any item of \`${JSON.stringify(e)}\``,validator:t=>e.some(e=>t.has(e))})}}}]);const __export__=module.exports.default;module.exports=__export__,module.exports.default=__export__;
//# sourceMappingURL=index.js.map

@@ -9,3 +9,3 @@ import { BasePredicate, testSymbol } from './base-predicate';

constructor(predicates: BasePredicate[]);
[testSymbol](value: T, main: Ow): void;
[testSymbol](value: T, main: Ow, label?: string): void;
}

@@ -9,4 +9,8 @@ import { Ow } from '../..';

*/
export declare const isPredicate: (value: any) => value is BasePredicate<any>;
/**
* @hidden
*/
export interface BasePredicate<T = any> {
[testSymbol](value: T, main: Ow): void;
[testSymbol](value: T, main: Ow, label?: string): void;
}

@@ -31,3 +31,3 @@ import { Ow } from '../..';

*/
[testSymbol](value: T, main: Ow): void;
[testSymbol](value: T, main: Ow, label?: string): void;
/**

@@ -42,8 +42,2 @@ * @hidden

/**
* Assign a label to this predicate for use in error messages.
*
* @param value Label to assign.
*/
label(value: string): this;
/**
* Test if the value matches a custom validation function. The validation function should return `true` if the value

@@ -50,0 +44,0 @@ * passes the function. If the function either returns `false` or a string, the function fails and the string will be

@@ -65,28 +65,18 @@ @sindresorhus/is

symbol-observable
callsites
MIT
The MIT License (MIT)
MIT License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
Copyright (c) Ben Lesh <ben@benlesh.com>
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
is-node
MIT
vali-date

@@ -93,0 +83,0 @@ MIT

{
"name": "ow",
"version": "0.8.0",
"version": "0.9.0",
"description": "Function argument validation for humans",

@@ -20,3 +20,3 @@ "license": "MIT",

"test": "npm run lint && nyc ava dist/test",
"lint": "tslint --format stylish --project .",
"lint": "tslint --fix --format stylish --project .",
"build": "npm run clean && webpack",

@@ -51,22 +51,25 @@ "compile": "npm run clean && tsc",

"devDependencies": {
"@sindresorhus/is": "^0.12.0",
"@sindresorhus/is": "^0.14.0",
"@sindresorhus/tsconfig": "^0.1.0",
"@types/dot-prop": "^4.2.0",
"@types/lodash.isequal": "^4.5.2",
"@types/node": "^10.12.0",
"@types/node": "^10.12.17",
"@types/vali-date": "^1.0.0",
"add-module-exports-webpack-plugin": "^0.1.0",
"ava": "^1.0.0-rc.1",
"ava": "^1.0.1",
"awesome-typescript-loader": "^5.2.1",
"callsites": "^3.0.0",
"codecov": "^3.1.0",
"del-cli": "^1.1.0",
"dot-prop": "^4.2.0",
"is-node": "^1.0.2",
"license-webpack-plugin": "^2.0.2",
"lodash.isequal": "^4.5.0",
"nyc": "^13.1.0",
"tslint": "^5.9.1",
"tslint-xo": "^0.9.0",
"typedoc": "^0.13.0",
"typescript": "^3.1.3",
"tslint": "^5.12.0",
"tslint-xo": "^0.11.0",
"typedoc": "^0.14.0",
"typescript": "^3.2.1",
"vali-date": "^1.0.0",
"webpack": "^4.20.2",
"webpack": "^4.28.0",
"webpack-cli": "^3.1.2"

@@ -76,2 +79,6 @@ },

"sideEffects": false,
"ava": {
"babel": false,
"compileEnhancements": false
},
"nyc": {

@@ -78,0 +85,0 @@ "exclude": [

@@ -17,2 +17,3 @@ <p align="center">

- Supports custom validations
- Automatic label inference in Node.js
- Written in TypeScript

@@ -40,6 +41,6 @@

unicorn(3);
//=> ArgumentError: Expected argument to be of type `string` but received type `number`
//=> ArgumentError: Expected `input` to be of type `string` but received type `number`
unicorn('yo');
//=> ArgumentError: Expected string to have a minimum length of `5`, got `yo`
//=> ArgumentError: Expected string `input` to have a minimum length of `5`, got `yo`
```

@@ -54,4 +55,10 @@

Test if `value` matches the provided `predicate`. Throws an `ArgumentError` if the test fails.
Test if `value` matches the provided `predicate`. Throws an `ArgumentError` if the test fails.
### ow(value, label, predicate)
Test if `value` matches the provided `predicate`. Throws an `ArgumentError` with the specified `label` if the test fails.
The `label` is automatically inferred in Node.js but you can override it by passing in a value for `label`. The automatic label inference doesn't work in the browser.
### ow.isValid(value, predicate)

@@ -68,4 +75,17 @@

const password = 'foo';
checkPassword(password);
//=> ArgumentError: Expected string `password` to have a minimum length of `6`, got `foo`
```
### ow.create(label, predicate)
Create a reusable validator with a specific `label`.
```ts
const checkPassword = ow.create('password', ow.string.minLength(6));
checkPassword('foo');
//=> ArgumentError: Expected string to have a minimum length of `6`, got `foo`
//=> ArgumentError: Expected string `password` to have a minimum length of `6`, got `foo`
```

@@ -170,17 +190,3 @@

#### label(string)
This assigns a custom label to be used in any error messages. It is useful for making error messages more user-friendly by including the name of the variable which failed validation.
This predicate does not add any additional validation.
```ts
ow('', ow.string.nonEmpty);
//=> ArgumentError: Expected string to not be empty
ow('', ow.string.label('foo').nonEmpty);
//=> ArgumentError: Expected string `foo` to not be empty
```
## Maintainers

@@ -187,0 +193,0 @@

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc