vest 4.0.0-dev-deabb8 → 4.0.0-dev-8851ff

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n=function(){return n=Object.assign||function(n){for(var t,r=1,e=arguments.length;r<e;r++)for(var u in t=arguments[r])Object.prototype.hasOwnProperty.call(t,u)&&(n[u]=t[u]);return n},n.apply(this,arguments)};function t(n,t,r){if(r||2===arguments.length)for(var e,u=0,i=t.length;u<i;u++)!e&&u in t||(e||(e=Array.prototype.slice.call(t,0,u)),e[u]=t[u]);return n.concat(e||t)}var r=Object.assign;function e(n){return"function"==typeof n}function u(n,t){function r(n){e=!0,u=n}for(var e=!1,u=null,i=0;i<n.length;i++)if(t(n[i],r,i),e)return u}function i(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return e(n)?n.apply(void 0,t):n}function o(n,t){var r;return null!==(r=i(n))&&void 0!==r?r:t}function s(n,t){return n={pass:n},t&&(n.message=t),n}function a(){return s(!1)}function f(){return s(!0)}function c(n){return o(n,a())}function l(n){return o(n,f())}function p(n,t){try{return n.run(t)}catch(n){return a()}}function v(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return l(u(t,(function(t,r){(t=p(t,n)).pass||r(t)})))}function g(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return c(u(t,(function(t,r){(t=p(t,n)).pass&&r(t)})))}function d(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return l(u(t,(function(t,r){p(t,n).pass&&r(a())})))}function h(n){return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return!n.apply(void 0,t)}}function y(n,t){return n.length===Number(t)}var m=h(y);function N(n,t){return n.length>Number(t)}function b(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];var e=[];return t.some((function(t){if(N(e,1))return!1;(t=p(t,n)).pass&&e.push(t)})),s(y(e,1))}function E(n){return null===n}var C=h(E);function O(n){return void 0===n}var x=h(O);function w(n,t){return O(n)||E(n)?f():p(t,n)}function S(n){return String(n)===n}function T(n,t){return S(n)&&S(t)&&n.endsWith(t)}var P=h(T);function k(n,t){return n===t}var F=h(k);function W(n){var t=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(t))}var A=h(W);function j(n,t){return W(n)&&W(t)&&Number(n)>Number(t)}function I(n,t){return W(n)&&W(t)&&Number(n)>=Number(t)}function R(n,t){return!!(Array.isArray(t)||S(t)&&S(n))&&-1!==t.indexOf(n)}var q=h(R);function B(n){return!!Array.isArray(n)}var D=h(B);function G(n,t){return W(n)&&W(t)&&Number(n)<=Number(t)}function X(n,t,r){return I(n,t)&&G(n,r)}var K=h(X);function _(n){return!!n===n}var L=h(_);function M(n,t){return Object.prototype.hasOwnProperty.call(n,t)}function U(n){return"number"==typeof n}var J=h(U);function z(n){if(n){if(U(n))return 0===n;if(M(n,"length"))return y(n,0);if("object"==typeof n)return y(Object.keys(n),0)}return!0}var V=h(z),Y=function(n){return!!W(n)&&0==n%2};function H(n){return Number.isNaN(n)}var Q=h(H);function Z(n){return!!W(n)&&0>Number(n)}var $=h(Z),nn=function(n){return!!W(n)&&0!=n%2},tn=h(S);function rn(n){return!!n}var en=h(rn);function un(n,t){return W(n)&&W(t)&&Number(n)<Number(t)}function on(n,t){return n.length>=Number(t)}function sn(n,t){return t instanceof RegExp?t.test(n):!!S(t)&&new RegExp(t).test(n)}var an=h(sn);function fn(n,t){return W(n)&&W(t)&&Number(n)===Number(t)}var cn=h(fn);function ln(n,t){try{return t(n)}catch(n){return!1}}function pn(n,t){return n.length<Number(t)}function vn(n,t){return n.length<=Number(t)}function gn(n,t){return S(n)&&S(t)&&n.startsWith(t)}var dn=h(gn);function hn(n,t){throw Error(o(t,n))}function yn(n){function t(t,i){var o,s,a=e();return t=r({},a||{},null!==(o=null==n?void 0:n(t,a))&&void 0!==o?o:t),o=u.ctx=Object.freeze(t),u.ancestry.unshift(o),i=i(o),u.ancestry.shift(),u.ctx=null!==(s=u.ancestry[0])&&void 0!==s?s:null,i}function e(){return u.ctx}var u={ancestry:[]};return{bind:function(n,r){return function(){for(var e=[],u=0;u<arguments.length;u++)e[u]=arguments[u];return t(n,(function(){return r.apply(void 0,e)}))}},run:t,use:e,useX:function(n){var t;return null!==(t=u.ctx)&&void 0!==t?t:hn(o(n,"Context was used after it was closed"))}}}var mn=yn((function(n,t){var e={value:n.value,meta:n.meta||{}};return t?n.set?r(e,{parent:function(){return function(n){return n?{value:n.value,meta:n.meta,parent:n.parent}:n}(t)}}):t:r(e,{parent:Nn})}));function Nn(){return null}function bn(n,t){return l(u(n,(function(n,r,e){(e=mn.run({value:n,set:!0,meta:{index:e}},(function(){return p(t,n)}))).pass||r(e)})))}function En(n,t){var r,e=function(r){var e=n[r],u=t[r];if(!(r=mn.run({value:e,set:!0,meta:{key:r}},(function(){return p(u,e)}))).pass)return{value:r}};for(r in t){var u=e(r);if("object"==typeof u)return u.value}return f()}function Cn(n,t){var r=En(n,t);if(!r.pass)return r;for(var e in n)if(!M(t,e))return a();return f()}var On=r({condition:ln,doesNotEndWith:P,doesNotStartWith:dn,endsWith:T,equals:k,greaterThan:j,greaterThanOrEquals:I,gt:j,gte:I,inside:R,isArray:B,isBetween:X,isBoolean:_,isEmpty:z,isEven:Y,isFalsy:en,isNaN:H,isNegative:Z,isNotArray:D,isNotBetween:K,isNotBoolean:L,isNotEmpty:V,isNotNaN:Q,isNotNull:C,isNotNumber:J,isNotNumeric:A,isNotString:tn,isNotUndefined:x,isNull:E,isNumber:U,isNumeric:W,isOdd:nn,isPositive:$,isString:S,isTruthy:rn,isUndefined:O,lengthEquals:y,lengthNotEquals:m,lessThan:un,lessThanOrEquals:G,longerThan:N,longerThanOrEquals:on,lt:un,lte:G,matches:sn,notEquals:F,notInside:q,notMatches:an,numberEquals:fn,numberNotEquals:cn,shorterThan:pn,shorterThanOrEquals:vn,startsWith:gn},{allOf:v,anyOf:g,noneOf:d,oneOf:b,optional:w},{shape:Cn,loose:En,isArrayOf:bn});function xn(n){return On[n]}function wn(n){for(var t in On){var r=xn(t);e(r)&&n(t,r)}}function Sn(){return"function"==typeof Proxy}function Tn(n,r,e){for(var u=[],o=3;o<arguments.length;o++)u[o-3]=arguments[o];return Pn(n),_(n)?s(n):s(n.pass,i.apply(void 0,t([n.message,r,e],u,!1)))}function Pn(n){_(n)||n&&_(n.pass)||hn("Incorrect return value for rule: "+JSON.stringify(n))}function kn(n){function r(r,e,u){return function(){for(var i=[],o=0;o<arguments.length;o++)i[o]=arguments[o];if(!(o=Tn.apply(void 0,t([mn.run({value:n},(function(){return e.apply(void 0,t([n],i,!1))})),u,n],i,!1))).pass){if(!z(o.message))throw o.message;hn("enforce/"+u+" failed with "+JSON.stringify(n))}return r}}var e={};if(!Sn())return wn((function(n,t){e[n]=r(e,t,n)})),e;var u=new Proxy(e,{get:function(n,t){if(n=xn(t))return r(u,n,t)}});return u}function Fn(n){var r,e=[];return function n(o){return function(){for(var a=[],f=0;f<arguments.length;f++)a[f]=arguments[f];var c=xn(o);e.push((function(n){return Tn.apply(void 0,t([c.apply(void 0,t([n],a,!1)),o,n],a,!1))}));var p={run:function(n){return l(u(e,(function(t,e){var u,o=mn.run({value:n},(function(){return t(n)}));o.pass||e(s(!!o.pass,null!==(u=i(r,n,o.message))&&void 0!==u?u:o.message))})))},test:function(n){return p.run(n).pass},message:function(n){return n&&(r=n),p}};return Sn()?p=new Proxy(p,{get:function(t,r){return xn(r)?n(r):t[r]}}):(wn((function(t){p[t]=n(t)})),p)}}(n)}function Wn(n){var t,r={};for(t in n)r[t]=jn.optional(n[t]);return r}var An,jn=(An=n({context:function(){return mn.useX()},extend:function(n){r(On,n)}},{partial:Wn}),Sn()?new Proxy(r(kn,An),{get:function(n,t){return t in n?n[t]:xn(t)?Fn(t):void 0}}):(wn((function(n){An[n]=Fn(n)})),An));function In(n){return[].concat(n)}var Rn=function(n){return function(){return""+n++}}(0);var qn=yn((function(n,t){return t?null:r({},{exclusion:{tests:{},groups:{}}},n)}));function Bn(n,t){return!!t&&!Dn(n,t)}function Dn(n,t){return!(!t||n.fieldName!==t)}function Gn(n){void 0===n&&(n=10);var t=[],r=function(e,u){var i=r.get(e);return i?i[1]:(u=u(),t.unshift([e.concat(),u]),t.length>n&&(t.length=n),u)};return r.invalidate=function(n){var r=t.findIndex((function(t){var r=t[0];return y(n,r.length)&&n.every((function(n,t){return n===r[t]}))}));-1<r&&t.splice(r,1)},r.get=function(n){return t[t.findIndex((function(t){var r=t[0];return y(n,r.length)&&n.every((function(n,t){return n===r[t]}))}))]||null},r}function Xn(){return Ln().suiteId()}function Kn(){return Ln().testCallbacks()}function _n(){return Ln().optionalFields()}function Ln(){return qn.useX().stateRef}function Mn(){return Ln().testObjects()}function Un(){return Ln().prevTestObjects()}function Jn(n){var t=Vn()[0],r=Mn();n!==r[0][t]&&(0,r[1])((function(r){return(r=r.slice(0))[t]=n,r}))}function zn(){(0,Vn()[1])((function(n){return n+1}))}function Vn(){return Ln().testObjectsCursor()}function Yn(n){return!!_n()[0][n]}function Hn(){return Mn()[0].filter((function(n){return n.isPending()}))}function Qn(n){var t=Hn();return!z(t)&&(n?t.some((function(t){return Dn(t,n)})):V(t))}function Zn(n,t){function r(n,t){i[n]++,u&&(i[t]=(i[t]||[]).concat(u))}var e=t.fieldName,u=t.message;n[e]=n[e]||{errorCount:0,warnCount:0,testCount:0};var i=n[e];return t.isSkipped()||(n[e].testCount++,t.isFailing()?r("errorCount","errors"):t.isWarning()&&r("warnCount","warnings")),i}function $n(n,t){return function(n,t){return!!n!=!!t}("warnings"===n,t.warns)}function nt(t,r,e){var u;void 0===e&&(e={});var i=(e=e||{}).group,o=e.fieldName;return r.reduce((function(n,r){return function(n,t,r,e){return!!(function(n,t){return!(!t||n.groupName===t)}(n,r)||Bn(n,e)||$n(t,n))}(r,t,i,o)||!r.hasFailures()||(n[r.fieldName]=(n[r.fieldName]||[]).concat(r.message||[])),n}),n({},o&&((u={})[o]=[],u)))}function tt(n,t){return t?n[t]:n}function rt(n){return ut("errors",n)}function et(n){return ut("warnings",n)}function ut(n,t){return tt(n=nt(n,Mn()[0],{fieldName:t}),t)}function it(n,t){return tt(n=st("errors",n,t),t)}function ot(n,t){return tt(n=st("warnings",n,t),t)}function st(n,t,r){return t||hn("get"+n[0].toUpperCase()+n.slice(1)+"ByGroup requires a group name. Received `"+t+"` instead."),nt(n,Mn()[0],{group:t,fieldName:r})}function at(n,t,r){return!(!n.hasFailures()||Bn(n,r)||$n(t,n))}function ft(n){return lt("errors",n)}function ct(n){return lt("warnings",n)}function lt(n,t){return Mn()[0].some((function(r){return at(r,n,t)}))}function pt(n,t){return gt("errors",n,t)}function vt(n,t){return gt("warnings",n,t)}function gt(n,t,r){return Mn()[0].some((function(e){return t===e.groupName&&at(e,n,r)}))}function dt(n,t){return!n.hasErrors(t)&&(!(z(Mn()[0])||function(n,t){return!!t&&z(n.tests[t])}(n,t)||V(Hn().filter((function(n){return!Bn(n,t)&&!Yn(n.fieldName)}))))&&function(n){return Mn()[0].every((function(t){return!(!Bn(t,n)&&!Yn(t.fieldName))||t.isTested()}))}(t))}var ht=Gn(20);function yt(){var n=Mn()[0],t={stateRef:Ln()};return ht([n],qn.bind(t,(function(){return r(function(){var n={errorCount:0,groups:{},testCount:0,tests:{},warnCount:0};return Mn()[0].forEach((function(t){var r=t.fieldName,e=t.groupName;n.tests[r]=Zn(n.tests,t),e&&(n.groups[e]=n.groups[e]||{},n.groups[e][r]=Zn(n.groups[e],t))})),function(n){for(var t in n.tests)n.errorCount+=n.tests[t].errorCount,n.warnCount+=n.tests[t].warnCount,n.testCount+=n.tests[t].testCount;return n}(n)}(),{getErrors:qn.bind(t,rt),getErrorsByGroup:qn.bind(t,it),getWarnings:qn.bind(t,et),getWarningsByGroup:qn.bind(t,ot),hasErrors:qn.bind(t,ft),hasErrorsByGroup:qn.bind(t,pt),hasWarnings:qn.bind(t,ct),hasWarningsByGroup:qn.bind(t,vt),isValid:qn.bind(t,(function(n){return dt(yt(),n)}))})})))}var mt=Gn(20);function Nt(){var n=Mn()[0],t={stateRef:Ln()};return mt([n],qn.bind(t,(function(){return r({},yt(),{done:qn.bind(t,Ot)})})))}function bt(n,t,r){return!(e(n)&&(!t||r.tests[t]&&0!==r.tests[t].testCount))}function Et(n){return!(Qn()&&(!n||Qn(n)))}var Ct,Ot=function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var r=(n=n.reverse())[0];if(n=n[1],t=Nt(),bt(r,n,t))return t;var e=function(){return r(yt())};return Et(n)?(e(),t):(xt(e,n),t)};function xt(n,t){var r=qn.bind({},n);(0,Kn()[1])((function(n){return t?n.fieldCallbacks[t]=(n.fieldCallbacks[t]||[]).concat(r):n.doneCallbacks.push(r),n}))}function wt(n){return n.forEach((function(n){return n()}))}function St(){var n=function(){var n={};return{emit:function(t,r){n[t]&&n[t].forEach((function(n){n(r)}))},on:function(t,r){return n[t]||(n[t]=[]),n[t].push(r),{off:function(){n[t]=n[t].filter((function(n){return n!==r}))}}}}}();return n.on(Ct.TEST_COMPLETED,(function(n){n.isCanceled()||(n.done(),function(n){var t=Kn()[0].fieldCallbacks;n&&!Qn(n)&&Array.isArray(t[n])&&wt(t[n])}(n.fieldName),function(){var n=Kn()[0].doneCallbacks;Qn()||wt(n)}())})),n}function Tt(){var n=qn.useX();return n.bus||hn(),n.bus}(Ct||(Ct={})).TEST_COMPLETED="test_completed";function Pt(n){return Wt("only","tests",n)}function kt(n){return Wt("skip","tests",n)}function Ft(n){var t=n.fieldName;n=n.groupName;var r=qn.useX();if(r.skipped)return!0;var e=(r=r.exclusion).tests,u=e[t];if(!1===u)return!0;if(u=!0===u,n){if(function(n){var t=qn.useX().exclusion.groups;if(M(t,n))return!1===t[n];for(var r in t)if(!0===t[r])return!0;return!1}(n))return!0;if(!0===r.groups[n])return!u&&(!!At(e)||!1===e[t])}return!u&&At(e)}function Wt(n,t,r){var e=qn.useX("hook called outside of a running suite.");r&&In(r).forEach((function(r){S(r)&&(e.exclusion[t][r]="only"===n)}))}function At(n){for(var t in n)if(!0===n[t])return!0;return!1}Pt.group=function(n){return Wt("only","groups",n)},kt.group=function(n){return Wt("skip","groups",n)};function jt(n){hn("Wrong arguments passed to group. Group "+n+".")}function It(n,t){return O(n)&&S(t)}var Rt=function(){function n(n,t,r){var e=void 0===r?{}:r;r=e.message,e=e.groupName,this.id=Rn(),this.warns=!1,this.status=qt,this.fieldName=n,this.testFn=t,e&&(this.groupName=e),r&&(this.message=r)}return n.prototype.run=function(){try{var n=this.testFn()}catch(t){It(this.message,t)&&(this.message=t),n=!1}return!1===n&&this.fail(),n},n.prototype.setStatus=function(n){this.isCanceled()||(this.status=n)},n.prototype.setPending=function(){this.setStatus(Kt)},n.prototype.fail=function(){this.setStatus(this.warns?Gt:Dt)},n.prototype.done=function(){this.isWarning()||this.isCanceled()||this.isFailing()||this.setStatus(Xt)},n.prototype.warn=function(){this.warns=!0},n.prototype.skip=function(){this.setStatus(Bt)},n.prototype.cancel=function(){this.setStatus(_t),function(n){(0,Mn()[1])((function(t){return In(function(n,t){return-1!==(t=n.indexOf(t))&&n.splice(t,1),n}(t,n))}))}(this)},n.prototype.valueOf=function(){return!this.isFailing()},n.prototype.hasFailures=function(){return this.isFailing()||this.isWarning()},n.prototype.isPending=function(){return this.status===Kt},n.prototype.isTested=function(){return this.hasFailures()||this.isPassing()},n.prototype.isUntested=function(){return this.status===qt},n.prototype.isFailing=function(){return this.status===Dt},n.prototype.isCanceled=function(){return this.status===_t},n.prototype.isSkipped=function(){return this.status===Bt},n.prototype.isPassing=function(){return this.status===Xt},n.prototype.isWarning=function(){return this.status===Gt},n}(),qt="UNTESTED",Bt="SKIPPED",Dt="FAILED",Gt="WARNING",Xt="PASSING",Kt="PENDING",_t="CANCELED";function Lt(n){return n&&e(n.then)}function Mt(n){var t=n.asyncTest,r=n.message;if(Lt(t)){var e=Tt().emit,u=Ln(),i=qn.bind({stateRef:u},(function(){e(Ct.TEST_COMPLETED,n)}));u=qn.bind({stateRef:u},(function(t){n.isCanceled()||(n.message=S(t)?t:r,n.fail(),(0,Mn()[1])((function(n){return n.slice(0)})),i())}));try{t.then(i,u)}catch(n){u()}}}function Ut(n){var t=Tt().emit,r=function(n){return qn.run({currentTest:n},(function(){try{var t=n.testFn()}catch(r){It(n.message,r)&&(n.message=r),t=!1}return!1===t&&n.fail(),t}))}(n);try{Lt(r)?(n.asyncTest=r,n.setPending(),Mt(n)):t(Ct.TEST_COMPLETED,n)}catch(t){hn("Your test function "+n.fieldName+" returned "+JSON.stringify(r)+'. Only "false" or a Promise are supported. Return values may cause unexpected behavior.')}}function Jt(n){var t=function(n){var t=Vn()[0];return Jn(n=o(Un()[0][t],n)),n}(n);return Ft(n)?(n.skip(),zn(),t):(function(n,t){t!==n&&function(n,t){return n.fieldName===t.fieldName&&n.groupName===t.groupName}(n,t)&&n.isPending()&&n.cancel()}(t,n),Jn(n),zn(),function(n){n.isUntested()?Ut(n):Lt(n.asyncTest)&&(n.setPending(),Mt(n))}(n),n)}function zt(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];r=t.reverse(),t=r[0],r=r[1];var e=qn.useX();return Jt(t=new Rt(n,t,{message:r,groupName:null==e?void 0:e.groupName}))}var Vt=r(zt,{each:function(n){return function(r){return Array.isArray(r)||hn("test.each: Expected table to be an array."),function(e){for(var u=[],o=1;o<arguments.length;o++)u[o-1]=arguments[o];var s=(u=u.reverse())[0],a=u[1];return r.map((function(r){return r=In(r),n(i.apply(void 0,t([e],r,!1)),i.apply(void 0,t([a],r,!1)),(function(){return s.apply(void 0,r)}))}))}}}(zt),memo:function(n){var t=Gn(100);return function(r){for(var e=[],u=1;u<arguments.length;u++)e[u-1]=arguments[u];u=Xn()[0];var i=Vn()[0],o=(e=e.reverse())[1],s=e[2];return e=[u,r,i].concat(e[0]),E(u=t.get(e))?t(e,(function(){return n(r,s,o)})):u[1].isCanceled()?(t.invalidate(e),t(e,(function(){return n(r,s,o)}))):Jt(u[1])}}(zt)});exports.VERSION="4.0.0-dev-deabb8",exports.create=function(n){e(n)||hn("Suite initialization error. Expected `tests` to be a function.");var t=St(),u=function(n){function t(n,t){return u.references.push(),r(n,i(t)),function(){return[u.references[n],function(t){return r(n,i(t,u.references[n]))}]}}function r(t,r){var i=u.references[t];u.references[t]=r,e(t=o[t][1])&&t(r,i),e(n)&&n()}var u={references:[]},o=[];return{registerStateKey:function(n,r){var e=o.length;return o.push([n,r]),t(e,n)},reset:function(){u.references=[],o.forEach((function(n,r){return t(r,n[0])}))}}}(),o=function(n,t){var r=t.suiteId;return{optionalFields:n.registerStateKey((function(){return{}})),prevTestObjects:n.registerStateKey((function(){return[]})),suiteId:n.registerStateKey((function(){return r})),testCallbacks:n.registerStateKey((function(){return{fieldCallbacks:{},doneCallbacks:[]}})),testObjects:n.registerStateKey((function(){return[]})),testObjectsCursor:n.registerStateKey((function(){return 0}))}}(u,{suiteId:Rn()});return r(qn.bind({stateRef:o,bus:t},(function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];var e=Mn()[0];return r=Un()[1],u.reset(),r((function(){return e})),n.apply(void 0,t),Nt()})),{get:qn.bind({stateRef:o},yt),remove:qn.bind({stateRef:o},(function(n){In(Mn()[0]).forEach((function(t){Dn(t,n)&&t.cancel()}))})),reset:u.reset})},exports.enforce=jn,exports.group=function(n,t){S(n)||jt("name must be a string"),e(t)||jt("callback must be a function"),qn.run({groupName:n},t)},exports.only=Pt,exports.optional=function(n){(0,_n()[1])((function(t){return In(n).forEach((function(n){t[n]=!0})),t}))},exports.skip=kt,exports.skipWhen=function(n,t){qn.run({skipped:i(n)},(function(){return t()}))},exports.test=Vt,exports.warn=function(){var n=qn.useX("warn hook called outside of a running suite.");n.currentTest||hn("warn called outside of a test."),n.currentTest.warn()};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n=function(){return(n=Object.assign||function(n){for(var t,r=1,e=arguments.length;r<e;r++)for(var u in t=arguments[r])Object.prototype.hasOwnProperty.call(t,u)&&(n[u]=t[u]);return n}).apply(this,arguments)};function t(n,t,r){if(r||2===arguments.length)for(var e,u=0,i=t.length;u<i;u++)!e&&u in t||(e||(e=Array.prototype.slice.call(t,0,u)),e[u]=t[u]);return n.concat(e||t)}var r=Object.assign;function e(n){return"function"==typeof n}function u(n,t){function r(n){e=!0,u=n}for(var e=!1,u=null,i=0;i<n.length;i++)if(t(n[i],r,i),e)return u}function i(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return e(n)?n.apply(void 0,t):n}function o(n,t){var r;return null!==(r=i(n))&&void 0!==r?r:t}function s(n,t){return n={pass:n},t&&(n.message=t),n}function a(){return s(!1)}function f(){return s(!0)}function c(n){return o(n,a())}function l(n){return o(n,f())}function p(n,t){try{return n.run(t)}catch(n){return a()}}function v(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return l(u(t,(function(t,r){(t=p(t,n)).pass||r(t)})))}function d(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return c(u(t,(function(t,r){(t=p(t,n)).pass&&r(t)})))}function g(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return l(u(t,(function(t,r){p(t,n).pass&&r(a())})))}function h(n){return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return!n.apply(void 0,t)}}function m(n,t){return n.length===Number(t)}var y=h(m);function N(n,t){return n.length>Number(t)}function b(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];var e=[];return t.some((function(t){if(N(e,1))return!1;(t=p(t,n)).pass&&e.push(t)})),s(m(e,1))}function E(n){return null===n}var C=h(E);function T(n){return void 0===n}var S=h(T);function O(n,t){return T(n)||E(n)?f():p(t,n)}function x(n){return String(n)===n}function w(n,t){return x(n)&&x(t)&&n.endsWith(t)}var P=h(w);function k(n,t){return n===t}var F=h(k);function I(n){var t=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(t))}var A=h(I);function W(n,t){return I(n)&&I(t)&&Number(n)>Number(t)}function R(n,t){return I(n)&&I(t)&&Number(n)>=Number(t)}function U(n){return!!Array.isArray(n)}var X=h(U);function D(n,t){return!!(U(t)||x(t)&&x(n))&&-1!==t.indexOf(n)}var L=h(D);function G(n,t){return I(n)&&I(t)&&Number(n)<=Number(t)}function j(n,t,r){return R(n,t)&&G(n,r)}var q=h(j);function B(n){return x(n)&&!n.trim()}var _=h(B);function K(n){return!!n===n}var H=h(K);function M(n,t){return Object.prototype.hasOwnProperty.call(n,t)}function J(n){return"number"==typeof n}var V=h(J);function z(n){if(n){if(J(n))return 0===n;if(M(n,"length"))return m(n,0);if("object"==typeof n)return m(Object.keys(n),0)}return!0}var Y=h(z),Q=function(n){return!!I(n)&&0==n%2};function Z(n){return Number.isNaN(n)}var $=h(Z);function nn(n){return!!I(n)&&0>Number(n)}var tn=h(nn),rn=function(n){return!!I(n)&&0!=n%2},en=h(x);function un(n){return!!n}var on=h(un);function sn(n,t){return I(n)&&I(t)&&Number(n)<Number(t)}function an(n,t){return n.length>=Number(t)}function fn(n,t){return t instanceof RegExp?t.test(n):!!x(t)&&new RegExp(t).test(n)}var cn=h(fn);function ln(n,t){return I(n)&&I(t)&&Number(n)===Number(t)}var pn=h(ln);function vn(n,t){try{return t(n)}catch(n){return!1}}function dn(n,t){return n.length<Number(t)}function gn(n,t){return n.length<=Number(t)}function hn(n,t){return x(n)&&x(t)&&n.startsWith(t)}var mn=h(hn);function yn(n,t){throw Error(o(t,n))}function Nn(n){function t(t,i){var o,s,a=e();return t=r({},a||{},null!==(o=null==n?void 0:n(t,a))&&void 0!==o?o:t),o=u.ctx=Object.freeze(t),u.ancestry.unshift(o),i=i(o),u.ancestry.shift(),u.ctx=null!==(s=u.ancestry[0])&&void 0!==s?s:null,i}function e(){return u.ctx}var u={ancestry:[]};return{bind:function(n,r){return function(){for(var e=[],u=0;u<arguments.length;u++)e[u]=arguments[u];return t(n,(function(){return r.apply(void 0,e)}))}},run:t,use:e,useX:function(n){var t;return null!==(t=u.ctx)&&void 0!==t?t:yn(o(n,"Context was used after it was closed"))}}}var bn=Nn((function(n,t){var e={value:n.value,meta:n.meta||{}};return t?n.set?r(e,{parent:function(){return function(n){return n?{value:n.value,meta:n.meta,parent:n.parent}:n}(t)}}):t:r(e,{parent:En})}));function En(){return null}function Cn(n,t){return l(u(n,(function(n,r,e){(e=bn.run({value:n,set:!0,meta:{index:e}},(function(){return p(t,n)}))).pass||r(e)})))}function Tn(n,t){var r,e=function(r){var e=n[r],u=t[r];if(!(r=bn.run({value:e,set:!0,meta:{key:r}},(function(){return p(u,e)}))).pass)return{value:r}};for(r in t){var u=e(r);if("object"==typeof u)return u.value}return f()}function Sn(n,t){var r=Tn(n,t);if(!r.pass)return r;for(var e in n)if(!M(t,e))return a();return f()}var On=r({condition:vn,doesNotEndWith:P,doesNotStartWith:mn,endsWith:w,equals:k,greaterThan:W,greaterThanOrEquals:R,gt:W,gte:R,inside:D,isArray:U,isBetween:j,isBlank:B,isBoolean:K,isEmpty:z,isEven:Q,isFalsy:on,isNaN:Z,isNegative:nn,isNotArray:X,isNotBetween:q,isNotBlank:_,isNotBoolean:H,isNotEmpty:Y,isNotNaN:$,isNotNull:C,isNotNumber:V,isNotNumeric:A,isNotString:en,isNotUndefined:S,isNull:E,isNumber:J,isNumeric:I,isOdd:rn,isPositive:tn,isString:x,isTruthy:un,isUndefined:T,lengthEquals:m,lengthNotEquals:y,lessThan:sn,lessThanOrEquals:G,longerThan:N,longerThanOrEquals:an,lt:sn,lte:G,matches:fn,notEquals:F,notInside:L,notMatches:cn,numberEquals:ln,numberNotEquals:pn,shorterThan:dn,shorterThanOrEquals:gn,startsWith:hn},{allOf:v,anyOf:d,noneOf:g,oneOf:b,optional:O},{shape:Sn,loose:Tn,isArrayOf:Cn});function xn(n){return On[n]}function wn(n){for(var t in On){var r=xn(t);e(r)&&n(t,r)}}function Pn(){return"function"==typeof Proxy}function kn(n,r,e){for(var u=[],o=3;o<arguments.length;o++)u[o-3]=arguments[o];return Fn(n),K(n)?s(n):s(n.pass,i.apply(void 0,t([n.message,r,e],u)))}function Fn(n){K(n)||n&&K(n.pass)||yn("Incorrect return value for rule: "+JSON.stringify(n))}function In(n){function r(r,e,u){return function(){for(var i=[],o=0;o<arguments.length;o++)i[o]=arguments[o];if(!(o=kn.apply(void 0,t([bn.run({value:n},(function(){return e.apply(void 0,t([n],i))})),u,n],i))).pass){if(!z(o.message))throw o.message;yn("enforce/"+u+" failed with "+JSON.stringify(n))}return r}}var e={};if(!Pn())return wn((function(n,t){e[n]=r(e,t,n)})),e;var u=new Proxy(e,{get:function(n,t){if(n=xn(t))return r(u,n,t)}});return u}function An(n){var r,e=[];return function n(o){return function(){for(var a=[],f=0;f<arguments.length;f++)a[f]=arguments[f];var c=xn(o);e.push((function(n){return kn.apply(void 0,t([c.apply(void 0,t([n],a)),o,n],a))}));var p={run:function(n){return l(u(e,(function(t,e){var u,o=bn.run({value:n},(function(){return t(n)}));o.pass||e(s(!!o.pass,null!==(u=i(r,n,o.message))&&void 0!==u?u:o.message))})))},test:function(n){return p.run(n).pass},message:function(n){return n&&(r=n),p}};return Pn()?p=new Proxy(p,{get:function(t,r){return xn(r)?n(r):t[r]}}):(wn((function(t){p[t]=n(t)})),p)}}(n)}function Wn(n){var t,r={};for(t in n)r[t]=Xn.optional(n[t]);return r}var Rn,Un,Xn=(Rn=n({context:function(){return bn.useX()},extend:function(n){r(On,n)}},{partial:Wn}),Pn()?new Proxy(r(In,Rn),{get:function(n,t){return t in n?n[t]:xn(t)?An(t):void 0}}):(wn((function(n){Rn[n]=An(n)})),Rn)),Dn=function(n){return function(){return""+n++}}(0);function Ln(n){return[].concat(n)}function Gn(n){return(n=Ln(n))[n.length-1]}function jn(){function n(){t=[0]}var t=[];return n(),{addLevel:function(){t.push(0)},cursorAt:function(){return Gn(t)},getCursor:function(){return Ln(t)},next:function(){return t[t.length-1]++,Gn(t)},removeLevel:function(){t.pop()},reset:n}}!function(n){n[n.DEFAULT=0]="DEFAULT",n[n.SUITE=1]="SUITE",n[n.EACH=2]="EACH",n[n.SKIP_WHEN=3]="SKIP_WHEN",n[n.GROUP=4]="GROUP"}(Un||(Un={}));var qn=Nn((function(n,t){return t?null:r({},{isolate:{type:Un.DEFAULT},testCursor:jn(),exclusion:{tests:{},groups:{}}},n)}));function Bn(n,t){for(var r=[],e=0;e<n.length;e++){var u=n[e];U(u)?r.push(Bn(u,t)):(u=t(u),C(u)&&r.push(u))}return r}function _n(n,t,r){return Hn(n,t)[Gn(t)]=r,n}function Kn(n){return Ln(n).reduce((function(n,t){return U(t)?n.concat(Kn(t)):Ln(n).concat(t)}),[])}function Hn(n,t){var r=0;for(t=t.slice(0,-1);r<t.length;r++){var e=t[r];n[e]=o(n[e],[]),n=n[e]}return n}function Mn(n){void 0===n&&(n=1);var t=[],r=function(e,u){var i=r.get(e);return i?i[1]:(u=u(),t.unshift([e.concat(),u]),N(t,n)&&(t.length=n),u)};return r.invalidate=function(n){var r=t.findIndex((function(t){var r=t[0];return m(n,r.length)&&n.every((function(n,t){return n===r[t]}))}));-1<r&&t.splice(r,1)},r.get=function(n){return t[t.findIndex((function(t){var r=t[0];return m(n,r.length)&&n.every((function(n,t){return n===r[t]}))}))]||null},r}function Jn(){return qn.useX().stateRef}function Vn(){return Jn().suiteId()}function zn(){return Jn().testCallbacks()}function Yn(){return Jn().optionalFields()}function Qn(){return Jn().testObjects()}function Zn(){(0,Qn()[1])((function(n){return{prev:n.prev,current:Ln(n.current)}}))}function $n(n){(0,Qn()[1])((function(t){return{prev:t.prev,current:Ln(n(t.current))}}))}function nt(){return Kn(Bn(Qn()[0].current,(function(n){return n.isPending()?n:null})))}var tt=Mn();function rt(){var n=Qn()[0].current;return tt([n],(function(){return Kn(n)}))}function et(){return qn.useX().testCursor.getCursor()}function ut(){return qn.useX().testCursor.cursorAt()}function it(){return qn.useX().testCursor.next()}function ot(n,t){if(n=void 0===(n=n.type)?Un.DEFAULT:n,e(t)){var r=et();return qn.run({isolate:{type:n}},(function(){qn.useX().testCursor.addLevel(),$n((function(n){return _n(n,r,[])}));var n=t();return qn.useX().testCursor.removeLevel(),it(),n}))}}function st(n,t){return!!t&&!at(n,t)}function at(n,t){return!(!t||n.fieldName!==t)}function ft(){var n=Yn()[0];if(!z(n)){var t={};$n((function(r){return Bn(r,(function(r){var u=r.fieldName;if(t.hasOwnProperty(u))t[r.fieldName]&&r.omit();else{var i=n[u];e(i)&&(t[u]=i(),t[r.fieldName]&&r.omit())}return r}))}))}}function ct(n){var t=nt();return!z(t)&&(n?t.some((function(t){return at(t,n)})):Y(t))}function lt(n,t){function r(n,t){i[n]++,u&&(i[t]=(i[t]||[]).concat(u))}var e=t.fieldName,u=t.message;n[e]=n[e]||{errorCount:0,warnCount:0,testCount:0};var i=n[e];return t.isSkipped()||(n[e].testCount++,t.isFailing()?r("errorCount","errors"):t.isWarning()&&r("warnCount","warnings")),i}function pt(n,t){return function(n,t){return!!n!=!!t}("warnings"===n,t.warns)}function vt(t,r,e){var u;void 0===e&&(e={});var i=(e=e||{}).group,o=e.fieldName;return r.reduce((function(n,r){return function(n,t,r,e){return!!(function(n,t){return!(!t||n.groupName===t)}(n,r)||st(n,e)||pt(t,n))}(r,t,i,o)||!r.hasFailures()||(n[r.fieldName]=(n[r.fieldName]||[]).concat(r.message||[])),n}),n({},o&&((u={})[o]=[],u)))}function dt(n,t){return t?n[t]:n}function gt(n){return mt("errors",n)}function ht(n){return mt("warnings",n)}function mt(n,t){return dt(n=vt(n,rt(),{fieldName:t}),t)}function yt(n,t){return dt(n=bt("errors",n,t),t)}function Nt(n,t){return dt(n=bt("warnings",n,t),t)}function bt(n,t,r){return t||yn("get"+n[0].toUpperCase()+n.slice(1)+"ByGroup requires a group name. Received `"+t+"` instead."),vt(n,rt(),{group:t,fieldName:r})}function Et(n,t,r){return!(!n.hasFailures()||st(n,r)||pt(t,n))}function Ct(n){return St("errors",n)}function Tt(n){return St("warnings",n)}function St(n,t){return rt().some((function(r){return Et(r,n,t)}))}function Ot(n,t){return wt("errors",n,t)}function xt(n,t){return wt("warnings",n,t)}function wt(n,t,r){return rt().some((function(e){return t===e.groupName&&Et(e,n,r)}))}function Pt(n,t){return!!function(n){var t=rt().reduce((function(n,t){return n[t.fieldName]||t.isOmitted()&&(n[t.fieldName]=!0),n}),{});return!!n&&!!t[n]}(t)||!n.hasErrors(t)&&(!(z(rt())||function(n,t){return!!t&&z(n.tests[t])}(n,t)||function(n){var t=Yn()[0];return Y(nt().filter((function(r){return!st(r,n)&&!0!==t[r.fieldName]})))}(t))&&function(n){var t=rt(),r=Yn()[0];return t.every((function(t){return!!st(t,n)||(!0===r[t.fieldName]||t.isTested()||t.isOmitted())}))}(t))}var kt=Mn(20);function Ft(){var n=rt(),t={stateRef:Jn()};return kt([n],qn.bind(t,(function(){return r(function(){var n={errorCount:0,groups:{},testCount:0,tests:{},warnCount:0};return rt().forEach((function(t){var r=t.fieldName,e=t.groupName;n.tests[r]=lt(n.tests,t),e&&(n.groups[e]=n.groups[e]||{},n.groups[e][r]=lt(n.groups[e],t))})),function(n){for(var t in n.tests)n.errorCount+=n.tests[t].errorCount,n.warnCount+=n.tests[t].warnCount,n.testCount+=n.tests[t].testCount;return n}(n)}(),{getErrors:qn.bind(t,gt),getErrorsByGroup:qn.bind(t,yt),getWarnings:qn.bind(t,ht),getWarningsByGroup:qn.bind(t,Nt),hasErrors:qn.bind(t,Ct),hasErrorsByGroup:qn.bind(t,Ot),hasWarnings:qn.bind(t,Tt),hasWarningsByGroup:qn.bind(t,xt),isValid:qn.bind(t,(function(n){return Pt(Ft(),n)}))})})))}var It=Mn(20);function At(){var n=rt(),t={stateRef:Jn()};return It([n],qn.bind(t,(function(){return r({},Ft(),{done:qn.bind(t,Xt)})})))}function Wt(n,t,r){return!(e(n)&&(!t||r.tests[t]&&0!==r.tests[t].testCount))}function Rt(n){return!(ct()&&(!n||ct(n)))}var Ut,Xt=function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var r=(n=n.reverse())[0];if(n=n[1],t=At(),Wt(r,n,t))return t;var e=function(){return r(Ft())};return Rt(n)?(e(),t):(Dt(e,n),t)};function Dt(n,t){var r=qn.bind({},n);(0,zn()[1])((function(n){return t?n.fieldCallbacks[t]=(n.fieldCallbacks[t]||[]).concat(r):n.doneCallbacks.push(r),n}))}function Lt(n){return n.forEach((function(n){return n()}))}function Gt(){var n=function(){var n={};return{emit:function(t,r){n[t]&&n[t].forEach((function(n){n(r)}))},on:function(t,r){return n[t]||(n[t]=[]),n[t].push(r),{off:function(){n[t]=n[t].filter((function(n){return n!==r}))}}}}}();return n.on(Ut.TEST_COMPLETED,(function(n){n.isCanceled()||(n.done(),function(n){var t=zn()[0].fieldCallbacks;n&&!ct(n)&&U(t[n])&&Lt(t[n])}(n.fieldName),function(){var n=zn()[0].doneCallbacks;ct()||Lt(n)}())})),n}function jt(){var n=qn.useX();return n.bus||yn(),n.bus}(Ut||(Ut={})).TEST_COMPLETED="test_completed";function qt(n){return Kt("only","tests",n)}function Bt(n){return Kt("skip","tests",n)}function _t(n){var t=n.fieldName;n=n.groupName;var r=qn.useX();if(r.skipped)return!0;var e=(r=r.exclusion).tests,u=e[t];if(!1===u)return!0;if(u=!0===u,n){if(function(n){var t=qn.useX().exclusion.groups;if(M(t,n))return!1===t[n];for(var r in t)if(!0===t[r])return!0;return!1}(n))return!0;if(!0===r.groups[n])return!u&&(!!Ht(e)||!1===e[t])}return!u&&Ht(e)}function Kt(n,t,r){var e=qn.useX("hook called outside of a running suite.");r&&Ln(r).forEach((function(r){x(r)&&(e.exclusion[t][r]="only"===n)}))}function Ht(n){for(var t in n)if(!0===n[t])return!0;return!1}qt.group=function(n){return Kt("only","groups",n)},Bt.group=function(n){return Kt("skip","groups",n)};function Mt(n){yn("Wrong arguments passed to group. Group "+n+".")}function Jt(n,t){return T(n)&&x(t)}var Vt=function(){function n(n,t,r){var e=void 0===r?{}:r;r=e.message,e=e.groupName,this.id=Dn(),this.warns=!1,this.status=zt,this.fieldName=n,this.testFn=t,e&&(this.groupName=e),r&&(this.message=r)}return n.prototype.run=function(){try{var n=this.testFn()}catch(t){Jt(this.message,t)&&(this.message=t),n=!1}return!1===n&&this.fail(),n},n.prototype.setStatus=function(n){this.isFinalStatus()&&n!==rr||(this.status=n)},n.prototype.setPending=function(){this.setStatus(nr)},n.prototype.fail=function(){this.setStatus(this.warns?Zt:Qt)},n.prototype.done=function(){this.isFinalStatus()||this.setStatus($t)},n.prototype.warn=function(){this.warns=!0},n.prototype.isFinalStatus=function(){return this.hasFailures()||this.isCanceled()||this.isPassing()},n.prototype.skip=function(){this.setStatus(Yt)},n.prototype.cancel=function(){this.setStatus(tr),Zn()},n.prototype.omit=function(){this.setStatus(rr)},n.prototype.valueOf=function(){return!this.isFailing()},n.prototype.hasFailures=function(){return this.isFailing()||this.isWarning()},n.prototype.isPending=function(){return this.status===nr},n.prototype.isTested=function(){return this.hasFailures()||this.isPassing()},n.prototype.isOmitted=function(){return this.status===rr},n.prototype.isUntested=function(){return this.status===zt},n.prototype.isFailing=function(){return this.status===Qt},n.prototype.isCanceled=function(){return this.status===tr},n.prototype.isSkipped=function(){return this.status===Yt},n.prototype.isPassing=function(){return this.status===$t},n.prototype.isWarning=function(){return this.status===Zt},n}(),zt="UNTESTED",Yt="SKIPPED",Qt="FAILED",Zt="WARNING",$t="PASSING",nr="PENDING",tr="CANCELED",rr="OMITTED";function er(n){return n&&e(n.then)}function ur(n,t){return n.fieldName===t.fieldName&&n.groupName===t.groupName}function ir(n){var t=n.asyncTest,r=n.message;if(er(t)){var e=jt().emit,u=Jn(),i=qn.bind({stateRef:u},(function(){Zn(),e(Ut.TEST_COMPLETED,n)}));u=qn.bind({stateRef:u},(function(t){n.isCanceled()||(n.message=x(t)?t:r,n.fail(),i())}));try{t.then(i,u)}catch(n){u()}}}function or(n){var t=jt().emit,r=function(n){return qn.run({currentTest:n},(function(){try{var t=n.testFn()}catch(r){Jt(n.message,r)&&(n.message=r),t=!1}return!1===t&&n.fail(),t}))}(n);try{er(r)?(n.asyncTest=r,n.setPending(),ir(n)):t(Ut.TEST_COMPLETED,n)}catch(t){yn("Your test function "+n.fieldName+" returned "+JSON.stringify(r)+'. Only "false" or a Promise are supported. Return values may cause unexpected behavior.')}}function sr(n){var t=Qn(),r=t[1],e=t[0].prev;if(z(e))return ar(n),n;if(function(n,t){return Y(n)&&!ur(n,t)}(t=function(n){var t=et();return function(n,t){return Hn(n,t)[Gn(t)]}(n,t)}(e),n)){!function(n,t){qn.useX().isolate.type===Un.EACH||function(n,t){setTimeout((function(){yn(n,t)}),0)}("Vest Critical Error: Tests called in different order than previous run.\n expected: "+n.fieldName+"\n received: "+t.fieldName+"\n This happens when you conditionally call your tests using if/else.\n This might lead to incorrect validation results.\n Replacing if/else with skipWhen solves these issues.")}(t,n),t=Hn(e,et());var u=ut();t.splice(u),r((function(n){return{prev:e,current:n.current}})),t=null}return ar(n=o(t,n)),n}function ar(n){var t=et();$n((function(r){return _n(r,t,n)}))}function fr(n){var t=sr(n);return _t(n)?(n.skip(),it(),t):(function(n,t){t!==n&&ur(n,t)&&n.isPending()&&n.cancel()}(t,n),ar(n),it(),function(n){n.isUntested()?or(n):er(n.asyncTest)&&(n.setPending(),ir(n))}(n),n)}function cr(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];r=t.reverse(),t=r[0],r=r[1];var e=qn.useX();return fr(t=new Vt(n,t,{message:r,groupName:null==e?void 0:e.groupName}))}var lr=r(cr,{each:function(n){return function(r){return U(r)||yn("test.each: Expected table to be an array."),function(e){for(var u=[],o=1;o<arguments.length;o++)u[o-1]=arguments[o];var s=(u=u.reverse())[0],a=u[1];return ot({type:Un.EACH},(function(){return r.map((function(r){return r=Ln(r),n(i.apply(void 0,t([e],r)),i.apply(void 0,t([a],r)),(function(){return s.apply(void 0,r)}))}))}))}}}(cr),memo:function(n){var t=Mn(100);return function(r){for(var e=[],u=1;u<arguments.length;u++)e[u-1]=arguments[u];u=Vn()[0];var i=ut(),o=(e=e.reverse())[1],s=e[2];return e=[u,r,i].concat(e[0]),E(u=t.get(e))?t(e,(function(){return n(r,s,o)})):u[1].isCanceled()?(t.invalidate(e),t(e,(function(){return n(r,s,o)}))):fr(u[1])}}(cr)});exports.VERSION="4.0.0-dev-8851ff",exports.create=function(n){e(n)||yn("Suite initialization error. Expected `tests` to be a function.");var t=Gt(),u=function(n){function t(n,t,e){return u.references.push(),r(n,i(t,e)),function(){return[u.references[n],function(t){return r(n,i(t,u.references[n]))}]}}function r(t,r){var i=u.references[t];u.references[t]=r,e(t=o[t][1])&&t(r,i),e(n)&&n()}var u={references:[]},o=[];return{registerStateKey:function(n,r){var e=o.length;return o.push([n,r]),t(e,n)},reset:function(){var n=u.references;u.references=[],o.forEach((function(r,e){return t(e,r[0],n[e])}))}}}(),o=function(n,t){return t=t.suiteId,{optionalFields:n.registerStateKey((function(){return{}})),suiteId:n.registerStateKey(t),testCallbacks:n.registerStateKey((function(){return{fieldCallbacks:{},doneCallbacks:[]}})),testObjects:n.registerStateKey((function(n){return{prev:n?n.current:[],current:[]}}))}}(u,{suiteId:Dn()});return r(qn.bind({stateRef:o,bus:t},(function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return u.reset(),ot({type:Un.SUITE},(function(){n.apply(void 0,t)})),ft(),At()})),{get:qn.bind({stateRef:o},Ft),remove:qn.bind({stateRef:o},(function(n){rt().forEach((function(t){at(t,n)&&(t.cancel(),function(n){$n((function(t){return Bn(t,(function(t){return n!==t?t:null}))}))}(t))}))})),reset:u.reset})},exports.enforce=Xn,exports.group=function(n,t){x(n)||Mt("name must be a string"),e(t)||Mt("callback must be a function"),ot({type:Un.GROUP},(function(){qn.run({groupName:n},t)}))},exports.only=qt,exports.optional=function(n){(0,Yn()[1])((function(t){if(U(n)||x(n))Ln(n).forEach((function(n){t[n]=!0}));else for(var r in n)t[r]=n[r];return t}))},exports.skip=Bt,exports.skipWhen=function(n,t){ot({type:Un.SKIP_WHEN},(function(){qn.run({skipped:i(n)},(function(){return t()}))}))},exports.test=lr,exports.warn=function(){var n=qn.useX("warn hook called outside of a running suite.");n.currentTest||yn("warn called outside of a test."),n.currentTest.warn()};