vest 4.3.0 → 4.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/cjs/classnames.development.js +21 -18
  2. package/dist/cjs/classnames.production.js +1 -1
  3. package/dist/cjs/enforce/compose.development.js +1 -1
  4. package/dist/cjs/enforce/compounds.development.js +20 -5
  5. package/dist/cjs/enforce/compounds.production.js +1 -1
  6. package/dist/cjs/enforce/schema.development.js +1 -1
  7. package/dist/cjs/parser.development.js +21 -18
  8. package/dist/cjs/parser.production.js +1 -1
  9. package/dist/cjs/vest.development.js +214 -239
  10. package/dist/cjs/vest.production.js +1 -1
  11. package/dist/es/classnames.development.js +21 -18
  12. package/dist/es/classnames.production.js +1 -1
  13. package/dist/es/enforce/compose.development.js +1 -1
  14. package/dist/es/enforce/compounds.development.js +20 -5
  15. package/dist/es/enforce/compounds.production.js +1 -1
  16. package/dist/es/enforce/schema.development.js +1 -1
  17. package/dist/es/parser.development.js +21 -18
  18. package/dist/es/parser.production.js +1 -1
  19. package/dist/es/vest.development.js +214 -239
  20. package/dist/es/vest.production.js +1 -1
  21. package/dist/umd/classnames.development.js +21 -18
  22. package/dist/umd/classnames.production.js +1 -1
  23. package/dist/umd/enforce/compose.development.js +18 -14
  24. package/dist/umd/enforce/compose.production.js +1 -1
  25. package/dist/umd/enforce/compounds.development.js +20 -16
  26. package/dist/umd/enforce/compounds.production.js +1 -1
  27. package/dist/umd/enforce/schema.development.js +18 -14
  28. package/dist/umd/enforce/schema.production.js +1 -1
  29. package/dist/umd/parser.development.js +21 -18
  30. package/dist/umd/parser.production.js +1 -1
  31. package/dist/umd/vest.development.js +185 -225
  32. package/dist/umd/vest.production.js +1 -1
  33. package/package.json +3 -3
  34. package/types/classnames.d.ts +9 -5
  35. package/types/enforce/compose.d.ts +20 -20
  36. package/types/enforce/compounds.d.ts +22 -22
  37. package/types/enforce/schema.d.ts +24 -24
  38. package/types/parser.d.ts +9 -5
  39. package/types/promisify.d.ts +16 -11
  40. package/types/vest.d.ts +59 -53
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n,t=require("n4s"),e=require("context"),r=(n=0,function(){return"".concat(n++)});function u(n){return String(n)===n}function i(n){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return!n.apply(void 0,t)}}function o(n){return void 0===n}function s(n,t){return o(n)&&u(t)}function c(n){return[].concat(n)}function a(n,t){return n.length===Number(t)}function f(n){function t(n){return e.findIndex((function(t){var e=t[0];return a(n,e.length)&&n.every((function(n,t){return n===e[t]}))}))}void 0===n&&(n=1);var e=[],r=function(t,u){var i=r.get(t);return i?i[1]:(u=u(),e.unshift([t.concat(),u]),function(n,t){return n.length>Number(t)}(e,n)&&(e.length=n),u)};return r.invalidate=function(n){-1<(n=t(n))&&e.splice(n,1)},r.get=function(n){return e[t(n)]||null},r}function l(n){return!!Array.isArray(n)}function p(n){return null===n}var d=i(p);function v(n){return"function"==typeof n}function g(n){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];return v(n)?n.apply(void 0,t):n}function h(n,t){var e;return null!==(e=g(n))&&void 0!==e?e:t}function E(n){return(n=c(n))[n.length-1]}function N(n,t){for(var e=[],r=0;r<n.length;r++){var u=n[r];l(u)?e.push(N(u,t)):(u=t(u),d(u)&&e.push(u))}return e}function m(n,t,e){return S(n,t)[E(t)]=e,n}function y(n){return c(n).reduce((function(n,t){return l(t)?n.concat(y(t)):c(n).concat(t)}),[])}function S(n,t){var e=0;for(t=t.slice(0,-1);e<t.length;e++){var r=t[e];n[r]=h(n[r],[]),n=n[r]}return n}var R,C,b=Object.assign;function T(){function n(){t=[0]}var t=[];return n(),{addLevel:function(){t.push(0)},cursorAt:function(){return E(t)},getCursor:function(){return c(t)},next:function(){return t[t.length-1]++,E(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.OMIT_WHEN=4]="OMIT_WHEN",n[n.GROUP=5]="GROUP"}(R||(R={})),function(n){n[n.ALL=0]="ALL",n[n.EAGER=1]="EAGER"}(C||(C={}));var I=e.createContext((function(n,t){return t?null:b({},{exclusion:{tests:{},groups:{}},inclusion:{},isolate:{type:R.DEFAULT,keys:{current:{},prev:{}}},mode:[C.ALL],testCursor:T()},n)}));function O(){return I.useX().stateRef}function _(){return O().suiteId()[0]}function A(){return O().testCallbacks()}function k(){return O().optionalFields()}function L(){return O().testObjects()}function x(){(0,L()[1])((function(n){return{prev:n.prev,current:c(n.current)}}))}function F(n){(0,L()[1])((function(t){return{prev:t.prev,current:c(n(t.current))}}))}function W(){return y(N(L()[0].current,(function(n){return n.isPending()?n:null})))}var G,P=f();function U(){var n=L()[0].current;return P([n],(function(){return y(n)}))}function w(n){U().forEach(n)}!function(n){n.Error="error",n.Warning="warning"}(G||(G={}));var D,X,H=function(){function n(n,t,e){var u=void 0===e?{}:e;e=u.message;var i=u.groupName;u=u.key,this.key=null,this.id=r(),this.severity=G.Error,this.status=K,this.fieldName=n,this.testFn=t,i&&(this.groupName=i),e&&(this.message=e),u&&(this.key=u)}return n.prototype.run=function(){try{var n=this.testFn()}catch(t){s(this.message,t)&&(this.message=t),n=!1}return!1===n&&this.fail(),n},n.prototype.setStatus=function(n){this.isFinalStatus()&&n!==J||(this.status=n)},n.prototype.warns=function(){return this.severity===G.Warning},n.prototype.setPending=function(){this.setStatus(V)},n.prototype.fail=function(){this.setStatus(this.warns()?j:M)},n.prototype.done=function(){this.isFinalStatus()||this.setStatus(B)},n.prototype.warn=function(){this.severity=G.Warning},n.prototype.isFinalStatus=function(){return this.hasFailures()||this.isCanceled()||this.isPassing()},n.prototype.skip=function(n){this.isPending()&&!n||this.setStatus(q)},n.prototype.cancel=function(){this.setStatus(Y),x()},n.prototype.reset=function(){this.status=K,x()},n.prototype.omit=function(){this.setStatus(J)},n.prototype.valueOf=function(){return!this.isFailing()},n.prototype.hasFailures=function(){return this.isFailing()||this.isWarning()},n.prototype.isNonActionable=function(){return this.isSkipped()||this.isOmitted()||this.isCanceled()},n.prototype.isPending=function(){return this.statusEquals(V)},n.prototype.isTested=function(){return this.hasFailures()||this.isPassing()},n.prototype.isOmitted=function(){return this.statusEquals(J)},n.prototype.isUntested=function(){return this.statusEquals(K)},n.prototype.isFailing=function(){return this.statusEquals(M)},n.prototype.isCanceled=function(){return this.statusEquals(Y)},n.prototype.isSkipped=function(){return this.statusEquals(q)},n.prototype.isPassing=function(){return this.statusEquals(B)},n.prototype.isWarning=function(){return this.statusEquals(j)},n.prototype.statusEquals=function(n){return this.status===n},n}(),K="UNTESTED",q="SKIPPED",M="FAILED",j="WARNING",B="PASSING",V="PENDING",Y="CANCELED",J="OMITTED";function z(n,t){if(!n)throw t instanceof String?t.valueOf():Error(t?g(t):t)}function Q(n){function t(n,t,u){return r.references.push(),e(n,g(t,u)),function(){return[r.references[n],function(t){return e(n,g(t,r.references[n]))}]}}function e(t,e){var i=r.references[t];r.references[t]=e,v(t=u[t][1])&&t(e,i),v(n)&&n()}var r={references:[]},u=[];return{registerStateKey:function(n,e){var r=u.length;return u.push([n,e]),t(r,n)},reset:function(){var n=r.references;r.references=[],u.forEach((function(e,r){return t(r,e[0],n[r])}))}}}function Z(n,t){var e=t.suiteId;return t=t.suiteName,{optionalFields:n.registerStateKey((function(){return{}})),suiteId:n.registerStateKey(e),suiteName:n.registerStateKey(t),testCallbacks:n.registerStateKey((function(){return{fieldCallbacks:{},doneCallbacks:[]}})),testObjects:n.registerStateKey((function(n){return{prev:n?n.current:[],current:[]}}))}}function $(n){return p(n)||o(n)}function nn(n){setTimeout((function(){throw Error(n)}),0)}function tn(){return I.useX().testCursor.getCursor()}function en(){return I.useX().testCursor.cursorAt()}function rn(){return I.useX().testCursor.next()}function un(n,t){if(n=void 0===(n=n.type)?R.DEFAULT:n,v(t)){var e={current:{},prev:{}},r=tn();return I.run({isolate:{type:n,keys:e}},(function(){I.useX().testCursor.addLevel(),e.prev=c(S(L()[0].prev,tn())).reduce((function(n,t){return t instanceof H&&!$(t.key)?(n[t.key]=t,n):n}),{}),F((function(n){return m(n,r,[])}));var n=t();return I.useX().testCursor.removeLevel(),rn(),n}))}}function on(n,t){return Object.prototype.hasOwnProperty.call(n,t)}function sn(n){if(n){if(function(n){return"number"==typeof n}(n))return 0===n;if(on(n,"length"))return a(n,0);if("object"==typeof n)return a(Object.keys(n),0)}return!0}!function(n){n.WARNINGS="warnings",n.ERRORS="errors"}(D||(D={})),function(n){n.ERROR_COUNT="errorCount",n.WARN_COUNT="warnCount"}(X||(X={}));var cn=i(sn);function an(n,t){return!!t&&!fn(n,t)}function fn(n,t){return!(!t||n.fieldName!==t)}function ln(n,t){return function(n,t){return!!n!=!!t}(n===D.WARNINGS,t.warns())}function pn(n,t,e){return!(!n.hasFailures()||an(n,e)||ln(t,n))}function dn(n){return gn(D.ERRORS,n)}function vn(n){return gn(D.WARNINGS,n)}function gn(n,t){return U().some((function(e){return pn(e,n,t)}))}function hn(n){return!!function(n){var t=U().reduce((function(n,t){return n[t.fieldName]||t.isOmitted()&&(n[t.fieldName]=!0),n}),{});return!!n&&!!t[n]}(n)||!dn(n)&&(!(sn(U())||function(n){var t=U();return!!n&&!t.find((function(t){return t.fieldName===n}))}(n)||function(n){var t=k()[0];return cn(W().filter((function(e){return!an(e,n)&&!0!==t[e.fieldName]})))}(n))&&function(n){var t=U(),e=k()[0];return t.every((function(t){return!!an(t,n)||(!0===e[t.fieldName]||t.isTested()||t.isOmitted())}))}(n))}function En(){var n=U(),t=b({errorCount:0,warnCount:0,testCount:0},{groups:{},tests:{},valid:!1});return n.reduce((function(n,t){return function(n,t){n[t.fieldName]=Nn(n,t),n[t.fieldName].valid=!1!==n[t.fieldName].valid&&hn(t.fieldName)}(n.tests,t),function(n,t){var e=t.groupName;e&&(n[e]=n[e]||{},n[e][t.fieldName]=Nn(n[e],t))}(n.groups,t),n}),t),t.valid=hn(),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}(t)}function Nn(n,t){function e(n){var t=function(n){return n===D.ERRORS?X.ERROR_COUNT:X.WARN_COUNT}(n);i[t]++,u&&(i[n]=(i[n]||[]).concat(u))}var r=t.fieldName,u=t.message;n[r]=n[r]||{errorCount:0,warnCount:0,testCount:0};var i=n[r];return t.isNonActionable()||(n[r].testCount++,t.isFailing()?e(D.ERRORS):t.isWarning()&&e(D.WARNINGS)),i}var mn=function(){return(mn=Object.assign||function(n){for(var t,e=1,r=arguments.length;e<r;e++)for(var u in t=arguments[e])Object.prototype.hasOwnProperty.call(t,u)&&(n[u]=t[u]);return n}).apply(this,arguments)};function yn(n,t,e){if(e||2===arguments.length)for(var r,u=0,i=t.length;u<i;u++)!r&&u in t||(r||(r=Array.prototype.slice.call(t,0,u)),r[u]=t[u]);return n.concat(r||Array.prototype.slice.call(t))}function Sn(n,t,e){var r;void 0===e&&(e={});var u=(e=e||{}).group,i=e.fieldName;return t.reduce((function(t,e){return function(n,t,e,r){return!!(function(n,t){return!(!t||n.groupName===t)}(n,e)||an(n,r)||ln(t,n))}(e,n,u,i)||!e.hasFailures()||(t[e.fieldName]=(t[e.fieldName]||[]).concat(e.message||[])),t}),mn({},i&&((r={})[i]=[],r)))}function Rn(n,t){return t?n[t]:n}function Cn(n){return Tn(D.ERRORS,n)}function bn(n){return Tn(D.WARNINGS,n)}function Tn(n,t){return Rn(n=Sn(n,U(),{fieldName:t}),t)}function In(n,t){return Rn(n=_n(D.ERRORS,n,t),t)}function On(n,t){return Rn(n=_n(D.WARNINGS,n,t),t)}function _n(n,t,e){return z(t,"get".concat(n[0].toUpperCase()).concat(n.slice(1),"ByGroup requires a group name. Received `").concat(t,"` instead.")),Sn(n,U(),{group:t,fieldName:e})}function An(n,t){return Ln(D.ERRORS,n,t)}function kn(n,t){return Ln(D.WARNINGS,n,t)}function Ln(n,t,e){return U().some((function(r){return t===r.groupName&&pn(r,n,e)}))}var xn=f(20);function Fn(){var n=U(),t={stateRef:O()};return xn([n],I.bind(t,(function(){var n=O().suiteName()[0];return b(En(),{getErrors:I.bind(t,Cn),getErrorsByGroup:I.bind(t,In),getWarnings:I.bind(t,bn),getWarningsByGroup:I.bind(t,On),hasErrors:I.bind(t,dn),hasErrorsByGroup:I.bind(t,An),hasWarnings:I.bind(t,vn),hasWarningsByGroup:I.bind(t,kn),isValid:I.bind(t,hn),suiteName:n})})))}function Wn(n){var t=W();return!sn(t)&&(n?t.some((function(t){return fn(t,n)})):cn(t))}var Gn=f(20);function Pn(){var n=U(),t={stateRef:O()};return Gn([n],I.bind(t,(function(){return b({},Fn(),{done:I.bind(t,Xn)})})))}function Un(n,t,e){return!(v(n)&&(!t||e.tests[t]&&!sn(e.tests[t].testCount)))}function wn(n){return!(Wn()&&(!n||Wn(n)))}var Dn,Xn=function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var e=(n=n.reverse())[0];if(n=n[1],t=Pn(),Un(e,n,t))return t;var r=function(){return e(Fn())};return wn(n)?(r(),t):(Hn(r,n),t)};function Hn(n,t){var e=I.bind({},n);(0,A()[1])((function(n){return t?n.fieldCallbacks[t]=(n.fieldCallbacks[t]||[]).concat(e):n.doneCallbacks.push(e),n}))}function Kn(n){return n.forEach((function(n){return n()}))}function qn(){var n=function(){var n={};return{emit:function(t,e){(n[t]||[]).forEach((function(n){n(e)}))},on:function(t,e){return n[t]=(n[t]||[]).concat(e),{off:function(){n[t]=n[t].filter((function(n){return n!==e}))}}}}}();return n.on(Dn.TEST_COMPLETED,(function(t){t.isCanceled()||(t.done(),function(n){var t=A()[0].fieldCallbacks;n&&!Wn(n)&&l(t[n])&&Kn(t[n])}(t.fieldName),Wn()||n.emit(Dn.ALL_RUNNING_TESTS_FINISHED))})),n.on(Dn.SUITE_CALLBACK_DONE_RUNNING,(function(){!function(){var n=k()[0];if(!sn(n)){var t={};F((function(e){return N(e,(function(e){var r=e.fieldName;if(t.hasOwnProperty(r))t[e.fieldName]&&e.omit();else{var u=n[r];v(u)&&(t[r]=u(),t[e.fieldName]&&e.omit())}return e}))}))}}()})),n.on(Dn.ALL_RUNNING_TESTS_FINISHED,(function(){Kn(A()[0].doneCallbacks)})),n.on(Dn.REMOVE_FIELD,(function(n){w((function(t){fn(t,n)&&(t.cancel(),function(n){F((function(t){return N(t,(function(t){return n!==t?t:null}))}))}(t))}))})),n.on(Dn.RESET_FIELD,(function(n){w((function(t){fn(t,n)&&t.reset()}))})),n}function Mn(){var n=I.useX();return z(n.bus),n.bus}!function(n){n.TEST_COMPLETED="test_completed",n.ALL_RUNNING_TESTS_FINISHED="all_running_tests_finished",n.REMOVE_FIELD="remove_field",n.RESET_FIELD="reset_field",n.SUITE_CALLBACK_DONE_RUNNING="suite_callback_done_running"}(Dn||(Dn={}));function jn(){return!!I.useX().skipped}function Bn(n){return Jn(0,"tests",n)}function Vn(n){return Jn(1,"tests",n)}function Yn(n){var t=n.fieldName;if(n=n.groupName,jn())return!0;var e=I.useX(),r=e.exclusion;e=e.inclusion;var u=r.tests,i=u[t];if(!1===i)return!0;if(i=!0===i,n){if(function(n){var t=I.useX().exclusion.groups;if(on(t,n))return!1===t[n];for(var e in t)if(!0===t[e])return!0;return!1}(n))return!0;if(!0===r.groups[n])return!i&&(!!zn(u)||!1===u[t])}return!!function(n){var t=I.useX().exclusion;return!!function(){var n,t=I.useX().exclusion;for(n in t.groups)if(t.groups[n])return!0;return!1}()&&(!n||(!(n in t.groups)||!t.groups[n]))}(n)||!i&&(!!zn(u)&&!g(e[t]))}function Jn(n,t,e){var r=I.useX("hook called outside of a running suite.");e&&c(e).forEach((function(e){u(e)&&(r.exclusion[t][e]=0===n)}))}function zn(n){for(var t in n)if(!0===n[t])return!0;return!1}function Qn(n){return"Wrong arguments passed to group. Group ".concat(n,".")}function Zn(n){return!(!function(n){return I.useX().mode[0]===n}(C.EAGER)||!dn(n.fieldName))}function $n(){return!!I.useX().omitted}function nt(n){return n&&v(n.then)}function tt(n,t){return n.fieldName===t.fieldName&&n.groupName===t.groupName}function et(n){var t=n.asyncTest,e=n.message;if(nt(t)){var r=Mn().emit,i=O(),o=I.bind({stateRef:i},(function(){x(),r(Dn.TEST_COMPLETED,n)}));i=I.bind({stateRef:i},(function(t){n.isCanceled()||(n.message=u(t)?t:e,n.fail(),o())}));try{t.then(o,i)}catch(n){i()}}}function rt(n){var t=Mn(),e=function(n){return I.run({currentTest:n},(function(){try{var t=n.testFn()}catch(e){s(n.message,e)&&(n.message=e),t=!1}return!1===t&&n.fail(),t}))}(n);try{nt(e)?(n.asyncTest=e,n.setPending(),et(n)):t.emit(Dn.TEST_COMPLETED,n)}catch(t){throw Error("Unexpected error encountered during test registration.\n Test Object: ".concat(JSON.stringify(n),".\n Error: ").concat(t,"."))}}function ut(n){var t=L()[0].prev;return sn(t)?(it(n),n):(t=function(n){var t=tn();return function(n,t){return S(n,t)[E(t)]}(n,t)}(t),$(n.key)?(function(n,t){return cn(n)&&!tt(n,t)}(t,n)&&(function(n,t){I.useX().isolate.type===R.EACH||nn("Vest Critical Error: Tests called in different order than previous run.\n expected: ".concat(n.fieldName,"\n received: ").concat(t.fieldName,'\n This can happen on one of two reasons:\n 1. You\'re using if/else statements to conditionally select tests. Instead, use "skipWhen".\n 2. You are iterating over a list of tests, and their order changed. Use "each" and a custom key prop so that Vest retains their state.'))}(t,n),function(){var n=L(),t=n[1],e=n[0].prev;n=S(e,tn());var r=en();n.splice(r),t((function(n){return{prev:e,current:n.current}}))}(),t=null),it(n=h(t,n)),n):(it(n=function(n,t){var e=function(n){return I.useX().isolate.keys.prev[n]}(n);return e&&(t=e),function(n,t){var e=I.useX().isolate.keys.current;$(e[n])?e[n]=t:nn('Encountered the same test key "'.concat(n,"\" twice. This may lead to tests overriding each other's results, or to tests being unexpectedly omitted."))}(n,t),t}(n.key,n)),n))}function it(n){var t=tn();F((function(e){return m(e,t,n)}))}function ot(n){if(Zn(n))return n.skip(),ut(n),rn(),n;var t=ut(n);return $n()?(t.omit(),rn(),t):Yn(n)?(t.skip(jn()),rn(),t):(function(n,t){t!==n&&tt(n,t)&&n.isPending()&&n.cancel()}(t,n),it(n),rn(),function(n){n.isUntested()?rt(n):nt(n.asyncTest)&&(n.setPending(),et(n))}(n),n)}function st(n){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];var r=v(t[1])?t:yn([void 0],t,!0);t=r[0],e=r[1],r=r[2],z(u(n),at("fieldName","string")),z(v(e),at("Test callback","function"));var i=I.useX();return ot(t=new H(n,e,{message:t,groupName:i.groupName,key:r}))}Bn.group=function(n){return Jn(0,"groups",n)},Vn.group=function(n){return Jn(1,"groups",n)};var ct=b(st,{memo:function(n){var t=f(100);return function(e){for(var r=[],u=1;u<arguments.length;u++)r[u-1]=arguments[u];u=en();var i=(r=r.reverse())[0],o=r[1],s=r[2];return u=[_(),e,u].concat(i),p(r=t.get(u))?t(u,(function(){return n(e,s,o)})):r[1].isCanceled()?(t.invalidate(u),t(u,(function(){return n(e,s,o)}))):ot(r[1])}}(st)});function at(n,t){return"Incompatible params passed to test function. ".concat(n," must be a ").concat(t)}Object.defineProperty(exports,"enforce",{enumerable:!0,get:function(){return t.enforce}}),exports.VERSION="4.3.0",exports.context=I,exports.create=function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var e=(n=n.reverse())[0];n=n[1],z(v(e),"vest.create: Expected callback to be a function.");var u=qn(),i=Q();return n={stateRef:Z(i,{suiteId:r(),suiteName:n}),bus:u},b(I.bind(n,(function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return i.reset(),un({type:R.SUITE},(function(){e.apply(void 0,n)})),u.emit(Dn.SUITE_CALLBACK_DONE_RUNNING),Pn()})),{get:I.bind(n,Fn),remove:I.bind(n,(function(n){u.emit(Dn.REMOVE_FIELD,n)})),reset:i.reset,resetField:I.bind(n,(function(n){u.emit(Dn.RESET_FIELD,n)}))})},exports.each=function(n,t){z(v(t),"each callback must be a function"),un({type:R.EACH},(function(){n.forEach((function(n,e){t(n,e)}))}))},exports.eager=function(){!function(n){I.useX().mode[0]=n}(C.EAGER)},exports.group=function(n,t){z(u(n),Qn("name must be a string")),z(v(t),Qn("callback must be a function")),un({type:R.GROUP},(function(){I.run({groupName:n},t)}))},exports.include=function(n){function t(t){var e=I.useX(),r=e.exclusion;e.inclusion[n]=function(){return on(r.tests,n)?h(r.tests[n],!0):u(t)?!!r.tests[t]:g(t,g(Fn))}}var e=I.useX();return n?(e.inclusion[n]=h(e.exclusion.tests[n],!0),{when:t}):{when:t}},exports.omitWhen=function(n,t){un({type:R.OMIT_WHEN},(function(){I.run({omitted:$n()||g(n,g(Fn))},(function(){return t()}))}))},exports.only=Bn,exports.optional=function(n){(0,k()[1])((function(t){if(l(n)||u(n))c(n).forEach((function(n){t[n]=!0}));else for(var e in n)t[e]=n[e];return t}))},exports.skip=Vn,exports.skipWhen=function(n,t){un({type:R.SKIP_WHEN},(function(){I.run({skipped:jn()||g(n,g(Fn))},(function(){return t()}))}))},exports.test=ct,exports.warn=function(){var n=I.useX("warn hook called outside of a running suite.");z(n.currentTest,"warn called outside of a test."),n.currentTest.warn()};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n,t=require("n4s"),e=require("context"),r=(n=0,function(){return"".concat(n++)});function u(n){return String(n)===n}function i(n){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return!n.apply(void 0,t)}}function o(n){return void 0===n}function s(n){return[].concat(n)}function c(n){var t=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(t))}function a(n,t){return function(n,t){return c(n)&&c(t)&&Number(n)===Number(t)}(n.length,t)}function f(n,t){return c(n)&&c(t)&&Number(n)>Number(t)}function l(n){function t(n){return e.findIndex((function(t){var e=t[0];return a(n,e.length)&&n.every((function(n,t){return n===e[t]}))}))}void 0===n&&(n=1);var e=[],r=function(t,u){var i=r.get(t);return i?i[1]:(u=u(),e.unshift([t.concat(),u]),function(n,t){return f(n.length,t)}(e,n)&&(e.length=n),u)};return r.invalidate=function(n){-1<(n=t(n))&&e.splice(n,1)},r.get=function(n){return e[t(n)]||null},r}function p(n){return!!Array.isArray(n)}function d(n){return null===n}var v=i(d);function h(n){return"function"==typeof n}function g(n){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];return h(n)?n.apply(void 0,t):n}function E(n,t){var e;return null!==(e=g(n))&&void 0!==e?e:t}function N(n){return(n=s(n))[n.length-1]}function m(n,t){for(var e=[],r=0;r<n.length;r++){var u=n[r];p(u)?e.push(m(u,t)):(u=t(u),v(u)&&e.push(u))}return e}function y(n,t,e){return S(n,t)[N(t)]=e,n}function R(n){return s(n).reduce((function(n,t){return p(t)?n.concat(R(t)):s(n).concat(t)}),[])}function S(n,t){var e=0;for(t=t.slice(0,-1);e<t.length;e++){var r=t[e];n[r]=E(n[r],[]),n=n[r]}return n}var C,b,T=Object.assign;function _(){function n(){t=[0]}var t=[];return n(),{addLevel:function(){t.push(0)},cursorAt:function(){return N(t)},getCursor:function(){return s(t)},next:function(){return t[t.length-1]++,N(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.OMIT_WHEN=4]="OMIT_WHEN",n[n.GROUP=5]="GROUP"}(C||(C={})),function(n){n[n.ALL=0]="ALL",n[n.EAGER=1]="EAGER"}(b||(b={}));var I=e.createContext((function(n,t){return t?null:T({},{exclusion:{tests:{},groups:{}},inclusion:{},isolate:{type:C.DEFAULT,keys:{current:{},prev:{}}},mode:[b.ALL],testCursor:_()},n)}));function O(){return I.useX().stateRef}function A(){return O().suiteId()[0]}function k(){return O().testCallbacks()}function L(){return O().optionalFields()}function x(){return O().testObjects()}function F(){(0,x()[1])((function(n){return{prev:n.prev,current:s(n.current)}}))}function U(n){(0,x()[1])((function(t){return{prev:t.prev,current:s(n(t.current))}}))}function W(){return R(m(x()[0].current,(function(n){return n.isPending()?n:null})))}var G,P=l();function D(){var n=x()[0].current;return P([n],(function(){return R(n)}))}function w(n){D().forEach(n)}!function(n){n.Error="error",n.Warning="warning"}(G||(G={}));var X,H,K=function(){function n(n,t,e){var u=void 0===e?{}:e;e=u.message;var i=u.groupName;u=u.key,this.key=null,this.id=r(),this.severity=G.Error,this.status=M,this.fieldName=n,this.testFn=t,i&&(this.groupName=i),e&&(this.message=e),u&&(this.key=u)}return n.prototype.run=function(){try{var n=this.testFn()}catch(t){(function(n,t){return o(n)&&u(t)})(this.message,t)&&(this.message=t),n=!1}return!1===n&&this.fail(),n},n.prototype.setStatus=function(n){this.isFinalStatus()&&n!==z||(this.status=n)},n.prototype.warns=function(){return this.severity===G.Warning},n.prototype.setPending=function(){this.setStatus(Y)},n.prototype.fail=function(){this.setStatus(this.warns()?B:j)},n.prototype.done=function(){this.isFinalStatus()||this.setStatus(V)},n.prototype.warn=function(){this.severity=G.Warning},n.prototype.isFinalStatus=function(){return this.hasFailures()||this.isCanceled()||this.isPassing()},n.prototype.skip=function(n){this.isPending()&&!n||this.setStatus(q)},n.prototype.cancel=function(){this.setStatus(J),F()},n.prototype.reset=function(){this.status=M,F()},n.prototype.omit=function(){this.setStatus(z)},n.prototype.valueOf=function(){return!this.isFailing()},n.prototype.hasFailures=function(){return this.isFailing()||this.isWarning()},n.prototype.isNonActionable=function(){return this.isSkipped()||this.isOmitted()||this.isCanceled()},n.prototype.isPending=function(){return this.statusEquals(Y)},n.prototype.isTested=function(){return this.hasFailures()||this.isPassing()},n.prototype.isOmitted=function(){return this.statusEquals(z)},n.prototype.isUntested=function(){return this.statusEquals(M)},n.prototype.isFailing=function(){return this.statusEquals(j)},n.prototype.isCanceled=function(){return this.statusEquals(J)},n.prototype.isSkipped=function(){return this.statusEquals(q)},n.prototype.isPassing=function(){return this.statusEquals(V)},n.prototype.isWarning=function(){return this.statusEquals(B)},n.prototype.statusEquals=function(n){return this.status===n},n}(),M="UNTESTED",q="SKIPPED",j="FAILED",B="WARNING",V="PASSING",Y="PENDING",J="CANCELED",z="OMITTED";function Q(n,t){if(!n)throw t instanceof String?t.valueOf():Error(t?g(t):t)}function Z(n){function t(n,t,u){return r.references.push(),e(n,g(t,u)),function(){return[r.references[n],function(t){return e(n,g(t,r.references[n]))}]}}function e(t,e){var i=r.references[t];r.references[t]=e,h(t=u[t][1])&&t(e,i),h(n)&&n()}var r={references:[]},u=[];return{registerStateKey:function(n,e){var r=u.length;return u.push([n,e]),t(r,n)},reset:function(){var n=r.references;r.references=[],u.forEach((function(e,r){return t(r,e[0],n[r])}))}}}function $(n,t){var e=t.suiteId;return t=t.suiteName,{optionalFields:n.registerStateKey((function(){return{}})),suiteId:n.registerStateKey(e),suiteName:n.registerStateKey(t),testCallbacks:n.registerStateKey((function(){return{fieldCallbacks:{},doneCallbacks:[]}})),testObjects:n.registerStateKey((function(n){return{prev:n?n.current:[],current:[]}}))}}function nn(n){return d(n)||o(n)}function tn(n){setTimeout((function(){throw Error(n)}),0)}function en(){return I.useX().testCursor.getCursor()}function rn(){return I.useX().testCursor.cursorAt()}function un(){return I.useX().testCursor.next()}function on(n,t){n=void 0===(n=n.type)?C.DEFAULT:n,Q(h(t));var e={current:{},prev:{}},r=en();return I.run({isolate:{type:n,keys:e}},(function(){I.useX().testCursor.addLevel(),e.prev=s(S(x()[0].prev,en())).reduce((function(n,t){return t instanceof K&&!nn(t.key)?(n[t.key]=t,n):n}),{}),U((function(n){return y(n,r,[])}));var n=t();return I.useX().testCursor.removeLevel(),un(),n}))}function sn(n){return n===X.ERRORS?H.ERROR_COUNT:H.WARN_COUNT}function cn(n,t){return Object.prototype.hasOwnProperty.call(n,t)}function an(n){return!n||(function(n){return"number"==typeof n}(n)?0===n:cn(n,"length")?a(n,0):"object"==typeof n&&a(Object.keys(n),0))}!function(n){n.WARNINGS="warnings",n.ERRORS="errors"}(X||(X={})),function(n){n.ERROR_COUNT="errorCount",n.WARN_COUNT="warnCount"}(H||(H={}));var fn=i(an);function ln(n,t){return!!t&&!pn(n,t)}function pn(n,t){return!(!t||n.fieldName!==t)}function dn(n){return function(n,t){return D().some((function(e){return function(n,t,e){return!(!n.hasFailures()||ln(n,e)||function(n,t){return function(n,t){return!!n!=!!t}(n===X.WARNINGS,t.warns())}(t,n))}(e,n,t)}))}(X.ERRORS,n)}function vn(n){return!!function(n){return!!n&&D().some((function(t){return t.fieldName===n&&t.isOmitted()}))}(n)||!dn(n)&&(!an(D())&&!function(n){var t=L()[0];return fn(W().filter((function(e){return!ln(e,n)&&!0!==t[e.fieldName]})))}(n)&&function(n){var t=D(),e=L()[0];return t.every((function(t){return!!ln(t,n)||(!0===e[t.fieldName]||t.isTested()||t.isOmitted())}))}(n))}function hn(){var n=I.useX().summary;return Q(n),n}function gn(){var n=D(),t=T({errorCount:0,warnCount:0,testCount:0},{groups:{},tests:{},valid:!1});return n.reduce((function(n,t){return function(n,t){n[t.fieldName]=En(n,t),n[t.fieldName].valid=!1!==n[t.fieldName].valid&&vn(t.fieldName)}(n.tests,t),function(n,t){var e=t.groupName;e&&(n[e]=n[e]||{},n[e][t.fieldName]=En(n[e],t))}(n.groups,t),n}),t),t.valid=vn(),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}(t)}function En(n,t){function e(n){var t=sn(n);i[t]++,u&&(i[n]=(i[n]||[]).concat(u))}var r=t.fieldName,u=t.message;n[r]=n[r]||T({errorCount:0,warnCount:0,testCount:0},{errors:[],warnings:[]});var i=n[r];return t.isNonActionable()||(n[r].testCount++,t.isFailing()?e(X.ERRORS):t.isWarning()&&e(X.WARNINGS)),i}function Nn(n,t,e){return e?function(n,t,e){var r;return(null===(r=null==n?void 0:n[e])||void 0===r?void 0:r[t])||[]}(n,t,e):function(n,t){var e,r={};for(e in n)r[e]=n[e][t]||[];return r}(n,t)}function mn(n){return Rn(X.ERRORS,n)}function yn(n){return Rn(X.WARNINGS,n)}function Rn(n,t){return Nn(hn().tests,n,t)}function Sn(n,t){return bn(n,X.ERRORS,t)}function Cn(n,t){return bn(n,X.WARNINGS,t)}function bn(n,t,e){return Nn(hn().groups[n],t,e)}function Tn(n){return f(n,0)}function _n(n){return On(H.ERROR_COUNT,n)}function In(n){return On(H.WARN_COUNT,n)}function On(n,t){var e,r=hn();return Tn(t?null===(e=r.tests[t])||void 0===e?void 0:e[n]:r[n])}function An(n,t){return Ln(X.ERRORS,n,t)}function kn(n,t){return Ln(X.WARNINGS,n,t)}function Ln(n,t,e){var r,u,i=hn();if(n=sn(n),!(t=i.groups[t]))return!1;if(e)return Tn(null===(r=t[e])||void 0===r?void 0:r[n]);for(var o in t)if(Tn(null===(u=t[o])||void 0===u?void 0:u[n]))return!0;return!1}function xn(n){var t,e=hn();return n?!(null===(t=e.tests[n])||void 0===t||!t.valid):e.valid}var Fn=l(1);function Un(){var n=D(),t={stateRef:O()};return Fn([n],I.bind(t,(function(){var n=gn(),t=O().suiteName()[0],e={summary:n};return T(n,{getErrors:I.bind(e,mn),getErrorsByGroup:I.bind(e,Sn),getWarnings:I.bind(e,yn),getWarningsByGroup:I.bind(e,Cn),hasErrors:I.bind(e,_n),hasErrorsByGroup:I.bind(e,An),hasWarnings:I.bind(e,In),hasWarningsByGroup:I.bind(e,kn),isValid:I.bind(e,xn),suiteName:t})})))}function Wn(n){var t=W();return!an(t)&&(n?t.some((function(t){return pn(t,n)})):fn(t))}var Gn=l(20);function Pn(){var n=D(),t={stateRef:O()};return Gn([n],I.bind(t,(function(){return T({},Un(),{done:I.bind(t,Hn)})})))}function Dn(n,t,e){return!(h(n)&&(!t||e.tests[t]&&!an(e.tests[t].testCount)))}function wn(n){return!(Wn()&&(!n||Wn(n)))}var Xn,Hn=function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var e=(n=n.reverse())[0];if(n=n[1],t=Pn(),Dn(e,n,t))return t;var r=function(){return e(Un())};return wn(n)?(r(),t):(Kn(r,n),t)};function Kn(n,t){(0,k()[1])((function(e){return t?e.fieldCallbacks[t]=(e.fieldCallbacks[t]||[]).concat(n):e.doneCallbacks.push(n),e}))}function Mn(n){return n.forEach((function(n){return n()}))}function qn(){var n=function(){var n={};return{emit:function(t,e){(n[t]||[]).forEach((function(n){n(e)}))},on:function(t,e){return n[t]=(n[t]||[]).concat(e),{off:function(){n[t]=(n[t]||[]).filter((function(n){return n!==e}))}}}}}();return n.on(Xn.TEST_COMPLETED,(function(t){t.isCanceled()||(t.done(),function(n){var t=k()[0].fieldCallbacks;n&&!Wn(n)&&p(t[n])&&Mn(t[n])}(t.fieldName),Wn()||n.emit(Xn.ALL_RUNNING_TESTS_FINISHED))})),n.on(Xn.SUITE_CALLBACK_DONE_RUNNING,(function(){!function(){var n=L()[0];if(!an(n)){var t={};U((function(e){return m(e,(function(e){if(cn(t,e.fieldName))t[e.fieldName]&&e.omit();else{var r=n[e.fieldName];h(r)&&(t[e.fieldName]=r(),t[e.fieldName]&&e.omit())}return e}))}))}}()})),n.on(Xn.ALL_RUNNING_TESTS_FINISHED,(function(){Mn(k()[0].doneCallbacks)})),n.on(Xn.REMOVE_FIELD,(function(n){w((function(t){pn(t,n)&&(t.cancel(),function(n){U((function(t){return m(t,(function(t){return n!==t?t:null}))}))}(t))}))})),n.on(Xn.RESET_FIELD,(function(n){w((function(t){pn(t,n)&&t.reset()}))})),n}function jn(){var n=I.useX();return Q(n.bus),n.bus}!function(n){n.TEST_COMPLETED="test_completed",n.ALL_RUNNING_TESTS_FINISHED="all_running_tests_finished",n.REMOVE_FIELD="remove_field",n.RESET_FIELD="reset_field",n.SUITE_CALLBACK_DONE_RUNNING="suite_callback_done_running"}(Xn||(Xn={}));function Bn(){return!!I.useX().skipped}function Vn(n){return zn(0,"tests",n)}function Yn(n){return zn(1,"tests",n)}function Jn(n){var t=n.fieldName;if(n=n.groupName,Bn())return!0;var e=I.useX(),r=e.exclusion;e=e.inclusion;var u=r.tests,i=u[t];if(!1===i)return!0;if(i=!0===i,n){if(function(n){var t=I.useX().exclusion.groups;return cn(t,n)?!1===t[n]:Zn()}(n))return!0;if(!0===r.groups[n])return!i&&(!!Qn(u)||!1===u[t])}return!!function(n){return!!Zn()&&!n}(n)||!i&&(!!Qn(u)&&!g(e[t]))}function zn(n,t,e){var r=I.useX("hook called outside of a running suite.");e&&s(e).forEach((function(e){u(e)&&(r.exclusion[t][e]=0===n)}))}function Qn(n){for(var t in n)if(!0===n[t])return!0;return!1}function Zn(){var n,t=I.useX().exclusion;for(n in t.groups)if(t.groups[n])return!0;return!1}function $n(n){return"Wrong arguments passed to group. Group ".concat(n,".")}function nt(n){return!(!function(n){return I.useX().mode[0]===n}(b.EAGER)||!dn(n.fieldName))}function tt(){return!!I.useX().omitted}function et(n,t,e){if(e||2===arguments.length)for(var r,u=0,i=t.length;u<i;u++)!r&&u in t||(r||(r=Array.prototype.slice.call(t,0,u)),r[u]=t[u]);return n.concat(r||Array.prototype.slice.call(t))}function rt(n){return n&&h(n.then)}function ut(n,t){return n.fieldName===t.fieldName&&n.groupName===t.groupName}function it(n){var t=n.asyncTest,e=n.message;if(rt(t)){var r=jn().emit,i=O(),o=I.bind({stateRef:i},(function(){F(),r(Xn.TEST_COMPLETED,n)}));i=I.bind({stateRef:i},(function(t){n.isCanceled()||(n.message=u(t)?t:e,n.fail(),o())}));try{t.then(o,i)}catch(n){i()}}}function ot(n){var t=jn(),e=function(n){return I.run({currentTest:n},(function(){return n.run()}))}(n);try{rt(e)?(n.asyncTest=e,n.setPending(),it(n)):t.emit(Xn.TEST_COMPLETED,n)}catch(t){throw Error("Unexpected error encountered during test registration.\n Test Object: ".concat(JSON.stringify(n),".\n Error: ").concat(t,"."))}}function st(n){var t=x()[0].prev;return an(t)?(ct(n),n):(t=function(n){var t=en();return function(n,t){return S(n,t)[N(t)]}(n,t)}(t),nn(n.key)?(function(n,t){return fn(n)&&!ut(n,t)}(t,n)&&(function(n,t){I.useX().isolate.type===C.EACH||tn("Vest Critical Error: Tests called in different order than previous run.\n expected: ".concat(n.fieldName,"\n received: ").concat(t.fieldName,'\n This can happen on one of two reasons:\n 1. You\'re using if/else statements to conditionally select tests. Instead, use "skipWhen".\n 2. You are iterating over a list of tests, and their order changed. Use "each" and a custom key prop so that Vest retains their state.'))}(t,n),function(){var n=x(),t=n[1],e=n[0].prev;n=S(e,en());var r=rn();n.splice(r),t((function(n){return{prev:e,current:n.current}}))}(),t=null),ct(n=E(t,n)),n):(ct(n=function(n,t){var e=function(n){return I.useX().isolate.keys.prev[n]}(n);return e&&(t=e),function(n,t){var e=I.useX().isolate.keys.current;nn(e[n])?e[n]=t:tn('Encountered the same test key "'.concat(n,"\" twice. This may lead to tests overriding each other's results, or to tests being unexpectedly omitted."))}(n,t),t}(n.key,n)),n))}function ct(n){var t=en();U((function(e){return y(e,t,n)}))}function at(n){if(nt(n))return n.skip(),st(n),un(),n;var t=st(n);return tt()?(t.omit(),un(),t):Jn(n)?(t.skip(Bn()),un(),t):(function(n,t){t!==n&&ut(n,t)&&n.isPending()&&n.cancel()}(t,n),ct(n),un(),function(n){n.isUntested()?ot(n):rt(n.asyncTest)&&(n.setPending(),it(n))}(n),n)}function ft(n){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];var r=h(t[1])?t:et([void 0],t,!0);t=r[0],e=r[1],r=r[2],Q(u(n),pt("fieldName","string")),Q(h(e),pt("Test callback","function"));var i=I.useX();return at(t=new K(n,e,{message:t,groupName:i.groupName,key:r}))}Vn.group=function(n){return zn(0,"groups",n)},Yn.group=function(n){return zn(1,"groups",n)};var lt=T(ft,{memo:function(n){var t=l(10);return function(e){for(var r=[],u=1;u<arguments.length;u++)r[u-1]=arguments[u];u=rn();var i=(r=r.reverse())[0],o=r[1],s=r[2];return u=[A(),e,u].concat(i),d(r=t.get(u))?t(u,(function(){return n(e,s,o)})):r[1].isCanceled()?(t.invalidate(u),t(u,(function(){return n(e,s,o)}))):at(r[1])}}(ft)});function pt(n,t){return"Incompatible params passed to test function. ".concat(n," must be a ").concat(t)}Object.defineProperty(exports,"enforce",{enumerable:!0,get:function(){return t.enforce}}),exports.VERSION="4.3.2",exports.context=I,exports.create=function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var e=(n=n.reverse())[0];n=n[1],Q(h(e),"vest.create: Expected callback to be a function.");var u=qn(),i=Z();return n={stateRef:$(i,{suiteId:r(),suiteName:n}),bus:u},T(I.bind(n,(function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return i.reset(),on({type:C.SUITE},(function(){e.apply(void 0,n)})),u.emit(Xn.SUITE_CALLBACK_DONE_RUNNING),Pn()})),{get:I.bind(n,Un),remove:I.bind(n,(function(n){u.emit(Xn.REMOVE_FIELD,n)})),reset:i.reset,resetField:I.bind(n,(function(n){u.emit(Xn.RESET_FIELD,n)}))})},exports.each=function(n,t){Q(h(t),"each callback must be a function"),on({type:C.EACH},(function(){n.forEach((function(n,e){t(n,e)}))}))},exports.eager=function(){!function(n){I.useX().mode[0]=n}(b.EAGER)},exports.group=function(n,t){Q(u(n),$n("name must be a string")),Q(h(t),$n("callback must be a function")),on({type:C.GROUP},(function(){I.run({groupName:n},t)}))},exports.include=function(n){var t=I.useX(),e=t.inclusion;return t=t.exclusion,Q(u(n)),e[n]=E(t.tests[n],!0),{when:function(t){var e=I.useX(),r=e.exclusion;e.inclusion[n]=function(){return cn(r.tests,n)?E(r.tests[n],!0):u(t)?!!r.tests[t]:g(t,g(Un))}}}},exports.omitWhen=function(n,t){on({type:C.OMIT_WHEN},(function(){I.run({omitted:tt()||g(n,g(Un))},(function(){return t()}))}))},exports.only=Vn,exports.optional=function(n){(0,L()[1])((function(t){if(p(n)||u(n))s(n).forEach((function(n){t[n]=!0}));else for(var e in n)t[e]=n[e];return t}))},exports.skip=Yn,exports.skipWhen=function(n,t){on({type:C.SKIP_WHEN},(function(){I.run({skipped:Bn()||g(n,g(Un))},(function(){return t()}))}))},exports.test=lt,exports.warn=function(){var n=I.useX("warn hook called outside of a running suite.");Q(n.currentTest,"warn called outside of a test."),n.currentTest.warn()};
@@ -2,13 +2,6 @@ function isFunction(value) {
2
2
  return typeof value === 'function';
3
3
  }
