vest 4.2.3-dev-87ebfa → 4.3.2-dev-2805e3

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 (41) hide show
  1. package/dist/cjs/classnames.development.js +61 -23
  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 +87 -22
  8. package/dist/cjs/parser.production.js +1 -1
  9. package/dist/cjs/vest.development.js +548 -566
  10. package/dist/cjs/vest.production.js +1 -1
  11. package/dist/es/classnames.development.js +61 -23
  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 +87 -22
  18. package/dist/es/parser.production.js +1 -1
  19. package/dist/es/vest.development.js +548 -566
  20. package/dist/es/vest.production.js +1 -1
  21. package/dist/umd/classnames.development.js +61 -23
  22. package/dist/umd/classnames.production.js +1 -1
  23. package/dist/umd/enforce/compose.development.js +34 -30
  24. package/dist/umd/enforce/compose.production.js +1 -1
  25. package/dist/umd/enforce/compounds.development.js +36 -32
  26. package/dist/umd/enforce/compounds.production.js +1 -1
  27. package/dist/umd/enforce/schema.development.js +34 -30
  28. package/dist/umd/enforce/schema.production.js +1 -1
  29. package/dist/umd/parser.development.js +87 -22
  30. package/dist/umd/parser.production.js +1 -1
  31. package/dist/umd/vest.development.js +482 -515
  32. package/dist/umd/vest.production.js +1 -1
  33. package/package.json +1 -1
  34. package/testUtils/suiteDummy.ts +5 -1
  35. package/types/classnames.d.ts +17 -55
  36. package/types/enforce/compose.d.ts +22 -21
  37. package/types/enforce/compounds.d.ts +24 -23
  38. package/types/enforce/schema.d.ts +26 -25
  39. package/types/parser.d.ts +16 -54
  40. package/types/promisify.d.ts +23 -16
  41. package/types/vest.d.ts +109 -101
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n,t,e,r=require("n4s"),u=require("context"),i=Object.assign,o=(n=0,function(){return"".concat(n++)});function s(n){return"function"==typeof n}function c(n){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];return s(n)?n.apply(void 0,t):n}function a(n,t){if(!n)throw t instanceof String?t.valueOf():Error(t?c(t):t)}function f(n){function t(n,t,u){return r.references.push(),e(n,c(t,u)),function(){return[r.references[n],function(t){return e(n,c(t,r.references[n]))}]}}function e(t,e){var i=r.references[t];r.references[t]=e,s(t=u[t][1])&&t(e,i),s(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 l(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 p(n){return[].concat(n)}function d(n){return(n=p(n))[n.length-1]}function v(){function n(){t=[0]}var t=[];return n(),{addLevel:function(){t.push(0)},cursorAt:function(){return d(t)},getCursor:function(){return p(t)},next:function(){return t[t.length-1]++,d(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"}(t||(t={})),function(n){n[n.ALL=0]="ALL",n[n.EAGER=1]="EAGER"}(e||(e={}));var g=u.createContext((function(n,r){return r?null:i({},{exclusion:{tests:{},groups:{}},inclusion:{},isolate:{type:t.DEFAULT,keys:{current:{},prev:{}}},mode:[e.ALL],testCursor:v()},n)}));function h(n){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return!n.apply(void 0,t)}}function E(n){return!!Array.isArray(n)}function N(n){return null===n}var m=h(N);function y(n,t){var e;return null!==(e=c(n))&&void 0!==e?e:t}function S(n,t){for(var e=[],r=0;r<n.length;r++){var u=n[r];E(u)?e.push(S(u,t)):(u=t(u),m(u)&&e.push(u))}return e}function R(n,t,e){return b(n,t)[d(t)]=e,n}function C(n){return p(n).reduce((function(n,t){return E(t)?n.concat(C(t)):p(n).concat(t)}),[])}function b(n,t){var e=0;for(t=t.slice(0,-1);e<t.length;e++){var r=t[e];n[r]=y(n[r],[]),n=n[r]}return n}function T(n){return void 0===n}function I(n){return N(n)||T(n)}function O(n){setTimeout((function(){throw Error(n)}),0)}function _(n){return String(n)===n}function A(n,t){return T(n)&&_(t)}function k(n,t){return n.length===Number(t)}function L(n){function t(n){return e.findIndex((function(t){var e=t[0];return k(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 x(){return g.useX().stateRef}function F(){return x().suiteId()[0]}function W(){return x().testCallbacks()}function G(){return x().optionalFields()}function P(){return x().testObjects()}function U(){(0,P()[1])((function(n){return{prev:n.prev,current:p(n.current)}}))}function w(n){(0,P()[1])((function(t){return{prev:t.prev,current:p(n(t.current))}}))}function D(){return C(S(P()[0].current,(function(n){return n.isPending()?n:null})))}var X,H=L();function K(){var n=P()[0].current;return H([n],(function(){return C(n)}))}function q(n){K().forEach(n)}!function(n){n.Error="error",n.Warning="warning"}(X||(X={}));var M,j,B=function(){function n(n,t,e){var r=void 0===e?{}:e;e=r.message;var u=r.groupName;r=r.key,this.key=null,this.id=o(),this.severity=X.Error,this.status=V,this.fieldName=n,this.testFn=t,u&&(this.groupName=u),e&&(this.message=e),r&&(this.key=r)}return n.prototype.run=function(){try{var n=this.testFn()}catch(t){A(this.message,t)&&(this.message=t),n=!1}return!1===n&&this.fail(),n},n.prototype.setStatus=function(n){this.isFinalStatus()&&n!==nn||(this.status=n)},n.prototype.warns=function(){return this.severity===X.Warning},n.prototype.setPending=function(){this.setStatus(Z)},n.prototype.fail=function(){this.setStatus(this.warns()?z:J)},n.prototype.done=function(){this.isFinalStatus()||this.setStatus(Q)},n.prototype.warn=function(){this.severity=X.Warning},n.prototype.isFinalStatus=function(){return this.hasFailures()||this.isCanceled()||this.isPassing()},n.prototype.skip=function(n){this.isPending()&&!n||this.setStatus(Y)},n.prototype.cancel=function(){this.setStatus($),U()},n.prototype.reset=function(){this.status=V,U()},n.prototype.omit=function(){this.setStatus(nn)},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(Z)},n.prototype.isTested=function(){return this.hasFailures()||this.isPassing()},n.prototype.isOmitted=function(){return this.statusEquals(nn)},n.prototype.isUntested=function(){return this.statusEquals(V)},n.prototype.isFailing=function(){return this.statusEquals(J)},n.prototype.isCanceled=function(){return this.statusEquals($)},n.prototype.isSkipped=function(){return this.statusEquals(Y)},n.prototype.isPassing=function(){return this.statusEquals(Q)},n.prototype.isWarning=function(){return this.statusEquals(z)},n.prototype.statusEquals=function(n){return this.status===n},n}(),V="UNTESTED",Y="SKIPPED",J="FAILED",z="WARNING",Q="PASSING",Z="PENDING",$="CANCELED",nn="OMITTED";function tn(){return g.useX().testCursor.getCursor()}function en(){return g.useX().testCursor.cursorAt()}function rn(){return g.useX().testCursor.next()}function un(n,e){if(n=void 0===(n=n.type)?t.DEFAULT:n,s(e)){var r={current:{},prev:{}},u=tn();return g.run({isolate:{type:n,keys:r}},(function(){g.useX().testCursor.addLevel(),r.prev=p(b(P()[0].prev,tn())).reduce((function(n,t){return t instanceof B&&!I(t.key)?(n[t.key]=t,n):n}),{}),w((function(n){return R(n,u,[])}));var n=e();return g.useX().testCursor.removeLevel(),rn(),n}))}}function on(){var n=K(),t=i({errorCount:0,warnCount:0,testCount:0},{groups:{},tests:{}});return n.reduce((function(n,t){return function(n,t){n[t.fieldName]=sn(n,t)}(n.tests,t),function(n,t){var e=t.groupName;e&&(n[e]=n[e]||{},n[e][t.fieldName]=sn(n[e],t))}(n.groups,t),n}),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}(t)}function sn(n,t){function e(n){var t=function(n){return n===M.ERRORS?j.ERROR_COUNT:j.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(M.ERRORS):t.isWarning()&&e(M.WARNINGS)),i}!function(n){n.WARNINGS="warnings",n.ERRORS="errors"}(M||(M={})),function(n){n.ERROR_COUNT="errorCount",n.WARN_COUNT="warnCount"}(j||(j={}));var cn=function(){return(cn=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 an(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 fn(n,t){return!!t&&!ln(n,t)}function ln(n,t){return!(!t||n.fieldName!==t)}function pn(n,t){return function(n,t){return!!n!=!!t}(n===M.WARNINGS,t.warns())}function dn(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)||fn(n,r)||pn(t,n))}(e,n,u,i)||!e.hasFailures()||(t[e.fieldName]=(t[e.fieldName]||[]).concat(e.message||[])),t}),cn({},i&&((r={})[i]=[],r)))}function vn(n,t){return t?n[t]:n}function gn(n){return En(M.ERRORS,n)}function hn(n){return En(M.WARNINGS,n)}function En(n,t){return vn(n=dn(n,K(),{fieldName:t}),t)}function Nn(n,t){return vn(n=yn(M.ERRORS,n,t),t)}function mn(n,t){return vn(n=yn(M.WARNINGS,n,t),t)}function yn(n,t,e){return a(t,"get".concat(n[0].toUpperCase()).concat(n.slice(1),"ByGroup requires a group name. Received `").concat(t,"` instead.")),dn(n,K(),{group:t,fieldName:e})}function Sn(n,t,e){return!(!n.hasFailures()||fn(n,e)||pn(t,n))}function Rn(n){return bn(M.ERRORS,n)}function Cn(n){return bn(M.WARNINGS,n)}function bn(n,t){return K().some((function(e){return Sn(e,n,t)}))}function Tn(n,t){return On(M.ERRORS,n,t)}function In(n,t){return On(M.WARNINGS,n,t)}function On(n,t,e){return K().some((function(r){return t===r.groupName&&Sn(r,n,e)}))}function _n(n,t){return Object.prototype.hasOwnProperty.call(n,t)}function An(n){if(n){if(function(n){return"number"==typeof n}(n))return 0===n;if(_n(n,"length"))return k(n,0);if("object"==typeof n)return k(Object.keys(n),0)}return!0}var kn=h(An);function Ln(n){return!!function(n){var t=K().reduce((function(n,t){return n[t.fieldName]||t.isOmitted()&&(n[t.fieldName]=!0),n}),{});return!!n&&!!t[n]}(n)||!Rn(n)&&(!(An(K())||function(n){var t=K();return!!n&&!t.find((function(t){return t.fieldName===n}))}(n)||function(n){var t=G()[0];return kn(D().filter((function(e){return!fn(e,n)&&!0!==t[e.fieldName]})))}(n))&&function(n){var t=K(),e=G()[0];return t.every((function(t){return!!fn(t,n)||(!0===e[t.fieldName]||t.isTested()||t.isOmitted())}))}(n))}var xn=L(20);function Fn(){var n=K(),t={stateRef:x()};return xn([n],g.bind(t,(function(){var n=x().suiteName()[0];return i(on(),{getErrors:g.bind(t,gn),getErrorsByGroup:g.bind(t,Nn),getWarnings:g.bind(t,hn),getWarningsByGroup:g.bind(t,mn),hasErrors:g.bind(t,Rn),hasErrorsByGroup:g.bind(t,Tn),hasWarnings:g.bind(t,Cn),hasWarningsByGroup:g.bind(t,In),isValid:g.bind(t,Ln),suiteName:n})})))}function Wn(n){var t=D();return!An(t)&&(n?t.some((function(t){return ln(t,n)})):kn(t))}var Gn=L(20);function Pn(){var n=K(),t={stateRef:x()};return Gn([n],g.bind(t,(function(){return i({},Fn(),{done:g.bind(t,Xn)})})))}function Un(n,t,e){return!(s(n)&&(!t||e.tests[t]&&!An(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=g.bind({},n);(0,W()[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=W()[0].fieldCallbacks;n&&!Wn(n)&&E(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=G()[0];if(!An(n)){var t={};w((function(e){return S(e,(function(e){var r=e.fieldName;if(t.hasOwnProperty(r))t[e.fieldName]&&e.omit();else{var u=n[r];s(u)&&(t[r]=u(),t[e.fieldName]&&e.omit())}return e}))}))}}()})),n.on(Dn.ALL_RUNNING_TESTS_FINISHED,(function(){Kn(W()[0].doneCallbacks)})),n.on(Dn.REMOVE_FIELD,(function(n){q((function(t){ln(t,n)&&(t.cancel(),function(n){w((function(t){return S(t,(function(t){return n!==t?t:null}))}))}(t))}))})),n.on(Dn.RESET_FIELD,(function(n){q((function(t){ln(t,n)&&t.reset()}))})),n}function Mn(){var n=g.useX();return a(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!!g.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=g.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=g.useX().exclusion.groups;if(_n(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=g.useX().exclusion;return!!function(){var n,t=g.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)&&!c(e[t]))}function Jn(n,t,e){var r=g.useX("hook called outside of a running suite.");e&&p(e).forEach((function(e){_(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 g.useX().mode[0]===n}(e.EAGER)||!Rn(n.fieldName))}function $n(){return!!g.useX().omitted}function nt(n){return n&&s(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,u=x(),i=g.bind({stateRef:u},(function(){U(),r(Dn.TEST_COMPLETED,n)}));u=g.bind({stateRef:u},(function(t){n.isCanceled()||(n.message=_(t)?t:e,n.fail(),i())}));try{t.then(i,u)}catch(n){u()}}}function rt(n){var t=Mn(),e=function(n){return g.run({currentTest:n},(function(){try{var t=n.testFn()}catch(e){A(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 e=P()[0].prev;return An(e)?(it(n),n):(e=function(n){var t=tn();return function(n,t){return b(n,t)[d(t)]}(n,t)}(e),I(n.key)?(function(n,t){return kn(n)&&!tt(n,t)}(e,n)&&(function(n,e){g.useX().isolate.type===t.EACH||O("Vest Critical Error: Tests called in different order than previous run.\n expected: ".concat(n.fieldName,"\n received: ").concat(e.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.'))}(e,n),function(){var n=P(),t=n[1],e=n[0].prev;n=b(e,tn());var r=en();n.splice(r),t((function(n){return{prev:e,current:n.current}}))}(),e=null),it(n=y(e,n)),n):(it(n=function(n,t){var e=function(n){return g.useX().isolate.keys.prev[n]}(n);return e&&(t=e),function(n,t){var e=g.useX().isolate.keys.current;I(e[n])?e[n]=t:O('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();w((function(e){return R(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=s(t[1])?t:an([void 0],t,!0);t=r[0],e=r[1],r=r[2],a(_(n),at("fieldName","string")),a(s(e),at("Test callback","function"));var u=g.useX();return ot(t=new B(n,e,{message:t,groupName:u.groupName,key:r}))}Bn.group=function(n){return Jn(0,"groups",n)},Vn.group=function(n){return Jn(1,"groups",n)};var ct=i(st,{memo:function(n){var t=L(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=[F(),e,u].concat(i),N(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 r.enforce}}),exports.VERSION="4.2.3-dev-87ebfa",exports.context=g,exports.create=function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];var r=(n=n.reverse())[0];n=n[1],a(s(r),"vest.create: Expected callback to be a function.");var u=qn(),c=f();return n={stateRef:l(c,{suiteId:o(),suiteName:n}),bus:u},i(g.bind(n,(function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return c.reset(),un({type:t.SUITE},(function(){r.apply(void 0,n)})),u.emit(Dn.SUITE_CALLBACK_DONE_RUNNING),Pn()})),{get:g.bind(n,Fn),remove:g.bind(n,(function(n){u.emit(Dn.REMOVE_FIELD,n)})),reset:c.reset,resetField:g.bind(n,(function(n){u.emit(Dn.RESET_FIELD,n)}))})},exports.each=function(n,e){a(s(e),"each callback must be a function"),un({type:t.EACH},(function(){n.forEach((function(n,t){e(n,t)}))}))},exports.eager=function(){!function(n){g.useX().mode[0]=n}(e.EAGER)},exports.group=function(n,e){a(_(n),Qn("name must be a string")),a(s(e),Qn("callback must be a function")),un({type:t.GROUP},(function(){g.run({groupName:n},e)}))},exports.include=function(n){function t(t){var e=g.useX(),r=e.exclusion;e.inclusion[n]=function(){return _n(r.tests,n)?y(r.tests[n],!0):_(t)?!!r.tests[t]:c(t,c(Fn))}}var e=g.useX();return n?(e.inclusion[n]=y(e.exclusion.tests[n],!0),{when:t}):{when:t}},exports.omitWhen=function(n,e){un({type:t.OMIT_WHEN},(function(){g.run({omitted:$n()||c(n,c(Fn))},(function(){return e()}))}))},exports.only=Bn,exports.optional=function(n){(0,G()[1])((function(t){if(E(n)||_(n))p(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,e){un({type:t.SKIP_WHEN},(function(){g.run({skipped:jn()||c(n,c(Fn))},(function(){return e()}))}))},exports.test=ct,exports.warn=function(){var n=g.useX("warn hook called outside of a running suite.");a(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-dev-2805e3",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()};
@@ -10,6 +10,18 @@ function optionalFunctionValue(value) {
10
10
  return isFunction(value) ? value.apply(void 0, args) : value;
11
11
  }
12
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
+
13
25
  function invariant(condition,
14
26
  // eslint-disable-next-line @typescript-eslint/ban-types
15
27
  message) {
@@ -35,35 +47,62 @@ function greaterThan(value, gt) {
35
47
  return isNumeric(value) && isNumeric(gt) && Number(value) > Number(gt);
36
48
  }
37
49
 
38
- /**
39
- * A safe hasOwnProperty access
40
- */
41
- function hasOwnProperty(obj, key) {
42
- return Object.prototype.hasOwnProperty.call(obj, key);
50
+ function isPositive(value) {
51
+ return greaterThan(value, 0);
43
52
  }
44
53
 
54
+ var Severity;
55
+ (function (Severity) {
56
+ Severity["WARNINGS"] = "warnings";
57
+ Severity["ERRORS"] = "errors";
58
+ })(Severity || (Severity = {}));
59
+ var SeverityCount;
60
+ (function (SeverityCount) {
61
+ SeverityCount["ERROR_COUNT"] = "errorCount";
62
+ SeverityCount["WARN_COUNT"] = "warnCount";
63
+ })(SeverityCount || (SeverityCount = {}));
64
+
65
+ // eslint-disable-next-line max-lines-per-function
45
66
  function parse(res) {
67
+ invariant(res && hasOwnProperty(res, 'valid'), "Vest parser: expected argument at position 0 to be Vest's result object.");
46
68
  var testedStorage = {};
47
69
  var selectors = {
48
- invalid: res.hasErrors,
49
- tested: function (fieldName) {
50
- if (!fieldName) {
51
- return greaterThan(res.testCount, 0);
52
- }
53
- if (hasOwnProperty(testedStorage, fieldName))
54
- return testedStorage[fieldName];
55
- testedStorage[fieldName] =
56
- hasOwnProperty(res.tests, fieldName) &&
57
- greaterThan(res.tests[fieldName].testCount, 0);
58
- return selectors.tested(fieldName);
59
- },
60
- untested: function (fieldName) {
61
- return res.testCount === 0 || !selectors.tested(fieldName);
62
- },
63
- valid: res.isValid,
64
- warning: res.hasWarnings
70
+ invalid: hasErrors,
71
+ tested: isTested,
72
+ untested: isUntested,
73
+ valid: isValid,
74
+ warning: hasWarnings
65
75
  };
66
76
  return selectors;
77
+ function isTested(fieldName) {
78
+ if (!fieldName) {
79
+ return isPositive(res.testCount);
80
+ }
81
+ if (hasOwnProperty(testedStorage, fieldName))
82
+ return testedStorage[fieldName];
83
+ testedStorage[fieldName] =
84
+ hasOwnProperty(res.tests, fieldName) &&
85
+ isPositive(res.tests[fieldName].testCount);
86
+ return selectors.tested(fieldName);
87
+ }
88
+ function isUntested(fieldName) {
89
+ return res.testCount === 0 || !selectors.tested(fieldName);
90
+ }
91
+ function isValid(fieldName) {
92
+ var _a;
93
+ return fieldName ? Boolean((_a = res.tests[fieldName]) === null || _a === void 0 ? void 0 : _a.valid) : res.valid;
94
+ }
95
+ function hasWarnings(fieldName) {
96
+ return hasFailures(SeverityCount.WARN_COUNT, fieldName);
97
+ }
98
+ function hasErrors(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);
105
+ }
67
106
  }
68
107
 
69
108
  /**
@@ -71,7 +110,6 @@ function parse(res) {
71
110
  */
72
111
  function classnames(res, classes) {
73
112
  if (classes === void 0) { classes = {}; }
74
- invariant(res && isFunction(res.hasErrors), "classnames: Expected first argument to be Vest's result object.");
75
113
  var selectors = parse(res);
76
114
  return function (key) {
77
115
  var classesArray = [];
@@ -1 +1 @@
1
- function t(t){return"function"==typeof t}function r(r,n){if(!r)throw n instanceof String?n.valueOf():Error(n?function(r){for(var n=[],e=1;e<arguments.length;e++)n[e-1]=arguments[e];return t(r)?r.apply(void 0,n):r}(n):n)}function n(t){var r=Number(t);return!(isNaN(parseFloat(String(t)))||isNaN(Number(t))||!isFinite(r))}function e(t,r){return n(t)&&n(r)&&Number(t)>Number(r)}export default function(n,o){void 0===o&&(o={}),r(n&&t(n.hasErrors),"classnames: Expected first argument to be Vest's result object.");var s=function(t){var r={},n={invalid:t.hasErrors,tested:function(o){return o?Object.prototype.hasOwnProperty.call(r,o)?r[o]:(r[o]=Object.prototype.hasOwnProperty.call(t.tests,o)&&e(t.tests[o].testCount,0),n.tested(o)):e(t.testCount,0)},untested:function(r){return 0===t.testCount||!n.tested(r)},valid:t.isValid,warning:t.hasWarnings};return n}(n);return function(r){var n,e=[];for(n in o){var u=n;t(s[u])&&s[u](r)&&e.push(o[u])}return e.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,3 +1,41 @@
1
+ function isFunction(value) {
2
+ return typeof value === 'function';
3
+ }
4
+
5
+ function optionalFunctionValue(value) {
6
+ var args = [];
7
+ for (var _i = 1; _i < arguments.length; _i++) {
8
+ args[_i - 1] = arguments[_i];
9
+ }
10
+ return isFunction(value) ? value.apply(void 0, args) : value;
11
+ }
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
+
25
+ function invariant(condition,
26
+ // eslint-disable-next-line @typescript-eslint/ban-types
27
+ message) {
28
+ if (condition) {
29
+ return;
30
+ }
31
+ // If message is a string object (rather than string literal)
32
+ // Throw the value directly as a string
33
+ // Alternatively, throw an error with the message
34
+ throw message instanceof String
35
+ ? message.valueOf()
36
+ : new Error(message ? optionalFunctionValue(message) : message);
37
+ }
38
+
1
39
  function isNumeric(value) {
2
40
  var str = String(value);
3
41
  var num = Number(value);
@@ -9,35 +47,62 @@ function greaterThan(value, gt) {
9
47
  return isNumeric(value) && isNumeric(gt) && Number(value) > Number(gt);
10
48
  }
11
49
 
12
- /**
13
- * A safe hasOwnProperty access
14
- */
15
- function hasOwnProperty(obj, key) {
16
- return Object.prototype.hasOwnProperty.call(obj, key);
50
+ function isPositive(value) {
51
+ return greaterThan(value, 0);
17
52
  }
18
53
 
54
+ var Severity;
55
+ (function (Severity) {
56
+ Severity["WARNINGS"] = "warnings";
57
+ Severity["ERRORS"] = "errors";
58
+ })(Severity || (Severity = {}));
59
+ var SeverityCount;
60
+ (function (SeverityCount) {
61
+ SeverityCount["ERROR_COUNT"] = "errorCount";
62
+ SeverityCount["WARN_COUNT"] = "warnCount";
63
+ })(SeverityCount || (SeverityCount = {}));
64
+
65
+ // eslint-disable-next-line max-lines-per-function
19
66
  function parse(res) {
67
+ invariant(res && hasOwnProperty(res, 'valid'), "Vest parser: expected argument at position 0 to be Vest's result object.");
20
68
  var testedStorage = {};
21
69
  var selectors = {
22
- invalid: res.hasErrors,
23
- tested: function (fieldName) {
24
- if (!fieldName) {
25
- return greaterThan(res.testCount, 0);
26
- }
27
- if (hasOwnProperty(testedStorage, fieldName))
28
- return testedStorage[fieldName];
29
- testedStorage[fieldName] =
30
- hasOwnProperty(res.tests, fieldName) &&
31
- greaterThan(res.tests[fieldName].testCount, 0);
32
- return selectors.tested(fieldName);
33
- },
34
- untested: function (fieldName) {
35
- return res.testCount === 0 || !selectors.tested(fieldName);
36
- },
37
- valid: res.isValid,
38
- warning: res.hasWarnings
70
+ invalid: hasErrors,
71
+ tested: isTested,
72
+ untested: isUntested,
73
+ valid: isValid,
74
+ warning: hasWarnings
39
75
  };
40
76
  return selectors;
77
+ function isTested(fieldName) {
78
+ if (!fieldName) {
79
+ return isPositive(res.testCount);
80
+ }
81
+ if (hasOwnProperty(testedStorage, fieldName))
82
+ return testedStorage[fieldName];
83
+ testedStorage[fieldName] =
84
+ hasOwnProperty(res.tests, fieldName) &&
85
+ isPositive(res.tests[fieldName].testCount);
86
+ return selectors.tested(fieldName);
87
+ }
88
+ function isUntested(fieldName) {
89
+ return res.testCount === 0 || !selectors.tested(fieldName);
90
+ }
91
+ function isValid(fieldName) {
92
+ var _a;
93
+ return fieldName ? Boolean((_a = res.tests[fieldName]) === null || _a === void 0 ? void 0 : _a.valid) : res.valid;
94
+ }
95
+ function hasWarnings(fieldName) {
96
+ return hasFailures(SeverityCount.WARN_COUNT, fieldName);
97
+ }
98
+ function hasErrors(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);
105
+ }
41
106
  }
42
107
 
43
108
  export { parse };
@@ -1 +1 @@
1
- function t(t){var e=Number(t);return!(isNaN(parseFloat(String(t)))||isNaN(Number(t))||!isFinite(e))}function e(e,r){return t(e)&&t(r)&&Number(e)>Number(r)}export function parse(t){var r={},n={invalid:t.hasErrors,tested:function(s){return s?Object.prototype.hasOwnProperty.call(r,s)?r[s]:(r[s]=Object.prototype.hasOwnProperty.call(t.tests,s)&&e(t.tests[s].testCount,0),n.tested(s)):e(t.testCount,0)},untested:function(e){return 0===t.testCount||!n.tested(e)},valid:t.isValid,warning:t.hasWarnings};return n}
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}