vest 4.3.0 → 4.3.1

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.
@@ -35,12 +35,27 @@ function asArray(possibleArg) {
35
35
  return [].concat(possibleArg);
36
36
  }
37
37
 
38
+ function isNumeric(value) {
39
+ var str = String(value);
40
+ var num = Number(value);
41
+ var result = !isNaN(parseFloat(str)) && !isNaN(Number(value)) && isFinite(num);
42
+ return Boolean(result);
43
+ }
44
+
45
+ function numberEquals(value, eq) {
46
+ return isNumeric(value) && isNumeric(eq) && Number(value) === Number(eq);
47
+ }
48
+
38
49
  function lengthEquals(value, arg1) {
39
- return value.length === Number(arg1);
50
+ return numberEquals(value.length, arg1);
51
+ }
52
+
53
+ function greaterThan(value, gt) {
54
+ return isNumeric(value) && isNumeric(gt) && Number(value) > Number(gt);
40
55
  }
41
56
 
42
57
  function longerThan(value, arg1) {
43
- return value.length > Number(arg1);
58
+ return greaterThan(value.length, arg1);
44
59
  }
45
60
 
46
61
  /**
@@ -713,8 +728,14 @@ function has(severityKey, fieldName) {
713
728
  });
714
729
  }
715
730
 
716
- // eslint-disable-next-line max-statements, complexity
717
731
  function isValid(fieldName) {
732
+ var _a, _b;
733
+ var summary = context.useX().summary;
734
+ invariant(summary);
735
+ return Boolean(fieldName ? (_b = (_a = summary.tests) === null || _a === void 0 ? void 0 : _a[fieldName]) === null || _b === void 0 ? void 0 : _b.valid : summary.valid);
736
+ }
737
+ // eslint-disable-next-line max-statements, complexity
738
+ function shouldAddValidProp(fieldName) {
718
739
  if (fieldIsOmitted(fieldName)) {
719
740
  return true;
720
741
  }
@@ -782,7 +803,7 @@ function genTestsSummary() {
782
803
  appendToGroup(summary.groups, testObject);
783
804
  return summary;
784
805
  }, summary);
785
- summary.valid = isValid();
806
+ summary.valid = shouldAddValidProp();
786
807
  return countFailures(summary);
787
808
  }
788
809
  function appendToTest(tests, testObject) {
@@ -791,7 +812,7 @@ function appendToTest(tests, testObject) {
791
812
  tests[testObject.fieldName].valid =
792
813
  tests[testObject.fieldName].valid === false
793
814
  ? false
794
- : isValid(testObject.fieldName);
815
+ : shouldAddValidProp(testObject.fieldName);
795
816
  }
796
817
  /**
797
818
  * Appends to a group object if within a group
@@ -854,78 +875,23 @@ function baseStats() {
854
875
  };
855
876
  }
856
877
 
857
- /*! *****************************************************************************
858
- Copyright (c) Microsoft Corporation.
859
-
860
- Permission to use, copy, modify, and/or distribute this software for any
861
- purpose with or without fee is hereby granted.
862
-
863
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
864
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
865
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
866
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
867
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
868
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
869
- PERFORMANCE OF THIS SOFTWARE.
870
- ***************************************************************************** */
871
-
872
- var __assign = function() {
873
- __assign = Object.assign || function __assign(t) {
874
- for (var s, i = 1, n = arguments.length; i < n; i++) {
875
- s = arguments[i];
876
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
877
- }
878
- return t;
879
- };
880
- return __assign.apply(this, arguments);
881
- };
882
-
883
- function __spreadArray(to, from, pack) {
884
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
885
- if (ar || !(i in from)) {
886
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
887
- ar[i] = from[i];
888
- }
889
- }
890
- return to.concat(ar || Array.prototype.slice.call(from));
878
+ // calls collectAll or getByFieldName depending on whether fieldName is provided
879
+ function gatherFailures(testGroup, severityKey, fieldName) {
880
+ return fieldName
881
+ ? getByFieldName(testGroup, severityKey, fieldName)
882
+ : collectAll(testGroup, severityKey);
891
883
  }
