ejv 1.1.10 → 1.1.11
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/CHANGELOG.md +67 -67
- package/LICENSE +21 -21
- package/README-KR.md +591 -591
- package/README.md +595 -595
- package/build/constants.d.ts +104 -104
- package/build/constants.js +118 -118
- package/build/ejv.d.ts +2 -2
- package/build/ejv.js +686 -684
- package/build/ejv.js.map +1 -1
- package/build/interfaces.d.ts +38 -38
- package/build/interfaces.js +14 -14
- package/build/public_api.d.ts +3 -3
- package/build/public_api.js +13 -13
- package/build/tester.d.ts +34 -34
- package/build/tester.js +268 -268
- package/build/tester.js.map +1 -1
- package/build/util.d.ts +1 -1
- package/build/util.js +67 -65
- package/build/util.js.map +1 -1
- package/package.json +39 -39
- package/spec/common-test-runner.ts +17 -17
- package/spec/ejv.spec.ts +4634 -4634
- package/spec/testers.spec.ts +832 -832
- package/src/constants.ts +155 -155
- package/src/ejv.ts +1071 -1071
- package/src/interfaces.ts +63 -63
- package/src/public_api.ts +2 -2
- package/src/tester.ts +302 -302
- package/src/util.ts +58 -58
- package/tsconfig.json +18 -18
- package/tsconfig.spec.json +18 -18
package/build/tester.js
CHANGED
|
@@ -1,269 +1,269 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.regExpTester = exports.uniqueItemsTester = exports.arrayTypeOfTester = exports.arrayTester = exports.exclusiveMaxDateTester = exports.maxDateTester = exports.exclusiveMinDateTester = exports.minDateTester = exports.dateTester = exports.hasPropertyTester = exports.objectTester = exports.dateTimeFormatTester = exports.timeFormatTester = exports.dateFormatTester = exports.emailTester = exports.stringRegExpTester = exports.stringTester = exports.exclusiveMaxNumberTester = exports.maxNumberTester = exports.exclusiveMinNumberTester = exports.minNumberTester = exports.indexTester = exports.integerTester = exports.numberTester = exports.booleanTester = exports.maxLengthTester = exports.minLengthTester = exports.lengthTester = exports.enumTester = exports.definedTester = exports.typeTester = void 0;
|
|
4
|
-
var constants_1 = require("./constants");
|
|
5
|
-
var typeTester = function (value, type) {
|
|
6
|
-
var valid;
|
|
7
|
-
switch (type) {
|
|
8
|
-
case constants_1.DataType.BOOLEAN:
|
|
9
|
-
valid = exports.booleanTester(value);
|
|
10
|
-
break;
|
|
11
|
-
case constants_1.DataType.NUMBER:
|
|
12
|
-
valid = exports.numberTester(value);
|
|
13
|
-
break;
|
|
14
|
-
case constants_1.DataType.STRING:
|
|
15
|
-
valid = exports.stringTester(value);
|
|
16
|
-
break;
|
|
17
|
-
case constants_1.DataType.OBJECT:
|
|
18
|
-
valid = exports.objectTester(value);
|
|
19
|
-
break;
|
|
20
|
-
case constants_1.DataType.DATE:
|
|
21
|
-
valid = exports.dateTester(value);
|
|
22
|
-
break;
|
|
23
|
-
case constants_1.DataType.REGEXP:
|
|
24
|
-
valid = exports.regExpTester(value);
|
|
25
|
-
break;
|
|
26
|
-
case constants_1.DataType.ARRAY:
|
|
27
|
-
valid = exports.arrayTester(value);
|
|
28
|
-
break;
|
|
29
|
-
}
|
|
30
|
-
return valid;
|
|
31
|
-
};
|
|
32
|
-
exports.typeTester = typeTester;
|
|
33
|
-
var definedTester = function (value) {
|
|
34
|
-
return value !== undefined;
|
|
35
|
-
};
|
|
36
|
-
exports.definedTester = definedTester;
|
|
37
|
-
var enumTester = function (value, arr) {
|
|
38
|
-
return arr.includes(value);
|
|
39
|
-
};
|
|
40
|
-
exports.enumTester = enumTester;
|
|
41
|
-
var lengthTester = function (value, length) {
|
|
42
|
-
return value.length === length;
|
|
43
|
-
};
|
|
44
|
-
exports.lengthTester = lengthTester;
|
|
45
|
-
var minLengthTester = function (value, minLength) {
|
|
46
|
-
return value.length >= minLength;
|
|
47
|
-
};
|
|
48
|
-
exports.minLengthTester = minLengthTester;
|
|
49
|
-
var maxLengthTester = function (value, maxLength) {
|
|
50
|
-
return value.length <= maxLength;
|
|
51
|
-
};
|
|
52
|
-
exports.maxLengthTester = maxLengthTester;
|
|
53
|
-
var booleanTester = function (value) {
|
|
54
|
-
return typeof value === 'boolean';
|
|
55
|
-
};
|
|
56
|
-
exports.booleanTester = booleanTester;
|
|
57
|
-
var numberTester = function (value) {
|
|
58
|
-
return typeof value === 'number' && !isNaN(value);
|
|
59
|
-
};
|
|
60
|
-
exports.numberTester = numberTester;
|
|
61
|
-
var integerTester = function (value) {
|
|
62
|
-
return +value.toFixed(0) === value;
|
|
63
|
-
};
|
|
64
|
-
exports.integerTester = integerTester;
|
|
65
|
-
var indexTester = function (value) {
|
|
66
|
-
return exports.integerTester(value) && value >= 0;
|
|
67
|
-
};
|
|
68
|
-
exports.indexTester = indexTester;
|
|
69
|
-
var minNumberTester = function (value, min) {
|
|
70
|
-
return value >= min;
|
|
71
|
-
};
|
|
72
|
-
exports.minNumberTester = minNumberTester;
|
|
73
|
-
var exclusiveMinNumberTester = function (value, min) {
|
|
74
|
-
return value > min;
|
|
75
|
-
};
|
|
76
|
-
exports.exclusiveMinNumberTester = exclusiveMinNumberTester;
|
|
77
|
-
var maxNumberTester = function (value, max) {
|
|
78
|
-
return value <= max;
|
|
79
|
-
};
|
|
80
|
-
exports.maxNumberTester = maxNumberTester;
|
|
81
|
-
var exclusiveMaxNumberTester = function (value, max) {
|
|
82
|
-
return value < max;
|
|
83
|
-
};
|
|
84
|
-
exports.exclusiveMaxNumberTester = exclusiveMaxNumberTester;
|
|
85
|
-
var stringTester = function (value) {
|
|
86
|
-
return typeof value === 'string';
|
|
87
|
-
};
|
|
88
|
-
exports.stringTester = stringTester;
|
|
89
|
-
var stringRegExpTester = function (value, regExp) {
|
|
90
|
-
var valid = false;
|
|
91
|
-
var _regExp = undefined;
|
|
92
|
-
if (exports.regExpTester(regExp)) {
|
|
93
|
-
_regExp = regExp;
|
|
94
|
-
}
|
|
95
|
-
else if (exports.stringTester(regExp)) {
|
|
96
|
-
_regExp = new RegExp(regExp);
|
|
97
|
-
}
|
|
98
|
-
if (!!_regExp && exports.regExpTester(_regExp)) {
|
|
99
|
-
valid = _regExp.test(value);
|
|
100
|
-
}
|
|
101
|
-
return valid;
|
|
102
|
-
};
|
|
103
|
-
exports.stringRegExpTester = stringRegExpTester;
|
|
104
|
-
// RFC 5322, 3.4.1. spec
|
|
105
|
-
var emailTester = function (value) {
|
|
106
|
-
var valid = false;
|
|
107
|
-
if (exports.stringTester(value) && exports.stringRegExpTester(value, /^.+@.+$/)) {
|
|
108
|
-
var valueAsString = value;
|
|
109
|
-
var atIndex = valueAsString.lastIndexOf('@');
|
|
110
|
-
var localPart = valueAsString.substr(0, atIndex);
|
|
111
|
-
var domain = valueAsString.substr(atIndex + 1);
|
|
112
|
-
// regular expression sources
|
|
113
|
-
// const aTextRegExpStr : string = '[-a-zA-Z0-9!#$%&\\\'*+/=?^_`{|}~]+';
|
|
114
|
-
var dotAtomRegExp = /^(\.?[-a-zA-Z0-9!#$%&'*+/=?^_`{|}~]+)*$/;
|
|
115
|
-
var quotedStringRegExp = /^"[\u0020-\u005b\u005d-\u007e\\]*"$/; // include space (\u005b)
|
|
116
|
-
var domainLiteralRegExp = /^\[[\u0020-\u005a\u005c-\u007e\\]*]$/;
|
|
117
|
-
var validLocalPart = localPart.length <= 64
|
|
118
|
-
&& (dotAtomRegExp.test(localPart)
|
|
119
|
-
|| quotedStringRegExp.test(localPart));
|
|
120
|
-
var validDomain = !domain.startsWith('.') && !domain.endsWith('.')
|
|
121
|
-
&& (dotAtomRegExp.test(domain)
|
|
122
|
-
|| domainLiteralRegExp.test(domain));
|
|
123
|
-
valid = validLocalPart && validDomain;
|
|
124
|
-
}
|
|
125
|
-
return valid;
|
|
126
|
-
};
|
|
127
|
-
exports.emailTester = emailTester;
|
|
128
|
-
// RFC 3339 (https://www.ietf.org/rfc/rfc3339.txt) : YYYY-MM-DDThh:mm:ss[.SSSZ]
|
|
129
|
-
var rfc3339Tester = function (value) {
|
|
130
|
-
return /^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T([0-1][0-9]|2[0-3])(:([0-5][0-9])){2}(\.\d+)?(Z|[-+]\d{2}:\d{2})?$/.test(value);
|
|
131
|
-
};
|
|
132
|
-
var iso8601DateTester = function (value) {
|
|
133
|
-
var years = '(\\d{4})';
|
|
134
|
-
var months = '(0[1-9]|1[0-2])';
|
|
135
|
-
var dates = '(0[1-9]|[1-2][0-9]|3[0-1])';
|
|
136
|
-
var dateOfYear = '(00[1-9]|0[1-9][0-9]|[1-2]\\d{2}|3[0-5]\\d|36[0-6])'; // 366 for leap year
|
|
137
|
-
var weeks = '(W(0[1-9]|[2-4][0-9]|5[0-3]))';
|
|
138
|
-
var days = '[1-7]';
|
|
139
|
-
return [
|
|
140
|
-
new RegExp("^[-+]?"
|
|
141
|
-
new RegExp("^"
|
|
142
|
-
new RegExp("^"
|
|
143
|
-
new RegExp("^--"
|
|
144
|
-
new RegExp("^"
|
|
145
|
-
new RegExp("^"
|
|
146
|
-
new RegExp("^"
|
|
147
|
-
].some(function (regExp) {
|
|
148
|
-
return regExp.test(value);
|
|
149
|
-
});
|
|
150
|
-
};
|
|
151
|
-
var iso8601TimeTester = function (value) {
|
|
152
|
-
var hours = '([0-1]\\d|2[0-3])';
|
|
153
|
-
var minutes = '([0-5]\\d)';
|
|
154
|
-
var seconds = '([0-5]\\d|60)'; // 60 for leap second
|
|
155
|
-
var ms = '(\\.[0-9]+)';
|
|
156
|
-
return [
|
|
157
|
-
new RegExp("^("
|
|
158
|
-
new RegExp("^(("
|
|
159
|
-
new RegExp("^(("
|
|
160
|
-
new RegExp("^(("
|
|
161
|
-
new RegExp("^("
|
|
162
|
-
new RegExp("^("
|
|
163
|
-
new RegExp("^("
|
|
164
|
-
]
|
|
165
|
-
.some(function (regExp) {
|
|
166
|
-
return regExp.test(value);
|
|
167
|
-
});
|
|
168
|
-
};
|
|
169
|
-
var iso8601DateTimeTester = function (value) {
|
|
170
|
-
var valid = false;
|
|
171
|
-
if (/.+T.+/.test(value) // should have 1 'T'
|
|
172
|
-
&& /(Z|[-+]\d{2}:?\d{2})$/.test(value) // should end with 'Z' or timezone
|
|
173
|
-
) {
|
|
174
|
-
var _a = value.split('T'), date = _a[0], time = _a[1];
|
|
175
|
-
if (time.endsWith('Z')) {
|
|
176
|
-
time = time.replace('Z', '');
|
|
177
|
-
}
|
|
178
|
-
else {
|
|
179
|
-
var timezoneStartIndex = time.includes('+') ? time.indexOf('+') : time.indexOf('-');
|
|
180
|
-
time = time.substr(0, timezoneStartIndex);
|
|
181
|
-
}
|
|
182
|
-
valid = iso8601DateTester(date) && iso8601TimeTester(time);
|
|
183
|
-
}
|
|
184
|
-
return valid;
|
|
185
|
-
};
|
|
186
|
-
var dateFormatTester = function (value) {
|
|
187
|
-
return iso8601DateTester(value);
|
|
188
|
-
};
|
|
189
|
-
exports.dateFormatTester = dateFormatTester;
|
|
190
|
-
var timeFormatTester = function (value) {
|
|
191
|
-
return iso8601TimeTester(value);
|
|
192
|
-
};
|
|
193
|
-
exports.timeFormatTester = timeFormatTester;
|
|
194
|
-
var dateTimeFormatTester = function (value) {
|
|
195
|
-
return rfc3339Tester(value) || iso8601DateTimeTester(value);
|
|
196
|
-
};
|
|
197
|
-
exports.dateTimeFormatTester = dateTimeFormatTester;
|
|
198
|
-
// // with port
|
|
199
|
-
// export const urlTester = (value : any) : boolean => {
|
|
200
|
-
// return stringTester(value)
|
|
201
|
-
// && /^(?:(?:https?|ftp):\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,}))\.?)(?::\d{2,5})?(?:[/?#]\S*)?$/i.test(value);
|
|
202
|
-
// };
|
|
203
|
-
//
|
|
204
|
-
// // TODO: with port
|
|
205
|
-
// export const ipv4Tester = (value : any) : boolean => {
|
|
206
|
-
// return stringTester(value)
|
|
207
|
-
// && /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(value);
|
|
208
|
-
// };
|
|
209
|
-
//
|
|
210
|
-
// export const ipv6Tester = (value : any) : boolean => {
|
|
211
|
-
// return stringTester(value)
|
|
212
|
-
// && /^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*(\/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?$;/.test(value);
|
|
213
|
-
// };
|
|
214
|
-
//
|
|
215
|
-
// export const ipTester = (value : any) : boolean => {
|
|
216
|
-
// return ipv4Tester(value) || ipv6Tester(value);
|
|
217
|
-
// };
|
|
218
|
-
var objectTester = function (value) {
|
|
219
|
-
return typeof value === 'object';
|
|
220
|
-
};
|
|
221
|
-
exports.objectTester = objectTester;
|
|
222
|
-
var hasPropertyTester = function (value) {
|
|
223
|
-
return Object.keys(value).length > 0;
|
|
224
|
-
};
|
|
225
|
-
exports.hasPropertyTester = hasPropertyTester;
|
|
226
|
-
var dateTester = function (value) {
|
|
227
|
-
return exports.objectTester(value)
|
|
228
|
-
&& value !== null
|
|
229
|
-
&& typeof value.getFullYear === 'function'
|
|
230
|
-
&& !isNaN(value.getFullYear());
|
|
231
|
-
};
|
|
232
|
-
exports.dateTester = dateTester;
|
|
233
|
-
var minDateTester = function (value, min) {
|
|
234
|
-
return +value >= +min;
|
|
235
|
-
};
|
|
236
|
-
exports.minDateTester = minDateTester;
|
|
237
|
-
var exclusiveMinDateTester = function (value, min) {
|
|
238
|
-
return +value > +min;
|
|
239
|
-
};
|
|
240
|
-
exports.exclusiveMinDateTester = exclusiveMinDateTester;
|
|
241
|
-
var maxDateTester = function (value, max) {
|
|
242
|
-
return +value <= +max;
|
|
243
|
-
};
|
|
244
|
-
exports.maxDateTester = maxDateTester;
|
|
245
|
-
var exclusiveMaxDateTester = function (value, max) {
|
|
246
|
-
return +value < +max;
|
|
247
|
-
};
|
|
248
|
-
exports.exclusiveMaxDateTester = exclusiveMaxDateTester;
|
|
249
|
-
var arrayTester = function (value) {
|
|
250
|
-
return Array.isArray(value);
|
|
251
|
-
};
|
|
252
|
-
exports.arrayTester = arrayTester;
|
|
253
|
-
var arrayTypeOfTester = function (array, type) {
|
|
254
|
-
return array.every(function (item) {
|
|
255
|
-
return exports.typeTester(item, type);
|
|
256
|
-
});
|
|
257
|
-
};
|
|
258
|
-
exports.arrayTypeOfTester = arrayTypeOfTester;
|
|
259
|
-
var uniqueItemsTester = function (array) {
|
|
260
|
-
return array.every(function (item) {
|
|
261
|
-
return array.filter(function (target) { return target === item; }).length === 1;
|
|
262
|
-
});
|
|
263
|
-
};
|
|
264
|
-
exports.uniqueItemsTester = uniqueItemsTester;
|
|
265
|
-
var regExpTester = function (value) {
|
|
266
|
-
return value instanceof RegExp;
|
|
267
|
-
};
|
|
268
|
-
exports.regExpTester = regExpTester;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.regExpTester = exports.uniqueItemsTester = exports.arrayTypeOfTester = exports.arrayTester = exports.exclusiveMaxDateTester = exports.maxDateTester = exports.exclusiveMinDateTester = exports.minDateTester = exports.dateTester = exports.hasPropertyTester = exports.objectTester = exports.dateTimeFormatTester = exports.timeFormatTester = exports.dateFormatTester = exports.emailTester = exports.stringRegExpTester = exports.stringTester = exports.exclusiveMaxNumberTester = exports.maxNumberTester = exports.exclusiveMinNumberTester = exports.minNumberTester = exports.indexTester = exports.integerTester = exports.numberTester = exports.booleanTester = exports.maxLengthTester = exports.minLengthTester = exports.lengthTester = exports.enumTester = exports.definedTester = exports.typeTester = void 0;
|
|
4
|
+
var constants_1 = require("./constants");
|
|
5
|
+
var typeTester = function (value, type) {
|
|
6
|
+
var valid;
|
|
7
|
+
switch (type) {
|
|
8
|
+
case constants_1.DataType.BOOLEAN:
|
|
9
|
+
valid = (0, exports.booleanTester)(value);
|
|
10
|
+
break;
|
|
11
|
+
case constants_1.DataType.NUMBER:
|
|
12
|
+
valid = (0, exports.numberTester)(value);
|
|
13
|
+
break;
|
|
14
|
+
case constants_1.DataType.STRING:
|
|
15
|
+
valid = (0, exports.stringTester)(value);
|
|
16
|
+
break;
|
|
17
|
+
case constants_1.DataType.OBJECT:
|
|
18
|
+
valid = (0, exports.objectTester)(value);
|
|
19
|
+
break;
|
|
20
|
+
case constants_1.DataType.DATE:
|
|
21
|
+
valid = (0, exports.dateTester)(value);
|
|
22
|
+
break;
|
|
23
|
+
case constants_1.DataType.REGEXP:
|
|
24
|
+
valid = (0, exports.regExpTester)(value);
|
|
25
|
+
break;
|
|
26
|
+
case constants_1.DataType.ARRAY:
|
|
27
|
+
valid = (0, exports.arrayTester)(value);
|
|
28
|
+
break;
|
|
29
|
+
}
|
|
30
|
+
return valid;
|
|
31
|
+
};
|
|
32
|
+
exports.typeTester = typeTester;
|
|
33
|
+
var definedTester = function (value) {
|
|
34
|
+
return value !== undefined;
|
|
35
|
+
};
|
|
36
|
+
exports.definedTester = definedTester;
|
|
37
|
+
var enumTester = function (value, arr) {
|
|
38
|
+
return arr.includes(value);
|
|
39
|
+
};
|
|
40
|
+
exports.enumTester = enumTester;
|
|
41
|
+
var lengthTester = function (value, length) {
|
|
42
|
+
return value.length === length;
|
|
43
|
+
};
|
|
44
|
+
exports.lengthTester = lengthTester;
|
|
45
|
+
var minLengthTester = function (value, minLength) {
|
|
46
|
+
return value.length >= minLength;
|
|
47
|
+
};
|
|
48
|
+
exports.minLengthTester = minLengthTester;
|
|
49
|
+
var maxLengthTester = function (value, maxLength) {
|
|
50
|
+
return value.length <= maxLength;
|
|
51
|
+
};
|
|
52
|
+
exports.maxLengthTester = maxLengthTester;
|
|
53
|
+
var booleanTester = function (value) {
|
|
54
|
+
return typeof value === 'boolean';
|
|
55
|
+
};
|
|
56
|
+
exports.booleanTester = booleanTester;
|
|
57
|
+
var numberTester = function (value) {
|
|
58
|
+
return typeof value === 'number' && !isNaN(value);
|
|
59
|
+
};
|
|
60
|
+
exports.numberTester = numberTester;
|
|
61
|
+
var integerTester = function (value) {
|
|
62
|
+
return +value.toFixed(0) === value;
|
|
63
|
+
};
|
|
64
|
+
exports.integerTester = integerTester;
|
|
65
|
+
var indexTester = function (value) {
|
|
66
|
+
return (0, exports.integerTester)(value) && value >= 0;
|
|
67
|
+
};
|
|
68
|
+
exports.indexTester = indexTester;
|
|
69
|
+
var minNumberTester = function (value, min) {
|
|
70
|
+
return value >= min;
|
|
71
|
+
};
|
|
72
|
+
exports.minNumberTester = minNumberTester;
|
|
73
|
+
var exclusiveMinNumberTester = function (value, min) {
|
|
74
|
+
return value > min;
|
|
75
|
+
};
|
|
76
|
+
exports.exclusiveMinNumberTester = exclusiveMinNumberTester;
|
|
77
|
+
var maxNumberTester = function (value, max) {
|
|
78
|
+
return value <= max;
|
|
79
|
+
};
|
|
80
|
+
exports.maxNumberTester = maxNumberTester;
|
|
81
|
+
var exclusiveMaxNumberTester = function (value, max) {
|
|
82
|
+
return value < max;
|
|
83
|
+
};
|
|
84
|
+
exports.exclusiveMaxNumberTester = exclusiveMaxNumberTester;
|
|
85
|
+
var stringTester = function (value) {
|
|
86
|
+
return typeof value === 'string';
|
|
87
|
+
};
|
|
88
|
+
exports.stringTester = stringTester;
|
|
89
|
+
var stringRegExpTester = function (value, regExp) {
|
|
90
|
+
var valid = false;
|
|
91
|
+
var _regExp = undefined;
|
|
92
|
+
if ((0, exports.regExpTester)(regExp)) {
|
|
93
|
+
_regExp = regExp;
|
|
94
|
+
}
|
|
95
|
+
else if ((0, exports.stringTester)(regExp)) {
|
|
96
|
+
_regExp = new RegExp(regExp);
|
|
97
|
+
}
|
|
98
|
+
if (!!_regExp && (0, exports.regExpTester)(_regExp)) {
|
|
99
|
+
valid = _regExp.test(value);
|
|
100
|
+
}
|
|
101
|
+
return valid;
|
|
102
|
+
};
|
|
103
|
+
exports.stringRegExpTester = stringRegExpTester;
|
|
104
|
+
// RFC 5322, 3.4.1. spec
|
|
105
|
+
var emailTester = function (value) {
|
|
106
|
+
var valid = false;
|
|
107
|
+
if ((0, exports.stringTester)(value) && (0, exports.stringRegExpTester)(value, /^.+@.+$/)) {
|
|
108
|
+
var valueAsString = value;
|
|
109
|
+
var atIndex = valueAsString.lastIndexOf('@');
|
|
110
|
+
var localPart = valueAsString.substr(0, atIndex);
|
|
111
|
+
var domain = valueAsString.substr(atIndex + 1);
|
|
112
|
+
// regular expression sources
|
|
113
|
+
// const aTextRegExpStr : string = '[-a-zA-Z0-9!#$%&\\\'*+/=?^_`{|}~]+';
|
|
114
|
+
var dotAtomRegExp = /^(\.?[-a-zA-Z0-9!#$%&'*+/=?^_`{|}~]+)*$/;
|
|
115
|
+
var quotedStringRegExp = /^"[\u0020-\u005b\u005d-\u007e\\]*"$/; // include space (\u005b)
|
|
116
|
+
var domainLiteralRegExp = /^\[[\u0020-\u005a\u005c-\u007e\\]*]$/;
|
|
117
|
+
var validLocalPart = localPart.length <= 64
|
|
118
|
+
&& (dotAtomRegExp.test(localPart)
|
|
119
|
+
|| quotedStringRegExp.test(localPart));
|
|
120
|
+
var validDomain = !domain.startsWith('.') && !domain.endsWith('.')
|
|
121
|
+
&& (dotAtomRegExp.test(domain)
|
|
122
|
+
|| domainLiteralRegExp.test(domain));
|
|
123
|
+
valid = validLocalPart && validDomain;
|
|
124
|
+
}
|
|
125
|
+
return valid;
|
|
126
|
+
};
|
|
127
|
+
exports.emailTester = emailTester;
|
|
128
|
+
// RFC 3339 (https://www.ietf.org/rfc/rfc3339.txt) : YYYY-MM-DDThh:mm:ss[.SSSZ]
|
|
129
|
+
var rfc3339Tester = function (value) {
|
|
130
|
+
return /^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T([0-1][0-9]|2[0-3])(:([0-5][0-9])){2}(\.\d+)?(Z|[-+]\d{2}:\d{2})?$/.test(value);
|
|
131
|
+
};
|
|
132
|
+
var iso8601DateTester = function (value) {
|
|
133
|
+
var years = '(\\d{4})';
|
|
134
|
+
var months = '(0[1-9]|1[0-2])';
|
|
135
|
+
var dates = '(0[1-9]|[1-2][0-9]|3[0-1])';
|
|
136
|
+
var dateOfYear = '(00[1-9]|0[1-9][0-9]|[1-2]\\d{2}|3[0-5]\\d|36[0-6])'; // 366 for leap year
|
|
137
|
+
var weeks = '(W(0[1-9]|[2-4][0-9]|5[0-3]))';
|
|
138
|
+
var days = '[1-7]';
|
|
139
|
+
return [
|
|
140
|
+
new RegExp("^[-+]?".concat(years, "$")),
|
|
141
|
+
new RegExp("^".concat(years, "-").concat(months, "(-").concat(dates, ")?$")),
|
|
142
|
+
new RegExp("^".concat(years).concat(months).concat(dates, "$")),
|
|
143
|
+
new RegExp("^--".concat(months, "-?").concat(dates, "$")),
|
|
144
|
+
new RegExp("^".concat(years, "-").concat(weeks, "(-").concat(days, ")?$")),
|
|
145
|
+
new RegExp("^".concat(years).concat(weeks, "(").concat(days, ")?$")),
|
|
146
|
+
new RegExp("^".concat(years, "-?").concat(dateOfYear, "$")) // ordinal dates : YYYY-DDD, YYYYDDD
|
|
147
|
+
].some(function (regExp) {
|
|
148
|
+
return regExp.test(value);
|
|
149
|
+
});
|
|
150
|
+
};
|
|
151
|
+
var iso8601TimeTester = function (value) {
|
|
152
|
+
var hours = '([0-1]\\d|2[0-3])';
|
|
153
|
+
var minutes = '([0-5]\\d)';
|
|
154
|
+
var seconds = '([0-5]\\d|60)'; // 60 for leap second
|
|
155
|
+
var ms = '(\\.[0-9]+)';
|
|
156
|
+
return [
|
|
157
|
+
new RegExp("^(".concat(hours, "|24)$")),
|
|
158
|
+
new RegExp("^((".concat(hours, ":").concat(minutes, ")|24:00)$")),
|
|
159
|
+
new RegExp("^((".concat(hours, ":").concat(minutes, ":").concat(seconds, ")|24:00:00)$")),
|
|
160
|
+
new RegExp("^((".concat(hours, ":").concat(minutes, ":").concat(seconds).concat(ms, ")|24:00:00.0+)$")),
|
|
161
|
+
new RegExp("^(".concat(hours).concat(minutes, "|2400)$")),
|
|
162
|
+
new RegExp("^(".concat(hours).concat(minutes).concat(seconds, "|240000)$")),
|
|
163
|
+
new RegExp("^(".concat(hours).concat(minutes).concat(seconds).concat(ms, "|240000.0+)$")) // hhmmss.sss
|
|
164
|
+
]
|
|
165
|
+
.some(function (regExp) {
|
|
166
|
+
return regExp.test(value);
|
|
167
|
+
});
|
|
168
|
+
};
|
|
169
|
+
var iso8601DateTimeTester = function (value) {
|
|
170
|
+
var valid = false;
|
|
171
|
+
if (/.+T.+/.test(value) // should have 1 'T'
|
|
172
|
+
&& /(Z|[-+]\d{2}:?\d{2})$/.test(value) // should end with 'Z' or timezone
|
|
173
|
+
) {
|
|
174
|
+
var _a = value.split('T'), date = _a[0], time = _a[1];
|
|
175
|
+
if (time.endsWith('Z')) {
|
|
176
|
+
time = time.replace('Z', '');
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
var timezoneStartIndex = time.includes('+') ? time.indexOf('+') : time.indexOf('-');
|
|
180
|
+
time = time.substr(0, timezoneStartIndex);
|
|
181
|
+
}
|
|
182
|
+
valid = iso8601DateTester(date) && iso8601TimeTester(time);
|
|
183
|
+
}
|
|
184
|
+
return valid;
|
|
185
|
+
};
|
|
186
|
+
var dateFormatTester = function (value) {
|
|
187
|
+
return iso8601DateTester(value);
|
|
188
|
+
};
|
|
189
|
+
exports.dateFormatTester = dateFormatTester;
|
|
190
|
+
var timeFormatTester = function (value) {
|
|
191
|
+
return iso8601TimeTester(value);
|
|
192
|
+
};
|
|
193
|
+
exports.timeFormatTester = timeFormatTester;
|
|
194
|
+
var dateTimeFormatTester = function (value) {
|
|
195
|
+
return rfc3339Tester(value) || iso8601DateTimeTester(value);
|
|
196
|
+
};
|
|
197
|
+
exports.dateTimeFormatTester = dateTimeFormatTester;
|
|
198
|
+
// // with port
|
|
199
|
+
// export const urlTester = (value : any) : boolean => {
|
|
200
|
+
// return stringTester(value)
|
|
201
|
+
// && /^(?:(?:https?|ftp):\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,}))\.?)(?::\d{2,5})?(?:[/?#]\S*)?$/i.test(value);
|
|
202
|
+
// };
|
|
203
|
+
//
|
|
204
|
+
// // TODO: with port
|
|
205
|
+
// export const ipv4Tester = (value : any) : boolean => {
|
|
206
|
+
// return stringTester(value)
|
|
207
|
+
// && /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(value);
|
|
208
|
+
// };
|
|
209
|
+
//
|
|
210
|
+
// export const ipv6Tester = (value : any) : boolean => {
|
|
211
|
+
// return stringTester(value)
|
|
212
|
+
// && /^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*(\/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?$;/.test(value);
|
|
213
|
+
// };
|
|
214
|
+
//
|
|
215
|
+
// export const ipTester = (value : any) : boolean => {
|
|
216
|
+
// return ipv4Tester(value) || ipv6Tester(value);
|
|
217
|
+
// };
|
|
218
|
+
var objectTester = function (value) {
|
|
219
|
+
return typeof value === 'object';
|
|
220
|
+
};
|
|
221
|
+
exports.objectTester = objectTester;
|
|
222
|
+
var hasPropertyTester = function (value) {
|
|
223
|
+
return Object.keys(value).length > 0;
|
|
224
|
+
};
|
|
225
|
+
exports.hasPropertyTester = hasPropertyTester;
|
|
226
|
+
var dateTester = function (value) {
|
|
227
|
+
return (0, exports.objectTester)(value)
|
|
228
|
+
&& value !== null
|
|
229
|
+
&& typeof value.getFullYear === 'function'
|
|
230
|
+
&& !isNaN(value.getFullYear());
|
|
231
|
+
};
|
|
232
|
+
exports.dateTester = dateTester;
|
|
233
|
+
var minDateTester = function (value, min) {
|
|
234
|
+
return +value >= +min;
|
|
235
|
+
};
|
|
236
|
+
exports.minDateTester = minDateTester;
|
|
237
|
+
var exclusiveMinDateTester = function (value, min) {
|
|
238
|
+
return +value > +min;
|
|
239
|
+
};
|
|
240
|
+
exports.exclusiveMinDateTester = exclusiveMinDateTester;
|
|
241
|
+
var maxDateTester = function (value, max) {
|
|
242
|
+
return +value <= +max;
|
|
243
|
+
};
|
|
244
|
+
exports.maxDateTester = maxDateTester;
|
|
245
|
+
var exclusiveMaxDateTester = function (value, max) {
|
|
246
|
+
return +value < +max;
|
|
247
|
+
};
|
|
248
|
+
exports.exclusiveMaxDateTester = exclusiveMaxDateTester;
|
|
249
|
+
var arrayTester = function (value) {
|
|
250
|
+
return Array.isArray(value);
|
|
251
|
+
};
|
|
252
|
+
exports.arrayTester = arrayTester;
|
|
253
|
+
var arrayTypeOfTester = function (array, type) {
|
|
254
|
+
return array.every(function (item) {
|
|
255
|
+
return (0, exports.typeTester)(item, type);
|
|
256
|
+
});
|
|
257
|
+
};
|
|
258
|
+
exports.arrayTypeOfTester = arrayTypeOfTester;
|
|
259
|
+
var uniqueItemsTester = function (array) {
|
|
260
|
+
return array.every(function (item) {
|
|
261
|
+
return array.filter(function (target) { return target === item; }).length === 1;
|
|
262
|
+
});
|
|
263
|
+
};
|
|
264
|
+
exports.uniqueItemsTester = uniqueItemsTester;
|
|
265
|
+
var regExpTester = function (value) {
|
|
266
|
+
return value instanceof RegExp;
|
|
267
|
+
};
|
|
268
|
+
exports.regExpTester = regExpTester;
|
|
269
269
|
//# sourceMappingURL=tester.js.map
|
package/build/tester.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tester.js","sourceRoot":"","sources":["../src/tester.ts"],"names":[],"mappings":";;;AAAA,yCAAuC;AAEhC,IAAM,UAAU,GAAG,UAAC,KAAW,EAAE,IAAe;IACtD,IAAI,KAAe,CAAC;IAEpB,QAAQ,IAAI,EAAE;QACb,KAAK,oBAAQ,CAAC,OAAO;YACpB,KAAK,GAAG,qBAAa,
|
|
1
|
+
{"version":3,"file":"tester.js","sourceRoot":"","sources":["../src/tester.ts"],"names":[],"mappings":"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"}
|
package/build/util.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const clone: (obj: any) => any;
|
|
1
|
+
export declare const clone: (obj: any) => any;
|