n4s 4.1.8 → 4.1.9-dev-c786f7
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.
- package/dist/cjs/compose.development.js +5 -58
- package/dist/cjs/compose.production.js +1 -1
- package/dist/cjs/compounds.development.js +8 -51
- package/dist/cjs/compounds.production.js +1 -1
- package/dist/cjs/n4s.development.js +66 -211
- package/dist/cjs/n4s.production.js +1 -1
- package/dist/cjs/schema.development.js +5 -57
- package/dist/cjs/schema.production.js +1 -1
- package/dist/es/compose.development.js +1 -54
- package/dist/es/compose.production.js +1 -1
- package/dist/es/compounds.development.js +2 -45
- package/dist/es/compounds.production.js +1 -1
- package/dist/es/n4s.development.js +4 -149
- package/dist/es/n4s.production.js +1 -1
- package/dist/es/schema.development.js +1 -53
- package/dist/es/schema.production.js +1 -1
- package/dist/umd/compose.development.js +7 -7
- package/dist/umd/compose.production.js +1 -1
- package/dist/umd/compounds.development.js +26 -26
- package/dist/umd/compounds.production.js +1 -1
- package/dist/umd/n4s.development.js +117 -117
- package/dist/umd/n4s.production.js +1 -1
- package/dist/umd/schema.development.js +34 -34
- package/package.json +3 -2
- package/types/compose.d.ts +15 -31
- package/types/compounds.d.ts +15 -31
- package/types/n4s.d.ts +15 -31
- package/types/schema.d.ts +15 -31
|
@@ -2,149 +2,60 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
var vestUtils = require('vest-utils');
|
|
5
6
|
var context = require('context');
|
|
6
7
|
|
|
7
|
-
var assign = Object.assign;
|
|
8
|
-
|
|
9
|
-
function isFunction(value) {
|
|
10
|
-
return typeof value === 'function';
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
function bindNot(fn) {
|
|
14
|
-
return function () {
|
|
15
|
-
var args = [];
|
|
16
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
17
|
-
args[_i] = arguments[_i];
|
|
18
|
-
}
|
|
19
|
-
return !fn.apply(void 0, args);
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
function isNull(value) {
|
|
24
|
-
return value === null;
|
|
25
|
-
}
|
|
26
|
-
var isNotNull = bindNot(isNull);
|
|
27
|
-
|
|
28
|
-
function isUndefined(value) {
|
|
29
|
-
return value === undefined;
|
|
30
|
-
}
|
|
31
|
-
var isNotUndefined = bindNot(isUndefined);
|
|
32
|
-
|
|
33
|
-
function isNullish(value) {
|
|
34
|
-
return isNull(value) || isUndefined(value);
|
|
35
|
-
}
|
|
36
|
-
var isNotNullish = bindNot(isNullish);
|
|
37
|
-
|
|
38
|
-
function isStringValue(v) {
|
|
39
|
-
return String(v) === v;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
8
|
function endsWith(value, arg1) {
|
|
43
|
-
return isStringValue(value) && isStringValue(arg1) && value.endsWith(arg1);
|
|
9
|
+
return vestUtils.isStringValue(value) && vestUtils.isStringValue(arg1) && value.endsWith(arg1);
|
|
44
10
|
}
|
|
45
|
-
var doesNotEndWith = bindNot(endsWith);
|
|
11
|
+
var doesNotEndWith = vestUtils.bindNot(endsWith);
|
|
46
12
|
|
|
47
13
|
function equals(value, arg1) {
|
|
48
14
|
return value === arg1;
|
|
49
15
|
}
|
|
50
|
-
var notEquals = bindNot(equals);
|
|
51
|
-
|
|
52
|
-
function isNumeric(value) {
|
|
53
|
-
var str = String(value);
|
|
54
|
-
var num = Number(value);
|
|
55
|
-
var result = !isNaN(parseFloat(str)) && !isNaN(Number(value)) && isFinite(num);
|
|
56
|
-
return Boolean(result);
|
|
57
|
-
}
|
|
58
|
-
var isNotNumeric = bindNot(isNumeric);
|
|
59
|
-
|
|
60
|
-
function greaterThan(value, gt) {
|
|
61
|
-
return isNumeric(value) && isNumeric(gt) && Number(value) > Number(gt);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
function numberEquals(value, eq) {
|
|
65
|
-
return isNumeric(value) && isNumeric(eq) && Number(value) === Number(eq);
|
|
66
|
-
}
|
|
67
|
-
var numberNotEquals = bindNot(numberEquals);
|
|
16
|
+
var notEquals = vestUtils.bindNot(equals);
|
|
68
17
|
|
|
69
18
|
function greaterThanOrEquals(value, gte) {
|
|
70
|
-
return numberEquals(value, gte) || greaterThan(value, gte);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
// The module is named "isArrayValue" since it
|
|
74
|
-
// is conflicting with a nested npm dependency.
|
|
75
|
-
// We may need to revisit this in the future.
|
|
76
|
-
function isArray(value) {
|
|
77
|
-
return Boolean(Array.isArray(value));
|
|
19
|
+
return vestUtils.numberEquals(value, gte) || vestUtils.greaterThan(value, gte);
|
|
78
20
|
}
|
|
79
|
-
var isNotArray = bindNot(isArray);
|
|
80
21
|
|
|
81
22
|
function inside(value, arg1) {
|
|
82
|
-
if (isArray(arg1)) {
|
|
23
|
+
if (vestUtils.isArray(arg1)) {
|
|
83
24
|
return arg1.indexOf(value) !== -1;
|
|
84
25
|
}
|
|
85
26
|
// both value and arg1 are strings
|
|
86
|
-
if (isStringValue(arg1) && isStringValue(value)) {
|
|
27
|
+
if (vestUtils.isStringValue(arg1) && vestUtils.isStringValue(value)) {
|
|
87
28
|
return arg1.indexOf(value) !== -1;
|
|
88
29
|
}
|
|
89
30
|
return false;
|
|
90
31
|
}
|
|
91
|
-
var notInside = bindNot(inside);
|
|
32
|
+
var notInside = vestUtils.bindNot(inside);
|
|
92
33
|
|
|
93
34
|
function lessThan(value, lt) {
|
|
94
|
-
return isNumeric(value) && isNumeric(lt) && Number(value) < Number(lt);
|
|
35
|
+
return vestUtils.isNumeric(value) && vestUtils.isNumeric(lt) && Number(value) < Number(lt);
|
|
95
36
|
}
|
|
96
37
|
|
|
97
38
|
function lessThanOrEquals(value, lte) {
|
|
98
|
-
return numberEquals(value, lte) || lessThan(value, lte);
|
|
39
|
+
return vestUtils.numberEquals(value, lte) || lessThan(value, lte);
|
|
99
40
|
}
|
|
100
41
|
|
|
101
42
|
function isBetween(value, min, max) {
|
|
102
43
|
return greaterThanOrEquals(value, min) && lessThanOrEquals(value, max);
|
|
103
44
|
}
|
|
104
|
-
var isNotBetween = bindNot(isBetween);
|
|
45
|
+
var isNotBetween = vestUtils.bindNot(isBetween);
|
|
105
46
|
|
|
106
47
|
function isBlank(value) {
|
|
107
|
-
return isNullish(value) || (isStringValue(value) && !value.trim());
|
|
108
|
-
}
|
|
109
|
-
var isNotBlank = bindNot(isBlank);
|
|
110
|
-
|
|
111
|
-
function isBoolean(value) {
|
|
112
|
-
return !!value === value;
|
|
48
|
+
return vestUtils.isNullish(value) || (vestUtils.isStringValue(value) && !value.trim());
|
|
113
49
|
}
|
|
50
|
+
var isNotBlank = vestUtils.bindNot(isBlank);
|
|
114
51
|
|
|
115
|
-
var isNotBoolean = bindNot(isBoolean);
|
|
116
|
-
|
|
117
|
-
/**
|
|
118
|
-
* A safe hasOwnProperty access
|
|
119
|
-
*/
|
|
120
|
-
function hasOwnProperty(obj, key) {
|
|
121
|
-
return Object.prototype.hasOwnProperty.call(obj, key);
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
function lengthEquals(value, arg1) {
|
|
125
|
-
return numberEquals(value.length, arg1);
|
|
126
|
-
}
|
|
127
|
-
var lengthNotEquals = bindNot(lengthEquals);
|
|
128
|
-
|
|
129
|
-
function isEmpty(value) {
|
|
130
|
-
if (!value) {
|
|
131
|
-
return true;
|
|
132
|
-
}
|
|
133
|
-
else if (hasOwnProperty(value, 'length')) {
|
|
134
|
-
return lengthEquals(value, 0);
|
|
135
|
-
}
|
|
136
|
-
else if (typeof value === 'object') {
|
|
137
|
-
return lengthEquals(Object.keys(value), 0);
|
|
138
|
-
}
|
|
139
|
-
return false;
|
|
140
|
-
}
|
|
141
|
-
var isNotEmpty = bindNot(isEmpty);
|
|
52
|
+
var isNotBoolean = vestUtils.bindNot(vestUtils.isBoolean);
|
|
142
53
|
|
|
143
54
|
/**
|
|
144
55
|
* Validates that a given value is an even number
|
|
145
56
|
*/
|
|
146
57
|
var isEven = function (value) {
|
|
147
|
-
if (isNumeric(value)) {
|
|
58
|
+
if (vestUtils.isNumeric(value)) {
|
|
148
59
|
return value % 2 === 0;
|
|
149
60
|
}
|
|
150
61
|
return false;
|
|
@@ -153,12 +64,12 @@ var isEven = function (value) {
|
|
|
153
64
|
function isKeyOf(key, obj) {
|
|
154
65
|
return key in obj;
|
|
155
66
|
}
|
|
156
|
-
var isNotKeyOf = bindNot(isKeyOf);
|
|
67
|
+
var isNotKeyOf = vestUtils.bindNot(isKeyOf);
|
|
157
68
|
|
|
158
|
-
function isNaN
|
|
69
|
+
function isNaN(value) {
|
|
159
70
|
return Number.isNaN(value);
|
|
160
71
|
}
|
|
161
|
-
var isNotNaN = bindNot(isNaN
|
|
72
|
+
var isNotNaN = vestUtils.bindNot(isNaN);
|
|
162
73
|
|
|
163
74
|
function isNegative(value) {
|
|
164
75
|
return lessThan(value, 0);
|
|
@@ -167,31 +78,27 @@ function isNegative(value) {
|
|
|
167
78
|
function isNumber(value) {
|
|
168
79
|
return Boolean(typeof value === 'number');
|
|
169
80
|
}
|
|
170
|
-
var isNotNumber = bindNot(isNumber);
|
|
81
|
+
var isNotNumber = vestUtils.bindNot(isNumber);
|
|
171
82
|
|
|
172
83
|
/**
|
|
173
84
|
* Validates that a given value is an odd number
|
|
174
85
|
*/
|
|
175
86
|
var isOdd = function (value) {
|
|
176
|
-
if (isNumeric(value)) {
|
|
87
|
+
if (vestUtils.isNumeric(value)) {
|
|
177
88
|
return value % 2 !== 0;
|
|
178
89
|
}
|
|
179
90
|
return false;
|
|
180
91
|
};
|
|
181
92
|
|
|
182
|
-
|
|
183
|
-
return greaterThan(value, 0);
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
var isNotString = bindNot(isStringValue);
|
|
93
|
+
var isNotString = vestUtils.bindNot(vestUtils.isStringValue);
|
|
187
94
|
|
|
188
95
|
function isTruthy(value) {
|
|
189
96
|
return !!value;
|
|
190
97
|
}
|
|
191
|
-
var isFalsy = bindNot(isTruthy);
|
|
98
|
+
var isFalsy = vestUtils.bindNot(isTruthy);
|
|
192
99
|
|
|
193
100
|
function isValueOf(value, objectToCheck) {
|
|
194
|
-
if (isNullish(objectToCheck)) {
|
|
101
|
+
if (vestUtils.isNullish(objectToCheck)) {
|
|
195
102
|
return false;
|
|
196
103
|
}
|
|
197
104
|
for (var key in objectToCheck) {
|
|
@@ -201,11 +108,7 @@ function isValueOf(value, objectToCheck) {
|
|
|
201
108
|
}
|
|
202
109
|
return false;
|
|
203
110
|
}
|
|
204
|
-
var isNotValueOf = bindNot(isValueOf);
|
|
205
|
-
|
|
206
|
-
function longerThan(value, arg1) {
|
|
207
|
-
return greaterThan(value.length, arg1);
|
|
208
|
-
}
|
|
111
|
+
var isNotValueOf = vestUtils.bindNot(isValueOf);
|
|
209
112
|
|
|
210
113
|
function longerThanOrEquals(value, arg1) {
|
|
211
114
|
return greaterThanOrEquals(value.length, arg1);
|
|
@@ -215,14 +118,14 @@ function matches(value, regex) {
|
|
|
215
118
|
if (regex instanceof RegExp) {
|
|
216
119
|
return regex.test(value);
|
|
217
120
|
}
|
|
218
|
-
else if (isStringValue(regex)) {
|
|
121
|
+
else if (vestUtils.isStringValue(regex)) {
|
|
219
122
|
return new RegExp(regex).test(value);
|
|
220
123
|
}
|
|
221
124
|
else {
|
|
222
125
|
return false;
|
|
223
126
|
}
|
|
224
127
|
}
|
|
225
|
-
var notMatches = bindNot(matches);
|
|
128
|
+
var notMatches = vestUtils.bindNot(matches);
|
|
226
129
|
|
|
227
130
|
function condition(value, callback) {
|
|
228
131
|
try {
|
|
@@ -242,9 +145,9 @@ function shorterThanOrEquals(value, arg1) {
|
|
|
242
145
|
}
|
|
243
146
|
|
|
244
147
|
function startsWith(value, arg1) {
|
|
245
|
-
return isStringValue(value) && isStringValue(arg1) && value.startsWith(arg1);
|
|
148
|
+
return vestUtils.isStringValue(value) && vestUtils.isStringValue(arg1) && value.startsWith(arg1);
|
|
246
149
|
}
|
|
247
|
-
var doesNotStartWith = bindNot(startsWith);
|
|
150
|
+
var doesNotStartWith = vestUtils.bindNot(startsWith);
|
|
248
151
|
|
|
249
152
|
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, max-lines-per-function
|
|
250
153
|
function rules() {
|
|
@@ -254,50 +157,50 @@ function rules() {
|
|
|
254
157
|
doesNotStartWith: doesNotStartWith,
|
|
255
158
|
endsWith: endsWith,
|
|
256
159
|
equals: equals,
|
|
257
|
-
greaterThan: greaterThan,
|
|
160
|
+
greaterThan: vestUtils.greaterThan,
|
|
258
161
|
greaterThanOrEquals: greaterThanOrEquals,
|
|
259
|
-
gt: greaterThan,
|
|
162
|
+
gt: vestUtils.greaterThan,
|
|
260
163
|
gte: greaterThanOrEquals,
|
|
261
164
|
inside: inside,
|
|
262
|
-
isArray: isArray,
|
|
165
|
+
isArray: vestUtils.isArray,
|
|
263
166
|
isBetween: isBetween,
|
|
264
167
|
isBlank: isBlank,
|
|
265
|
-
isBoolean: isBoolean,
|
|
266
|
-
isEmpty: isEmpty,
|
|
168
|
+
isBoolean: vestUtils.isBoolean,
|
|
169
|
+
isEmpty: vestUtils.isEmpty,
|
|
267
170
|
isEven: isEven,
|
|
268
171
|
isFalsy: isFalsy,
|
|
269
172
|
isKeyOf: isKeyOf,
|
|
270
|
-
isNaN: isNaN
|
|
173
|
+
isNaN: isNaN,
|
|
271
174
|
isNegative: isNegative,
|
|
272
|
-
isNotArray: isNotArray,
|
|
175
|
+
isNotArray: vestUtils.isNotArray,
|
|
273
176
|
isNotBetween: isNotBetween,
|
|
274
177
|
isNotBlank: isNotBlank,
|
|
275
178
|
isNotBoolean: isNotBoolean,
|
|
276
|
-
isNotEmpty: isNotEmpty,
|
|
179
|
+
isNotEmpty: vestUtils.isNotEmpty,
|
|
277
180
|
isNotKeyOf: isNotKeyOf,
|
|
278
181
|
isNotNaN: isNotNaN,
|
|
279
|
-
isNotNull: isNotNull,
|
|
280
|
-
isNotNullish: isNotNullish,
|
|
182
|
+
isNotNull: vestUtils.isNotNull,
|
|
183
|
+
isNotNullish: vestUtils.isNotNullish,
|
|
281
184
|
isNotNumber: isNotNumber,
|
|
282
|
-
isNotNumeric: isNotNumeric,
|
|
185
|
+
isNotNumeric: vestUtils.isNotNumeric,
|
|
283
186
|
isNotString: isNotString,
|
|
284
|
-
isNotUndefined: isNotUndefined,
|
|
187
|
+
isNotUndefined: vestUtils.isNotUndefined,
|
|
285
188
|
isNotValueOf: isNotValueOf,
|
|
286
|
-
isNull: isNull,
|
|
287
|
-
isNullish: isNullish,
|
|
189
|
+
isNull: vestUtils.isNull,
|
|
190
|
+
isNullish: vestUtils.isNullish,
|
|
288
191
|
isNumber: isNumber,
|
|
289
|
-
isNumeric: isNumeric,
|
|
192
|
+
isNumeric: vestUtils.isNumeric,
|
|
290
193
|
isOdd: isOdd,
|
|
291
|
-
isPositive: isPositive,
|
|
292
|
-
isString: isStringValue,
|
|
194
|
+
isPositive: vestUtils.isPositive,
|
|
195
|
+
isString: vestUtils.isStringValue,
|
|
293
196
|
isTruthy: isTruthy,
|
|
294
|
-
isUndefined: isUndefined,
|
|
197
|
+
isUndefined: vestUtils.isUndefined,
|
|
295
198
|
isValueOf: isValueOf,
|
|
296
|
-
lengthEquals: lengthEquals,
|
|
297
|
-
lengthNotEquals: lengthNotEquals,
|
|
199
|
+
lengthEquals: vestUtils.lengthEquals,
|
|
200
|
+
lengthNotEquals: vestUtils.lengthNotEquals,
|
|
298
201
|
lessThan: lessThan,
|
|
299
202
|
lessThanOrEquals: lessThanOrEquals,
|
|
300
|
-
longerThan: longerThan,
|
|
203
|
+
longerThan: vestUtils.longerThan,
|
|
301
204
|
longerThanOrEquals: longerThanOrEquals,
|
|
302
205
|
lt: lessThan,
|
|
303
206
|
lte: lessThanOrEquals,
|
|
@@ -305,8 +208,8 @@ function rules() {
|
|
|
305
208
|
notEquals: notEquals,
|
|
306
209
|
notInside: notInside,
|
|
307
210
|
notMatches: notMatches,
|
|
308
|
-
numberEquals: numberEquals,
|
|
309
|
-
numberNotEquals: numberNotEquals,
|
|
211
|
+
numberEquals: vestUtils.numberEquals,
|
|
212
|
+
numberNotEquals: vestUtils.numberNotEquals,
|
|
310
213
|
shorterThan: shorterThan,
|
|
311
214
|
shorterThanOrEquals: shorterThanOrEquals,
|
|
312
215
|
startsWith: startsWith
|
|
@@ -321,7 +224,7 @@ function getRule(ruleName) {
|
|
|
321
224
|
function eachEnforceRule(action) {
|
|
322
225
|
for (var ruleName in baseRules) {
|
|
323
226
|
var ruleFn = getRule(ruleName);
|
|
324
|
-
if (isFunction(ruleFn)) {
|
|
227
|
+
if (vestUtils.isFunction(ruleFn)) {
|
|
325
228
|
action(ruleName, ruleFn);
|
|
326
229
|
}
|
|
327
230
|
}
|
|
@@ -333,12 +236,12 @@ var ctx = context.createContext(function (ctxRef, parentContext) {
|
|
|
333
236
|
meta: ctxRef.meta || {}
|
|
334
237
|
};
|
|
335
238
|
if (!parentContext) {
|
|
336
|
-
return assign(base, {
|
|
239
|
+
return vestUtils.assign(base, {
|
|
337
240
|
parent: emptyParent
|
|
338
241
|
});
|
|
339
242
|
}
|
|
340
243
|
else if (ctxRef.set) {
|
|
341
|
-
return assign(base, {
|
|
244
|
+
return vestUtils.assign(base, {
|
|
342
245
|
parent: function () { return stripContext(parentContext); }
|
|
343
246
|
});
|
|
344
247
|
}
|
|
@@ -383,46 +286,15 @@ function __spreadArray(to, from, pack) {
|
|
|
383
286
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
384
287
|
}
|
|
385
288
|
|
|
386
|
-
function optionalFunctionValue(value) {
|
|
387
|
-
var args = [];
|
|
388
|
-
for (var _i = 1; _i < arguments.length; _i++) {
|
|
389
|
-
args[_i - 1] = arguments[_i];
|
|
390
|
-
}
|
|
391
|
-
return isFunction(value) ? value.apply(void 0, args) : value;
|
|
392
|
-
}
|
|
393
|
-
|
|
394
|
-
function invariant(condition,
|
|
395
|
-
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
396
|
-
message) {
|
|
397
|
-
if (condition) {
|
|
398
|
-
return;
|
|
399
|
-
}
|
|
400
|
-
// If message is a string object (rather than string literal)
|
|
401
|
-
// Throw the value directly as a string
|
|
402
|
-
// Alternatively, throw an error with the message
|
|
403
|
-
throw message instanceof String
|
|
404
|
-
? message.valueOf()
|
|
405
|
-
: new Error(message ? optionalFunctionValue(message) : message);
|
|
406
|
-
}
|
|
407
|
-
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
408
|
-
function StringObject(value) {
|
|
409
|
-
return new String(optionalFunctionValue(value));
|
|
410
|
-
}
|
|
411
|
-
|
|
412
289
|
function isProxySupported() {
|
|
413
290
|
try {
|
|
414
|
-
return isFunction(Proxy);
|
|
291
|
+
return vestUtils.isFunction(Proxy);
|
|
415
292
|
}
|
|
416
293
|
catch (_a) {
|
|
417
294
|
return false;
|
|
418
295
|
}
|
|
419
296
|
}
|
|
420
297
|
|
|
421
|
-
function defaultTo(value, defaultValue) {
|
|
422
|
-
var _a;
|
|
423
|
-
return (_a = optionalFunctionValue(value)) !== null && _a !== void 0 ? _a : optionalFunctionValue(defaultValue);
|
|
424
|
-
}
|
|
425
|
-
|
|
426
298
|
function ruleReturn(pass, message) {
|
|
427
299
|
var output = { pass: pass };
|
|
428
300
|
if (message) {
|
|
@@ -434,7 +306,7 @@ function passing() {
|
|
|
434
306
|
return ruleReturn(true);
|
|
435
307
|
}
|
|
436
308
|
function defaultToPassing(callback) {
|
|
437
|
-
return defaultTo(callback, passing());
|
|
309
|
+
return vestUtils.defaultTo(callback, passing());
|
|
438
310
|
}
|
|
439
311
|
|
|
440
312
|
/**
|
|
@@ -447,16 +319,16 @@ function transformResult(result, ruleName, value) {
|
|
|
447
319
|
}
|
|
448
320
|
validateResult(result);
|
|
449
321
|
// if result is boolean
|
|
450
|
-
if (isBoolean(result)) {
|
|
322
|
+
if (vestUtils.isBoolean(result)) {
|
|
451
323
|
return ruleReturn(result);
|
|
452
324
|
}
|
|
453
325
|
else {
|
|
454
|
-
return ruleReturn(result.pass, optionalFunctionValue.apply(void 0, __spreadArray([result.message, ruleName, value], args, false)));
|
|
326
|
+
return ruleReturn(result.pass, vestUtils.optionalFunctionValue.apply(void 0, __spreadArray([result.message, ruleName, value], args, false)));
|
|
455
327
|
}
|
|
456
328
|
}
|
|
457
329
|
function validateResult(result) {
|
|
458
330
|
// if result is boolean, or if result.pass is boolean
|
|
459
|
-
invariant(isBoolean(result) || (result && isBoolean(result.pass)), 'Incorrect return value for rule: ' + JSON.stringify(result));
|
|
331
|
+
vestUtils.invariant(vestUtils.isBoolean(result) || (result && vestUtils.isBoolean(result.pass)), 'Incorrect return value for rule: ' + JSON.stringify(result));
|
|
460
332
|
}
|
|
461
333
|
|
|
462
334
|
function enforceEager(value) {
|
|
@@ -485,31 +357,14 @@ function enforceEager(value) {
|
|
|
485
357
|
var transformedResult = ctx.run({ value: value }, function () {
|
|
486
358
|
return transformResult.apply(void 0, __spreadArray([rule.apply(void 0, __spreadArray([value], args, false)), ruleName, value], args, false));
|
|
487
359
|
});
|
|
488
|
-
invariant(transformedResult.pass, isNullish(transformedResult.message)
|
|
360
|
+
vestUtils.invariant(transformedResult.pass, vestUtils.isNullish(transformedResult.message)
|
|
489
361
|
? "enforce/".concat(ruleName, " failed with ").concat(JSON.stringify(value))
|
|
490
|
-
: StringObject(transformedResult.message));
|
|
362
|
+
: vestUtils.StringObject(transformedResult.message));
|
|
491
363
|
return target;
|
|
492
364
|
};
|
|
493
365
|
}
|
|
494
366
|
}
|
|
495
367
|
|
|
496
|
-
function mapFirst(array, callback) {
|
|
497
|
-
var broke = false;
|
|
498
|
-
var breakoutValue = null;
|
|
499
|
-
for (var i = 0; i < array.length; i++) {
|
|
500
|
-
callback(array[i], breakout, i);
|
|
501
|
-
if (broke) {
|
|
502
|
-
return breakoutValue;
|
|
503
|
-
}
|
|
504
|
-
}
|
|
505
|
-
function breakout(conditional, value) {
|
|
506
|
-
if (conditional) {
|
|
507
|
-
broke = true;
|
|
508
|
-
breakoutValue = value;
|
|
509
|
-
}
|
|
510
|
-
}
|
|
511
|
-
}
|
|
512
|
-
|
|
513
368
|
// eslint-disable-next-line max-lines-per-function
|
|
514
369
|
function genEnforceLazy(key) {
|
|
515
370
|
var registeredRules = [];
|
|
@@ -529,10 +384,10 @@ function genEnforceLazy(key) {
|
|
|
529
384
|
});
|
|
530
385
|
var proxy = {
|
|
531
386
|
run: function (value) {
|
|
532
|
-
return defaultToPassing(mapFirst(registeredRules, function (rule, breakout) {
|
|
387
|
+
return defaultToPassing(vestUtils.mapFirst(registeredRules, function (rule, breakout) {
|
|
533
388
|
var _a;
|
|
534
389
|
var res = ctx.run({ value: value }, function () { return rule(value); });
|
|
535
|
-
breakout(!res.pass, ruleReturn(!!res.pass, (_a = optionalFunctionValue(lazyMessage, value, res.message)) !== null && _a !== void 0 ? _a : res.message));
|
|
390
|
+
breakout(!res.pass, ruleReturn(!!res.pass, (_a = vestUtils.optionalFunctionValue(lazyMessage, value, res.message)) !== null && _a !== void 0 ? _a : res.message));
|
|
536
391
|
}));
|
|
537
392
|
},
|
|
538
393
|
test: function (value) { return proxy.run(value).pass; },
|
|
@@ -594,12 +449,12 @@ function genEnforce() {
|
|
|
594
449
|
var target = {
|
|
595
450
|
context: function () { return ctx.useX(); },
|
|
596
451
|
extend: function (customRules) {
|
|
597
|
-
assign(baseRules, customRules);
|
|
452
|
+
vestUtils.assign(baseRules, customRules);
|
|
598
453
|
handleNoProxy(); // TODO: REMOVE when we stop supporting ES5
|
|
599
454
|
}
|
|
600
455
|
};
|
|
601
456
|
handleNoProxy();
|
|
602
|
-
return new Proxy(assign(enforceEager, target), {
|
|
457
|
+
return new Proxy(vestUtils.assign(enforceEager, target), {
|
|
603
458
|
get: function (target, key) {
|
|
604
459
|
if (key in target) {
|
|
605
460
|
return target[key];
|
|
@@ -617,7 +472,7 @@ function genEnforce() {
|
|
|
617
472
|
// Only on the first rule access - start the chain of calls
|
|
618
473
|
target[ruleName] = genEnforceLazy(ruleName);
|
|
619
474
|
});
|
|
620
|
-
return assign(enforceEager, target);
|
|
475
|
+
return vestUtils.assign(enforceEager, target);
|
|
621
476
|
}
|
|
622
477
|
}
|
|
623
478
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n=require("
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n=require("vest-utils"),t=require("context");function r(t,r){return n.isStringValue(t)&&n.isStringValue(r)&&t.endsWith(r)}var i=n.bindNot(r);function e(n,t){return n===t}var u=n.bindNot(e);function s(t,r){return n.numberEquals(t,r)||n.greaterThan(t,r)}function o(t,r){return!!(n.isArray(r)||n.isStringValue(r)&&n.isStringValue(t))&&-1!==r.indexOf(t)}var a=n.bindNot(o);function l(t,r){return n.isNumeric(t)&&n.isNumeric(r)&&Number(t)<Number(r)}function c(t,r){return n.numberEquals(t,r)||l(t,r)}function f(n,t,r){return s(n,t)&&c(n,r)}var N=n.bindNot(f);function g(t){return n.isNullish(t)||n.isStringValue(t)&&!t.trim()}var v=n.bindNot(g),h=n.bindNot(n.isBoolean),d=function(t){return!!n.isNumeric(t)&&0==t%2};function p(n,t){return n in t}var m=n.bindNot(p);function y(n){return Number.isNaN(n)}var b=n.bindNot(y);function E(n){return l(n,0)}function q(n){return"number"==typeof n}var S=n.bindNot(q),x=function(t){return!!n.isNumeric(t)&&0!=t%2},O=n.bindNot(n.isStringValue);function T(n){return!!n}var V=n.bindNot(T);function B(t,r){if(n.isNullish(r))return!1;for(var i in r)if(r[i]===t)return!0;return!1}var w=n.bindNot(B);function A(n,t){return s(n.length,t)}function P(t,r){return r instanceof RegExp?r.test(t):!!n.isStringValue(r)&&new RegExp(r).test(t)}var F=n.bindNot(P);function W(n,t){try{return t(n)}catch(n){return!1}}function U(n,t){return l(n.length,t)}function j(n,t){return c(n.length,t)}function k(t,r){return n.isStringValue(t)&&n.isStringValue(r)&&t.startsWith(r)}var I=n.bindNot(k);var J={condition:W,doesNotEndWith:i,doesNotStartWith:I,endsWith:r,equals:e,greaterThan:n.greaterThan,greaterThanOrEquals:s,gt:n.greaterThan,gte:s,inside:o,isArray:n.isArray,isBetween:f,isBlank:g,isBoolean:n.isBoolean,isEmpty:n.isEmpty,isEven:d,isFalsy:V,isKeyOf:p,isNaN:y,isNegative:E,isNotArray:n.isNotArray,isNotBetween:N,isNotBlank:v,isNotBoolean:h,isNotEmpty:n.isNotEmpty,isNotKeyOf:m,isNotNaN:b,isNotNull:n.isNotNull,isNotNullish:n.isNotNullish,isNotNumber:S,isNotNumeric:n.isNotNumeric,isNotString:O,isNotUndefined:n.isNotUndefined,isNotValueOf:w,isNull:n.isNull,isNullish:n.isNullish,isNumber:q,isNumeric:n.isNumeric,isOdd:x,isPositive:n.isPositive,isString:n.isStringValue,isTruthy:T,isUndefined:n.isUndefined,isValueOf:B,lengthEquals:n.lengthEquals,lengthNotEquals:n.lengthNotEquals,lessThan:l,lessThanOrEquals:c,longerThan:n.longerThan,longerThanOrEquals:A,lt:l,lte:c,matches:P,notEquals:u,notInside:a,notMatches:F,numberEquals:n.numberEquals,numberNotEquals:n.numberNotEquals,shorterThan:U,shorterThanOrEquals:j,startsWith:k};function K(n){return J[n]}function M(t){for(var r in J){var i=K(r);n.isFunction(i)&&t(r,i)}}var R=t.createContext((function(t,r){var i={value:t.value,meta:t.meta||{}};return r?t.set?n.assign(i,{parent:function(){return function(n){return n?{value:n.value,meta:n.meta,parent:n.parent}:n}(r)}}):r:n.assign(i,{parent:_})}));function _(){return null}function C(n,t,r){if(r||2===arguments.length)for(var i,e=0,u=t.length;e<u;e++)!i&&e in t||(i||(i=Array.prototype.slice.call(t,0,e)),i[e]=t[e]);return n.concat(i||Array.prototype.slice.call(t))}function X(){try{return n.isFunction(Proxy)}catch(n){return!1}}function z(n,t){return n={pass:n},t&&(n.message=t),n}function D(t){return n.defaultTo(t,z(!0))}function G(t,r,i){for(var e=[],u=3;u<arguments.length;u++)e[u-3]=arguments[u];return H(t),n.isBoolean(t)?z(t):z(t.pass,n.optionalFunctionValue.apply(void 0,C([t.message,r,i],e,!1)))}function H(t){n.invariant(n.isBoolean(t)||t&&n.isBoolean(t.pass),"Incorrect return value for rule: "+JSON.stringify(t))}function L(t){function r(r,i,e){return function(){for(var u=[],s=0;s<arguments.length;s++)u[s]=arguments[s];return s=R.run({value:t},(function(){return G.apply(void 0,C([i.apply(void 0,C([t],u,!1)),e,t],u,!1))})),n.invariant(s.pass,n.isNullish(s.message)?"enforce/".concat(e," failed with ").concat(JSON.stringify(t)):n.StringObject(s.message)),r}}var i={};if(!X())return M((function(n,t){i[n]=r(i,t,n)})),i;var e=new Proxy(i,{get:function(n,t){if(n=K(t))return r(e,n,t)}});return e}function Q(t){var r,i=[];return function t(e){return function(){for(var u=[],s=0;s<arguments.length;s++)u[s]=arguments[s];var o=K(e);i.push((function(n){return G.apply(void 0,C([o.apply(void 0,C([n],u,!1)),e,n],u,!1))}));var a={run:function(t){return D(n.mapFirst(i,(function(i,e){var u,s=R.run({value:t},(function(){return i(t)}));e(!s.pass,z(!!s.pass,null!==(u=n.optionalFunctionValue(r,t,s.message))&&void 0!==u?u:s.message))})))},test:function(n){return a.run(n).pass},message:function(n){return n&&(r=n),a}};return X()?a=new Proxy(a,{get:function(n,r){return K(r)?t(r):n[r]}}):(M((function(n){a[n]=t(n)})),a)}}(t)}var Y=function(){function t(){if(!X())return M((function(n){r[n]=Q(n)})),n.assign(L,r)}var r={context:function(){return R.useX()},extend:function(r){n.assign(J,r),t()}};return t(),new Proxy(n.assign(L,r),{get:function(n,t){return t in n?n[t]:K(t)?Q(t):void 0}})}();exports.ctx=R,exports.enforce=Y;
|
|
@@ -3,40 +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(conditional, value) {
|
|
17
|
-
if (conditional) {
|
|
18
|
-
broke = true;
|
|
19
|
-
breakoutValue = value;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
function isFunction(value) {
|
|
25
|
-
return typeof value === 'function';
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
function optionalFunctionValue(value) {
|
|
29
|
-
var args = [];
|
|
30
|
-
for (var _i = 1; _i < arguments.length; _i++) {
|
|
31
|
-
args[_i - 1] = arguments[_i];
|
|
32
|
-
}
|
|
33
|
-
return isFunction(value) ? value.apply(void 0, args) : value;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
function defaultTo(value, defaultValue) {
|
|
37
|
-
var _a;
|
|
38
|
-
return (_a = optionalFunctionValue(value)) !== null && _a !== void 0 ? _a : optionalFunctionValue(defaultValue);
|
|
39
|
-
}
|
|
6
|
+
var vestUtils = require('vest-utils');
|
|
40
7
|
|
|
41
8
|
function ruleReturn(pass, message) {
|
|
42
9
|
var output = { pass: pass };
|
|
@@ -52,7 +19,7 @@ function passing() {
|
|
|
52
19
|
return ruleReturn(true);
|
|
53
20
|
}
|
|
54
21
|
function defaultToPassing(callback) {
|
|
55
|
-
return defaultTo(callback, passing());
|
|
22
|
+
return vestUtils.defaultTo(callback, passing());
|
|
56
23
|
}
|
|
57
24
|
|
|
58
25
|
function runLazyRule(lazyRule, currentValue) {
|
|
@@ -65,7 +32,7 @@ function runLazyRule(lazyRule, currentValue) {
|
|
|
65
32
|
}
|
|
66
33
|
|
|
67
34
|
function isArrayOf(inputArray, currentRule) {
|
|
68
|
-
return defaultToPassing(mapFirst(inputArray, function (currentValue, breakout, index) {
|
|
35
|
+
return defaultToPassing(vestUtils.mapFirst(inputArray, function (currentValue, breakout, index) {
|
|
69
36
|
var res = n4s.ctx.run({ value: currentValue, set: true, meta: { index: index } }, function () { return runLazyRule(currentRule, currentValue); });
|
|
70
37
|
breakout(!res.pass, res);
|
|
71
38
|
}));
|
|
@@ -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
|
|
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};
|