4
4
 
5
- /**
6
- * A safe hasOwnProperty access
7
- */
8
- function hasOwnProperty(obj, key) {
9
- return Object.prototype.hasOwnProperty.call(obj, key);
10
- }
11
-
12
5
  function optionalFunctionValue(value) {
13
6
  var args = [];
14
7
  for (var _i = 1; _i < arguments.length; _i++) {
@@ -17,6 +10,18 @@ function optionalFunctionValue(value) {
17
10
  return isFunction(value) ? value.apply(void 0, args) : value;
18
11
  }
19
12
 
13
+ function defaultTo(callback, defaultValue) {
14
+ var _a;
15
+ return (_a = optionalFunctionValue(callback)) !== null && _a !== void 0 ? _a : defaultValue;
16
+ }
17
+
18
+ /**
19
+ * A safe hasOwnProperty access
20
+ */
21
+ function hasOwnProperty(obj, key) {
22
+ return Object.prototype.hasOwnProperty.call(obj, key);
23
+ }
24
+
20
25
  function invariant(condition,
21
26
  // eslint-disable-next-line @typescript-eslint/ban-types
22
27
  message) {
@@ -84,22 +89,20 @@ function parse(res) {
84
89
  return res.testCount === 0 || !selectors.tested(fieldName);
85
90
  }
86
91
  function isValid(fieldName) {
87
- var _a, _b;
88
- return Boolean(fieldName ? (_b = (_a = res.tests) === null || _a === void 0 ? void 0 : _a[fieldName]) === null || _b === void 0 ? void 0 : _b.valid : res.valid);
92
+ var _a;
93
+ return fieldName ? Boolean((_a = res.tests[fieldName]) === null || _a === void 0 ? void 0 : _a.valid) : res.valid;
89
94
  }
90
95
  function hasWarnings(fieldName) {
91
- return hasFailures(res, SeverityCount.WARN_COUNT, fieldName);
96
+ return hasFailures(SeverityCount.WARN_COUNT, fieldName);
92
97
  }
93
98
  function hasErrors(fieldName) {
94
- return hasFailures(res, SeverityCount.ERROR_COUNT, fieldName);
99
+ return hasFailures(SeverityCount.ERROR_COUNT, fieldName);
100
+ }
101
+ function hasFailures(countKey, fieldName) {
102
+ var _a;
103
+ var failureCount = defaultTo(fieldName ? (_a = res.tests[fieldName]) === null || _a === void 0 ? void 0 : _a[countKey] : res[countKey], 0);
104
+ return isPositive(failureCount);
95
105
  }
96
- }
97
- function hasFailures(res, countKey, fieldName) {
98
- var _a, _b, _c;
99
- var failureCount = fieldName
100
- ? (_b = (_a = res.tests) === null || _a === void 0 ? void 0 : _a[fieldName]) === null || _b === void 0 ? void 0 : _b[countKey]
101
- : (_c = res[countKey]) !== null && _c !== void 0 ? _c : 0;
102
- return isPositive(failureCount);
103
106
  }
104
107
 
105
108
  /**
@@ -1 +1 @@
1
- function t(t){var n=Number(t);return!(isNaN(parseFloat(String(t)))||isNaN(Number(t))||!isFinite(n))}function n(n,r){return t(n)&&t(r)&&Number(n)>Number(r)}var r,e=r||(r={});e.WARNINGS="warnings",e.ERRORS="errors";var o,u=o||(o={});function i(t){!function(t,n){if(!t)throw n instanceof String?n.valueOf():Error(n?function(t){for(var n=[],r=1;r<arguments.length;r++)n[r-1]=arguments[r];return"function"==typeof t?t.apply(void 0,n):t}(n):n)}(t&&Object.prototype.hasOwnProperty.call(t,"valid"),"Vest parser: expected argument at position 0 to be Vest's result object.");var r={},e={invalid:function(n){return a(t,o.ERROR_COUNT,n)},tested:function(o){return o?Object.prototype.hasOwnProperty.call(r,o)?r[o]:(r[o]=Object.prototype.hasOwnProperty.call(t.tests,o)&&n(t.tests[o].testCount,0),e.tested(o)):n(t.testCount,0)},untested:function(n){return 0===t.testCount||!e.tested(n)},valid:function(n){var r,e;return!!(n?null!==(e=null===(r=t.tests)||void 0===r?void 0:r[n])&&void 0!==e&&e.valid:t.valid)},warning:function(n){return a(t,o.WARN_COUNT,n)}};return e}function a(t,r,e){var o,u,i;return n(t=e?null===(u=null===(o=t.tests)||void 0===o?void 0:o[e])||void 0===u?void 0:u[r]:null!==(i=t[r])&&void 0!==i?i:0,0)}u.ERROR_COUNT="errorCount",u.WARN_COUNT="warnCount";export default function(t,n){void 0===n&&(n={});var r=i(t);return function(t){var e,o=[];for(e in n){var u=e;"function"==typeof r[u]&&r[u](t)&&o.push(n[u])}return o.join(" ")}}
1
+ function t(t){for(var n=[],r=1;r<arguments.length;r++)n[r-1]=arguments[r];return"function"==typeof t?t.apply(void 0,n):t}function n(t){var n=Number(t);return!(isNaN(parseFloat(String(t)))||isNaN(Number(t))||!isFinite(n))}function r(t,r){return n(t)&&n(r)&&Number(t)>Number(r)}var e,o=e||(e={});o.WARNINGS="warnings",o.ERRORS="errors";var u,i=u||(u={});function a(n){function e(e,o){var u,i;return e=o?null===(u=n.tests[o])||void 0===u?void 0:u[e]:n[e],r(u=null!==(i=t(e))&&void 0!==i?i:0,0)}!function(n,r){if(!n)throw r instanceof String?r.valueOf():Error(r?t(r):r)}(n&&Object.prototype.hasOwnProperty.call(n,"valid"),"Vest parser: expected argument at position 0 to be Vest's result object.");var o={},i={invalid:function(t){return e(u.ERROR_COUNT,t)},tested:function(t){return t?Object.prototype.hasOwnProperty.call(o,t)?o[t]:(o[t]=Object.prototype.hasOwnProperty.call(n.tests,t)&&r(n.tests[t].testCount,0),i.tested(t)):r(n.testCount,0)},untested:function(t){return 0===n.testCount||!i.tested(t)},valid:function(t){var r;return t?!(null===(r=n.tests[t])||void 0===r||!r.valid):n.valid},warning:function(t){return e(u.WARN_COUNT,t)}};return i}i.ERROR_COUNT="errorCount",i.WARN_COUNT="warnCount";export default function(t,n){void 0===n&&(n={});var r=a(t);return function(t){var e,o=[];for(e in n){var u=e;"function"==typeof r[u]&&r[u](t)&&o.push(n[u])}return o.join(" ")}}
@@ -89,7 +89,7 @@ function compose() {
89
89
  return ctx.run({ value: value }, function () {
90
90
  return defaultToPassing(mapFirst(composites, function (composite, breakout) {
91
91
  /* HACK: Just a small white lie. ~~HELP WANTED~~.
92
- The ideal is that instead of `TLazyRuleRunners` We would simply use `TLazy` to begin with.
92
+ The ideal is that instead of `LazyRuleRunners` We would simply use `Lazy` to begin with.
93
93
  The problem is that lazy rules can't really be passed to this function due to some generic hell
94
94
  so we're limiting it to a small set of functions.
95
95
  */
@@ -100,12 +100,27 @@ function noneOf(value) {
100
100
  }));
