n4s 4.1.5 → 4.1.8-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.
@@ -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};
@@ -1,50 +1,5 @@
1
1
  import { ctx } from 'n4s';
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
- }
28
-
29
- function mapFirst(array, callback) {
30
- var broke = false;
31
- var breakoutValue = null;
32
- for (var i = 0; i < array.length; i++) {
33
- callback(array[i], breakout, i);
34
- if (broke) {
35
- return breakoutValue;
36
- }
37
- }
38
- function breakout(value) {
39
- broke = true;
40
- breakoutValue = value;
41
- }
42
- }
43
-
44
- function defaultTo(callback, defaultValue) {
45
- var _a;
46
- return (_a = optionalFunctionValue(callback)) !== null && _a !== void 0 ? _a : defaultValue;
47
- }
2
+ import { defaultTo, assign, mapFirst, invariant, StringObject } from 'vest-utils';
48
3
 
49
4
  function ruleReturn(pass, message) {
50
5
  var output = { pass: pass };
@@ -78,9 +33,9 @@ function compose() {
78
33
  for (var _i = 0; _i < arguments.length; _i++) {
79
34
  composites[_i] = arguments[_i];
80
35
  }
81
- return Object.assign(function (value) {
36
+ return assign(function (value) {
82
37
  var res = run(value);
83
- invariant(res.pass, new String(res.message));
38
+ invariant(res.pass, StringObject(res.message));
84
39
  }, {
85
40
  run: run,
86
41
  test: function (value) { return run(value).pass; }
@@ -94,9 +49,7 @@ function compose() {
94
49
  so we're limiting it to a small set of functions.
95
50
  */
96
51
  var res = runLazyRule(composite, value);
97
- if (!res.pass) {
98
- breakout(res);
99
- }
52
+ breakout(!res.pass, res);
100
53
  }));
101
54
  });
102
55
  }
@@ -1 +1 @@
1
- import{ctx as n}from"n4s";function r(n){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];return"function"==typeof n?n.apply(void 0,r):n}function t(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 u(n,t){var u;return null!==(u=r(n))&&void 0!==u?u:t}function e(n,r){return n={pass:n},r&&(n.message=r),n}export default function(){function o(r){return n.run({value:r},(function(){return u(t(f,(function(n,t){try{var u=n.run(r)}catch(n){u=e(!1)}u.pass||t(u)})),e(!0))}))}for(var f=[],i=0;i<arguments.length;i++)f[i]=arguments[i];return Object.assign((function(n){n=o(n);var t=new String(n.message);if(!n.pass)throw t instanceof String?t.valueOf():Error(t?r(t):t)}),{run:o,test:function(n){return o(n).pass}})}
1
+ import{defaultTo as n,assign as t,mapFirst as r,invariant as u,StringObject as s}from"vest-utils";import{ctx as e}from"n4s";function o(n,t){return n={pass:n},t&&(n.message=t),n}export default function(){function a(t){return e.run({value:t},(function(){return n(r(f,(function(n,r){try{var u=n.run(t)}catch(n){u=o(!1)}r(!u.pass,u)})),o(!0))}))}for(var f=[],i=0;i<arguments.length;i++)f[i]=arguments[i];return t((function(n){n=a(n),u(n.pass,s(n.message))}),{run:a,test:function(n){return a(n).pass}})}
@@ -1,36 +1,5 @@
1
1
  import { enforce } from 'n4s';
2
-
3
- function mapFirst(array, callback) {
4
- var broke = false;
5
- var breakoutValue = null;
6
- for (var i = 0; i < array.length; i++) {
7
- callback(array[i], breakout, i);
8
- if (broke) {
9
- return breakoutValue;
10
- }
11
- }
12
- function breakout(value) {
13
- broke = true;
14
- breakoutValue = value;
15
- }
16
- }
17
-
18
- function isFunction(value) {
19
- return typeof value === 'function';
20
- }
21
-
22
- function optionalFunctionValue(value) {
23
- var args = [];
24
- for (var _i = 1; _i < arguments.length; _i++) {
25
- args[_i - 1] = arguments[_i];
26
- }
27
- return isFunction(value) ? value.apply(void 0, args) : value;
28
- }
29
-
30
- function defaultTo(callback, defaultValue) {
31
- var _a;
32
- return (_a = optionalFunctionValue(callback)) !== null && _a !== void 0 ? _a : defaultValue;
33
- }
2
+ import { defaultTo, mapFirst, bindNot, greaterThan } from 'vest-utils';
34
3
 
35
4
  function ruleReturn(pass, message) {
36
5
  var output = { pass: pass };
@@ -68,9 +37,7 @@ function allOf(value) {
68
37
  }
69
38
  return defaultToPassing(mapFirst(rules, function (rule, breakout) {
70
39
  var res = runLazyRule(rule, value);
71
- if (!res.pass) {
72
- breakout(res);
73
- }
40
+ breakout(!res.pass, res);
74
41
  }));
75
42
  }
76
43
 
@@ -81,9 +48,7 @@ function anyOf(value) {
81
48
  }
82
49
  return defaultToFailing(mapFirst(rules, function (rule, breakout) {
83
50
  var res = runLazyRule(rule, value);
84
- if (res.pass) {
85
- breakout(res);
86
- }
51
+ breakout(res.pass, res);
87
52
  }));
88
53
  }
