vest 4.4.1 → 4.4.2-dev-afe5de

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 (49) hide show
  1. package/dist/cjs/classnames.development.js +9 -60
  2. package/dist/cjs/classnames.production.js +1 -1
  3. package/dist/cjs/enforce/compose.development.js +6 -53
  4. package/dist/cjs/enforce/compose.production.js +1 -1
  5. package/dist/cjs/enforce/compounds.development.js +16 -71
  6. package/dist/cjs/enforce/compounds.production.js +1 -1
  7. package/dist/cjs/enforce/schema.development.js +6 -58
  8. package/dist/cjs/enforce/schema.production.js +1 -1
  9. package/dist/cjs/parser.development.js +8 -59
  10. package/dist/cjs/parser.production.js +1 -1
  11. package/dist/cjs/promisify.development.js +2 -26
  12. package/dist/cjs/promisify.production.js +1 -1
  13. package/dist/cjs/vest.development.js +94 -293
  14. package/dist/cjs/vest.production.js +1 -1
  15. package/dist/es/classnames.development.js +1 -52
  16. package/dist/es/classnames.production.js +1 -1
  17. package/dist/es/enforce/compose.development.js +4 -51
  18. package/dist/es/enforce/compose.production.js +1 -1
  19. package/dist/es/enforce/compounds.development.js +11 -66
  20. package/dist/es/enforce/compounds.production.js +1 -1
  21. package/dist/es/enforce/schema.development.js +2 -54
  22. package/dist/es/enforce/schema.production.js +1 -1
  23. package/dist/es/parser.development.js +1 -52
  24. package/dist/es/parser.production.js +1 -1
  25. package/dist/es/promisify.development.js +1 -25
  26. package/dist/es/promisify.production.js +1 -1
  27. package/dist/es/vest.development.js +19 -218
  28. package/dist/es/vest.production.js +1 -1
  29. package/dist/umd/classnames.development.js +13 -13
  30. package/dist/umd/classnames.production.js +1 -1
  31. package/dist/umd/enforce/compose.development.js +121 -121
  32. package/dist/umd/enforce/compose.production.js +1 -1
  33. package/dist/umd/enforce/compounds.development.js +180 -184
  34. package/dist/umd/enforce/compounds.production.js +1 -1
  35. package/dist/umd/enforce/schema.development.js +132 -132
  36. package/dist/umd/enforce/schema.production.js +1 -1
  37. package/dist/umd/parser.development.js +13 -13
  38. package/dist/umd/parser.production.js +1 -1
  39. package/dist/umd/vest.development.js +277 -277
  40. package/dist/umd/vest.production.js +1 -1
  41. package/package.json +4 -3
  42. package/testUtils/mockThrowError.ts +2 -1
  43. package/testUtils/suiteDummy.ts +1 -1
  44. package/testUtils/testObjects.ts +0 -8
  45. package/types/enforce/compose.d.ts +14 -30
  46. package/types/enforce/compounds.d.ts +14 -30
  47. package/types/enforce/schema.d.ts +14 -30
  48. package/types/vest.d.ts +4 -3
  49. package/testUtils/itWithContext.ts +0 -23
@@ -1,57 +1,6 @@
1
1
  'use strict';
2
2
 
3
- function isFunction(value) {
4
- return typeof value === 'function';
5
- }
6
-
7
- function optionalFunctionValue(value) {
8
- var args = [];
9
- for (var _i = 1; _i < arguments.length; _i++) {
10
- args[_i - 1] = arguments[_i];
11
- }
12
- return isFunction(value) ? value.apply(void 0, args) : value;
13
- }
14
-
15
- function defaultTo(callback, defaultValue) {
16
- var _a;
17
- return (_a = optionalFunctionValue(callback)) !== null && _a !== void 0 ? _a : defaultValue;
18
- }
19
-
20
- /**
21
- * A safe hasOwnProperty access
22
- */
23
- function hasOwnProperty(obj, key) {
24
- return Object.prototype.hasOwnProperty.call(obj, key);
25
- }
26
-
27
- function invariant(condition,
28
- // eslint-disable-next-line @typescript-eslint/ban-types
29
- message) {
30
- if (condition) {
31
- return;
32
- }
33
- // If message is a string object (rather than string literal)
34
- // Throw the value directly as a string
35
- // Alternatively, throw an error with the message
36
- throw message instanceof String
37
- ? message.valueOf()
38
- : new Error(message ? optionalFunctionValue(message) : message);
39
- }
40
-
41
- function isNumeric(value) {
42
- var str = String(value);
43
- var num = Number(value);
44
- var result = !isNaN(parseFloat(str)) && !isNaN(Number(value)) && isFinite(num);
45
- return Boolean(result);
46
- }
47
-
48
- function greaterThan(value, gt) {
49
- return isNumeric(value) && isNumeric(gt) && Number(value) > Number(gt);
50
- }
51
-
52
- function isPositive(value) {
53
- return greaterThan(value, 0);
54
- }
3
+ var vestUtils = require('vest-utils');
55
4
 