101
101
  }
102
102
 
103
+ function isNumeric(value) {
104
+ var str = String(value);
105
+ var num = Number(value);
106
+ var result = !isNaN(parseFloat(str)) && !isNaN(Number(value)) && isFinite(num);
107
+ return Boolean(result);
108
+ }
109
+
110
+ function numberEquals(value, eq) {
111
+ return isNumeric(value) && isNumeric(eq) && Number(value) === Number(eq);
112
+ }
113
+
103
114
  function lengthEquals(value, arg1) {
104
- return value.length === Number(arg1);
115
+ return numberEquals(value.length, arg1);
116
+ }
117
+
118
+ function greaterThan(value, gt) {
119
+ return isNumeric(value) && isNumeric(gt) && Number(value) > Number(gt);
105
120
  }
106
121
 
107
122
  function longerThan(value, arg1) {
108
- return value.length > Number(arg1);
123
+ return greaterThan(value.length, arg1);
109
124
  }
110
125
 
111
126
  var REQUIRED_COUNT = 1;
@@ -116,13 +131,13 @@ function oneOf(value) {
116
131
  }
117
132
  var passing = [];
118
133
  rules.some(function (rule) {
119
- if (longerThan(passing, REQUIRED_COUNT)) {
120
- return false;
121
- }
122
134
  var res = runLazyRule(rule, value);
123
135
  if (res.pass) {
124
136
  passing.push(res);
125
137
  }
138
+ if (longerThan(passing, REQUIRED_COUNT)) {
139
+ return false;
140
+ }
126
141
  });