89
54
 
@@ -94,34 +59,14 @@ function noneOf(value) {
94
59
  }
95
60
  return defaultToPassing(mapFirst(rules, function (rule, breakout) {
96
61
  var res = runLazyRule(rule, value);
97
- if (res.pass) {
98
- breakout(failing());
99
- }
62
+ breakout(res.pass, failing());
100
63
  }));
101
64
  }
102
65
 
103
- function isNumeric(value) {
104
- var str = String(value);
105
- var num = Number(value);
106
- var result = !isNaN(parseFloat(str)) && !isNaN(Number(value)) && isFinite(num);
107
- return Boolean(result);
108
- }
109
-
110
- function numberEquals(value, eq) {
111
- return isNumeric(value) && isNumeric(eq) && Number(value) === Number(eq);
112
- }
113
-
114
- function lengthEquals(value, arg1) {
115
- return numberEquals(value.length, arg1);
116
- }
117
-
118
- function greaterThan(value, gt) {
119
- return isNumeric(value) && isNumeric(gt) && Number(value) > Number(gt);
120
- }
121
-
122
- function longerThan(value, arg1) {
123
- return greaterThan(value.length, arg1);
66
+ function equals(value, arg1) {
67
+ return value === arg1;
124
68
  }
69
+ bindNot(equals);
125
70
 
126
71
  var REQUIRED_COUNT = 1;
127
72
  function oneOf(value) {
@@ -129,17 +74,17 @@ function oneOf(value) {
129
74
  for (var _i = 1; _i < arguments.length; _i++) {
130
75
  rules[_i - 1] = arguments[_i];
131
76
  }
132
- var passing = [];
77
+ var passingCount = 0;
133
78
  rules.some(function (rule) {
134
79
  var res = runLazyRule(rule, value);
135
80
  if (res.pass) {
136
- passing.push(res);
81
+ passingCount++;
137
82
  }
138
- if (longerThan(passing, REQUIRED_COUNT)) {
83
+ if (greaterThan(passingCount, REQUIRED_COUNT)) {
139
84
  return false;
140
85
  }
141
86
  });
142
- return ruleReturn(lengthEquals(passing, REQUIRED_COUNT));
87
+ return ruleReturn(equals(passingCount, REQUIRED_COUNT));
143
88
  }
144
89
 
145
90
  enforce.extend({ allOf: allOf, anyOf: anyOf, noneOf: noneOf, oneOf: oneOf });
@@ -1 +1 @@
1
- import{enforce as n}from"n4s";function r(n,r){function t(n){u=!0,e=n}for(var u=!1,e=null,o=0;o<n.length;o++)if(r(n[o],t,o),u)return e}function t(n,r){var t;return null!==(t=function(n){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];return"function"==typeof n?n.apply(void 0,r):n}(n))&&void 0!==t?t:r}function u(n,r){return n={pass:n},r&&(n.message=r),n}function e(n,r){try{return n.run(r)}catch(n){return u(!1)}}function o(n){var r=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(r))}function f(n,r){return o(n)&&o(r)&&Number(n)===Number(r)}n.extend({allOf:function(n){for(var o=[],f=1;f<arguments.length;f++)o[f-1]=arguments[f];return t(r(o,(function(r,t){(r=e(r,n)).pass||t(r)})),u(!0))},anyOf:function(n){for(var o=[],f=1;f<arguments.length;f++)o[f-1]=arguments[f];return t(r(o,(function(r,t){(r=e(r,n)).pass&&t(r)})),u(!1))},noneOf:function(n){for(var o=[],f=1;f<arguments.length;f++)o[f-1]=arguments[f];return t(r(o,(function(r,t){e(r,n).pass&&t(u(!1))})),u(!0))},oneOf:function(n){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];var i=[];return r.some((function(r){if((r=e(r,n)).pass&&i.push(r),o(r=i.length)&&o(1)&&Number(r)>Number(1))return!1})),u(f(i.length,1))}});
1
+ import{defaultTo as n,mapFirst as r,bindNot as t,greaterThan as f}from"vest-utils";import{enforce as o}from"n4s";function u(n,r){return n={pass:n},r&&(n.message=r),n}function e(n,r){try{return n.run(r)}catch(n){return u(!1)}}t((function(n,r){return n===r})),o.extend({allOf:function(t){for(var f=[],o=1;o<arguments.length;o++)f[o-1]=arguments[o];return n(r(f,(function(n,r){r(!(n=e(n,t)).pass,n)})),u(!0))},anyOf:function(t){for(var f=[],o=1;o<arguments.length;o++)f[o-1]=arguments[o];return n(r(f,(function(n,r){r((n=e(n,t)).pass,n)})),u(!1))},noneOf:function(t){for(var f=[],o=1;o<arguments.length;o++)f[o-1]=arguments[o];return n(r(f,(function(n,r){r((n=e(n,t)).pass,u(!1))})),u(!0))},oneOf:function(n){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];var o=0;return r.some((function(r){if(e(r,n).pass&&o++,f(o,1))return!1})),u(1===o)}});
@@ -1,40 +1,6 @@
1
+ import { bindNot, isStringValue, numberEquals, greaterThan, isArray, isNumeric, isNullish, isBoolean, isEmpty, isNotArray, isNotEmpty, isNotNull, isNotNullish, isNotNumeric, isNotUndefined, isNull, isPositive, isUndefined, lengthEquals, lengthNotEquals, longerThan, numberNotEquals, isFunction, assign, defaultTo, optionalFunctionValue, invariant, StringObject, mapFirst } from 'vest-utils';
1
2
  import { createContext } from 'context';