892
-
893
- function collectFailureMessages(severity, testObjects, options) {
884
+ function getByFieldName(testGroup, severityKey, fieldName) {
894
885
  var _a;
895
- if (options === void 0) { options = {}; }
896
- var _b = options || {}, group = _b.group, fieldName = _b.fieldName;
897
- return testObjects.reduce(function (collector, testObject) {
898
- if (noMatch(testObject, severity, group, fieldName)) {
899
- return collector;
900
- }
901
- if (!testObject.hasFailures()) {
902
- return collector;
903
- }
904
- collector[testObject.fieldName] = (collector[testObject.fieldName] || []).concat(testObject.message || []);
905
- return collector;
906
- }, __assign({}, (fieldName && (_a = {}, _a[fieldName] = [], _a))));
907
- }
908
- function noGroupMatch(testObject, groupName) {
909
- return !!(groupName && testObject.groupName !== groupName);
910
- }
911
- function noMatch(testObject, severity, group, fieldName) {
912
- if (noGroupMatch(testObject, group)) {
913
- return true;
914
- }
915
- if (nonMatchingFieldName(testObject, fieldName)) {
916
- return true;
917
- }
918
- if (nonMatchingSeverityProfile(severity, testObject)) {
919
- return true;
920
- }
921
- return false;
886
+ return ((_a = testGroup === null || testGroup === void 0 ? void 0 : testGroup[fieldName]) === null || _a === void 0 ? void 0 : _a[severityKey]) || [];
922
887
  }
923
-
924
- function getFailuresArrayOrObject(group, fieldName) {
925
- if (fieldName) {
926
- return group[fieldName];
888
+ function collectAll(testGroup, severityKey) {
889
+ var _a;
890
+ var output = {};
891
+ for (var field in testGroup) {
892
+ output[field] = ((_a = testGroup[field]) === null || _a === void 0 ? void 0 : _a[severityKey]) || [];
927
893
  }
928
- return group;
894
+ return output;
929
895
  }
930
896
 
931
897
  function getErrors(fieldName) {
@@ -938,31 +904,21 @@ function getWarnings(fieldName) {
938
904
  * @returns suite or field's errors or warnings.
939
905
  */
940
906
  function getFailures(severityKey, fieldName) {
941
- var testObjects = useTestsFlat();
942
- var failureMessages = collectFailureMessages(severityKey, testObjects, {
943
- fieldName: fieldName
944
- });
945
- return getFailuresArrayOrObject(failureMessages, fieldName);
907
+ var summary = context.useX().summary;
908
+ invariant(summary);
909
+ return gatherFailures(summary.tests, severityKey, fieldName);
946
910
  }
947
911
 
948
912
  function getErrorsByGroup(groupName, fieldName) {
949
- var errors = getByGroup(Severity.ERRORS, groupName, fieldName);
950
- return getFailuresArrayOrObject(errors, fieldName);
913
+ return getFailuresByGroup(groupName, Severity.ERRORS, fieldName);
951
914
  }
952
915
  function getWarningsByGroup(groupName, fieldName) {
953
- var warnings = getByGroup(Severity.WARNINGS, groupName, fieldName);
954
- return getFailuresArrayOrObject(warnings, fieldName);
916
+ return getFailuresByGroup(groupName, Severity.WARNINGS, fieldName);
955
917
  }
956
- /**
957
- * Gets failure messages by group.
958
- */
959
- function getByGroup(severityKey, group, fieldName) {
960
- invariant(group, "get".concat(severityKey[0].toUpperCase()).concat(severityKey.slice(1), "ByGroup requires a group name. Received `").concat(group, "` instead."));
961
- var testObjects = useTestsFlat();
962
- return collectFailureMessages(severityKey, testObjects, {
963
- group: group,
964
- fieldName: fieldName
965
- });
918
+ function getFailuresByGroup(groupName, severityKey, fieldName) {
919
+ var summary = context.useX().summary;
920
+ invariant(summary);
921
+ return gatherFailures(summary.groups[groupName], severityKey, fieldName);
966
922
  }
967
923
 
968
924
  function hasErrorsByGroup(groupName, fieldName) {
@@ -983,22 +939,24 @@ function hasByGroup(severityKey, group, fieldName) {
983
939
  });
984
940
  }
985
941
 
986
- var cache$1 = createCache(20);
942
+ var cache$1 = createCache(1);
987
943
  function produceSuiteResult() {
988
944
  var testObjects = useTestsFlat();
989
945
  var ctxRef = { stateRef: useStateRef() };
990
946
  return cache$1([testObjects], context.bind(ctxRef, function () {
947
+ var summary = genTestsSummary();
991
948
  var suiteName = useSuiteName();
992
- return assign(genTestsSummary(), {
993
- getErrors: context.bind(ctxRef, getErrors),
994
- getErrorsByGroup: context.bind(ctxRef, getErrorsByGroup),
995
- getWarnings: context.bind(ctxRef, getWarnings),
996
- getWarningsByGroup: context.bind(ctxRef, getWarningsByGroup),
997
- hasErrors: context.bind(ctxRef, hasErrors),
998
- hasErrorsByGroup: context.bind(ctxRef, hasErrorsByGroup),
999
- hasWarnings: context.bind(ctxRef, hasWarnings),
1000
- hasWarningsByGroup: context.bind(ctxRef, hasWarningsByGroup),
1001
- isValid: context.bind(ctxRef, isValid),
949
+ var ref = assign({ summary: summary }, ctxRef);
950
+ return assign(summary, {
951
+ getErrors: context.bind(ref, getErrors),
952
+ getErrorsByGroup: context.bind(ref, getErrorsByGroup),
953
+ getWarnings: context.bind(ref, getWarnings),
954
+ getWarningsByGroup: context.bind(ref, getWarningsByGroup),
955
+ hasErrors: context.bind(ref, hasErrors),
956
+ hasErrorsByGroup: context.bind(ref, hasErrorsByGroup),
957
+ hasWarnings: context.bind(ref, hasWarnings),
958
+ hasWarningsByGroup: context.bind(ref, hasWarningsByGroup),
959
+ isValid: context.bind(ref, isValid),
1002
960
  suiteName: suiteName
1003
961
  });
1004
962
  }));
@@ -1067,14 +1025,13 @@ var done = function done() {
1067
1025
  return output;
1068
1026
  };
1069
1027
  function deferDoneCallback(doneCallback, fieldName) {
1070
- var deferredCallback = context.bind({}, doneCallback);
1071
1028
  var _a = useTestCallbacks(), setTestCallbacks = _a[1];
1072
1029
  setTestCallbacks(function (current) {
1073
1030
  if (fieldName) {
1074
- current.fieldCallbacks[fieldName] = (current.fieldCallbacks[fieldName] || []).concat(deferredCallback);
1031
+ current.fieldCallbacks[fieldName] = (current.fieldCallbacks[fieldName] || []).concat(doneCallback);
1075
1032
  }
1076
1033
  else {
1077
- current.doneCallbacks.push(deferredCallback);
1034
+ current.doneCallbacks.push(doneCallback);
1078
1035
  }
1079
1036
  return current;
1080
1037
  });
@@ -1084,19 +1041,22 @@ function createBus() {
1084
1041
  var listeners = {};
1085
1042
  return {
1086
1043
  emit: function (event, data) {
1087
- (listeners[event] || []).forEach(function (handler) {
1044
+ listener(event).forEach(function (handler) {
1088
1045
  handler(data);
1089
1046
  });
1090
1047
  },
1091
1048
  on: function (event, handler) {
1092
- listeners[event] = (listeners[event] || []).concat(handler);
1049
+ listeners[event] = listener(event).concat(handler);
1093
1050
  return {
1094
1051
  off: function () {
1095
- listeners[event] = listeners[event].filter(function (h) { return h !== handler; });
1052
+ listeners[event] = listener(event).filter(function (h) { return h !== handler; });
1096
1053
  }
1097
1054
  };
1098
1055
  }
1099
1056
  };
1057
+ function listener(event) {
1058
+ return listeners[event] || [];
1059
+ }
1100
1060
  }
1101
1061
 
1102
1062
  function omitOptionalTests() {
@@ -1108,24 +1068,27 @@ function omitOptionalTests() {
1108
1068
  useSetTests(function (tests) {
1109
1069
  return transform(tests, function (testObject) {
1110
1070
  var fieldName = testObject.fieldName;
1111
- if (shouldOmit.hasOwnProperty(fieldName)) {
1112
- omit(testObject);
1071
+ if (hasOwnProperty(shouldOmit, fieldName)) {
1072
+ verifyAndOmit(testObject);
1113
1073
  }
1114
1074
  else {
1115
- var optionalConfig = optionalFields[fieldName];
1116
- if (isFunction(optionalConfig)) {
1117
- shouldOmit[fieldName] = optionalConfig();
1118
- omit(testObject);
1119
- }
1075
+ runOptionalConfig(testObject);
1120
1076
  }
1121
1077
  return testObject;
1122
1078
  });
1123
1079
  });
1124
- function omit(testObject) {
1080
+ function verifyAndOmit(testObject) {
1125
1081
  if (shouldOmit[testObject.fieldName]) {
1126
1082
  testObject.omit();
1127
1083
  }
1128
1084
  }
1085
+ function runOptionalConfig(testObject) {
1086
+ var optionalConfig = optionalFields[testObject.fieldName];
1087
+ if (isFunction(optionalConfig)) {
1088
+ shouldOmit[testObject.fieldName] = optionalConfig();
1089
+ verifyAndOmit(testObject);
1090
+ }
1091
+ }
1129
1092
  }
1130
1093
 
1131
1094
  /**
@@ -1602,6 +1565,31 @@ function optional(optionals) {
1602
1565
  });
1603
1566
  }
1604
1567
 
1568
+ /*! *****************************************************************************
1569
+ Copyright (c) Microsoft Corporation.
1570
+
1571
+ Permission to use, copy, modify, and/or distribute this software for any
1572
+ purpose with or without fee is hereby granted.
1573
+
1574
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
1575
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
1576
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
1577
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
1578
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
1579
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
1580
+ PERFORMANCE OF THIS SOFTWARE.
1581
+ ***************************************************************************** */
1582
+
1583
+ function __spreadArray(to, from, pack) {
1584
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
1585
+ if (ar || !(i in from)) {
1586
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
1587
+ ar[i] = from[i];
1588
+ }
1589
+ }
1590
+ return to.concat(ar || Array.prototype.slice.call(from));
1591
+ }
1592
+
1605
1593
  function isPromise(value) {
1606
1594
  return value && isFunction(value.then);
1607
1595
  }
@@ -1820,7 +1808,7 @@ function registerTestObjectByTier(testObject) {
1820
1808
  /* eslint-disable jest/valid-title */
1821
1809
  // eslint-disable-next-line max-lines-per-function
1822
1810
  function bindTestMemo(test) {
1823
- var cache = createCache(100); // arbitrary cache size
1811
+ var cache = createCache(10); // arbitrary cache size
1824
1812
  // eslint-disable-next-line max-statements
1825
1813
  function memo(fieldName) {
1826
1814
  var args = [];
@@ -1889,6 +1877,6 @@ function warn() {
1889
1877
  ctx.currentTest.warn();
1890
1878
  }
1891
1879
 
1892
- var VERSION = "4.3.0";
1880
+ var VERSION = "4.3.1";
1893
1881
 
1894
1882
  export { VERSION, context, create, each, eager, group, include, omitWhen, only, optional, skip, skipWhen, test, warn };
@@ -1 +1 @@
1
- import{createContext as t}from"context";export{enforce}from"n4s";var n,e=(n=0,function(){return"".concat(n++)});function r(t){return String(t)===t}function u(t){return function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return!t.apply(void 0,n)}}function i(t){function n(e,u){var i=n.get(e);return i?i[1]:(u=u(),r.unshift([e.concat(),u]),r.length>Number(t)&&(r.length=t),u)}function e(t){return r.findIndex((function(n){var e=n[0];return t.length===Number(e.length)&&t.every((function(t,n){return t===e[n]}))}))}void 0===t&&(t=1);var r=[];return n.invalidate=function(t){-1<(t=e(t))&&r.splice(t,1)},n.get=function(t){return r[e(t)]||null},n}var o=u((function(t){return null===t}));function s(t){return"function"==typeof t}function a(t){for(var n=[],e=1;e<arguments.length;e++)n[e-1]=arguments[e];return s(t)?t.apply(void 0,n):t}function c(t,n){var e;return null!==(e=a(t))&&void 0!==e?e:n}function f(t){return(t=[].concat(t))[t.length-1]}function l(t,n){for(var e=[],r=0;r<t.length;r++){var u=t[r];Array.isArray(u)?e.push(l(u,n)):(u=n(u),o(u)&&e.push(u))}return e}function p(t){return[].concat(t).reduce((function(t,n){return Array.isArray(n)?t.concat(p(n)):[].concat(t).concat(n)}),[])}function d(t,n){var e=0;for(n=n.slice(0,-1);e<n.length;e++){var r=n[e];t[r]=c(t[r],[]),t=t[r]}return t}var v=Object.assign;function h(){function t(){n=[0]}var n=[];return t(),{addLevel:function(){n.push(0)},cursorAt:function(){return f(n)},getCursor:function(){return[].concat(n)},next:function(){return n[n.length-1]++,f(n)},removeLevel:function(){n.pop()},reset:t}}var g,N=g||(g={});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";var m,E=m||(m={});E[E.ALL=0]="ALL",E[E.EAGER=1]="EAGER";var y=t((function(t,n){return n?null:v({},{exclusion:{tests:{},groups:{}},inclusion:{},isolate:{type:g.DEFAULT,keys:{current:{},prev:{}}},mode:[m.ALL],testCursor:h()},t)}));function b(){return y.useX().stateRef}function S(){return b().testObjects()}function C(){(0,S()[1])((function(t){return{prev:t.prev,current:[].concat(t.current)}}))}function R(t){(0,S()[1])((function(n){return{prev:n.prev,current:[].concat(t(n.current))}}))}function T(){return p(l(S()[0].current,(function(t){return t.isPending()?t:null})))}var A=i();function O(){var t=S()[0].current;return A([t],(function(){return p(t)}))}var I,_=I||(I={});_.Error="error",_.Warning="warning";var k=function(){function t(t,n,r){var u=void 0===r?{}:r;r=u.message;var i=u.groupName;u=u.key,this.key=null,this.id=e(),this.severity=I.Error,this.status=L,this.fieldName=t,this.testFn=n,i&&(this.groupName=i),r&&(this.message=r),u&&(this.key=u)}return t.prototype.run=function(){try{var t=this.testFn()}catch(n){t=n,void 0===this.message&&r(t)&&(this.message=n),t=!1}return!1===t&&this.fail(),t},t.prototype.setStatus=function(t){this.isFinalStatus()&&t!==X||(this.status=t)},t.prototype.warns=function(){return this.severity===I.Warning},t.prototype.setPending=function(){this.setStatus(W)},t.prototype.fail=function(){this.setStatus(this.warns()?P:G)},t.prototype.done=function(){this.isFinalStatus()||this.setStatus(U)},t.prototype.warn=function(){this.severity=I.Warning},t.prototype.isFinalStatus=function(){return this.hasFailures()||this.isCanceled()||this.isPassing()},t.prototype.skip=function(t){this.isPending()&&!t||this.setStatus(F)},t.prototype.cancel=function(){this.setStatus(w),C()},t.prototype.reset=function(){this.status=L,C()},t.prototype.omit=function(){this.setStatus(X)},t.prototype.valueOf=function(){return!this.isFailing()},t.prototype.hasFailures=function(){return this.isFailing()||this.isWarning()},t.prototype.isNonActionable=function(){return this.isSkipped()||this.isOmitted()||this.isCanceled()},t.prototype.isPending=function(){return this.statusEquals(W)},t.prototype.isTested=function(){return this.hasFailures()||this.isPassing()},t.prototype.isOmitted=function(){return this.statusEquals(X)},t.prototype.isUntested=function(){return this.statusEquals(L)},t.prototype.isFailing=function(){return this.statusEquals(G)},t.prototype.isCanceled=function(){return this.statusEquals(w)},t.prototype.isSkipped=function(){return this.statusEquals(F)},t.prototype.isPassing=function(){return this.statusEquals(U)},t.prototype.isWarning=function(){return this.statusEquals(P)},t.prototype.statusEquals=function(t){return this.status===t},t}(),L="UNTESTED",F="SKIPPED",G="FAILED",P="WARNING",U="PASSING",W="PENDING",w="CANCELED",X="OMITTED";function D(t,n){if(!t)throw n instanceof String?n.valueOf():Error(n?a(n):n)}function x(t){function n(t,n,u){return r.references.push(),e(t,a(n,u)),function(){return[r.references[t],function(n){return e(t,a(n,r.references[t]))}]}}function e(n,e){var i=r.references[n];r.references[n]=e,s(n=u[n][1])&&n(e,i),s(t)&&t()}var r={references:[]},u=[];return{registerStateKey:function(t,e){var r=u.length;return u.push([t,e]),n(r,t)},reset:function(){var t=r.references;r.references=[],u.forEach((function(e,r){return n(r,e[0],t[r])}))}}}function H(t,n){var e=n.suiteId;return n=n.suiteName,{optionalFields:t.registerStateKey((function(){return{}})),suiteId:t.registerStateKey(e),suiteName:t.registerStateKey(n),testCallbacks:t.registerStateKey((function(){return{fieldCallbacks:{},doneCallbacks:[]}})),testObjects:t.registerStateKey((function(t){return{prev:t?t.current:[],current:[]}}))}}function K(t){return null==t}function j(t){setTimeout((function(){throw Error(t)}),0)}function M(){return y.useX().testCursor.getCursor()}function q(){return y.useX().testCursor.next()}function B(t,n){if(t=void 0===(t=t.type)?g.DEFAULT:t,s(n)){var e={current:{},prev:{}},r=M();return y.run({isolate:{type:t,keys:e}},(function(){y.useX().testCursor.addLevel(),e.prev=function(){var t=S()[0].prev;return[].concat(d(t,M())).reduce((function(t,n){return n instanceof k&&!K(n.key)?(t[n.key]=n,t):t}),{})}(),R((function(t){return d(t,r)[f(r)]=[],t}));var t=n();return y.useX().testCursor.removeLevel(),q(),t}))}}var V,Y=V||(V={});Y.WARNINGS="warnings",Y.ERRORS="errors";var J,z=J||(J={});function Q(t){if(t){if("number"==typeof t)return 0===t;if(Object.prototype.hasOwnProperty.call(t,"length"))return t.length===Number(0);if("object"==typeof t)return Object.keys(t).length===Number(0)}return!0}z.ERROR_COUNT="errorCount",z.WARN_COUNT="warnCount";var Z=u(Q);function $(t,n){return!(!n||t.fieldName!==n)}function tt(t,n,e){return(e=!t.hasFailures()||e&&!$(t,e))||(t=t.warns(),e=n===V.WARNINGS!=!!t),!e}function nt(t){return rt(V.ERRORS,t)}function et(t){return rt(V.WARNINGS,t)}function rt(t,n){return O().some((function(e){return tt(e,t,n)}))}function ut(t){var n=O().reduce((function(t,n){return t[n.fieldName]||n.isOmitted()&&(t[n.fieldName]=!0),t}),{});return(n=!!t&&!!n[t])||!nt(t)&&(!(Q(n=O())||function(t){var n=O();return!!t&&!n.find((function(n){return n.fieldName===t}))}(t)||function(t){var n=b().optionalFields()[0];return Z(T().filter((function(e){return!(t&&!$(e,t))&&!0!==n[e.fieldName]})))}(t))&&function(t){var n=O(),e=b().optionalFields()[0];return n.every((function(n){return!(!t||$(n,t))||(!0===e[n.fieldName]||n.isTested()||n.isOmitted())}))}(t))}function it(t,n){function e(t){i[t===V.ERRORS?J.ERROR_COUNT:J.WARN_COUNT]++,u&&(i[t]=(i[t]||[]).concat(u))}var r=n.fieldName,u=n.message;t[r]=t[r]||{errorCount:0,warnCount:0,testCount:0};var i=t[r];return n.isNonActionable()||(t[r].testCount++,n.isFailing()?e(V.ERRORS):n.isWarning()&&e(V.WARNINGS)),i}function ot(){return(ot=Object.assign||function(t){for(var n,e=1,r=arguments.length;e<r;e++)for(var u in n=arguments[e])Object.prototype.hasOwnProperty.call(n,u)&&(t[u]=n[u]);return t}).apply(this,arguments)}function st(t,n,e){if(e||2===arguments.length)for(var r,u=0,i=n.length;u<i;u++)!r&&u in n||(r||(r=Array.prototype.slice.call(n,0,u)),r[u]=n[u]);return t.concat(r||Array.prototype.slice.call(n))}function at(t,n,e){var r;void 0===e&&(e={});var u=(e=e||{}).group,i=e.fieldName;return n.reduce((function(n,e){if(u&&e.groupName!==u)var r=!0;else i&&!$(e,i)?r=!0:(r=e.warns(),r=t===V.WARNINGS!=!!r);return r||!e.hasFailures()||(n[e.fieldName]=(n[e.fieldName]||[]).concat(e.message||[])),n}),ot({},i&&((r={})[i]=[],r)))}function ct(t){return lt(V.ERRORS,t)}function ft(t){return lt(V.WARNINGS,t)}function lt(t,n){return t=at(t,O(),{fieldName:n}),n?t[n]:t}function pt(t,n){return t=vt(V.ERRORS,t,n),n?t[n]:t}function dt(t,n){return t=vt(V.WARNINGS,t,n),n?t[n]:t}function vt(t,n,e){return D(n,"get".concat(t[0].toUpperCase()).concat(t.slice(1),"ByGroup requires a group name. Received `").concat(n,"` instead.")),at(t,O(),{group:n,fieldName:e})}function ht(t,n){return Nt(V.ERRORS,t,n)}function gt(t,n){return Nt(V.WARNINGS,t,n)}function Nt(t,n,e){return O().some((function(r){return n===r.groupName&&tt(r,t,e)}))}var mt=i(20);function Et(){var t=O(),n={stateRef:b()};return mt([t],y.bind(n,(function(){var t=b().suiteName()[0];return v(function(){var t=O(),n=v({errorCount:0,warnCount:0,testCount:0},{groups:{},tests:{},valid:!1});return t.reduce((function(t,n){var e=t.tests;e[n.fieldName]=it(e,n),e[n.fieldName].valid=!1!==e[n.fieldName].valid&&ut(n.fieldName),e=t.groups;var r=n.groupName;return r&&(e[r]=e[r]||{},e[r][n.fieldName]=it(e[r],n)),t}),n),n.valid=ut(),function(t){for(var n in t.tests)t.errorCount+=t.tests[n].errorCount,t.warnCount+=t.tests[n].warnCount,t.testCount+=t.tests[n].testCount;return t}(n)}(),{getErrors:y.bind(n,ct),getErrorsByGroup:y.bind(n,pt),getWarnings:y.bind(n,ft),getWarningsByGroup:y.bind(n,dt),hasErrors:y.bind(n,nt),hasErrorsByGroup:y.bind(n,ht),hasWarnings:y.bind(n,et),hasWarningsByGroup:y.bind(n,gt),isValid:y.bind(n,ut),suiteName:t})})))}function yt(t){var n=T();return!Q(n)&&(t?n.some((function(n){return $(n,t)})):Z(n))}var bt=i(20);function St(){var t=O(),n={stateRef:b()};return bt([t],y.bind(n,(function(){return v({},Et(),{done:y.bind(n,Tt)})})))}function Ct(t,n,e){return!(s(t)&&(!n||e.tests[n]&&!Q(e.tests[n].testCount)))}function Rt(t){return!(yt()&&(!t||yt(t)))}function Tt(){function t(){return r(Et())}for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];var r=(n=n.reverse())[0];return n=n[1],e=St(),Ct(r,n,e)?e:Rt(n)?(t(),e):(At(t,n),e)}function At(t,n){var e=y.bind({},t);(0,b().testCallbacks()[1])((function(t){return n?t.fieldCallbacks[n]=(t.fieldCallbacks[n]||[]).concat(e):t.doneCallbacks.push(e),t}))}function Ot(t){return t.forEach((function(t){return t()}))}function It(){var t=function(){var t={};return{emit:function(n,e){(t[n]||[]).forEach((function(t){t(e)}))},on:function(n,e){return t[n]=(t[n]||[]).concat(e),{off:function(){t[n]=t[n].filter((function(t){return t!==e}))}}}}}();return t.on(kt.TEST_COMPLETED,(function(n){if(!n.isCanceled()){n.done(),n=n.fieldName;var e=b().testCallbacks()[0].fieldCallbacks;n&&!yt(n)&&Array.isArray(e[n])&&Ot(e[n]),yt()||t.emit(kt.ALL_RUNNING_TESTS_FINISHED)}})),t.on(kt.SUITE_CALLBACK_DONE_RUNNING,(function(){!function(){var t=b().optionalFields()[0];if(!Q(t)){var n={};R((function(e){return l(e,(function(e){var r=e.fieldName;if(n.hasOwnProperty(r))n[e.fieldName]&&e.omit();else{var u=t[r];s(u)&&(n[r]=u(),n[e.fieldName]&&e.omit())}return e}))}))}}()})),t.on(kt.ALL_RUNNING_TESTS_FINISHED,(function(){Ot(b().testCallbacks()[0].doneCallbacks)})),t.on(kt.REMOVE_FIELD,(function(t){O().forEach((function(n){$(n,t)&&(n.cancel(),function(t){R((function(n){return l(n,(function(n){return t!==n?n:null}))}))}(n))}))})),t.on(kt.RESET_FIELD,(function(t){O().forEach((function(n){$(n,t)&&n.reset()}))})),t}function _t(){var t=y.useX();return D(t.bus),t.bus}var kt,Lt=kt||(kt={});function Ft(t){return Pt(0,"tests",t)}function Gt(t){return Pt(1,"tests",t)}function Pt(t,n,e){var u=y.useX("hook called outside of a running suite.");e&&[].concat(e).forEach((function(e){r(e)&&(u.exclusion[n][e]=0===t)}))}function Ut(t){for(var n in t)if(!0===t[n])return!0;return!1}function Wt(t){return"Wrong arguments passed to group. Group ".concat(t,".")}function wt(t){var n=t.asyncTest,e=t.message;if(n&&s(n.then)){var u=_t().emit,i=b(),o=y.bind({stateRef:i},(function(){C(),u(kt.TEST_COMPLETED,t)}));i=y.bind({stateRef:i},(function(n){t.isCanceled()||(t.message=r(n)?n:e,t.fail(),o())}));try{n.then(o,i)}catch(t){i()}}}function Xt(t){var n=S()[0].prev;if(Q(n))return Dt(t),t;var e=M();if(n=d(n,e)[f(e)],!K(t.key)){n=t.key,(e=y.useX().isolate.keys.prev[n])&&(t=e),e=t;var r=y.useX().isolate.keys.current;return K(r[n])?r[n]=e:j('Encountered the same test key "'.concat(n,"\" twice. This may lead to tests overriding each other's results, or to tests being unexpectedly omitted.")),Dt(t),t}return!Z(e=n)||e.fieldName===t.fieldName&&e.groupName===t.groupName||(y.useX().isolate.type===g.EACH||j("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.')),function(){var t=S(),n=t[1],e=t[0].prev;t=d(e,M());var r=y.useX().testCursor.cursorAt();t.splice(r),n((function(t){return{prev:e,current:t.current}}))}(),n=null),Dt(t=c(n,t)),t}function Dt(t){var n=M();R((function(e){return d(e,n)[f(n)]=t,e}))}function xt(t){var n=m.EAGER;if(n=!(y.useX().mode[0]!==n||!nt(t.fieldName)))return t.skip(),Xt(t),q(),t;if(n=Xt(t),y.useX().omitted)return n.omit(),q(),n;if(function(t){var n=t.fieldName;if(t=t.groupName,y.useX().skipped)return!0;var e=y.useX(),r=e.exclusion;e=e.inclusion;var u=r.tests,i=u[n];if(!1===i)return!0;if(i=!0===i,t){t:{var o=y.useX().exclusion.groups;if(Object.prototype.hasOwnProperty.call(o,t))var s=!1===o[t];else{for(s in o)if(!0===o[s]){s=!0;break t}s=!1}}if(s)return!0;if(!0===r.groups[t])return!(i||!Ut(u)&&!1!==u[n])}r=y.useX().exclusion;t:{for(c in(s=y.useX().exclusion).groups)if(s.groups[c]){var c=!0;break t}c=!1}return!(!c||t&&t in r.groups&&r.groups[t])||!i&&!!Ut(u)&&!a(e[n])}(t))return n.skip(!!y.useX().skipped),q(),n;if(t!==n&&n.fieldName===t.fieldName&&n.groupName===t.groupName&&n.isPending()&&n.cancel(),Dt(t),q(),t.isUntested()){n=_t();var e=function(t){return y.run({currentTest:t},(function(){try{var n=t.testFn()}catch(e){n=e,void 0===t.message&&r(n)&&(t.message=e),n=!1}return!1===n&&t.fail(),n}))}(t);try{e&&s(e.then)?(t.asyncTest=e,t.setPending(),wt(t)):n.emit(kt.TEST_COMPLETED,t)}catch(n){throw Error("Unexpected error encountered during test registration.\n Test Object: ".concat(JSON.stringify(t),".\n Error: ").concat(n,"."))}}else(n=t.asyncTest)&&s(n.then)&&(t.setPending(),wt(t));return t}function Ht(t){for(var n=[],e=1;e<arguments.length;e++)n[e-1]=arguments[e];var u=s(n[1])?n:st([void 0],n,!0);n=u[0],e=u[1],u=u[2],D(r(t),jt("fieldName","string")),D(s(e),jt("Test callback","function"));var i=y.useX();return xt(n=new k(t,e,{message:n,groupName:i.groupName,key:u}))}Lt.TEST_COMPLETED="test_completed",Lt.ALL_RUNNING_TESTS_FINISHED="all_running_tests_finished",Lt.REMOVE_FIELD="remove_field",Lt.RESET_FIELD="reset_field",Lt.SUITE_CALLBACK_DONE_RUNNING="suite_callback_done_running",Ft.group=function(t){return Pt(0,"groups",t)},Gt.group=function(t){return Pt(1,"groups",t)};var Kt=v(Ht,{memo:function(t){var n=i(100);return function(e){for(var r=[],u=1;u<arguments.length;u++)r[u-1]=arguments[u];u=y.useX().testCursor.cursorAt();var i=(r=r.reverse())[0],o=r[1],s=r[2];return u=[b().suiteId()[0],e,u].concat(i),null===(r=n.get(u))?n(u,(function(){return t(e,s,o)})):r[1].isCanceled()?(n.invalidate(u),n(u,(function(){return t(e,s,o)}))):xt(r[1])}}(Ht)});function jt(t,n){return"Incompatible params passed to test function. ".concat(t," must be a ").concat(n)}var Mt="4.3.0";function qt(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var r=(t=t.reverse())[0];t=t[1],D(s(r),"vest.create: Expected callback to be a function.");var u=It(),i=x();return t={stateRef:H(i,{suiteId:e(),suiteName:t}),bus:u},v(y.bind(t,(function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return i.reset(),B({type:g.SUITE},(function(){r.apply(void 0,t)})),u.emit(kt.SUITE_CALLBACK_DONE_RUNNING),St()})),{get:y.bind(t,Et),remove:y.bind(t,(function(t){u.emit(kt.REMOVE_FIELD,t)})),reset:i.reset,resetField:y.bind(t,(function(t){u.emit(kt.RESET_FIELD,t)}))})}function Bt(t,n){D(s(n),"each callback must be a function"),B({type:g.EACH},(function(){t.forEach((function(t,e){n(t,e)}))}))}function Vt(){var t=m.EAGER;y.useX().mode[0]=t}function Yt(t,n){D(r(t),Wt("name must be a string")),D(s(n),Wt("callback must be a function")),B({type:g.GROUP},(function(){y.run({groupName:t},n)}))}function Jt(t){function n(n){var e=y.useX(),u=e.exclusion;e.inclusion[t]=function(){return Object.prototype.hasOwnProperty.call(u.tests,t)?c(u.tests[t],!0):r(n)?!!u.tests[n]:a(n,a(Et))}}var e=y.useX();return t?(e.inclusion[t]=c(e.exclusion.tests[t],!0),{when:n}):{when:n}}function zt(t,n){B({type:g.OMIT_WHEN},(function(){y.run({omitted:!!y.useX().omitted||a(t,a(Et))},(function(){return n()}))}))}function Qt(t){(0,b().optionalFields()[1])((function(n){if(Array.isArray(t)||r(t))[].concat(t).forEach((function(t){n[t]=!0}));else for(var e in t)n[e]=t[e];return n}))}function Zt(t,n){B({type:g.SKIP_WHEN},(function(){y.run({skipped:!!y.useX().skipped||a(t,a(Et))},(function(){return n()}))}))}function $t(){var t=y.useX("warn hook called outside of a running suite.");D(t.currentTest,"warn called outside of a test."),t.currentTest.warn()}export{Mt as VERSION,y as context,qt as create,Bt as each,Vt as eager,Yt as group,Jt as include,zt as omitWhen,Ft as only,Qt as optional,Gt as skip,Zt as skipWhen,Kt as test,$t as warn};
1
+ import{createContext as t}from"context";export{enforce}from"n4s";var n,e=(n=0,function(){return"".concat(n++)});function r(t){return String(t)===t}function u(t){return function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return!t.apply(void 0,n)}}function i(t){var n=Number(t);return!(isNaN(parseFloat(String(t)))||isNaN(Number(t))||!isFinite(n))}function o(t,n){return i(t)&&i(n)&&Number(t)===Number(n)}function s(t){function n(e,u){var o=n.get(e);return o?o[1]:(u=u(),r.unshift([e.concat(),u]),e=r.length,o=t,i(e)&&i(o)&&Number(e)>Number(o)&&(r.length=t),u)}function e(t){return r.findIndex((function(n){var e=n[0];return o(t.length,e.length)&&t.every((function(t,n){return t===e[n]}))}))}void 0===t&&(t=1);var r=[];return n.invalidate=function(t){-1<(t=e(t))&&r.splice(t,1)},n.get=function(t){return r[e(t)]||null},n}var a=u((function(t){return null===t}));function c(t){return"function"==typeof t}function f(t){for(var n=[],e=1;e<arguments.length;e++)n[e-1]=arguments[e];return c(t)?t.apply(void 0,n):t}function l(t,n){var e;return null!==(e=f(t))&&void 0!==e?e:n}function p(t){return(t=[].concat(t))[t.length-1]}function d(t,n){for(var e=[],r=0;r<t.length;r++){var u=t[r];Array.isArray(u)?e.push(d(u,n)):(u=n(u),a(u)&&e.push(u))}return e}function v(t){return[].concat(t).reduce((function(t,n){return Array.isArray(n)?t.concat(v(n)):[].concat(t).concat(n)}),[])}function h(t,n){var e=0;for(n=n.slice(0,-1);e<n.length;e++){var r=n[e];t[r]=l(t[r],[]),t=t[r]}return t}var g=Object.assign;function m(){function t(){n=[0]}var n=[];return t(),{addLevel:function(){n.push(0)},cursorAt:function(){return p(n)},getCursor:function(){return[].concat(n)},next:function(){return n[n.length-1]++,p(n)},removeLevel:function(){n.pop()},reset:t}}var N,E=N||(N={});E[E.DEFAULT=0]="DEFAULT",E[E.SUITE=1]="SUITE",E[E.EACH=2]="EACH",E[E.SKIP_WHEN=3]="SKIP_WHEN",E[E.OMIT_WHEN=4]="OMIT_WHEN",E[E.GROUP=5]="GROUP";var y,b=y||(y={});b[b.ALL=0]="ALL",b[b.EAGER=1]="EAGER";var S=t((function(t,n){return n?null:g({},{exclusion:{tests:{},groups:{}},inclusion:{},isolate:{type:N.DEFAULT,keys:{current:{},prev:{}}},mode:[y.ALL],testCursor:m()},t)}));function C(){return S.useX().stateRef}function R(){return C().testObjects()}function T(){(0,R()[1])((function(t){return{prev:t.prev,current:[].concat(t.current)}}))}function A(t){(0,R()[1])((function(n){return{prev:n.prev,current:[].concat(t(n.current))}}))}function I(){return v(d(R()[0].current,(function(t){return t.isPending()?t:null})))}var O=s();function _(){var t=R()[0].current;return O([t],(function(){return v(t)}))}var k,L=k||(k={});L.Error="error",L.Warning="warning";var F=function(){function t(t,n,r){var u=void 0===r?{}:r;r=u.message;var i=u.groupName;u=u.key,this.key=null,this.id=e(),this.severity=k.Error,this.status=X,this.fieldName=t,this.testFn=n,i&&(this.groupName=i),r&&(this.message=r),u&&(this.key=u)}return t.prototype.run=function(){try{var t=this.testFn()}catch(n){t=n,void 0===this.message&&r(t)&&(this.message=n),t=!1}return!1===t&&this.fail(),t},t.prototype.setStatus=function(t){this.isFinalStatus()&&t!==x||(this.status=t)},t.prototype.warns=function(){return this.severity===k.Warning},t.prototype.setPending=function(){this.setStatus(w)},t.prototype.fail=function(){this.setStatus(this.warns()?U:P)},t.prototype.done=function(){this.isFinalStatus()||this.setStatus(W)},t.prototype.warn=function(){this.severity=k.Warning},t.prototype.isFinalStatus=function(){return this.hasFailures()||this.isCanceled()||this.isPassing()},t.prototype.skip=function(t){this.isPending()&&!t||this.setStatus(G)},t.prototype.cancel=function(){this.setStatus(D),T()},t.prototype.reset=function(){this.status=X,T()},t.prototype.omit=function(){this.setStatus(x)},t.prototype.valueOf=function(){return!this.isFailing()},t.prototype.hasFailures=function(){return this.isFailing()||this.isWarning()},t.prototype.isNonActionable=function(){return this.isSkipped()||this.isOmitted()||this.isCanceled()},t.prototype.isPending=function(){return this.statusEquals(w)},t.prototype.isTested=function(){return this.hasFailures()||this.isPassing()},t.prototype.isOmitted=function(){return this.statusEquals(x)},t.prototype.isUntested=function(){return this.statusEquals(X)},t.prototype.isFailing=function(){return this.statusEquals(P)},t.prototype.isCanceled=function(){return this.statusEquals(D)},t.prototype.isSkipped=function(){return this.statusEquals(G)},t.prototype.isPassing=function(){return this.statusEquals(W)},t.prototype.isWarning=function(){return this.statusEquals(U)},t.prototype.statusEquals=function(t){return this.status===t},t}(),X="UNTESTED",G="SKIPPED",P="FAILED",U="WARNING",W="PASSING",w="PENDING",D="CANCELED",x="OMITTED";function H(t,n){if(!t)throw n instanceof String?n.valueOf():Error(n?f(n):n)}function K(t){function n(t,n,u){return r.references.push(),e(t,f(n,u)),function(){return[r.references[t],function(n){return e(t,f(n,r.references[t]))}]}}function e(n,e){var i=r.references[n];r.references[n]=e,c(n=u[n][1])&&n(e,i),c(t)&&t()}var r={references:[]},u=[];return{registerStateKey:function(t,e){var r=u.length;return u.push([t,e]),n(r,t)},reset:function(){var t=r.references;r.references=[],u.forEach((function(e,r){return n(r,e[0],t[r])}))}}}function M(t,n){var e=n.suiteId;return n=n.suiteName,{optionalFields:t.registerStateKey((function(){return{}})),suiteId:t.registerStateKey(e),suiteName:t.registerStateKey(n),testCallbacks:t.registerStateKey((function(){return{fieldCallbacks:{},doneCallbacks:[]}})),testObjects:t.registerStateKey((function(t){return{prev:t?t.current:[],current:[]}}))}}function j(t){return null==t}function q(t){setTimeout((function(){throw Error(t)}),0)}function B(){return S.useX().testCursor.getCursor()}function V(){return S.useX().testCursor.next()}function Y(t,n){if(t=void 0===(t=t.type)?N.DEFAULT:t,c(n)){var e={current:{},prev:{}},r=B();return S.run({isolate:{type:t,keys:e}},(function(){S.useX().testCursor.addLevel(),e.prev=function(){var t=R()[0].prev;return[].concat(h(t,B())).reduce((function(t,n){return n instanceof F&&!j(n.key)?(t[n.key]=n,t):t}),{})}(),A((function(t){return h(t,r)[p(r)]=[],t}));var t=n();return S.useX().testCursor.removeLevel(),V(),t}))}}var J,z=J||(J={});z.WARNINGS="warnings",z.ERRORS="errors";var Q,Z=Q||(Q={});function $(t){if(t){if("number"==typeof t)return 0===t;if(Object.prototype.hasOwnProperty.call(t,"length"))return o(t.length,0);if("object"==typeof t)return o((t=Object.keys(t)).length,0)}return!0}Z.ERROR_COUNT="errorCount",Z.WARN_COUNT="warnCount";var tt=u($);function nt(t,n){return!(!n||t.fieldName!==n)}function et(t,n,e){return(e=!t.hasFailures()||e&&!nt(t,e))||(t=t.warns(),e=n===J.WARNINGS!=!!t),!e}function rt(t){return it(J.ERRORS,t)}function ut(t){return it(J.WARNINGS,t)}function it(t,n){return _().some((function(e){return et(e,t,n)}))}function ot(t){var n,e,r=S.useX().summary;return H(r),!!(t?null!==(e=null===(n=r.tests)||void 0===n?void 0:n[t])&&void 0!==e&&e.valid:r.valid)}function st(t){var n=_().reduce((function(t,n){return t[n.fieldName]||n.isOmitted()&&(t[n.fieldName]=!0),t}),{});return(n=!!t&&!!n[t])||!rt(t)&&(!($(n=_())||function(t){var n=_();return!!t&&!n.find((function(n){return n.fieldName===t}))}(t)||function(t){var n=C().optionalFields()[0];return tt(I().filter((function(e){return!(t&&!nt(e,t))&&!0!==n[e.fieldName]})))}(t))&&function(t){var n=_(),e=C().optionalFields()[0];return n.every((function(n){return!(!t||nt(n,t))||(!0===e[n.fieldName]||n.isTested()||n.isOmitted())}))}(t))}function at(t,n){function e(t){i[t===J.ERRORS?Q.ERROR_COUNT:Q.WARN_COUNT]++,u&&(i[t]=(i[t]||[]).concat(u))}var r=n.fieldName,u=n.message;t[r]=t[r]||{errorCount:0,warnCount:0,testCount:0};var i=t[r];return n.isNonActionable()||(t[r].testCount++,n.isFailing()?e(J.ERRORS):n.isWarning()&&e(J.WARNINGS)),i}function ct(t,n,e){var r;return(null===(r=null==t?void 0:t[e])||void 0===r?void 0:r[n])||[]}function ft(t,n){var e,r,u={};for(r in t)u[r]=(null===(e=t[r])||void 0===e?void 0:e[n])||[];return u}function lt(t){return dt(J.ERRORS,t)}function pt(t){return dt(J.WARNINGS,t)}function dt(t,n){var e=S.useX().summary;return H(e),e=e.tests,n?ct(e,t,n):ft(e,t)}function vt(t,n){return gt(t,J.ERRORS,n)}function ht(t,n){return gt(t,J.WARNINGS,n)}function gt(t,n,e){var r=S.useX().summary;return H(r),t=r.groups[t],e?ct(t,n,e):ft(t,n)}function mt(t,n){return Et(J.ERRORS,t,n)}function Nt(t,n){return Et(J.WARNINGS,t,n)}function Et(t,n,e){return _().some((function(r){return n===r.groupName&&et(r,t,e)}))}var yt=s(1);function bt(){var t=_(),n={stateRef:C()};return yt([t],S.bind(n,(function(){var t=function(){var t=_(),n=g({errorCount:0,warnCount:0,testCount:0},{groups:{},tests:{},valid:!1});return t.reduce((function(t,n){var e=t.tests;e[n.fieldName]=at(e,n),e[n.fieldName].valid=!1!==e[n.fieldName].valid&&st(n.fieldName),e=t.groups;var r=n.groupName;return r&&(e[r]=e[r]||{},e[r][n.fieldName]=at(e[r],n)),t}),n),n.valid=st(),function(t){for(var n in t.tests)t.errorCount+=t.tests[n].errorCount,t.warnCount+=t.tests[n].warnCount,t.testCount+=t.tests[n].testCount;return t}(n)}(),e=C().suiteName()[0],r=g({summary:t},n);return g(t,{getErrors:S.bind(r,lt),getErrorsByGroup:S.bind(r,vt),getWarnings:S.bind(r,pt),getWarningsByGroup:S.bind(r,ht),hasErrors:S.bind(r,rt),hasErrorsByGroup:S.bind(r,mt),hasWarnings:S.bind(r,ut),hasWarningsByGroup:S.bind(r,Nt),isValid:S.bind(r,ot),suiteName:e})})))}function St(t){var n=I();return!$(n)&&(t?n.some((function(n){return nt(n,t)})):tt(n))}var Ct=s(20);function Rt(){var t=_(),n={stateRef:C()};return Ct([t],S.bind(n,(function(){return g({},bt(),{done:S.bind(n,It)})})))}function Tt(t,n,e){return!(c(t)&&(!n||e.tests[n]&&!$(e.tests[n].testCount)))}function At(t){return!(St()&&(!t||St(t)))}function It(){function t(){return r(bt())}for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];var r=(n=n.reverse())[0];return n=n[1],e=Rt(),Tt(r,n,e)?e:At(n)?(t(),e):(Ot(t,n),e)}function Ot(t,n){(0,C().testCallbacks()[1])((function(e){return n?e.fieldCallbacks[n]=(e.fieldCallbacks[n]||[]).concat(t):e.doneCallbacks.push(t),e}))}function _t(t){return t.forEach((function(t){return t()}))}function kt(){var t=function(){var t={};return{emit:function(n,e){(t[n]||[]).forEach((function(t){t(e)}))},on:function(n,e){return t[n]=(t[n]||[]).concat(e),{off:function(){t[n]=(t[n]||[]).filter((function(t){return t!==e}))}}}}}();return t.on(Ft.TEST_COMPLETED,(function(n){if(!n.isCanceled()){n.done(),n=n.fieldName;var e=C().testCallbacks()[0].fieldCallbacks;n&&!St(n)&&Array.isArray(e[n])&&_t(e[n]),St()||t.emit(Ft.ALL_RUNNING_TESTS_FINISHED)}})),t.on(Ft.SUITE_CALLBACK_DONE_RUNNING,(function(){!function(){var t=C().optionalFields()[0];if(!$(t)){var n={};A((function(e){return d(e,(function(e){if(Object.prototype.hasOwnProperty.call(n,e.fieldName))n[e.fieldName]&&e.omit();else{var r=t[e.fieldName];c(r)&&(n[e.fieldName]=r(),n[e.fieldName]&&e.omit())}return e}))}))}}()})),t.on(Ft.ALL_RUNNING_TESTS_FINISHED,(function(){_t(C().testCallbacks()[0].doneCallbacks)})),t.on(Ft.REMOVE_FIELD,(function(t){_().forEach((function(n){nt(n,t)&&(n.cancel(),function(t){A((function(n){return d(n,(function(n){return t!==n?n:null}))}))}(n))}))})),t.on(Ft.RESET_FIELD,(function(t){_().forEach((function(n){nt(n,t)&&n.reset()}))})),t}function Lt(){var t=S.useX();return H(t.bus),t.bus}var Ft,Xt=Ft||(Ft={});function Gt(t){return Ut(0,"tests",t)}function Pt(t){return Ut(1,"tests",t)}function Ut(t,n,e){var u=S.useX("hook called outside of a running suite.");e&&[].concat(e).forEach((function(e){r(e)&&(u.exclusion[n][e]=0===t)}))}function Wt(t){for(var n in t)if(!0===t[n])return!0;return!1}function wt(t){return"Wrong arguments passed to group. Group ".concat(t,".")}function Dt(t,n,e){if(e||2===arguments.length)for(var r,u=0,i=n.length;u<i;u++)!r&&u in n||(r||(r=Array.prototype.slice.call(n,0,u)),r[u]=n[u]);return t.concat(r||Array.prototype.slice.call(n))}function xt(t){var n=t.asyncTest,e=t.message;if(n&&c(n.then)){var u=Lt().emit,i=C(),o=S.bind({stateRef:i},(function(){T(),u(Ft.TEST_COMPLETED,t)}));i=S.bind({stateRef:i},(function(n){t.isCanceled()||(t.message=r(n)?n:e,t.fail(),o())}));try{n.then(o,i)}catch(t){i()}}}function Ht(t){var n=R()[0].prev;if($(n))return Kt(t),t;var e=B();if(n=h(n,e)[p(e)],!j(t.key)){n=t.key,(e=S.useX().isolate.keys.prev[n])&&(t=e),e=t;var r=S.useX().isolate.keys.current;return j(r[n])?r[n]=e:q('Encountered the same test key "'.concat(n,"\" twice. This may lead to tests overriding each other's results, or to tests being unexpectedly omitted.")),Kt(t),t}return!tt(e=n)||e.fieldName===t.fieldName&&e.groupName===t.groupName||(S.useX().isolate.type===N.EACH||q("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.')),function(){var t=R(),n=t[1],e=t[0].prev;t=h(e,B());var r=S.useX().testCursor.cursorAt();t.splice(r),n((function(t){return{prev:e,current:t.current}}))}(),n=null),Kt(t=l(n,t)),t}function Kt(t){var n=B();A((function(e){return h(e,n)[p(n)]=t,e}))}function Mt(t){var n=y.EAGER;if(n=!(S.useX().mode[0]!==n||!rt(t.fieldName)))return t.skip(),Ht(t),V(),t;if(n=Ht(t),S.useX().omitted)return n.omit(),V(),n;if(function(t){var n=t.fieldName;if(t=t.groupName,S.useX().skipped)return!0;var e=S.useX(),r=e.exclusion;e=e.inclusion;var u=r.tests,i=u[n];if(!1===i)return!0;if(i=!0===i,t){t:{var o=S.useX().exclusion.groups;if(Object.prototype.hasOwnProperty.call(o,t))var s=!1===o[t];else{for(s in o)if(!0===o[s]){s=!0;break t}s=!1}}if(s)return!0;if(!0===r.groups[t])return!(i||!Wt(u)&&!1!==u[n])}r=S.useX().exclusion;t:{for(a in(s=S.useX().exclusion).groups)if(s.groups[a]){var a=!0;break t}a=!1}return!(!a||t&&t in r.groups&&r.groups[t])||!i&&!!Wt(u)&&!f(e[n])}(t))return n.skip(!!S.useX().skipped),V(),n;if(t!==n&&n.fieldName===t.fieldName&&n.groupName===t.groupName&&n.isPending()&&n.cancel(),Kt(t),V(),t.isUntested()){n=Lt();var e=function(t){return S.run({currentTest:t},(function(){try{var n=t.testFn()}catch(e){n=e,void 0===t.message&&r(n)&&(t.message=e),n=!1}return!1===n&&t.fail(),n}))}(t);try{e&&c(e.then)?(t.asyncTest=e,t.setPending(),xt(t)):n.emit(Ft.TEST_COMPLETED,t)}catch(n){throw Error("Unexpected error encountered during test registration.\n Test Object: ".concat(JSON.stringify(t),".\n Error: ").concat(n,"."))}}else(n=t.asyncTest)&&c(n.then)&&(t.setPending(),xt(t));return t}function jt(t){for(var n=[],e=1;e<arguments.length;e++)n[e-1]=arguments[e];var u=c(n[1])?n:Dt([void 0],n,!0);n=u[0],e=u[1],u=u[2],H(r(t),Bt("fieldName","string")),H(c(e),Bt("Test callback","function"));var i=S.useX();return Mt(n=new F(t,e,{message:n,groupName:i.groupName,key:u}))}Xt.TEST_COMPLETED="test_completed",Xt.ALL_RUNNING_TESTS_FINISHED="all_running_tests_finished",Xt.REMOVE_FIELD="remove_field",Xt.RESET_FIELD="reset_field",Xt.SUITE_CALLBACK_DONE_RUNNING="suite_callback_done_running",Gt.group=function(t){return Ut(0,"groups",t)},Pt.group=function(t){return Ut(1,"groups",t)};var qt=g(jt,{memo:function(t){var n=s(10);return function(e){for(var r=[],u=1;u<arguments.length;u++)r[u-1]=arguments[u];u=S.useX().testCursor.cursorAt();var i=(r=r.reverse())[0],o=r[1],s=r[2];return u=[C().suiteId()[0],e,u].concat(i),null===(r=n.get(u))?n(u,(function(){return t(e,s,o)})):r[1].isCanceled()?(n.invalidate(u),n(u,(function(){return t(e,s,o)}))):Mt(r[1])}}(jt)});function Bt(t,n){return"Incompatible params passed to test function. ".concat(t," must be a ").concat(n)}var Vt="4.3.1";function Yt(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var r=(t=t.reverse())[0];t=t[1],H(c(r),"vest.create: Expected callback to be a function.");var u=kt(),i=K();return t={stateRef:M(i,{suiteId:e(),suiteName:t}),bus:u},g(S.bind(t,(function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return i.reset(),Y({type:N.SUITE},(function(){r.apply(void 0,t)})),u.emit(Ft.SUITE_CALLBACK_DONE_RUNNING),Rt()})),{get:S.bind(t,bt),remove:S.bind(t,(function(t){u.emit(Ft.REMOVE_FIELD,t)})),reset:i.reset,resetField:S.bind(t,(function(t){u.emit(Ft.RESET_FIELD,t)}))})}function Jt(t,n){H(c(n),"each callback must be a function"),Y({type:N.EACH},(function(){t.forEach((function(t,e){n(t,e)}))}))}function zt(){var t=y.EAGER;S.useX().mode[0]=t}function Qt(t,n){H(r(t),wt("name must be a string")),H(c(n),wt("callback must be a function")),Y({type:N.GROUP},(function(){S.run({groupName:t},n)}))}function Zt(t){function n(n){var e=S.useX(),u=e.exclusion;e.inclusion[t]=function(){return Object.prototype.hasOwnProperty.call(u.tests,t)?l(u.tests[t],!0):r(n)?!!u.tests[n]:f(n,f(bt))}}var e=S.useX();return t?(e.inclusion[t]=l(e.exclusion.tests[t],!0),{when:n}):{when:n}}function $t(t,n){Y({type:N.OMIT_WHEN},(function(){S.run({omitted:!!S.useX().omitted||f(t,f(bt))},(function(){return n()}))}))}function tn(t){(0,C().optionalFields()[1])((function(n){if(Array.isArray(t)||r(t))[].concat(t).forEach((function(t){n[t]=!0}));else for(var e in t)n[e]=t[e];return n}))}function nn(t,n){Y({type:N.SKIP_WHEN},(function(){S.run({skipped:!!S.useX().skipped||f(t,f(bt))},(function(){return n()}))}))}function en(){var t=S.useX("warn hook called outside of a running suite.");H(t.currentTest,"warn called outside of a test."),t.currentTest.warn()}export{Vt as VERSION,S as context,Yt as create,Jt as each,zt as eager,Qt as group,Zt as include,$t as omitWhen,Gt as only,tn as optional,Pt as skip,nn as skipWhen,qt as test,en as warn};
@@ -164,7 +164,7 @@
164
164
  var isNotNumber = bindNot(isNumber);
165
165
 
166
166
  function lengthEquals(value, arg1) {
167
- return value.length === Number(arg1);
167
+ return numberEquals(value.length, arg1);
168
168
  }
169
169
  var lengthNotEquals = bindNot(lengthEquals);
170
170
 
@@ -244,11 +244,11 @@
244
244
  var isNotValueOf = bindNot(isValueOf);
245
245
 
246
246
  function longerThan(value, arg1) {
247
- return value.length > Number(arg1);
247
+ return greaterThan(value.length, arg1);
248
248
  }
249
249
 
250
250
  function longerThanOrEquals(value, arg1) {
251
- return value.length >= Number(arg1);
251
+ return greaterThanOrEquals(value.length, arg1);
252
252
  }
253
253
 
254
254
  function matches(value, regex) {
@@ -274,11 +274,11 @@
274
274
  }
275
275
 
276
276
  function shorterThan(value, arg1) {
277
- return value.length < Number(arg1);
277
+ return lessThan(value.length, arg1);
278
278
  }
279
279
 
280
280
  function shorterThanOrEquals(value, arg1) {
281
- return value.length <= Number(arg1);
281
+ return lessThanOrEquals(value.length, arg1);
282
282
  }
283
283
 
284
284
  function startsWith(value, arg1) {
@@ -697,7 +697,7 @@
697
697
  return ctx.run({ value: value }, function () {
698
698
  return defaultToPassing(mapFirst(composites, function (composite, breakout) {
699
699
  /* HACK: Just a small white lie. ~~HELP WANTED~~.
700
- The ideal is that instead of `TLazyRuleRunners` We would simply use `TLazy` to begin with.
700
+ The ideal is that instead of `LazyRuleRunners` We would simply use `Lazy` to begin with.
701
701
  The problem is that lazy rules can't really be passed to this function due to some generic hell
702
702
  so we're limiting it to a small set of functions.
703
703
  */
@@ -1 +1 @@
1
- "use strict";!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(n="undefined"!=typeof globalThis?globalThis:n||self).compose=t()}(this,(function(){function n(n){return"function"==typeof n}function t(t){for(var r=[],e=1;e<arguments.length;e++)r[e-1]=arguments[e];return n(t)?t.apply(void 0,r):t}function r(n,r){if(!n)throw r instanceof String?r.valueOf():Error(r?t(r):r)}function e(n,t){function r(n){e=!0,u=n}for(var e=!1,u=null,i=0;i<n.length;i++)if(t(n[i],r,i),e)return u}function u(n){return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return!n.apply(void 0,t)}}function i(n){return null===n}function o(n){return void 0===n}function s(n){return null===n||o(n)}function f(n){return String(n)===n}function a(n,t){return f(n)&&f(t)&&n.endsWith(t)}function c(n,t){return n===t}function l(n){var t=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(t))}function p(n,t){return l(n)&&l(t)&&Number(n)>Number(t)}function N(n,t){return l(n)&&l(t)&&Number(n)===Number(t)}function g(n,t){return N(n,t)||p(n,t)}function h(n){return!!Array.isArray(n)}function v(n,t){return!!(h(t)||f(t)&&f(n))&&-1!==t.indexOf(n)}function y(n,t){return l(n)&&l(t)&&Number(n)<Number(t)}function d(n,t){return N(n,t)||y(n,t)}function m(n,t,r){return g(n,t)&&d(n,r)}function b(n){return s(n)||f(n)&&!n.trim()}function O(n){return!!n===n}function x(n){return"number"==typeof n}function E(n,t){return n.length===Number(t)}function w(n){if(n){if(x(n))return 0===n;if(Object.prototype.hasOwnProperty.call(n,"length"))return E(n,0);if("object"==typeof n)return E(Object.keys(n),0)}return!0}function T(n,t){return n in t}function q(n){return Number.isNaN(n)}function S(n){return!!n}function j(n,t){if(s(t))return!1;for(var r in t)if(t[r]===n)return!0;return!1}function A(n,t){return t instanceof RegExp?t.test(n):!!f(t)&&new RegExp(t).test(n)}function B(n,t){return f(n)&&f(t)&&n.startsWith(t)}function P(t){for(var r in cn){var e=cn[r];n(e)&&t(r,e)}}function W(n,r){var e;return null!==(e=t(n))&&void 0!==e?e:r}function k(){return null}function F(n,t,r){if(r||2===arguments.length)for(var e,u=0,i=t.length;u<i;u++)!e&&u in t||(e||(e=Array.prototype.slice.call(t,0,u)),e[u]=t[u]);return n.concat(e||Array.prototype.slice.call(t))}function I(){try{return n(Proxy)}catch(n){return!1}}function J(n,t){return n={pass:n},t&&(n.message=t),n}function K(n,e,u){for(var i=[],o=3;o<arguments.length;o++)i[o-3]=arguments[o];return r(O(n)||n&&O(n.pass),"Incorrect return value for rule: "+JSON.stringify(n)),O(n)?J(n):J(n.pass,t.apply(void 0,F([n.message,e,u],i,!1)))}function R(n){function t(t,e,u){return function(){for(var i=[],o=0;o<arguments.length;o++)i[o]=arguments[o];return r((o=K.apply(void 0,F([ln.run({value:n},(function(){return e.apply(void 0,F([n],i,!1))})),u,n],i,!1))).pass,w(o.message)?"enforce/".concat(u," failed with ").concat(JSON.stringify(n)):new String(o.message)),t}}var e={};if(!I())return P((function(n,r){e[n]=t(e,r,n)})),e;var u=new Proxy(e,{get:function(n,r){if(n=cn[r])return t(u,n,r)}});return u}function U(n){var r,u=[];return function n(i){return function(){for(var o=[],s=0;s<arguments.length;s++)o[s]=arguments[s];var f=cn[i];u.push((function(n){return K.apply(void 0,F([f.apply(void 0,F([n],o,!1)),i,n],o,!1))}));var a={run:function(n){return W(e(u,(function(e,u){var i,o=ln.run({value:n},(function(){return e(n)}));o.pass||u(J(!!o.pass,null!==(i=t(r,n,o.message))&&void 0!==i?i:o.message))})),J(!0))},test:function(n){return a.run(n).pass},message:function(n){return n&&(r=n),a}};return I()?a=new Proxy(a,{get:function(t,r){return cn[r]?n(r):t[r]}}):(P((function(t){a[t]=n(t)})),a)}}(n)}var V,X=Object.assign,z=u(i),C=u(o),M=u(s),D=u(a),G=u(c),H=u(l),L=u(N),Q=u(h),Y=u(v),Z=u(m),$=u(b),_=u(O),nn=u(x),tn=u(E),rn=u(w),en=u(T),un=u(q),on=u(f),sn=u(S),fn=u(j),an=u(A),cn={condition:function(n,t){try{return t(n)}catch(n){return!1}},doesNotEndWith:D,doesNotStartWith:u(B),endsWith:a,equals:c,greaterThan:p,greaterThanOrEquals:g,gt:p,gte:g,inside:v,isArray:h,isBetween:m,isBlank:b,isBoolean:O,isEmpty:w,isEven:function(n){return!!l(n)&&0==n%2},isFalsy:sn,isKeyOf:T,isNaN:q,isNegative:function(n){return y(n,0)},isNotArray:Q,isNotBetween:Z,isNotBlank:$,isNotBoolean:_,isNotEmpty:rn,isNotKeyOf:en,isNotNaN:un,isNotNull:z,isNotNullish:M,isNotNumber:nn,isNotNumeric:H,isNotString:on,isNotUndefined:C,isNotValueOf:fn,isNull:i,isNullish:s,isNumber:x,isNumeric:l,isOdd:function(n){return!!l(n)&&0!=n%2},isPositive:function(n){return p(n,0)},isString:f,isTruthy:S,isUndefined:o,isValueOf:j,lengthEquals:E,lengthNotEquals:tn,lessThan:y,lessThanOrEquals:d,longerThan:function(n,t){return n.length>Number(t)},longerThanOrEquals:function(n,t){return n.length>=Number(t)},lt:y,lte:d,matches:A,notEquals:G,notInside:Y,notMatches:an,numberEquals:N,numberNotEquals:L,shorterThan:function(n,t){return n.length<Number(t)},shorterThanOrEquals:function(n,t){return n.length<=Number(t)},startsWith:B},ln=function(n){function e(r,e){var o,s,f=u();return r=X({},f||{},null!==(o=t(n,r,f))&&void 0!==o?o:r),o=i.ctx=Object.freeze(r),i.ancestry.unshift(o),e=e(o),i.ancestry.shift(),i.ctx=null!==(s=i.ancestry[0])&&void 0!==s?s:null,e}function u(){return i.ctx}var i={ancestry:[]};return{bind:function(n,t){return function(){for(var r=[],u=0;u<arguments.length;u++)r[u]=arguments[u];return e(n,(function(){return t.apply(void 0,r)}))}},run:e,use:u,useX:function(n){return r(i.ctx,W(n,"Context was used after it was closed")),i.ctx}}}((function(n,t){var r={value:n.value,meta:n.meta||{}};return t?n.set?X(r,{parent:function(){return t?{value:t.value,meta:t.meta,parent:t.parent}:t}}):t:X(r,{parent:k})}));return V={context:function(){return ln.useX()},extend:function(n){X(cn,n)}},I()?new Proxy(X(R,V),{get:function(n,t){return t in n?n[t]:cn[t]?U(t):void 0}}):(P((function(n){V[n]=U(n)})),X(R,V)),function(){function n(n){return ln.run({value:n},(function(){return W(e(t,(function(t,r){try{var e=t.run(n)}catch(n){e=J(!1)}e.pass||r(e)})),J(!0))}))}for(var t=[],u=0;u<arguments.length;u++)t[u]=arguments[u];return Object.assign((function(t){r((t=n(t)).pass,new String(t.message))}),{run:n,test:function(t){return n(t).pass}})}}));
1
+ "use strict";!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(n="undefined"!=typeof globalThis?globalThis:n||self).compose=t()}(this,(function(){function n(n){return"function"==typeof n}function t(t){for(var r=[],e=1;e<arguments.length;e++)r[e-1]=arguments[e];return n(t)?t.apply(void 0,r):t}function r(n,r){if(!n)throw r instanceof String?r.valueOf():Error(r?t(r):r)}function e(n,t){function r(n){e=!0,u=n}for(var e=!1,u=null,i=0;i<n.length;i++)if(t(n[i],r,i),e)return u}function u(n){return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return!n.apply(void 0,t)}}function i(n){return null===n}function o(n){return void 0===n}function s(n){return null===n||o(n)}function f(n){return String(n)===n}function a(n,t){return f(n)&&f(t)&&n.endsWith(t)}function c(n,t){return n===t}function l(n){var t=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(t))}function p(n,t){return l(n)&&l(t)&&Number(n)>Number(t)}function g(n,t){return l(n)&&l(t)&&Number(n)===Number(t)}function h(n,t){return g(n,t)||p(n,t)}function v(n){return!!Array.isArray(n)}function N(n,t){return!!(v(t)||f(t)&&f(n))&&-1!==t.indexOf(n)}function y(n,t){return l(n)&&l(t)&&Number(n)<Number(t)}function d(n,t){return g(n,t)||y(n,t)}function m(n,t,r){return h(n,t)&&d(n,r)}function b(n){return s(n)||f(n)&&!n.trim()}function O(n){return!!n===n}function x(n){return"number"==typeof n}function E(n,t){return g(n.length,t)}function w(n){if(n){if(x(n))return 0===n;if(Object.prototype.hasOwnProperty.call(n,"length"))return E(n,0);if("object"==typeof n)return E(Object.keys(n),0)}return!0}function T(n,t){return n in t}function q(n){return Number.isNaN(n)}function S(n){return!!n}function j(n,t){if(s(t))return!1;for(var r in t)if(t[r]===n)return!0;return!1}function A(n,t){return t instanceof RegExp?t.test(n):!!f(t)&&new RegExp(t).test(n)}function B(n,t){return f(n)&&f(t)&&n.startsWith(t)}function P(t){for(var r in cn){var e=cn[r];n(e)&&t(r,e)}}function W(n,r){var e;return null!==(e=t(n))&&void 0!==e?e:r}function k(){return null}function F(n,t,r){if(r||2===arguments.length)for(var e,u=0,i=t.length;u<i;u++)!e&&u in t||(e||(e=Array.prototype.slice.call(t,0,u)),e[u]=t[u]);return n.concat(e||Array.prototype.slice.call(t))}function I(){try{return n(Proxy)}catch(n){return!1}}function J(n,t){return n={pass:n},t&&(n.message=t),n}function K(n,e,u){for(var i=[],o=3;o<arguments.length;o++)i[o-3]=arguments[o];return r(O(n)||n&&O(n.pass),"Incorrect return value for rule: "+JSON.stringify(n)),O(n)?J(n):J(n.pass,t.apply(void 0,F([n.message,e,u],i,!1)))}function R(n){function t(t,e,u){return function(){for(var i=[],o=0;o<arguments.length;o++)i[o]=arguments[o];return r((o=K.apply(void 0,F([ln.run({value:n},(function(){return e.apply(void 0,F([n],i,!1))})),u,n],i,!1))).pass,w(o.message)?"enforce/".concat(u," failed with ").concat(JSON.stringify(n)):new String(o.message)),t}}var e={};if(!I())return P((function(n,r){e[n]=t(e,r,n)})),e;var u=new Proxy(e,{get:function(n,r){if(n=cn[r])return t(u,n,r)}});return u}function U(n){var r,u=[];return function n(i){return function(){for(var o=[],s=0;s<arguments.length;s++)o[s]=arguments[s];var f=cn[i];u.push((function(n){return K.apply(void 0,F([f.apply(void 0,F([n],o,!1)),i,n],o,!1))}));var a={run:function(n){return W(e(u,(function(e,u){var i,o=ln.run({value:n},(function(){return e(n)}));o.pass||u(J(!!o.pass,null!==(i=t(r,n,o.message))&&void 0!==i?i:o.message))})),J(!0))},test:function(n){return a.run(n).pass},message:function(n){return n&&(r=n),a}};return I()?a=new Proxy(a,{get:function(t,r){return cn[r]?n(r):t[r]}}):(P((function(t){a[t]=n(t)})),a)}}(n)}var V,X=Object.assign,z=u(i),C=u(o),M=u(s),D=u(a),G=u(c),H=u(l),L=u(g),Q=u(v),Y=u(N),Z=u(m),$=u(b),_=u(O),nn=u(x),tn=u(E),rn=u(w),en=u(T),un=u(q),on=u(f),sn=u(S),fn=u(j),an=u(A),cn={condition:function(n,t){try{return t(n)}catch(n){return!1}},doesNotEndWith:D,doesNotStartWith:u(B),endsWith:a,equals:c,greaterThan:p,greaterThanOrEquals:h,gt:p,gte:h,inside:N,isArray:v,isBetween:m,isBlank:b,isBoolean:O,isEmpty:w,isEven:function(n){return!!l(n)&&0==n%2},isFalsy:sn,isKeyOf:T,isNaN:q,isNegative:function(n){return y(n,0)},isNotArray:Q,isNotBetween:Z,isNotBlank:$,isNotBoolean:_,isNotEmpty:rn,isNotKeyOf:en,isNotNaN:un,isNotNull:z,isNotNullish:M,isNotNumber:nn,isNotNumeric:H,isNotString:on,isNotUndefined:C,isNotValueOf:fn,isNull:i,isNullish:s,isNumber:x,isNumeric:l,isOdd:function(n){return!!l(n)&&0!=n%2},isPositive:function(n){return p(n,0)},isString:f,isTruthy:S,isUndefined:o,isValueOf:j,lengthEquals:E,lengthNotEquals:tn,lessThan:y,lessThanOrEquals:d,longerThan:function(n,t){return p(n.length,t)},longerThanOrEquals:function(n,t){return h(n.length,t)},lt:y,lte:d,matches:A,notEquals:G,notInside:Y,notMatches:an,numberEquals:g,numberNotEquals:L,shorterThan:function(n,t){return y(n.length,t)},shorterThanOrEquals:function(n,t){return d(n.length,t)},startsWith:B},ln=function(n){function e(r,e){var o,s,f=u();return r=X({},f||{},null!==(o=t(n,r,f))&&void 0!==o?o:r),o=i.ctx=Object.freeze(r),i.ancestry.unshift(o),e=e(o),i.ancestry.shift(),i.ctx=null!==(s=i.ancestry[0])&&void 0!==s?s:null,e}function u(){return i.ctx}var i={ancestry:[]};return{bind:function(n,t){return function(){for(var r=[],u=0;u<arguments.length;u++)r[u]=arguments[u];return e(n,(function(){return t.apply(void 0,r)}))}},run:e,use:u,useX:function(n){return r(i.ctx,W(n,"Context was used after it was closed")),i.ctx}}}((function(n,t){var r={value:n.value,meta:n.meta||{}};return t?n.set?X(r,{parent:function(){return t?{value:t.value,meta:t.meta,parent:t.parent}:t}}):t:X(r,{parent:k})}));return V={context:function(){return ln.useX()},extend:function(n){X(cn,n)}},I()?new Proxy(X(R,V),{get:function(n,t){return t in n?n[t]:cn[t]?U(t):void 0}}):(P((function(n){V[n]=U(n)})),X(R,V)),function(){function n(n){return ln.run({value:n},(function(){return W(e(t,(function(t,r){try{var e=t.run(n)}catch(n){e=J(!1)}e.pass||r(e)})),J(!0))}))}for(var t=[],u=0;u<arguments.length;u++)t[u]=arguments[u];return Object.assign((function(t){r((t=n(t)).pass,new String(t.message))}),{run:n,test:function(t){return n(t).pass}})}}));
@@ -209,7 +209,7 @@
209
209
  var isNotNumber = bindNot(isNumber);
210
210
 
211
211
  function lengthEquals(value, arg1) {
212
- return value.length === Number(arg1);
212
+ return numberEquals(value.length, arg1);
213
213
  }
214
214
  var lengthNotEquals = bindNot(lengthEquals);
215
215
 
@@ -289,11 +289,11 @@
289
289
  var isNotValueOf = bindNot(isValueOf);
290
290
 
291
291
  function longerThan(value, arg1) {
292
- return value.length > Number(arg1);
292
+ return greaterThan(value.length, arg1);
293
293
  }
294
294
 
295
295
  function longerThanOrEquals(value, arg1) {
296
- return value.length >= Number(arg1);
296
+ return greaterThanOrEquals(value.length, arg1);
297
297
  }
298
298
 
299
299
  function matches(value, regex) {
@@ -319,11 +319,11 @@
319
319
  }
320
320
 
321
321
  function shorterThan(value, arg1) {
322
- return value.length < Number(arg1);
322
+ return lessThan(value.length, arg1);
323
323
  }
324
324
 
325
325
  function shorterThanOrEquals(value, arg1) {
326
- return value.length <= Number(arg1);
326
+ return lessThanOrEquals(value.length, arg1);
327
327
  }
328
328
 
329
329
  function startsWith(value, arg1) {
@@ -1 +1 @@
1
- "use strict";!function(n){"function"==typeof define&&define.amd?define(n):n()}((function(){function n(n,t){function r(n){e=!0,u=n}for(var e=!1,u=null,i=0;i<n.length;i++)if(t(n[i],r,i),e)return u}function t(n){return"function"==typeof n}function r(n){for(var r=[],e=1;e<arguments.length;e++)r[e-1]=arguments[e];return t(n)?n.apply(void 0,r):n}function e(n,t){var e;return null!==(e=r(n))&&void 0!==e?e:t}function u(n,t){return n={pass:n},t&&(n.message=t),n}function i(n,t){try{return n.run(t)}catch(n){return u(!1)}}function o(n){return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return!n.apply(void 0,t)}}function f(n){return null===n}function a(n){return void 0===n}function s(n){return null===n||a(n)}function c(n){return String(n)===n}function l(n,t){return c(n)&&c(t)&&n.endsWith(t)}function v(n,t){return n===t}function N(n){var t=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(t))}function h(n,t){return N(n)&&N(t)&&Number(n)>Number(t)}function g(n,t){return N(n)&&N(t)&&Number(n)===Number(t)}function p(n,t){return g(n,t)||h(n,t)}function y(n){return!!Array.isArray(n)}function d(n,t){return!!(y(t)||c(t)&&c(n))&&-1!==t.indexOf(n)}function m(n,t){return N(n)&&N(t)&&Number(n)<Number(t)}function b(n,t){return g(n,t)||m(n,t)}function O(n,t,r){return p(n,t)&&b(n,r)}function x(n){return s(n)||c(n)&&!n.trim()}function E(n){return!!n===n}function w(n){return"number"==typeof n}function q(n,t){return n.length===Number(t)}function S(n){if(n){if(w(n))return 0===n;if(Object.prototype.hasOwnProperty.call(n,"length"))return q(n,0);if("object"==typeof n)return q(Object.keys(n),0)}return!0}function T(n,t){return n in t}function A(n){return Number.isNaN(n)}function B(n){return!!n}function P(n,t){if(s(t))return!1;for(var r in t)if(t[r]===n)return!0;return!1}function W(n,t){return n.length>Number(t)}function j(n,t){return t instanceof RegExp?t.test(n):!!c(t)&&new RegExp(t).test(n)}function k(n,t){return c(n)&&c(t)&&n.startsWith(t)}function F(n){for(var r in vn){var e=vn[r];t(e)&&n(r,e)}}function I(n,t){if(!n)throw t instanceof String?t.valueOf():Error(t?r(t):t)}function J(){return null}function K(n,t,r){if(r||2===arguments.length)for(var e,u=0,i=t.length;u<i;u++)!e&&u in t||(e||(e=Array.prototype.slice.call(t,0,u)),e[u]=t[u]);return n.concat(e||Array.prototype.slice.call(t))}function R(){try{return t(Proxy)}catch(n){return!1}}function U(n,t,e){for(var i=[],o=3;o<arguments.length;o++)i[o-3]=arguments[o];return I(E(n)||n&&E(n.pass),"Incorrect return value for rule: "+JSON.stringify(n)),E(n)?u(n):u(n.pass,r.apply(void 0,K([n.message,t,e],i,!1)))}function V(n){function t(t,r,e){return function(){for(var u=[],i=0;i<arguments.length;i++)u[i]=arguments[i];return I((i=U.apply(void 0,K([Nn.run({value:n},(function(){return r.apply(void 0,K([n],u,!1))})),e,n],u,!1))).pass,S(i.message)?"enforce/".concat(e," failed with ").concat(JSON.stringify(n)):new String(i.message)),t}}var r={};if(!R())return F((function(n,e){r[n]=t(r,e,n)})),r;var e=new Proxy(r,{get:function(n,r){if(n=vn[r])return t(e,n,r)}});return e}function X(t){var i,o=[];return function t(f){return function(){for(var a=[],s=0;s<arguments.length;s++)a[s]=arguments[s];var c=vn[f];o.push((function(n){return U.apply(void 0,K([c.apply(void 0,K([n],a,!1)),f,n],a,!1))}));var l={run:function(t){return e(n(o,(function(n,e){var o,f=Nn.run({value:t},(function(){return n(t)}));f.pass||e(u(!!f.pass,null!==(o=r(i,t,f.message))&&void 0!==o?o:f.message))})),u(!0))},test:function(n){return l.run(n).pass},message:function(n){return n&&(i=n),l}};return R()?l=new Proxy(l,{get:function(n,r){return vn[r]?t(r):n[r]}}):(F((function(n){l[n]=t(n)})),l)}}(t)}var z,C=Object.assign,M=o(f),D=o(a),G=o(s),H=o(l),L=o(v),Q=o(N),Y=o(g),Z=o(y),$=o(d),_=o(O),nn=o(x),tn=o(E),rn=o(w),en=o(q),un=o(S),on=o(T),fn=o(A),an=o(c),sn=o(B),cn=o(P),ln=o(j),vn={condition:function(n,t){try{return t(n)}catch(n){return!1}},doesNotEndWith:H,doesNotStartWith:o(k),endsWith:l,equals:v,greaterThan:h,greaterThanOrEquals:p,gt:h,gte:p,inside:d,isArray:y,isBetween:O,isBlank:x,isBoolean:E,isEmpty:S,isEven:function(n){return!!N(n)&&0==n%2},isFalsy:sn,isKeyOf:T,isNaN:A,isNegative:function(n){return m(n,0)},isNotArray:Z,isNotBetween:_,isNotBlank:nn,isNotBoolean:tn,isNotEmpty:un,isNotKeyOf:on,isNotNaN:fn,isNotNull:M,isNotNullish:G,isNotNumber:rn,isNotNumeric:Q,isNotString:an,isNotUndefined:D,isNotValueOf:cn,isNull:f,isNullish:s,isNumber:w,isNumeric:N,isOdd:function(n){return!!N(n)&&0!=n%2},isPositive:function(n){return h(n,0)},isString:c,isTruthy:B,isUndefined:a,isValueOf:P,lengthEquals:q,lengthNotEquals:en,lessThan:m,lessThanOrEquals:b,longerThan:W,longerThanOrEquals:function(n,t){return n.length>=Number(t)},lt:m,lte:b,matches:j,notEquals:L,notInside:$,notMatches:ln,numberEquals:g,numberNotEquals:Y,shorterThan:function(n,t){return n.length<Number(t)},shorterThanOrEquals:function(n,t){return n.length<=Number(t)},startsWith:k},Nn=function(n){function t(t,e){var o,f,a=u();return t=C({},a||{},null!==(o=r(n,t,a))&&void 0!==o?o:t),o=i.ctx=Object.freeze(t),i.ancestry.unshift(o),e=e(o),i.ancestry.shift(),i.ctx=null!==(f=i.ancestry[0])&&void 0!==f?f:null,e}function u(){return i.ctx}var i={ancestry:[]};return{bind:function(n,r){return function(){for(var e=[],u=0;u<arguments.length;u++)e[u]=arguments[u];return t(n,(function(){return r.apply(void 0,e)}))}},run:t,use:u,useX:function(n){return I(i.ctx,e(n,"Context was used after it was closed")),i.ctx}}}((function(n,t){var r={value:n.value,meta:n.meta||{}};return t?n.set?C(r,{parent:function(){return t?{value:t.value,meta:t.meta,parent:t.parent}:t}}):t:C(r,{parent:J})}));(z={context:function(){return Nn.useX()},extend:function(n){C(vn,n)}},R()?new Proxy(C(V,z),{get:function(n,t){return t in n?n[t]:vn[t]?X(t):void 0}}):(F((function(n){z[n]=X(n)})),C(V,z))).extend({allOf:function(t){for(var r=[],o=1;o<arguments.length;o++)r[o-1]=arguments[o];return e(n(r,(function(n,r){(n=i(n,t)).pass||r(n)})),u(!0))},anyOf:function(t){for(var r=[],o=1;o<arguments.length;o++)r[o-1]=arguments[o];return e(n(r,(function(n,r){(n=i(n,t)).pass&&r(n)})),u(!1))},noneOf:function(t){for(var r=[],o=1;o<arguments.length;o++)r[o-1]=arguments[o];return e(n(r,(function(n,r){i(n,t).pass&&r(u(!1))})),u(!0))},oneOf:function(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];var e=[];return t.some((function(t){if(W(e,1))return!1;(t=i(t,n)).pass&&e.push(t)})),u(q(e,1))}})}));
1
+ "use strict";!function(n){"function"==typeof define&&define.amd?define(n):n()}((function(){function n(n,t){function r(n){e=!0,u=n}for(var e=!1,u=null,i=0;i<n.length;i++)if(t(n[i],r,i),e)return u}function t(n){return"function"==typeof n}function r(n){for(var r=[],e=1;e<arguments.length;e++)r[e-1]=arguments[e];return t(n)?n.apply(void 0,r):n}function e(n,t){var e;return null!==(e=r(n))&&void 0!==e?e:t}function u(n,t){return n={pass:n},t&&(n.message=t),n}function i(n,t){try{return n.run(t)}catch(n){return u(!1)}}function o(n){return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return!n.apply(void 0,t)}}function f(n){return null===n}function a(n){return void 0===n}function s(n){return null===n||a(n)}function c(n){return String(n)===n}function l(n,t){return c(n)&&c(t)&&n.endsWith(t)}function v(n,t){return n===t}function h(n){var t=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(t))}function g(n,t){return h(n)&&h(t)&&Number(n)>Number(t)}function p(n,t){return h(n)&&h(t)&&Number(n)===Number(t)}function N(n,t){return p(n,t)||g(n,t)}function y(n){return!!Array.isArray(n)}function d(n,t){return!!(y(t)||c(t)&&c(n))&&-1!==t.indexOf(n)}function m(n,t){return h(n)&&h(t)&&Number(n)<Number(t)}function O(n,t){return p(n,t)||m(n,t)}function b(n,t,r){return N(n,t)&&O(n,r)}function x(n){return s(n)||c(n)&&!n.trim()}function E(n){return!!n===n}function w(n){return"number"==typeof n}function q(n,t){return p(n.length,t)}function S(n){if(n){if(w(n))return 0===n;if(Object.prototype.hasOwnProperty.call(n,"length"))return q(n,0);if("object"==typeof n)return q(Object.keys(n),0)}return!0}function T(n,t){return n in t}function A(n){return Number.isNaN(n)}function B(n){return!!n}function P(n,t){if(s(t))return!1;for(var r in t)if(t[r]===n)return!0;return!1}function W(n,t){return g(n.length,t)}function j(n,t){return t instanceof RegExp?t.test(n):!!c(t)&&new RegExp(t).test(n)}function k(n,t){return c(n)&&c(t)&&n.startsWith(t)}function F(n){for(var r in vn){var e=vn[r];t(e)&&n(r,e)}}function I(n,t){if(!n)throw t instanceof String?t.valueOf():Error(t?r(t):t)}function J(){return null}function K(n,t,r){if(r||2===arguments.length)for(var e,u=0,i=t.length;u<i;u++)!e&&u in t||(e||(e=Array.prototype.slice.call(t,0,u)),e[u]=t[u]);return n.concat(e||Array.prototype.slice.call(t))}function R(){try{return t(Proxy)}catch(n){return!1}}function U(n,t,e){for(var i=[],o=3;o<arguments.length;o++)i[o-3]=arguments[o];return I(E(n)||n&&E(n.pass),"Incorrect return value for rule: "+JSON.stringify(n)),E(n)?u(n):u(n.pass,r.apply(void 0,K([n.message,t,e],i,!1)))}function V(n){function t(t,r,e){return function(){for(var u=[],i=0;i<arguments.length;i++)u[i]=arguments[i];return I((i=U.apply(void 0,K([hn.run({value:n},(function(){return r.apply(void 0,K([n],u,!1))})),e,n],u,!1))).pass,S(i.message)?"enforce/".concat(e," failed with ").concat(JSON.stringify(n)):new String(i.message)),t}}var r={};if(!R())return F((function(n,e){r[n]=t(r,e,n)})),r;var e=new Proxy(r,{get:function(n,r){if(n=vn[r])return t(e,n,r)}});return e}function X(t){var i,o=[];return function t(f){return function(){for(var a=[],s=0;s<arguments.length;s++)a[s]=arguments[s];var c=vn[f];o.push((function(n){return U.apply(void 0,K([c.apply(void 0,K([n],a,!1)),f,n],a,!1))}));var l={run:function(t){return e(n(o,(function(n,e){var o,f=hn.run({value:t},(function(){return n(t)}));f.pass||e(u(!!f.pass,null!==(o=r(i,t,f.message))&&void 0!==o?o:f.message))})),u(!0))},test:function(n){return l.run(n).pass},message:function(n){return n&&(i=n),l}};return R()?l=new Proxy(l,{get:function(n,r){return vn[r]?t(r):n[r]}}):(F((function(n){l[n]=t(n)})),l)}}(t)}var z,C=Object.assign,M=o(f),D=o(a),G=o(s),H=o(l),L=o(v),Q=o(h),Y=o(p),Z=o(y),$=o(d),_=o(b),nn=o(x),tn=o(E),rn=o(w),en=o(q),un=o(S),on=o(T),fn=o(A),an=o(c),sn=o(B),cn=o(P),ln=o(j),vn={condition:function(n,t){try{return t(n)}catch(n){return!1}},doesNotEndWith:H,doesNotStartWith:o(k),endsWith:l,equals:v,greaterThan:g,greaterThanOrEquals:N,gt:g,gte:N,inside:d,isArray:y,isBetween:b,isBlank:x,isBoolean:E,isEmpty:S,isEven:function(n){return!!h(n)&&0==n%2},isFalsy:sn,isKeyOf:T,isNaN:A,isNegative:function(n){return m(n,0)},isNotArray:Z,isNotBetween:_,isNotBlank:nn,isNotBoolean:tn,isNotEmpty:un,isNotKeyOf:on,isNotNaN:fn,isNotNull:M,isNotNullish:G,isNotNumber:rn,isNotNumeric:Q,isNotString:an,isNotUndefined:D,isNotValueOf:cn,isNull:f,isNullish:s,isNumber:w,isNumeric:h,isOdd:function(n){return!!h(n)&&0!=n%2},isPositive:function(n){return g(n,0)},isString:c,isTruthy:B,isUndefined:a,isValueOf:P,lengthEquals:q,lengthNotEquals:en,lessThan:m,lessThanOrEquals:O,longerThan:W,longerThanOrEquals:function(n,t){return N(n.length,t)},lt:m,lte:O,matches:j,notEquals:L,notInside:$,notMatches:ln,numberEquals:p,numberNotEquals:Y,shorterThan:function(n,t){return m(n.length,t)},shorterThanOrEquals:function(n,t){return O(n.length,t)},startsWith:k},hn=function(n){function t(t,e){var o,f,a=u();return t=C({},a||{},null!==(o=r(n,t,a))&&void 0!==o?o:t),o=i.ctx=Object.freeze(t),i.ancestry.unshift(o),e=e(o),i.ancestry.shift(),i.ctx=null!==(f=i.ancestry[0])&&void 0!==f?f:null,e}function u(){return i.ctx}var i={ancestry:[]};return{bind:function(n,r){return function(){for(var e=[],u=0;u<arguments.length;u++)e[u]=arguments[u];return t(n,(function(){return r.apply(void 0,e)}))}},run:t,use:u,useX:function(n){return I(i.ctx,e(n,"Context was used after it was closed")),i.ctx}}}((function(n,t){var r={value:n.value,meta:n.meta||{}};return t?n.set?C(r,{parent:function(){return t?{value:t.value,meta:t.meta,parent:t.parent}:t}}):t:C(r,{parent:J})}));(z={context:function(){return hn.useX()},extend:function(n){C(vn,n)}},R()?new Proxy(C(V,z),{get:function(n,t){return t in n?n[t]:vn[t]?X(t):void 0}}):(F((function(n){z[n]=X(n)})),C(V,z))).extend({allOf:function(t){for(var r=[],o=1;o<arguments.length;o++)r[o-1]=arguments[o];return e(n(r,(function(n,r){(n=i(n,t)).pass||r(n)})),u(!0))},anyOf:function(t){for(var r=[],o=1;o<arguments.length;o++)r[o-1]=arguments[o];return e(n(r,(function(n,r){(n=i(n,t)).pass&&r(n)})),u(!1))},noneOf:function(t){for(var r=[],o=1;o<arguments.length;o++)r[o-1]=arguments[o];return e(n(r,(function(n,r){i(n,t).pass&&r(u(!1))})),u(!0))},oneOf:function(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];var e=[];return t.some((function(t){if(W(e,1))return!1;(t=i(t,n)).pass&&e.push(t)})),u(q(e,1))}})}));
@@ -142,7 +142,7 @@
142
142
  var isNotNumber = bindNot(isNumber);
143
143
 
144
144
  function lengthEquals(value, arg1) {
145
- return value.length === Number(arg1);
145
+ return numberEquals(value.length, arg1);
146
146
  }
147
147
  var lengthNotEquals = bindNot(lengthEquals);
148
148
 
@@ -222,11 +222,11 @@
222
222
  var isNotValueOf = bindNot(isValueOf);
223
223
 
224
224
  function longerThan(value, arg1) {
225
- return value.length > Number(arg1);
225
+ return greaterThan(value.length, arg1);
226
226
  }
227
227
 
228
228
  function longerThanOrEquals(value, arg1) {
229
- return value.length >= Number(arg1);
229
+ return greaterThanOrEquals(value.length, arg1);
230
230
  }
231
231
 
232
232
  function matches(value, regex) {
@@ -252,11 +252,11 @@
252
252
  }
253
253
 
254
254
  function shorterThan(value, arg1) {
255
- return value.length < Number(arg1);
255
+ return lessThan(value.length, arg1);
256
256
  }
257
257
 
258
258
  function shorterThanOrEquals(value, arg1) {
259
- return value.length <= Number(arg1);
259
+ return lessThanOrEquals(value.length, arg1);
260
260
  }
261
261
 
262
262
  function startsWith(value, arg1) {
@@ -729,7 +729,7 @@
729
729
  }
730
730
 
731
731
  // Help needed improving the typings of this file.
732
- // Ideally, we'd be able to extend IShapeObject, but that's not possible.
732
+ // Ideally, we'd be able to extend ShapeObject, but that's not possible.
733
733
  function partial(shapeObject) {
734
734
  var output = {};
735
735
  for (var key in shapeObject) {