127
142
  return ruleReturn(lengthEquals(passing, REQUIRED_COUNT));
128
143
  }
@@ -1 +1 @@
1
- import{enforce as n}from"n4s";function r(n,r){function t(n){u=!0,e=n}for(var u=!1,e=null,f=0;f<n.length;f++)if(r(n[f],t,f),u)return e}function t(n,r){var t;return null!==(t=function(n){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];return"function"==typeof n?n.apply(void 0,r):n}(n))&&void 0!==t?t:r}function u(n,r){return n={pass:n},r&&(n.message=r),n}function e(n,r){try{return n.run(r)}catch(n){return u(!1)}}n.extend({allOf:function(n){for(var f=[],o=1;o<arguments.length;o++)f[o-1]=arguments[o];return t(r(f,(function(r,t){(r=e(r,n)).pass||t(r)})),u(!0))},anyOf:function(n){for(var f=[],o=1;o<arguments.length;o++)f[o-1]=arguments[o];return t(r(f,(function(r,t){(r=e(r,n)).pass&&t(r)})),u(!1))},noneOf:function(n){for(var f=[],o=1;o<arguments.length;o++)f[o-1]=arguments[o];return t(r(f,(function(r,t){e(r,n).pass&&t(u(!1))})),u(!0))},oneOf:function(n){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];var f=[];return r.some((function(r){if(f.length>Number(1))return!1;(r=e(r,n)).pass&&f.push(r)})),u(f.length===Number(1))}});
1
+ import{enforce as n}from"n4s";function r(n,r){function t(n){u=!0,e=n}for(var u=!1,e=null,o=0;o<n.length;o++)if(r(n[o],t,o),u)return e}function t(n,r){var t;return null!==(t=function(n){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];return"function"==typeof n?n.apply(void 0,r):n}(n))&&void 0!==t?t:r}function u(n,r){return n={pass:n},r&&(n.message=r),n}function e(n,r){try{return n.run(r)}catch(n){return u(!1)}}function o(n){var r=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(r))}function f(n,r){return o(n)&&o(r)&&Number(n)===Number(r)}n.extend({allOf:function(n){for(var o=[],f=1;f<arguments.length;f++)o[f-1]=arguments[f];return t(r(o,(function(r,t){(r=e(r,n)).pass||t(r)})),u(!0))},anyOf:function(n){for(var o=[],f=1;f<arguments.length;f++)o[f-1]=arguments[f];return t(r(o,(function(r,t){(r=e(r,n)).pass&&t(r)})),u(!1))},noneOf:function(n){for(var o=[],f=1;f<arguments.length;f++)o[f-1]=arguments[f];return t(r(o,(function(r,t){e(r,n).pass&&t(u(!1))})),u(!0))},oneOf:function(n){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];var i=[];return r.some((function(r){if((r=e(r,n)).pass&&i.push(r),o(r=i.length)&&o(1)&&Number(r)>Number(1))return!1})),u(f(i.length,1))}});
@@ -126,7 +126,7 @@ function shape(inputObject, shapeObject) {
126
126
  }