2
3
 
3
- var assign = Object.assign;
4
-
5
- function isFunction(value) {
6
- return typeof value === 'function';
7
- }
8
-
9
- function bindNot(fn) {
10
- return function () {
11
- var args = [];
12
- for (var _i = 0; _i < arguments.length; _i++) {
13
- args[_i] = arguments[_i];
14
- }
15
- return !fn.apply(void 0, args);
16
- };
17
- }
18
-
19
- function isNull(value) {
20
- return value === null;
21
- }
22
- var isNotNull = bindNot(isNull);
23
-
24
- function isUndefined(value) {
25
- return value === undefined;
26
- }
27
- var isNotUndefined = bindNot(isUndefined);
28
-
29
- function isNullish(value) {
30
- return isNull(value) || isUndefined(value);
31
- }
32
- var isNotNullish = bindNot(isNullish);
33
-
34
- function isStringValue(v) {
35
- return String(v) === v;
36
- }
37
-
38
4
  function endsWith(value, arg1) {
39
5
  return isStringValue(value) && isStringValue(arg1) && value.endsWith(arg1);
40
6
  }
@@ -45,35 +11,10 @@ function equals(value, arg1) {
45
11
  }
46
12
  var notEquals = bindNot(equals);
47
13
 
48
- function isNumeric(value) {
49
- var str = String(value);
50
- var num = Number(value);
51
- var result = !isNaN(parseFloat(str)) && !isNaN(Number(value)) && isFinite(num);
52
- return Boolean(result);
53
- }
54
- var isNotNumeric = bindNot(isNumeric);
55
-
56
- function greaterThan(value, gt) {
57
- return isNumeric(value) && isNumeric(gt) && Number(value) > Number(gt);
58
- }
59
-
60
- function numberEquals(value, eq) {
61
- return isNumeric(value) && isNumeric(eq) && Number(value) === Number(eq);
62
- }
63
- var numberNotEquals = bindNot(numberEquals);
64
-
65
14
  function greaterThanOrEquals(value, gte) {
66
15
  return numberEquals(value, gte) || greaterThan(value, gte);
67
16
  }
68
17
 