56
5
  var Severity;
57
6
  (function (Severity) {
@@ -66,7 +15,7 @@ var SeverityCount;
66
15
 
67
16
  // eslint-disable-next-line max-lines-per-function
68
17
  function parse(res) {
69
- invariant(res && hasOwnProperty(res, 'valid'), "Vest parser: expected argument at position 0 to be Vest's result object.");
18
+ vestUtils.invariant(res && vestUtils.hasOwnProperty(res, 'valid'), "Vest parser: expected argument at position 0 to be Vest's result object.");
70
19
  var testedStorage = {};
71
20
  var selectors = {
72
21
  invalid: hasErrors,
@@ -78,13 +27,13 @@ function parse(res) {
78
27
  return selectors;
79
28
  function isTested(fieldName) {
80
29
  if (!fieldName) {
81
- return isPositive(res.testCount);
30
+ return vestUtils.isPositive(res.testCount);
82
31
  }
83
- if (hasOwnProperty(testedStorage, fieldName))
32
+ if (vestUtils.hasOwnProperty(testedStorage, fieldName))
84
33
  return testedStorage[fieldName];
85
34
  testedStorage[fieldName] =
86
- hasOwnProperty(res.tests, fieldName) &&
87
- isPositive(res.tests[fieldName].testCount);
35
+ vestUtils.hasOwnProperty(res.tests, fieldName) &&
36
+ vestUtils.isPositive(res.tests[fieldName].testCount);
88
37
  return selectors.tested(fieldName);
89
38
  }
90
39
  function isUntested(fieldName) {
@@ -102,8 +51,8 @@ function parse(res) {
102
51
  }
103
52
  function hasFailures(countKey, fieldName) {
104
53
  var _a;
105
- var failureCount = defaultTo(fieldName ? (_a = res.tests[fieldName]) === null || _a === void 0 ? void 0 : _a[countKey] : res[countKey], 0);
106
- return isPositive(failureCount);
54
+ var failureCount = vestUtils.defaultTo(fieldName ? (_a = res.tests[fieldName]) === null || _a === void 0 ? void 0 : _a[countKey] : res[countKey], 0);
55
+ return vestUtils.isPositive(failureCount);
107
56
  }
108
57
  }
109
58
 
@@ -117,7 +66,7 @@ function classnames(res, classes) {
117
66
  var classesArray = [];
118
67
  for (var selector in classes) {
119
68
  var sel = selector;
120
- if (isFunction(selectors[sel]) && selectors[sel](key)) {
69
+ if (vestUtils.isFunction(selectors[sel]) && selectors[sel](key)) {
121
70
  classesArray.push(classes[sel]);
122
71
  }
123
72
  }
@@ -1 +1 @@
1
- "use strict";function t(t){return"function"==typeof t}function n(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 r(t,n){return Object.prototype.hasOwnProperty.call(t,n)}function e(t){var n=Number(t);return!(isNaN(parseFloat(String(t)))||isNaN(Number(t))||!isFinite(n))}function u(t){return function(t,n){return e(t)&&e(n)&&Number(t)>Number(n)}(t,0)}var o,i,s;function a(t){function e(r,e){var o;return u(r=function(t,r){var e;return null!==(e=n(t))&&void 0!==e?e:r}(e?null===(o=t.tests[e])||void 0===o?void 0:o[r]:t[r],0))}!function(t,r){if(!t)throw r instanceof String?r.valueOf():Error(r?n(r):r)}(t&&r(t,"valid"),"Vest parser: expected argument at position 0 to be Vest's result object.");var o={},i={invalid:function(t){return e(s.ERROR_COUNT,t)},tested:function(n){return n?r(o,n)?o[n]:(o[n]=r(t.tests,n)&&u(t.tests[n].testCount),i.tested(n)):u(t.testCount)},untested:function(n){return 0===t.testCount||!i.tested(n)},valid:function(n){var r;return n?!(null===(r=t.tests[n])||void 0===r||!r.valid):t.valid},warning:function(t){return e(s.WARN_COUNT,t)}};return i}(i=o||(o={})).WARNINGS="warnings",i.ERRORS="errors",function(t){t.ERROR_COUNT="errorCount",t.WARN_COUNT="warnCount"}(s||(s={})),module.exports=function(n,r){void 0===r&&(r={});var e=a(n);return function(n){var u,o=[];for(u in r){var i=u;t(e[i])&&e[i](n)&&o.push(r[i])}return o.join(" ")}};
1
+ "use strict";var t,n,r,e=require("vest-utils");(n=t||(t={})).WARNINGS="warnings",n.ERRORS="errors",function(t){t.ERROR_COUNT="errorCount",t.WARN_COUNT="warnCount"}(r||(r={})),module.exports=function(t,n){void 0===n&&(n={});var i=function(t){function n(n,r){var i;return n=e.defaultTo(r?null===(i=t.tests[r])||void 0===i?void 0:i[n]:t[n],0),e.isPositive(n)}e.invariant(t&&e.hasOwnProperty(t,"valid"),"Vest parser: expected argument at position 0 to be Vest's result object.");var i={},s={invalid:function(t){return n(r.ERROR_COUNT,t)},tested:function(n){return n?e.hasOwnProperty(i,n)?i[n]:(i[n]=e.hasOwnProperty(t.tests,n)&&e.isPositive(t.tests[n].testCount),s.tested(n)):e.isPositive(t.testCount)},untested:function(n){return 0===t.testCount||!s.tested(n)},valid:function(n){var r;return n?!(null===(r=t.tests[n])||void 0===r||!r.valid):t.valid},warning:function(t){return n(r.WARN_COUNT,t)}};return s}(t);return function(t){var r,s=[];for(r in n){var o=r;e.isFunction(i[o])&&i[o](t)&&s.push(n[o])}return s.join(" ")}};
@@ -1,52 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var n4s = require('n4s');
4
-
5
- function isFunction(value) {
6
- return typeof value === 'function';
7
- }
8
-
9
- function optionalFunctionValue(value) {
10
- var args = [];
11
- for (var _i = 1; _i < arguments.length; _i++) {
12
- args[_i - 1] = arguments[_i];
13
- }
14
- return isFunction(value) ? value.apply(void 0, args) : value;
15
- }
16
-
17
- function invariant(condition,
18
- // eslint-disable-next-line @typescript-eslint/ban-types
19
- message) {
20
- if (condition) {
21
- return;
22
- }
23
- // If message is a string object (rather than string literal)
24
- // Throw the value directly as a string
25
- // Alternatively, throw an error with the message
26
- throw message instanceof String
27
- ? message.valueOf()
28
- : new Error(message ? optionalFunctionValue(message) : message);
29
- }
30
-
31
- function mapFirst(array, callback) {
32
- var broke = false;
33
- var breakoutValue = null;
34
- for (var i = 0; i < array.length; i++) {
35
- callback(array[i], breakout, i);
36
- if (broke) {
37
- return breakoutValue;
38
- }
39
- }
40
- function breakout(value) {
41
- broke = true;
42
- breakoutValue = value;
43
- }
44
- }
45
-
46
- function defaultTo(callback, defaultValue) {
47
- var _a;
48
- return (_a = optionalFunctionValue(callback)) !== null && _a !== void 0 ? _a : defaultValue;
49
- }
4
+ var vestUtils = require('vest-utils');
50
5
 
51
6
  function ruleReturn(pass, message) {
52
7
  var output = { pass: pass };
@@ -62,7 +17,7 @@ function passing() {
62
17
  return ruleReturn(true);
63
18
  }
64
19
  function defaultToPassing(callback) {
65
- return defaultTo(callback, passing());
20
+ return vestUtils.defaultTo(callback, passing());
66
21
  }
67
22
 
68
23
  function runLazyRule(lazyRule, currentValue) {
@@ -80,25 +35,23 @@ function compose() {
80
35
  for (var _i = 0; _i < arguments.length; _i++) {
81
36
  composites[_i] = arguments[_i];
82
37
  }
83
- return Object.assign(function (value) {
38
+ return vestUtils.assign(function (value) {
84
39
  var res = run(value);
85
- invariant(res.pass, new String(res.message));
40
+ vestUtils.invariant(res.pass, vestUtils.StringObject(res.message));
86
41
  }, {
87
42
  run: run,
88
43
  test: function (value) { return run(value).pass; }
89
44
  });
90
45
  function run(value) {
91
46
  return n4s.ctx.run({ value: value }, function () {
92
- return defaultToPassing(mapFirst(composites, function (composite, breakout) {
47
+ return defaultToPassing(vestUtils.mapFirst(composites, function (composite, breakout) {
93
48
  /* HACK: Just a small white lie. ~~HELP WANTED~~.
94
49
  The ideal is that instead of `LazyRuleRunners` We would simply use `Lazy` to begin with.
95
50
  The problem is that lazy rules can't really be passed to this function due to some generic hell
96
51
  so we're limiting it to a small set of functions.
97
52
  */
98
53
  var res = runLazyRule(composite, value);
99
- if (!res.pass) {
100
- breakout(res);
101
- }
54
+ breakout(!res.pass, res);
102
55
  }));
103
56
  });
104
57
  }
@@ -1 +1 @@
1
- "use strict";var n=require("n4s");function r(n){return"function"==typeof n}function t(n){for(var t=[],u=1;u<arguments.length;u++)t[u-1]=arguments[u];return r(n)?n.apply(void 0,t):n}function u(n,r){if(!n)throw r instanceof String?r.valueOf():Error(r?t(r):r)}function e(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 o(n,r){return n={pass:n},r&&(n.message=r),n}function i(n){return function(n,r){var u;return null!==(u=t(n))&&void 0!==u?u:r}(n,o(!0))}function f(n,r){try{return n.run(r)}catch(n){return o(!1)}}module.exports=function(){function r(r){return n.ctx.run({value:r},(function(){return i(e(t,(function(n,t){(n=f(n,r)).pass||t(n)})))}))}for(var t=[],o=0;o<arguments.length;o++)t[o]=arguments[o];return Object.assign((function(n){u((n=r(n)).pass,new String(n.message))}),{run:r,test:function(n){return r(n).pass}})};
1
+ "use strict";var n=require("n4s"),t=require("vest-utils");function r(n,t){return n={pass:n},t&&(n.message=t),n}function u(n){return t.defaultTo(n,r(!0))}function e(n,t){try{return n.run(t)}catch(n){return r(!1)}}module.exports=function(){function r(r){return n.ctx.run({value:r},(function(){return u(t.mapFirst(s,(function(n,t){t(!(n=e(n,r)).pass,n)})))}))}for(var s=[],i=0;i<arguments.length;i++)s[i]=arguments[i];return t.assign((function(n){n=r(n),t.invariant(n.pass,t.StringObject(n.message))}),{run:r,test:function(n){return r(n).pass}})};
@@ -1,38 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var n4s = require('n4s');
4
-
5
- function mapFirst(array, callback) {
6
- var broke = false;
7
- var breakoutValue = null;
8
- for (var i = 0; i < array.length; i++) {
9
- callback(array[i], breakout, i);
10
- if (broke) {
11
- return breakoutValue;
12
- }
13
- }
14
- function breakout(value) {
15
- broke = true;
16
- breakoutValue = value;
17
- }
18
- }
19
-
20
- function isFunction(value) {
21
- return typeof value === 'function';
22
- }
23
-
24
- function optionalFunctionValue(value) {
25
- var args = [];
26
- for (var _i = 1; _i < arguments.length; _i++) {
27
- args[_i - 1] = arguments[_i];
28
- }
29
- return isFunction(value) ? value.apply(void 0, args) : value;
30
- }
31
-
32
- function defaultTo(callback, defaultValue) {
33
- var _a;
34
- return (_a = optionalFunctionValue(callback)) !== null && _a !== void 0 ? _a : defaultValue;
35
- }
4
+ var vestUtils = require('vest-utils');
36
5
 
37
6
  function ruleReturn(pass, message) {
38
7
  var output = { pass: pass };
@@ -48,10 +17,10 @@ function passing() {
48
17
  return ruleReturn(true);
49
18
  }
50
19
  function defaultToFailing(callback) {
51
- return defaultTo(callback, failing());
20
+ return vestUtils.defaultTo(callback, failing());
52
21
  }
53
22
  function defaultToPassing(callback) {
54
- return defaultTo(callback, passing());
23
+ return vestUtils.defaultTo(callback, passing());
55
24
  }
56
25
 
57
26
  function runLazyRule(lazyRule, currentValue) {
@@ -68,11 +37,9 @@ function allOf(value) {
68
37
  for (var _i = 1; _i < arguments.length; _i++) {
69
38
  rules[_i - 1] = arguments[_i];
70
39
  }
71
- return defaultToPassing(mapFirst(rules, function (rule, breakout) {
40
+ return defaultToPassing(vestUtils.mapFirst(rules, function (rule, breakout) {
72
41
  var res = runLazyRule(rule, value);
73
- if (!res.pass) {
74
- breakout(res);
75
- }
42
+ breakout(!res.pass, res);
76
43
  }));
77
44
  }
78
45
 
@@ -81,11 +48,9 @@ function anyOf(value) {
81
48
  for (var _i = 1; _i < arguments.length; _i++) {
82
49
  rules[_i - 1] = arguments[_i];
83
50
  }
84
- return defaultToFailing(mapFirst(rules, function (rule, breakout) {
51
+ return defaultToFailing(vestUtils.mapFirst(rules, function (rule, breakout) {
85
52
  var res = runLazyRule(rule, value);
86
- if (res.pass) {
87
- breakout(res);
88
- }
53
+ breakout(res.pass, res);
89
54
  }));
90
55
  }
91
56
 
@@ -94,36 +59,16 @@ function noneOf(value) {
94
59
  for (var _i = 1; _i < arguments.length; _i++) {
95
60
  rules[_i - 1] = arguments[_i];
96
61
  }
97
- return defaultToPassing(mapFirst(rules, function (rule, breakout) {
62
+ return defaultToPassing(vestUtils.mapFirst(rules, function (rule, breakout) {
98
63
  var res = runLazyRule(rule, value);
99
- if (res.pass) {
100
- breakout(failing());
101
- }
64
+ breakout(res.pass, failing());
102
65
  }));
103
66
  }
104
67
 
105
- function isNumeric(value) {
106
- var str = String(value);
107
- var num = Number(value);
108
- var result = !isNaN(parseFloat(str)) && !isNaN(Number(value)) && isFinite(num);
109
- return Boolean(result);
110
- }
111
-
112
- function numberEquals(value, eq) {
113
- return isNumeric(value) && isNumeric(eq) && Number(value) === Number(eq);
114
- }
115
-
116
- function lengthEquals(value, arg1) {
117
- return numberEquals(value.length, arg1);
118
- }
119
-
120
- function greaterThan(value, gt) {
121
- return isNumeric(value) && isNumeric(gt) && Number(value) > Number(gt);
122
- }
123
-
124
- function longerThan(value, arg1) {
125
- return greaterThan(value.length, arg1);
68
+ function equals(value, arg1) {
69
+ return value === arg1;
126
70
  }
71
+ vestUtils.bindNot(equals);
127
72
 
128
73
  var REQUIRED_COUNT = 1;
129
74
  function oneOf(value) {
@@ -131,17 +76,17 @@ function oneOf(value) {
131
76
  for (var _i = 1; _i < arguments.length; _i++) {
132
77
  rules[_i - 1] = arguments[_i];
133
78
  }
134
- var passing = [];
79
+ var passingCount = 0;
135
80
  rules.some(function (rule) {
136
81
  var res = runLazyRule(rule, value);
137
82
  if (res.pass) {
138
- passing.push(res);
83
+ passingCount++;
139
84
  }
140
- if (longerThan(passing, REQUIRED_COUNT)) {
85
+ if (vestUtils.greaterThan(passingCount, REQUIRED_COUNT)) {
141
86
  return false;
142
87
  }
143
88
  });
144
- return ruleReturn(lengthEquals(passing, REQUIRED_COUNT));
89
+ return ruleReturn(equals(passingCount, REQUIRED_COUNT));
145
90
  }
146
91
 
147
92
  n4s.enforce.extend({ allOf: allOf, anyOf: anyOf, noneOf: noneOf, oneOf: oneOf });
@@ -1 +1 @@
1
- "use strict";var n=require("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){return"function"==typeof n}function u(n,r){var u;return null!==(u=function(n){for(var r=[],u=1;u<arguments.length;u++)r[u-1]=arguments[u];return t(n)?n.apply(void 0,r):n}(n))&&void 0!==u?u:r}function e(n,r){return n={pass:n},r&&(n.message=r),n}function f(){return e(!1)}function o(n){return u(n,f())}function i(n){return u(n,e(!0))}function c(n,r){try{return n.run(r)}catch(n){return f()}}function a(n){var r=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(r))}function s(n,r){return function(n,r){return a(n)&&a(r)&&Number(n)===Number(r)}(n.length,r)}function l(n,r){return function(n,r){return a(n)&&a(r)&&Number(n)>Number(r)}(n.length,r)}n.enforce.extend({allOf:function(n){for(var t=[],u=1;u<arguments.length;u++)t[u-1]=arguments[u];return i(r(t,(function(r,t){(r=c(r,n)).pass||t(r)})))},anyOf:function(n){for(var t=[],u=1;u<arguments.length;u++)t[u-1]=arguments[u];return o(r(t,(function(r,t){(r=c(r,n)).pass&&t(r)})))},noneOf:function(n){for(var t=[],u=1;u<arguments.length;u++)t[u-1]=arguments[u];return i(r(t,(function(r,t){c(r,n).pass&&t(f())})))},oneOf:function(n){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];var u=[];return r.some((function(r){if((r=c(r,n)).pass&&u.push(r),l(u,1))return!1})),e(s(u,1))}});
1
+ "use strict";var n=require("n4s"),r=require("vest-utils");function t(n,r){return n={pass:n},r&&(n.message=r),n}function e(){return t(!1)}function u(n){return r.defaultTo(n,e())}function f(n){return r.defaultTo(n,t(!0))}function o(n,r){try{return n.run(r)}catch(n){return e()}}function i(n,r){return n===r}r.bindNot(i);n.enforce.extend({allOf:function(n){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];return f(r.mapFirst(t,(function(r,t){t(!(r=o(r,n)).pass,r)})))},anyOf:function(n){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];return u(r.mapFirst(t,(function(r,t){t((r=o(r,n)).pass,r)})))},noneOf:function(n){for(var t=[],u=1;u<arguments.length;u++)t[u-1]=arguments[u];return f(r.mapFirst(t,(function(r,t){t((r=o(r,n)).pass,e())})))},oneOf:function(n){for(var e=[],u=1;u<arguments.length;u++)e[u-1]=arguments[u];var f=0;return e.some((function(t){if(o(t,n).pass&&f++,r.greaterThan(f,1))return!1})),t(i(f,1))}});
@@ -3,38 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var n4s = require('n4s');
6
-
7
- function mapFirst(array, callback) {
8
- var broke = false;
9
- var breakoutValue = null;
10
- for (var i = 0; i < array.length; i++) {
11
- callback(array[i], breakout, i);
12
- if (broke) {
13
- return breakoutValue;
14
- }
15
- }
16
- function breakout(value) {
17
- broke = true;
18
- breakoutValue = value;
19
- }
20
- }
21
-
22
- function isFunction(value) {
23
- return typeof value === 'function';
24
- }
25
-
26
- function optionalFunctionValue(value) {
27
- var args = [];
28
- for (var _i = 1; _i < arguments.length; _i++) {
29
- args[_i - 1] = arguments[_i];
30
- }
31
- return isFunction(value) ? value.apply(void 0, args) : value;
32
- }
33
-
34
- function defaultTo(callback, defaultValue) {
35
- var _a;
36
- return (_a = optionalFunctionValue(callback)) !== null && _a !== void 0 ? _a : defaultValue;
37
- }
6
+ var vestUtils = require('vest-utils');
38
7
 
39
8
  function ruleReturn(pass, message) {
40
9
  var output = { pass: pass };
@@ -50,7 +19,7 @@ function passing() {
50
19
  return ruleReturn(true);
51
20
  }
52
21
  function defaultToPassing(callback) {
53
- return defaultTo(callback, passing());
22
+ return vestUtils.defaultTo(callback, passing());
54
23
  }
55
24
 
56
25
  function runLazyRule(lazyRule, currentValue) {
@@ -63,11 +32,9 @@ function runLazyRule(lazyRule, currentValue) {
63
32
  }
64
33
 
65
34
  function isArrayOf(inputArray, currentRule) {
66
- return defaultToPassing(mapFirst(inputArray, function (currentValue, breakout, index) {
35
+ return defaultToPassing(vestUtils.mapFirst(inputArray, function (currentValue, breakout, index) {
67
36
  var res = n4s.ctx.run({ value: currentValue, set: true, meta: { index: index } }, function () { return runLazyRule(currentRule, currentValue); });
68
- if (!res.pass) {
69
- breakout(res);
70
- }
37
+ breakout(!res.pass, res);
71
38
  }));
72
39
  }
73
40
 
@@ -90,39 +57,20 @@ function loose(inputObject, shapeObject) {
90
57
  return passing();
91
58
  }
92
59
 
93
- function isNull(value) {
94
- return value === null;
95
- }
96
-
97
- function isUndefined(value) {
98
- return value === undefined;
99
- }
100
-
101
- function isNullish(value) {
102
- return isNull(value) || isUndefined(value);
103
- }
104
-
105
60
  function optional(value, ruleChain) {
106
- if (isNullish(value)) {
61
+ if (vestUtils.isNullish(value)) {
107
62
  return passing();
108
63
  }
109
64
  return runLazyRule(ruleChain, value);
110
65
  }
111
66
 
112
- /**
113
- * A safe hasOwnProperty access
114
- */
115
- function hasOwnProperty(obj, key) {
116
- return Object.prototype.hasOwnProperty.call(obj, key);
117
- }
118
-
119
67
  function shape(inputObject, shapeObject) {
120
68
  var baseRes = loose(inputObject, shapeObject);
121
69
  if (!baseRes.pass) {
122
70
  return baseRes;
123
71
  }
124
72
  for (var key in inputObject) {
125
- if (!hasOwnProperty(shapeObject, key)) {
73
+ if (!vestUtils.hasOwnProperty(shapeObject, key)) {
126
74
  return failing();
127
75
  }
128
76
  }
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n=require("n4s");function r(n){return"function"==typeof n}function t(n,t){var e;return null!==(e=function(n){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];return r(n)?n.apply(void 0,t):n}(n))&&void 0!==e?e:t}function e(n,r){return n={pass:n},r&&(n.message=r),n}function u(){return e(!1)}function o(){return e(!0)}function i(n,r){try{return n.run(r)}catch(n){return u()}}function f(r,t){var e,u=function(e){var u=r[e],o=t[e];if(!(e=n.ctx.run({value:u,set:!0,meta:{key:e}},(function(){return i(o,u)}))).pass)return{value:e}};for(e in t){var f=u(e);if("object"==typeof f)return f.value}return o()}function c(n,r){return Object.prototype.hasOwnProperty.call(n,r)}n.enforce.extend({isArrayOf:function(r,e){return function(n){return t(n,o())}(function(n,r){function t(n){e=!0,u=n}for(var e=!1,u=null,o=0;o<n.length;o++)if(r(n[o],t,o),e)return u}(r,(function(r,t,u){(u=n.ctx.run({value:r,set:!0,meta:{index:u}},(function(){return i(e,r)}))).pass||t(u)})))},loose:f,optional:function(n,r){return function(n){return function(n){return null===n}(n)||function(n){return void 0===n}(n)}(n)?o():i(r,n)},shape:function(n,r){var t=f(n,r);if(!t.pass)return t;for(var e in n)if(!c(r,e))return u();return o()}}),exports.partial=function(r){var t,e={};for(t in r)e[t]=n.enforce.optional(r[t]);return e};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var r=require("n4s"),n=require("vest-utils");function e(r,n){return r={pass:r},n&&(r.message=n),r}function t(){return e(!1)}function u(){return e(!0)}function i(r,n){try{return r.run(n)}catch(r){return t()}}function o(n,e){var t,o=function(t){var u=n[t],o=e[t];if(!(t=r.ctx.run({value:u,set:!0,meta:{key:t}},(function(){return i(o,u)}))).pass)return{value:t}};for(t in e){var a=o(t);if("object"==typeof a)return a.value}return u()}r.enforce.extend({isArrayOf:function(e,t){return function(r){return n.defaultTo(r,u())}(n.mapFirst(e,(function(n,e,u){e(!(u=r.ctx.run({value:n,set:!0,meta:{index:u}},(function(){return i(t,n)}))).pass,u)})))},loose:o,optional:function(r,e){return n.isNullish(r)?u():i(e,r)},shape:function(r,e){var i=o(r,e);if(!i.pass)return i;for(var a in r)if(!n.hasOwnProperty(e,a))return t();return u()}}),exports.partial=function(n){var e,t={};for(e in n)t[e]=r.enforce.optional(n[e]);return t};
@@ -2,58 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- function isFunction(value) {
6
- return typeof value === 'function';
7
- }
8
-
9
- function optionalFunctionValue(value) {
10
- var args = [];
11
- for (var _i = 1; _i < arguments.length; _i++) {
12
- args[_i - 1] = arguments[_i];
13
- }
14
- return isFunction(value) ? value.apply(void 0, args) : value;
15
- }
16
-
17
- function defaultTo(callback, defaultValue) {
18
- var _a;
19
- return (_a = optionalFunctionValue(callback)) !== null && _a !== void 0 ? _a : defaultValue;
20
- }
21
-
22
- /**
23
- * A safe hasOwnProperty access
24
- */
25
- function hasOwnProperty(obj, key) {
26
- return Object.prototype.hasOwnProperty.call(obj, key);
27
- }
28
-
29
- function invariant(condition,
30
- // eslint-disable-next-line @typescript-eslint/ban-types
31
- message) {
32
- if (condition) {
33
- return;
34
- }
35
- // If message is a string object (rather than string literal)
36
- // Throw the value directly as a string
37
- // Alternatively, throw an error with the message
38
- throw message instanceof String
39
- ? message.valueOf()
40
- : new Error(message ? optionalFunctionValue(message) : message);
41
- }
42
-
43
- function isNumeric(value) {
44
- var str = String(value);
45
- var num = Number(value);
46
- var result = !isNaN(parseFloat(str)) && !isNaN(Number(value)) && isFinite(num);
47
- return Boolean(result);
48
- }
49
-
50
- function greaterThan(value, gt) {
51
- return isNumeric(value) && isNumeric(gt) && Number(value) > Number(gt);
52
- }
53
-
54
- function isPositive(value) {
55
- return greaterThan(value, 0);
56
- }
5
+ var vestUtils = require('vest-utils');
57
6
 
58
7
  var Severity;
59
8
  (function (Severity) {
@@ -68,7 +17,7 @@ var SeverityCount;
68
17
 
69
18
  // eslint-disable-next-line max-lines-per-function
70
19
  function parse(res) {
71
- invariant(res && hasOwnProperty(res, 'valid'), "Vest parser: expected argument at position 0 to be Vest's result object.");
20
+ vestUtils.invariant(res && vestUtils.hasOwnProperty(res, 'valid'), "Vest parser: expected argument at position 0 to be Vest's result object.");
72
21
  var testedStorage = {};
73
22
  var selectors = {
74
23
  invalid: hasErrors,
@@ -80,13 +29,13 @@ function parse(res) {
80
29
  return selectors;
81
30
  function isTested(fieldName) {
82
31
  if (!fieldName) {
83
- return isPositive(res.testCount);
32
+ return vestUtils.isPositive(res.testCount);
84
33
  }
85
- if (hasOwnProperty(testedStorage, fieldName))
34
+ if (vestUtils.hasOwnProperty(testedStorage, fieldName))
86
35
  return testedStorage[fieldName];
87
36
  testedStorage[fieldName] =
88
- hasOwnProperty(res.tests, fieldName) &&
89
- isPositive(res.tests[fieldName].testCount);
37
+ vestUtils.hasOwnProperty(res.tests, fieldName) &&
38
+ vestUtils.isPositive(res.tests[fieldName].testCount);
90
39
  return selectors.tested(fieldName);
91
40
  }
92
41
  function isUntested(fieldName) {
@@ -104,8 +53,8 @@ function parse(res) {
104
53
  }
105
54
  function hasFailures(countKey, fieldName) {
106
55
  var _a;
107
- var failureCount = defaultTo(fieldName ? (_a = res.tests[fieldName]) === null || _a === void 0 ? void 0 : _a[countKey] : res[countKey], 0);
108
- return isPositive(failureCount);
56
+ var failureCount = vestUtils.defaultTo(fieldName ? (_a = res.tests[fieldName]) === null || _a === void 0 ? void 0 : _a[countKey] : res[countKey], 0);
57
+ return vestUtils.isPositive(failureCount);
109
58
  }
110
59
  }
111
60
 
@@ -1 +1 @@
1
- "use strict";function t(t){return"function"==typeof t}function n(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 r(t,n){return Object.prototype.hasOwnProperty.call(t,n)}function e(t){var n=Number(t);return!(isNaN(parseFloat(String(t)))||isNaN(Number(t))||!isFinite(n))}function u(t){return function(t,n){return e(t)&&e(n)&&Number(t)>Number(n)}(t,0)}var o,i,s;Object.defineProperty(exports,"__esModule",{value:!0}),(i=o||(o={})).WARNINGS="warnings",i.ERRORS="errors",function(t){t.ERROR_COUNT="errorCount",t.WARN_COUNT="warnCount"}(s||(s={})),exports.parse=function(t){function e(r,e){var o;return u(r=function(t,r){var e;return null!==(e=n(t))&&void 0!==e?e:r}(e?null===(o=t.tests[e])||void 0===o?void 0:o[r]:t[r],0))}!function(t,r){if(!t)throw r instanceof String?r.valueOf():Error(r?n(r):r)}(t&&r(t,"valid"),"Vest parser: expected argument at position 0 to be Vest's result object.");var o={},i={invalid:function(t){return e(s.ERROR_COUNT,t)},tested:function(n){return n?r(o,n)?o[n]:(o[n]=r(t.tests,n)&&u(t.tests[n].testCount),i.tested(n)):u(t.testCount)},untested:function(n){return 0===t.testCount||!i.tested(n)},valid:function(n){var r;return n?!(null===(r=t.tests[n])||void 0===r||!r.valid):t.valid},warning:function(t){return e(s.WARN_COUNT,t)}};return i};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t,e,r,n=require("vest-utils");(e=t||(t={})).WARNINGS="warnings",e.ERRORS="errors",function(t){t.ERROR_COUNT="errorCount",t.WARN_COUNT="warnCount"}(r||(r={})),exports.parse=function(t){function e(e,r){var s;return e=n.defaultTo(r?null===(s=t.tests[r])||void 0===s?void 0:s[e]:t[e],0),n.isPositive(e)}n.invariant(t&&n.hasOwnProperty(t,"valid"),"Vest parser: expected argument at position 0 to be Vest's result object.");var s={},i={invalid:function(t){return e(r.ERROR_COUNT,t)},tested:function(e){return e?n.hasOwnProperty(s,e)?s[e]:(s[e]=n.hasOwnProperty(t.tests,e)&&n.isPositive(t.tests[e].testCount),i.tested(e)):n.isPositive(t.testCount)},untested:function(e){return 0===t.testCount||!i.tested(e)},valid:function(e){var r;return e?!(null===(r=t.tests[e])||void 0===r||!r.valid):t.valid},warning:function(t){return e(r.WARN_COUNT,t)}};return i};
@@ -1,30 +1,6 @@
1
1
  'use strict';
2
2
 
3
- function isFunction(value) {
4
- return typeof value === 'function';
5
- }
6
-
7
- function optionalFunctionValue(value) {
8
- var args = [];
9
- for (var _i = 1; _i < arguments.length; _i++) {
10
- args[_i - 1] = arguments[_i];
11
- }
12
- return isFunction(value) ? value.apply(void 0, args) : value;
13
- }
14
-
15
- function invariant(condition,
16
- // eslint-disable-next-line @typescript-eslint/ban-types
17
- message) {
18
- if (condition) {
19
- return;
20
- }
21
- // If message is a string object (rather than string literal)
22
- // Throw the value directly as a string
23
- // Alternatively, throw an error with the message
24
- throw message instanceof String
25
- ? message.valueOf()
26
- : new Error(message ? optionalFunctionValue(message) : message);
27
- }
3
+ var vestUtils = require('vest-utils');
28
4
 
29
5
  var promisify = function (validatorFn) {
30
6
  return function () {
@@ -32,7 +8,7 @@ var promisify = function (validatorFn) {
32
8
  for (var _i = 0; _i < arguments.length; _i++) {
33
9
  args[_i] = arguments[_i];
34
10
  }
35
- invariant(isFunction(validatorFn), 'promisify: Expected validatorFn to be a function.');
11
+ vestUtils.invariant(vestUtils.isFunction(validatorFn), 'promisify: Expected validatorFn to be a function.');
36
12
  return new Promise(function (resolve) { return validatorFn.apply(void 0, args).done(resolve); });
37
13
  };
38
14
  };
@@ -1 +1 @@
1
- "use strict";function n(n){return"function"==typeof n}function t(t,r){if(!t)throw r instanceof String?r.valueOf():Error(r?function(t){for(var r=[],o=1;o<arguments.length;o++)r[o-1]=arguments[o];return n(t)?t.apply(void 0,r):t}(r):r)}module.exports=function(r){return function(){for(var o=[],e=0;e<arguments.length;e++)o[e]=arguments[e];return t(n(r),"promisify: Expected validatorFn to be a function."),new Promise((function(n){return r.apply(void 0,o).done(n)}))}};
1
+ "use strict";var n=require("vest-utils");module.exports=function(t){return function(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];return n.invariant(n.isFunction(t),"promisify: Expected validatorFn to be a function."),new Promise((function(n){return t.apply(void 0,r).done(n)}))}};