127
127
 
128
128
  // Help needed improving the typings of this file.
129
- // Ideally, we'd be able to extend IShapeObject, but that's not possible.
129
+ // Ideally, we'd be able to extend ShapeObject, but that's not possible.
130
130
  function partial(shapeObject) {
131
131
  var output = {};
132
132
  for (var key in shapeObject) {
@@ -1,10 +1,3 @@
1
- /**
2
- * A safe hasOwnProperty access
3
- */
4
- function hasOwnProperty(obj, key) {
5
- return Object.prototype.hasOwnProperty.call(obj, key);
6
- }
7
-
8
1
  function isFunction(value) {
9
2
  return typeof value === 'function';
10
3
  }
@@ -17,6 +10,18 @@ function optionalFunctionValue(value) {
17
10
  return isFunction(value) ? value.apply(void 0, args) : value;
18
11
  }
19
12
 
13
+ function defaultTo(callback, defaultValue) {
14
+ var _a;
15
+ return (_a = optionalFunctionValue(callback)) !== null && _a !== void 0 ? _a : defaultValue;
16
+ }
17
+
18
+ /**
19
+ * A safe hasOwnProperty access
20
+ */
21
+ function hasOwnProperty(obj, key) {
22
+ return Object.prototype.hasOwnProperty.call(obj, key);
23
+ }
24
+
20
25
  function invariant(condition,
21
26
  // eslint-disable-next-line @typescript-eslint/ban-types
22
27
  message) {
@@ -84,22 +89,20 @@ function parse(res) {
84
89
  return res.testCount === 0 || !selectors.tested(fieldName);
85
90
  }
86
91
  function isValid(fieldName) {
87
- var _a, _b;
88
- return Boolean(fieldName ? (_b = (_a = res.tests) === null || _a === void 0 ? void 0 : _a[fieldName]) === null || _b === void 0 ? void 0 : _b.valid : res.valid);
92
+ var _a;
93
+ return fieldName ? Boolean((_a = res.tests[fieldName]) === null || _a === void 0 ? void 0 : _a.valid) : res.valid;
89
94
  }
90
95
  function hasWarnings(fieldName) {
91
- return hasFailures(res, SeverityCount.WARN_COUNT, fieldName);
96
+ return hasFailures(SeverityCount.WARN_COUNT, fieldName);
92
97
  }
93
98
  function hasErrors(fieldName) {
94
- return hasFailures(res, SeverityCount.ERROR_COUNT, fieldName);
99
+ return hasFailures(SeverityCount.ERROR_COUNT, fieldName);
100
+ }
101
+ function hasFailures(countKey, fieldName) {
102
+ var _a;
103
+ var failureCount = defaultTo(fieldName ? (_a = res.tests[fieldName]) === null || _a === void 0 ? void 0 : _a[countKey] : res[countKey], 0);
104
+ return isPositive(failureCount);
95
105
  }
96
- }
97
- function hasFailures(res, countKey, fieldName) {
98
- var _a, _b, _c;
99
- var failureCount = fieldName
100
- ? (_b = (_a = res.tests) === null || _a === void 0 ? void 0 : _a[fieldName]) === null || _b === void 0 ? void 0 : _b[countKey]
101
- : (_c = res[countKey]) !== null && _c !== void 0 ? _c : 0;
102
- return isPositive(failureCount);
103
106
  }
104
107
 
105
108
  export { parse };
@@ -1 +1 @@
1
- function t(t){var r=Number(t);return!(isNaN(parseFloat(String(t)))||isNaN(Number(t))||!isFinite(r))}function r(r,n){return t(r)&&t(n)&&Number(r)>Number(n)}var n,e=n||(n={});e.WARNINGS="warnings",e.ERRORS="errors";var o,i=o||(o={});function u(t,n,e){var o,i,u;return r(t=e?null===(i=null===(o=t.tests)||void 0===o?void 0:o[e])||void 0===i?void 0:i[n]:null!==(u=t[n])&&void 0!==u?u:0,0)}i.ERROR_COUNT="errorCount",i.WARN_COUNT="warnCount";export function parse(t){!function(t,r){if(!t)throw r instanceof String?r.valueOf():Error(r?function(t){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];return"function"==typeof t?t.apply(void 0,r):t}(r):r)}(t&&Object.prototype.hasOwnProperty.call(t,"valid"),"Vest parser: expected argument at position 0 to be Vest's result object.");var n={},e={invalid:function(r){return u(t,o.ERROR_COUNT,r)},tested:function(o){return o?Object.prototype.hasOwnProperty.call(n,o)?n[o]:(n[o]=Object.prototype.hasOwnProperty.call(t.tests,o)&&r(t.tests[o].testCount,0),e.tested(o)):r(t.testCount,0)},untested:function(r){return 0===t.testCount||!e.tested(r)},valid:function(r){var n,e;return!!(r?null!==(e=null===(n=t.tests)||void 0===n?void 0:n[r])&&void 0!==e&&e.valid:t.valid)},warning:function(r){return u(t,o.WARN_COUNT,r)}};return e}
1
+ function t(t){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];return"function"==typeof t?t.apply(void 0,r):t}function r(t){var r=Number(t);return!(isNaN(parseFloat(String(t)))||isNaN(Number(t))||!isFinite(r))}function n(t,n){return r(t)&&r(n)&&Number(t)>Number(n)}var e,o=e||(e={});o.WARNINGS="warnings",o.ERRORS="errors";var u,i=u||(u={});i.ERROR_COUNT="errorCount",i.WARN_COUNT="warnCount";export function parse(r){function e(e,o){var u,i;return e=o?null===(u=r.tests[o])||void 0===u?void 0:u[e]:r[e],n(u=null!==(i=t(e))&&void 0!==i?i:0,0)}!function(r,n){if(!r)throw n instanceof String?n.valueOf():Error(n?t(n):n)}(r&&Object.prototype.hasOwnProperty.call(r,"valid"),"Vest parser: expected argument at position 0 to be Vest's result object.");var o={},i={invalid:function(t){return e(u.ERROR_COUNT,t)},tested:function(t){return t?Object.prototype.hasOwnProperty.call(o,t)?o[t]:(o[t]=Object.prototype.hasOwnProperty.call(r.tests,t)&&n(r.tests[t].testCount,0),i.tested(t)):n(r.testCount,0)},untested:function(t){return 0===r.testCount||!i.tested(t)},valid:function(t){var n;return t?!(null===(n=r.tests[t])||void 0===n||!n.valid):r.valid},warning:function(t){return e(u.WARN_COUNT,t)}};return i}