69
- // The module is named "isArrayValue" since it
70
- // is conflicting with a nested npm dependency.
71
- // We may need to revisit this in the future.
72
- function isArray(value) {
73
- return Boolean(Array.isArray(value));
74
- }
75
- var isNotArray = bindNot(isArray);
76
-
77
18
  function inside(value, arg1) {
78
19
  if (isArray(arg1)) {
79
20
  return arg1.indexOf(value) !== -1;
@@ -104,46 +45,8 @@ function isBlank(value) {
104
45
  }
105
46
  var isNotBlank = bindNot(isBlank);
106
47
 
107
- function isBoolean(value) {
108
- return !!value === value;
109
- }
110
-
111
48
  var isNotBoolean = bindNot(isBoolean);
112
49
 
113
- /**
114
- * A safe hasOwnProperty access
115
- */
116
- function hasOwnProperty(obj, key) {
117
- return Object.prototype.hasOwnProperty.call(obj, key);
118
- }
119
-
120
- function isNumber(value) {
121
- return Boolean(typeof value === 'number');
122
- }
123
- var isNotNumber = bindNot(isNumber);
124
-
125
- function lengthEquals(value, arg1) {
126
- return numberEquals(value.length, arg1);
127
- }
128
- var lengthNotEquals = bindNot(lengthEquals);
129
-
130
- function isEmpty(value) {
131
- if (!value) {
132
- return true;
133
- }
134
- else if (isNumber(value)) {
135
- return value === 0;
136
- }
137
- else if (hasOwnProperty(value, 'length')) {
138
- return lengthEquals(value, 0);
139
- }
140
- else if (typeof value === 'object') {
141
- return lengthEquals(Object.keys(value), 0);
142
- }
143
- return false;
144
- }
145
- var isNotEmpty = bindNot(isEmpty);
146
-
147
50
  /**
148
51
  * Validates that a given value is an even number
149
52
  */
@@ -159,15 +62,20 @@ function isKeyOf(key, obj) {
159
62
  }
160
63
  var isNotKeyOf = bindNot(isKeyOf);
161
64
 
162
- function isNaN$1(value) {
65
+ function isNaN(value) {
163
66
  return Number.isNaN(value);
164
67
  }
165
- var isNotNaN = bindNot(isNaN$1);
68
+ var isNotNaN = bindNot(isNaN);
166
69
 
167
70
  function isNegative(value) {
168
71
  return lessThan(value, 0);
169
72
  }
170
73
 
74
+ function isNumber(value) {
75
+ return Boolean(typeof value === 'number');
76
+ }
77
+ var isNotNumber = bindNot(isNumber);
78
+
171
79
  /**
172
80
  * Validates that a given value is an odd number
173
81
  */
@@ -178,10 +86,6 @@ var isOdd = function (value) {
178
86
  return false;
179
87
  };
180
88
 
181
- function isPositive(value) {
182
- return greaterThan(value, 0);
183
- }
184
-
185
89
  var isNotString = bindNot(isStringValue);
186
90
 
187
91
  function isTruthy(value) {
@@ -202,10 +106,6 @@ function isValueOf(value, objectToCheck) {
202
106
  }
203
107
  var isNotValueOf = bindNot(isValueOf);
204
108
 
205
- function longerThan(value, arg1) {
206
- return greaterThan(value.length, arg1);
207
- }
208
-
209
109
  function longerThanOrEquals(value, arg1) {
210
110
  return greaterThanOrEquals(value.length, arg1);
211
111
  }
@@ -266,7 +166,7 @@ function rules() {
266
166
  isEven: isEven,
267
167
  isFalsy: isFalsy,
268
168
  isKeyOf: isKeyOf,
269
- isNaN: isNaN$1,
169
+ isNaN: isNaN,
270
170
  isNegative: isNegative,
271
171
  isNotArray: isNotArray,
272
172
  isNotBetween: isNotBetween,
@@ -357,7 +257,7 @@ function emptyParent() {
357
257
  return null;
358
258
  }
359
259
 
360
- /*! *****************************************************************************
260
+ /******************************************************************************
361
261
  Copyright (c) Microsoft Corporation.
362
262
 
363
263
  Permission to use, copy, modify, and/or distribute this software for any
@@ -382,28 +282,6 @@ function __spreadArray(to, from, pack) {
382
282
  return to.concat(ar || Array.prototype.slice.call(from));
383
283
  }
384
284
 
385
- function optionalFunctionValue(value) {
386
- var args = [];
387
- for (var _i = 1; _i < arguments.length; _i++) {
388
- args[_i - 1] = arguments[_i];
389
- }
390
- return isFunction(value) ? value.apply(void 0, args) : value;
391
- }
392
-
393
- function invariant(condition,
394
- // eslint-disable-next-line @typescript-eslint/ban-types
395
- message) {
396
- if (condition) {
397
- return;
398
- }
399
- // If message is a string object (rather than string literal)
400
- // Throw the value directly as a string
401
- // Alternatively, throw an error with the message
402
- throw message instanceof String
403
- ? message.valueOf()
404
- : new Error(message ? optionalFunctionValue(message) : message);
405
- }
406
-
407
285
  function isProxySupported() {
408
286
  try {
409
287
  return isFunction(Proxy);
@@ -413,11 +291,6 @@ function isProxySupported() {
413
291
  }
414
292
  }
415
293
 
416
- function defaultTo(callback, defaultValue) {
417
- var _a;
418
- return (_a = optionalFunctionValue(callback)) !== null && _a !== void 0 ? _a : defaultValue;
419
- }
420
-
421
294
  function ruleReturn(pass, message) {
422
295
  var output = { pass: pass };
423
296
  if (message) {
@@ -477,32 +350,17 @@ function enforceEager(value) {
477
350
  for (var _i = 0; _i < arguments.length; _i++) {
478
351
  args[_i] = arguments[_i];
479
352
  }
480
- var transformedResult = transformResult.apply(void 0, __spreadArray([ctx.run({ value: value }, function () { return rule.apply(void 0, __spreadArray([value], args, false)); }),
481
- ruleName,
482
- value], args, false));
483
- invariant(transformedResult.pass, isEmpty(transformedResult.message)
353
+ var transformedResult = ctx.run({ value: value }, function () {
354
+ return transformResult.apply(void 0, __spreadArray([rule.apply(void 0, __spreadArray([value], args, false)), ruleName, value], args, false));
355
+ });
356
+ invariant(transformedResult.pass, isNullish(transformedResult.message)
484
357
  ? "enforce/".concat(ruleName, " failed with ").concat(JSON.stringify(value))
485
- : new String(transformedResult.message));
358
+ : StringObject(transformedResult.message));
486
359
  return target;
487
360
  };
488
361
  }
489
362
  }
490
363
 
491
- function mapFirst(array, callback) {
492
- var broke = false;
493
- var breakoutValue = null;
494
- for (var i = 0; i < array.length; i++) {
495
- callback(array[i], breakout, i);
496
- if (broke) {
497
- return breakoutValue;
498
- }
499
- }
500
- function breakout(value) {
501
- broke = true;
502
- breakoutValue = value;
503
- }
504
- }
505
-
506
364
  // eslint-disable-next-line max-lines-per-function
507
365
  function genEnforceLazy(key) {
508
366
  var registeredRules = [];
@@ -525,9 +383,7 @@ function genEnforceLazy(key) {
525
383
  return defaultToPassing(mapFirst(registeredRules, function (rule, breakout) {
526
384
  var _a;
527
385
  var res = ctx.run({ value: value }, function () { return rule(value); });
528
- if (!res.pass) {
529
- breakout(ruleReturn(!!res.pass, (_a = optionalFunctionValue(lazyMessage, value, res.message)) !== null && _a !== void 0 ? _a : res.message));
530
- }
386
+ breakout(!res.pass, ruleReturn(!!res.pass, (_a = optionalFunctionValue(lazyMessage, value, res.message)) !== null && _a !== void 0 ? _a : res.message));
531
387
  }));
532
388
  },
533
389
  test: function (value) { return proxy.run(value).pass; },
@@ -1 +1 @@
1
- import{createContext as n}from"context";var r=Object.assign;function t(n){return"function"==typeof n}function e(n){return function(){for(var r=[],t=0;t<arguments.length;t++)r[t]=arguments[t];return!n.apply(void 0,r)}}function u(n){return null===n}var i=e(u);function o(n){return void 0===n}var a=e(o);function s(n){return null===n||o(n)}var f=e(s);function c(n){return String(n)===n}function l(n,r){return c(n)&&c(r)&&n.endsWith(r)}var v=e(l);function N(n,r){return n===r}var g=e(N);function h(n){var r=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(r))}var p=e(h);function y(n,r){return h(n)&&h(r)&&Number(n)>Number(r)}function m(n,r){return h(n)&&h(r)&&Number(n)===Number(r)}var d=e(m);function b(n,r){return m(n,r)||y(n,r)}function O(n){return!!Array.isArray(n)}var E=e(O);function x(n,r){return!!(O(r)||c(r)&&c(n))&&-1!==r.indexOf(n)}var q=e(x);function w(n,r){return h(n)&&h(r)&&Number(n)<Number(r)}function S(n,r){return m(n,r)||w(n,r)}function T(n,r,t){return b(n,r)&&S(n,t)}var A=e(T);function B(n){return s(n)||c(n)&&!n.trim()}var P=e(B);function W(n){return!!n===n}var j=e(W);function k(n){return"number"==typeof n}var F=e(k);function I(n,r){return m(n.length,r)}var J=e(I);function K(n){return!n||(k(n)?0===n:Object.prototype.hasOwnProperty.call(n,"length")?I(n,0):"object"==typeof n&&I(Object.keys(n),0))}var R=e(K);function U(n,r){return n in r}var V=e(U);function M(n){return Number.isNaN(n)}var X=e(M),z=e(c);function C(n){return!!n}var D=e(C);function G(n,r){if(s(r))return!1;for(var t in r)if(r[t]===n)return!0;return!1}var H=e(G);function L(n,r){return r instanceof RegExp?r.test(n):!!c(r)&&new RegExp(r).test(n)}var Q=e(L);function Y(n,r){return c(n)&&c(r)&&n.startsWith(r)}var Z={condition:function(n,r){try{return r(n)}catch(n){return!1}},doesNotEndWith:v,doesNotStartWith:e(Y),endsWith:l,equals:N,greaterThan:y,greaterThanOrEquals:b,gt:y,gte:b,inside:x,isArray:O,isBetween:T,isBlank:B,isBoolean:W,isEmpty:K,isEven:function(n){return!!h(n)&&0==n%2},isFalsy:D,isKeyOf:U,isNaN:M,isNegative:function(n){return w(n,0)},isNotArray:E,isNotBetween:A,isNotBlank:P,isNotBoolean:j,isNotEmpty:R,isNotKeyOf:V,isNotNaN:X,isNotNull:i,isNotNullish:f,isNotNumber:F,isNotNumeric:p,isNotString:z,isNotUndefined:a,isNotValueOf:H,isNull:u,isNullish:s,isNumber:k,isNumeric:h,isOdd:function(n){return!!h(n)&&0!=n%2},isPositive:function(n){return y(n,0)},isString:c,isTruthy:C,isUndefined:o,isValueOf:G,lengthEquals:I,lengthNotEquals:J,lessThan:w,lessThanOrEquals:S,longerThan:function(n,r){return y(n.length,r)},longerThanOrEquals:function(n,r){return b(n.length,r)},lt:w,lte:S,matches:L,notEquals:g,notInside:q,notMatches:Q,numberEquals:m,numberNotEquals:d,shorterThan:function(n,r){return w(n.length,r)},shorterThanOrEquals:function(n,r){return S(n.length,r)},startsWith:Y};function $(n){for(var r in Z){var e=Z[r];t(e)&&n(r,e)}}var _=n((function(n,t){var e={value:n.value,meta:n.meta||{}};return t?n.set?r(e,{parent:function(){return t?{value:t.value,meta:t.meta,parent:t.parent}:t}}):t:r(e,{parent:nn})}));function nn(){return null}function rn(n,r,t){if(t||2===arguments.length)for(var e,u=0,i=r.length;u<i;u++)!e&&u in r||(e||(e=Array.prototype.slice.call(r,0,u)),e[u]=r[u]);return n.concat(e||Array.prototype.slice.call(r))}function tn(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 en(n,r){if(!n)throw r instanceof String?r.valueOf():Error(r?tn(r):r)}function un(){try{return t(Proxy)}catch(n){return!1}}function on(n,r){var t;return null!==(t=tn(n))&&void 0!==t?t:r}function an(n,r){return n={pass:n},r&&(n.message=r),n}function sn(n,r,t){for(var e=[],u=3;u<arguments.length;u++)e[u-3]=arguments[u];return en(W(n)||n&&W(n.pass),"Incorrect return value for rule: "+JSON.stringify(n)),W(n)?an(n):an(n.pass,tn.apply(void 0,rn([n.message,r,t],e,!1)))}function fn(n){function r(r,t,e){return function(){for(var u=[],i=0;i<arguments.length;i++)u[i]=arguments[i];return en((i=sn.apply(void 0,rn([_.run({value:n},(function(){return t.apply(void 0,rn([n],u,!1))})),e,n],u,!1))).pass,K(i.message)?"enforce/".concat(e," failed with ").concat(JSON.stringify(n)):new String(i.message)),r}}var t={};if(!un())return $((function(n,e){t[n]=r(t,e,n)})),t;var e=new Proxy(t,{get:function(n,t){if(n=Z[t])return r(e,n,t)}});return e}function cn(n,r){function t(n){e=!0,u=n}for(var e=!1,u=null,i=0;i<n.length;i++)if(r(n[i],t,i),e)return u}function ln(n){var r,t=[];return function n(e){return function(){for(var u=[],i=0;i<arguments.length;i++)u[i]=arguments[i];var o=Z[e];t.push((function(n){return sn.apply(void 0,rn([o.apply(void 0,rn([n],u,!1)),e,n],u,!1))}));var a={run:function(n){return on(cn(t,(function(t,e){var u,i=_.run({value:n},(function(){return t(n)}));i.pass||e(an(!!i.pass,null!==(u=tn(r,n,i.message))&&void 0!==u?u:i.message))})),an(!0))},test:function(n){return a.run(n).pass},message:function(n){return n&&(r=n),a}};return un()?a=new Proxy(a,{get:function(r,t){return Z[t]?n(t):r[t]}}):($((function(r){a[r]=n(r)})),a)}}(n)}var vn=function(){function n(){if(!un())return $((function(n){t[n]=ln(n)})),r(fn,t)}var t={context:function(){return _.useX()},extend:function(t){r(Z,t),n()}};return n(),new Proxy(r(fn,t),{get:function(n,r){return r in n?n[r]:Z[r]?ln(r):void 0}})}();export{_ as ctx,vn as enforce};
1
+ import{createContext as n}from"context";import{bindNot as t,isStringValue as r,numberEquals as e,greaterThan as u,isArray as i,isNumeric as o,isNullish as a,isBoolean as s,isEmpty as f,isNotArray as c,isNotEmpty as l,isNotNull as v,isNotNullish as N,isNotNumeric as h,isNotUndefined as p,isNull as g,isPositive as m,isUndefined as y,lengthEquals as d,lengthNotEquals as E,longerThan as x,numberNotEquals as O,isFunction as q,assign as T,defaultTo as b,optionalFunctionValue as w,invariant as B,StringObject as W,mapFirst as P}from"vest-utils";function S(n,t){return r(n)&&r(t)&&n.endsWith(t)}var A=t(S);function k(n,t){return n===t}var I=t(k);function J(n,t){return e(n,t)||u(n,t)}function K(n,t){return!!(i(t)||r(t)&&r(n))&&-1!==t.indexOf(n)}var R=t(K);function U(n,t){return o(n)&&o(t)&&Number(n)<Number(t)}function V(n,t){return e(n,t)||U(n,t)}function F(n,t,r){return J(n,t)&&V(n,r)}var M=t(F);function X(n){return a(n)||r(n)&&!n.trim()}var j=t(X),z=t(s);function C(n,t){return n in t}var D=t(C);function G(n){return Number.isNaN(n)}var H=t(G);function L(n){return"number"==typeof n}var Q=t(L),Y=t(r);function Z(n){return!!n}var $=t(Z);function _(n,t){if(a(t))return!1;for(var r in t)if(t[r]===n)return!0;return!1}var nn=t(_);function tn(n,t){return t instanceof RegExp?t.test(n):!!r(t)&&new RegExp(t).test(n)}var rn=t(tn);function en(n,t){return r(n)&&r(t)&&n.startsWith(t)}var un={condition:function(n,t){try{return t(n)}catch(n){return!1}},doesNotEndWith:A,doesNotStartWith:t(en),endsWith:S,equals:k,greaterThan:u,greaterThanOrEquals:J,gt:u,gte:J,inside:K,isArray:i,isBetween:F,isBlank:X,isBoolean:s,isEmpty:f,isEven:function(n){return!!o(n)&&0==n%2},isFalsy:$,isKeyOf:C,isNaN:G,isNegative:function(n){return U(n,0)},isNotArray:c,isNotBetween:M,isNotBlank:j,isNotBoolean:z,isNotEmpty:l,isNotKeyOf:D,isNotNaN:H,isNotNull:v,isNotNullish:N,isNotNumber:Q,isNotNumeric:h,isNotString:Y,isNotUndefined:p,isNotValueOf:nn,isNull:g,isNullish:a,isNumber:L,isNumeric:o,isOdd:function(n){return!!o(n)&&0!=n%2},isPositive:m,isString:r,isTruthy:Z,isUndefined:y,isValueOf:_,lengthEquals:d,lengthNotEquals:E,lessThan:U,lessThanOrEquals:V,longerThan:x,longerThanOrEquals:function(n,t){return J(n.length,t)},lt:U,lte:V,matches:tn,notEquals:I,notInside:R,notMatches:rn,numberEquals:e,numberNotEquals:O,shorterThan:function(n,t){return U(n.length,t)},shorterThanOrEquals:function(n,t){return V(n.length,t)},startsWith:en};function on(n){for(var t in un){var r=un[t];q(r)&&n(t,r)}}var an=n((function(n,t){var r={value:n.value,meta:n.meta||{}};return t?n.set?T(r,{parent:function(){return t?{value:t.value,meta:t.meta,parent:t.parent}:t}}):t:T(r,{parent:sn})}));function sn(){return null}function fn(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 cn(){try{return q(Proxy)}catch(n){return!1}}function ln(n,t){return n={pass:n},t&&(n.message=t),n}function vn(n,t,r){for(var e=[],u=3;u<arguments.length;u++)e[u-3]=arguments[u];return B(s(n)||n&&s(n.pass),"Incorrect return value for rule: "+JSON.stringify(n)),s(n)?ln(n):ln(n.pass,w.apply(void 0,fn([n.message,t,r],e,!1)))}function Nn(n){function t(t,r,e){return function(){for(var u=[],i=0;i<arguments.length;i++)u[i]=arguments[i];return i=an.run({value:n},(function(){return vn.apply(void 0,fn([r.apply(void 0,fn([n],u,!1)),e,n],u,!1))})),B(i.pass,a(i.message)?"enforce/".concat(e," failed with ").concat(JSON.stringify(n)):W(i.message)),t}}var r={};if(!cn())return on((function(n,e){r[n]=t(r,e,n)})),r;var e=new Proxy(r,{get:function(n,r){if(n=un[r])return t(e,n,r)}});return e}function hn(n){var t,r=[];return function n(e){return function(){for(var u=[],i=0;i<arguments.length;i++)u[i]=arguments[i];var o=un[e];r.push((function(n){return vn.apply(void 0,fn([o.apply(void 0,fn([n],u,!1)),e,n],u,!1))}));var a={run:function(n){return b(P(r,(function(r,e){var u,i=an.run({value:n},(function(){return r(n)}));e(!i.pass,ln(!!i.pass,null!==(u=w(t,n,i.message))&&void 0!==u?u:i.message))})),ln(!0))},test:function(n){return a.run(n).pass},message:function(n){return n&&(t=n),a}};return cn()?a=new Proxy(a,{get:function(t,r){return un[r]?n(r):t[r]}}):(on((function(t){a[t]=n(t)})),a)}}(n)}var pn=function(){function n(){if(!cn())return on((function(n){t[n]=hn(n)})),T(Nn,t)}var t={context:function(){return an.useX()},extend:function(t){T(un,t),n()}};return n(),new Proxy(T(Nn,t),{get:function(n,t){return t in n?n[t]:un[t]?hn(t):void 0}})}();export{an as ctx,pn as enforce};
@@ -1,36 +1,5 @@
1
1
  import { ctx, enforce } from 'n4s';
2
-
3
- function mapFirst(array, callback) {
4
- var broke = false;
5
- var breakoutValue = null;
6
- for (var i = 0; i < array.length; i++) {
7
- callback(array[i], breakout, i);
8
- if (broke) {
9
- return breakoutValue;
10
- }
11
- }
12
- function breakout(value) {
13
- broke = true;
14
- breakoutValue = value;
15
- }
16
- }
17
-
18
- function isFunction(value) {
19
- return typeof value === 'function';
20
- }
21
-
22
- function optionalFunctionValue(value) {
23
- var args = [];
24
- for (var _i = 1; _i < arguments.length; _i++) {
25
- args[_i - 1] = arguments[_i];
26
- }
27
- return isFunction(value) ? value.apply(void 0, args) : value;
28
- }
29
-
30
- function defaultTo(callback, defaultValue) {
31
- var _a;
32
- return (_a = optionalFunctionValue(callback)) !== null && _a !== void 0 ? _a : defaultValue;
33
- }
2
+ import { defaultTo, mapFirst, isNullish, hasOwnProperty } from 'vest-utils';
34
3
 
35
4
  function ruleReturn(pass, message) {
36
5
  var output = { pass: pass };
@@ -61,9 +30,7 @@ function runLazyRule(lazyRule, currentValue) {
61
30
  function isArrayOf(inputArray, currentRule) {
62
31
  return defaultToPassing(mapFirst(inputArray, function (currentValue, breakout, index) {
63
32
  var res = ctx.run({ value: currentValue, set: true, meta: { index: index } }, function () { return runLazyRule(currentRule, currentValue); });
64
- if (!res.pass) {
65
- breakout(res);
66
- }
33
+ breakout(!res.pass, res);
67
34
  }));
68
35
  }
69
36
 
@@ -86,18 +53,6 @@ function loose(inputObject, shapeObject) {
86
53
  return passing();
87
54
  }
88
55
 
89
- function isNull(value) {
90
- return value === null;
91
- }
92
-
93
- function isUndefined(value) {
94
- return value === undefined;
95
- }
96
-
97
- function isNullish(value) {
98
- return isNull(value) || isUndefined(value);
99
- }
100
-
101
56
  function optional(value, ruleChain) {
102
57
  if (isNullish(value)) {
103
58
  return passing();
@@ -105,13 +60,6 @@ function optional(value, ruleChain) {
105
60
  return runLazyRule(ruleChain, value);
106
61
  }
107
62
 
108
- /**
109
- * A safe hasOwnProperty access
110
- */
111
- function hasOwnProperty(obj, key) {
112
- return Object.prototype.hasOwnProperty.call(obj, key);
113
- }
114
-
115
63
  function shape(inputObject, shapeObject) {
116
64
  var baseRes = loose(inputObject, shapeObject);
117
65
  if (!baseRes.pass) {
@@ -1 +1 @@
1
- import{ctx as n,enforce as r}from"n4s";function t(n,r){return n={pass:n},r&&(n.message=r),n}function u(n,r){try{return n.run(r)}catch(n){return t(!1)}}function e(r,e){function o(t){var o=r[t],i=e[t];if(!(t=n.run({value:o,set:!0,meta:{key:t}},(function(){return u(i,o)}))).pass)return{value:t}}for(var i in e){var a=o(i);if("object"==typeof a)return a.value}return t(!0)}r.extend({isArrayOf:function(r,e){return function(n,r){var t;return null!==(t=function(n){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];return"function"==typeof n?n.apply(void 0,r):n}(n))&&void 0!==t?t:r}(function(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}(r,(function(r,t,o){(o=n.run({value:r,set:!0,meta:{index:o}},(function(){return u(e,r)}))).pass||t(o)})),t(!0))},loose:e,optional:function(n,r){return null==n?t(!0):u(r,n)},shape:function(n,r){var u=e(n,r);if(!u.pass)return u;for(var o in n)if(!Object.prototype.hasOwnProperty.call(r,o))return t(!1);return t(!0)}});export function partial(n){var t,u={};for(t in n)u[t]=r.optional(n[t]);return u}
1
+ import{defaultTo as r,mapFirst as n,isNullish as t,hasOwnProperty as e}from"vest-utils";import{ctx as u,enforce as o}from"n4s";function i(r,n){return r={pass:r},n&&(r.message=n),r}function a(r,n){try{return r.run(n)}catch(r){return i(!1)}}function f(r,n){function t(t){var e=r[t],o=n[t];if(!(t=u.run({value:e,set:!0,meta:{key:t}},(function(){return a(o,e)}))).pass)return{value:t}}for(var e in n){var o=t(e);if("object"==typeof o)return o.value}return i(!0)}o.extend({isArrayOf:function(t,e){return r(n(t,(function(r,n,t){n(!(t=u.run({value:r,set:!0,meta:{index:t}},(function(){return a(e,r)}))).pass,t)})),i(!0))},loose:f,optional:function(r,n){return t(r)?i(!0):a(n,r)},shape:function(r,n){var t=f(r,n);if(!t.pass)return t;for(var u in r)if(!e(n,u))return i(!1);return i(!0)}});export function partial(r){var n,t={};for(n in r)t[n]=o.optional(r[n]);return t}