justus 0.0.1 → 0.0.5
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/README.md +153 -34
- package/dist/dts-generator.js +166 -0
- package/dist/dts-generator.js.map +6 -0
- package/dist/dts-generator.mjs +158 -0
- package/dist/dts-generator.mjs.map +6 -0
- package/dist/{index.cjs → index.js} +246 -124
- package/dist/index.js.map +6 -0
- package/dist/index.mjs +218 -121
- package/dist/index.mjs.map +2 -2
- package/dts-generator.d.ts +13 -0
- package/{dist/index.d.ts → index.d.ts} +171 -40
- package/package.json +27 -16
- package/src/dts-generator.ts +276 -0
- package/src/errors.ts +3 -3
- package/src/index.ts +32 -8
- package/src/schema.ts +6 -6
- package/src/types.ts +15 -6
- package/src/validators/array.ts +14 -12
- package/src/validators/date.ts +3 -3
- package/src/validators/number.ts +54 -22
- package/src/validators/object.ts +67 -48
- package/src/validators/string.ts +25 -11
- package/src/validators/tuple.ts +17 -13
- package/src/validators/union.ts +3 -3
- package/src/validators/url.ts +140 -0
- package/dist/index.cjs.map +0 -6
package/dist/index.mjs
CHANGED
|
@@ -30,28 +30,6 @@ var __objRest = (source, exclude) => {
|
|
|
30
30
|
}
|
|
31
31
|
return target;
|
|
32
32
|
};
|
|
33
|
-
var __publicField = (obj, key, value) => {
|
|
34
|
-
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
35
|
-
return value;
|
|
36
|
-
};
|
|
37
|
-
var __accessCheck = (obj, member, msg) => {
|
|
38
|
-
if (!member.has(obj))
|
|
39
|
-
throw TypeError("Cannot " + msg);
|
|
40
|
-
};
|
|
41
|
-
var __privateGet = (obj, member, getter) => {
|
|
42
|
-
__accessCheck(obj, member, "read from private field");
|
|
43
|
-
return getter ? getter.call(obj) : member.get(obj);
|
|
44
|
-
};
|
|
45
|
-
var __privateAdd = (obj, member, value) => {
|
|
46
|
-
if (member.has(obj))
|
|
47
|
-
throw TypeError("Cannot add the same private member more than once");
|
|
48
|
-
member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
49
|
-
};
|
|
50
|
-
var __privateSet = (obj, member, value, setter) => {
|
|
51
|
-
__accessCheck(obj, member, "write to private field");
|
|
52
|
-
setter ? setter.call(obj, value) : member.set(obj, value);
|
|
53
|
-
return value;
|
|
54
|
-
};
|
|
55
33
|
|
|
56
34
|
// src/errors.ts
|
|
57
35
|
function pathToString(path) {
|
|
@@ -89,8 +67,8 @@ var ValidationError = class extends Error {
|
|
|
89
67
|
};
|
|
90
68
|
var ValidationErrorBuilder = class {
|
|
91
69
|
errors = [];
|
|
92
|
-
record(error, key) {
|
|
93
|
-
const path =
|
|
70
|
+
record(error, ...key) {
|
|
71
|
+
const path = [...key];
|
|
94
72
|
if (error instanceof ValidationError) {
|
|
95
73
|
error.errors.forEach(({ path: subpath, message }) => {
|
|
96
74
|
this.errors.push({ path: [...path, ...subpath], message });
|
|
@@ -154,24 +132,26 @@ var nullValidator = new ConstantValidator(null);
|
|
|
154
132
|
|
|
155
133
|
// src/validators/tuple.ts
|
|
156
134
|
var TupleValidator = class extends Validator {
|
|
135
|
+
members;
|
|
157
136
|
tuple;
|
|
158
|
-
#validators = [];
|
|
159
137
|
constructor(tuple2) {
|
|
160
138
|
super();
|
|
161
|
-
|
|
139
|
+
const members = [];
|
|
162
140
|
for (const item of tuple2) {
|
|
163
141
|
if (item === null) {
|
|
164
|
-
|
|
142
|
+
members.push({ single: true, validator: nullValidator });
|
|
165
143
|
} else if (typeof item === "object" && restValidator in item) {
|
|
166
|
-
|
|
144
|
+
members.push({ single: false, validator: item[restValidator] });
|
|
167
145
|
} else {
|
|
168
|
-
|
|
146
|
+
members.push({ single: true, validator: getValidator(item) });
|
|
169
147
|
}
|
|
170
148
|
}
|
|
149
|
+
this.members = members;
|
|
150
|
+
this.tuple = tuple2;
|
|
171
151
|
}
|
|
172
152
|
validate(value, options) {
|
|
173
153
|
assertValidation(Array.isArray(value), 'Value is not an "array"');
|
|
174
|
-
if (this
|
|
154
|
+
if (this.members.length === 0) {
|
|
175
155
|
const size = value.length;
|
|
176
156
|
assertValidation(size === 0, `Found ${size} element${size === 1 ? "" : "s"} validating empty tuple`);
|
|
177
157
|
return value;
|
|
@@ -179,24 +159,24 @@ var TupleValidator = class extends Validator {
|
|
|
179
159
|
const clone = new Array(value.length);
|
|
180
160
|
let needle = 0;
|
|
181
161
|
let haystack = 0;
|
|
182
|
-
let { single, validator } = this
|
|
183
|
-
while (needle < this
|
|
162
|
+
let { single, validator } = this.members[needle];
|
|
163
|
+
while (needle < this.members.length && haystack < value.length) {
|
|
184
164
|
try {
|
|
185
165
|
clone[haystack] = validator.validate(value[haystack], options);
|
|
186
166
|
if (single)
|
|
187
|
-
({ single, validator } = this
|
|
167
|
+
({ single, validator } = this.members[++needle] || {});
|
|
188
168
|
haystack++;
|
|
189
169
|
} catch (error) {
|
|
190
170
|
if (single)
|
|
191
171
|
throw new ValidationError(error, [haystack]);
|
|
192
172
|
else
|
|
193
|
-
({ single, validator } = this
|
|
173
|
+
({ single, validator } = this.members[++needle] || {});
|
|
194
174
|
}
|
|
195
175
|
}
|
|
196
|
-
while (needle < this
|
|
176
|
+
while (needle < this.members.length && this.members[needle].single === false) {
|
|
197
177
|
needle++;
|
|
198
178
|
}
|
|
199
|
-
const missing = this
|
|
179
|
+
const missing = this.members.length - needle;
|
|
200
180
|
if (missing === 1 && single) {
|
|
201
181
|
throw new ValidationError("Tuple defines 1 missing validation");
|
|
202
182
|
} else if (missing > 1) {
|
|
@@ -219,26 +199,35 @@ function makeTupleRestIterable(create) {
|
|
|
219
199
|
}
|
|
220
200
|
|
|
221
201
|
// src/validators/object.ts
|
|
202
|
+
var AnyObjectValidator = class extends Validator {
|
|
203
|
+
validate(value) {
|
|
204
|
+
assertValidation(typeof value == "object", 'Value is not an "object"');
|
|
205
|
+
assertValidation(value !== null, 'Value is "null"');
|
|
206
|
+
return value;
|
|
207
|
+
}
|
|
208
|
+
};
|
|
222
209
|
var ObjectValidator = class extends Validator {
|
|
223
210
|
schema;
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
#optionalProperties = {};
|
|
227
|
-
#neverProperties = /* @__PURE__ */ new Set();
|
|
211
|
+
properties = /* @__PURE__ */ new Map();
|
|
212
|
+
additionalProperties;
|
|
228
213
|
constructor(schema) {
|
|
229
214
|
super();
|
|
230
215
|
var _a;
|
|
231
216
|
const _b = schema, { [_a = additionalValidator]: additional } = _b, properties = __objRest(_b, [__restKey(_a)]);
|
|
232
217
|
if (additional)
|
|
233
|
-
this
|
|
218
|
+
this.additionalProperties = getValidator(additional);
|
|
234
219
|
for (const key of Object.keys(properties)) {
|
|
235
220
|
const definition = properties[key];
|
|
236
221
|
if (definition === never) {
|
|
237
|
-
this
|
|
222
|
+
this.properties.set(key, void 0);
|
|
238
223
|
} else if (isModifier(definition)) {
|
|
239
|
-
(
|
|
224
|
+
this.properties.set(key, {
|
|
225
|
+
validator: definition[modifierValidator],
|
|
226
|
+
readonly: definition.readonly,
|
|
227
|
+
optional: definition.optional
|
|
228
|
+
});
|
|
240
229
|
} else {
|
|
241
|
-
this
|
|
230
|
+
this.properties.set(key, { validator: getValidator(definition) });
|
|
242
231
|
}
|
|
243
232
|
}
|
|
244
233
|
this.schema = schema;
|
|
@@ -249,43 +238,29 @@ var ObjectValidator = class extends Validator {
|
|
|
249
238
|
const record = value;
|
|
250
239
|
const builder = new ValidationErrorBuilder();
|
|
251
240
|
const clone = {};
|
|
252
|
-
for (const [key,
|
|
253
|
-
|
|
254
|
-
|
|
241
|
+
for (const [key, property] of this.properties.entries()) {
|
|
242
|
+
const { validator, optional: optional2 } = property || {};
|
|
243
|
+
if (!validator) {
|
|
244
|
+
if (record[key] === void 0)
|
|
245
|
+
continue;
|
|
246
|
+
if (options.stripForbiddenProperties)
|
|
247
|
+
continue;
|
|
248
|
+
builder.record("Forbidden property", key);
|
|
255
249
|
continue;
|
|
256
250
|
}
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
builder.record(error, key);
|
|
261
|
-
}
|
|
262
|
-
}
|
|
263
|
-
for (const [key, validator] of Object.entries(this.#optionalProperties)) {
|
|
264
|
-
if (record[key] === void 0)
|
|
251
|
+
if (record[key] === void 0) {
|
|
252
|
+
if (!optional2)
|
|
253
|
+
builder.record("Required property missing", key);
|
|
265
254
|
continue;
|
|
255
|
+
}
|
|
266
256
|
try {
|
|
267
257
|
clone[key] = validator.validate(record[key], options);
|
|
268
258
|
} catch (error) {
|
|
269
259
|
builder.record(error, key);
|
|
270
260
|
}
|
|
271
261
|
}
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
continue;
|
|
275
|
-
if (options.stripForbiddenProperties)
|
|
276
|
-
continue;
|
|
277
|
-
builder.record("Forbidden property", key);
|
|
278
|
-
}
|
|
279
|
-
const additional = this.#additionalProperties;
|
|
280
|
-
const additionalKeys = Object.keys(record).filter((k) => {
|
|
281
|
-
if (k in this.#requiredProperties)
|
|
282
|
-
return false;
|
|
283
|
-
if (k in this.#optionalProperties)
|
|
284
|
-
return false;
|
|
285
|
-
if (this.#neverProperties.has(k))
|
|
286
|
-
return false;
|
|
287
|
-
return true;
|
|
288
|
-
});
|
|
262
|
+
const additionalKeys = Object.keys(record).filter((k) => !this.properties.has(k));
|
|
263
|
+
const additional = this.additionalProperties;
|
|
289
264
|
if (additional) {
|
|
290
265
|
additionalKeys.forEach((key) => {
|
|
291
266
|
if (record[key] === void 0)
|
|
@@ -305,19 +280,17 @@ var ObjectValidator = class extends Validator {
|
|
|
305
280
|
return builder.assert(clone);
|
|
306
281
|
}
|
|
307
282
|
};
|
|
308
|
-
var anyObjectValidator = new
|
|
309
|
-
validate(value) {
|
|
310
|
-
assertValidation(typeof value == "object", 'Value is not an "object"');
|
|
311
|
-
assertValidation(value !== null, 'Value is "null"');
|
|
312
|
-
return value;
|
|
313
|
-
}
|
|
314
|
-
}();
|
|
283
|
+
var anyObjectValidator = new AnyObjectValidator();
|
|
315
284
|
function _object(schema) {
|
|
316
285
|
if (!schema)
|
|
317
286
|
return anyObjectValidator;
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
287
|
+
const validator = new ObjectValidator(schema);
|
|
288
|
+
function* iterator() {
|
|
289
|
+
yield { [restValidator]: validator };
|
|
290
|
+
}
|
|
291
|
+
return Object.defineProperties(schema, {
|
|
292
|
+
[schemaValidator]: { value: validator, enumerable: false },
|
|
293
|
+
[Symbol.iterator]: { value: iterator, enumerable: false }
|
|
321
294
|
});
|
|
322
295
|
}
|
|
323
296
|
var object = makeTupleRestIterable(_object);
|
|
@@ -412,6 +385,12 @@ function allOf(...args) {
|
|
|
412
385
|
}
|
|
413
386
|
|
|
414
387
|
// src/validators/array.ts
|
|
388
|
+
var AnyArrayValidator = class extends Validator {
|
|
389
|
+
validate(value, options) {
|
|
390
|
+
assertValidation(Array.isArray(value), 'Value is not an "array"');
|
|
391
|
+
return [...value];
|
|
392
|
+
}
|
|
393
|
+
};
|
|
415
394
|
var ArrayValidator = class extends Validator {
|
|
416
395
|
maxItems;
|
|
417
396
|
minItems;
|
|
@@ -456,12 +435,7 @@ var ArrayValidator = class extends Validator {
|
|
|
456
435
|
return builder.assert(clone);
|
|
457
436
|
}
|
|
458
437
|
};
|
|
459
|
-
var anyArrayValidator = new
|
|
460
|
-
validate(value) {
|
|
461
|
-
assertValidation(Array.isArray(value), 'Value is not an "array"');
|
|
462
|
-
return value;
|
|
463
|
-
}
|
|
464
|
-
}();
|
|
438
|
+
var anyArrayValidator = new AnyArrayValidator();
|
|
465
439
|
function _array(options) {
|
|
466
440
|
if (!options)
|
|
467
441
|
return anyArrayValidator;
|
|
@@ -529,17 +503,33 @@ function _date(constraints) {
|
|
|
529
503
|
var date = makeTupleRestIterable(_date);
|
|
530
504
|
|
|
531
505
|
// src/validators/number.ts
|
|
532
|
-
var
|
|
533
|
-
var
|
|
506
|
+
var PRECISION = 6;
|
|
507
|
+
var MULTIPLIER = Math.pow(10, PRECISION);
|
|
508
|
+
function countDecimals(n) {
|
|
509
|
+
const match = n.toExponential().match(/^\d+(\.\d+)?e([+-]\d+)$/);
|
|
510
|
+
if (!match)
|
|
511
|
+
throw new RangeError(`Can't calculate digits for number "${n}"`);
|
|
512
|
+
const digits = (match[1] || ".").length - 1 - parseInt(match[2]);
|
|
513
|
+
return digits < 0 ? 0 : digits;
|
|
514
|
+
}
|
|
515
|
+
var AnyNumberValidator = class extends Validator {
|
|
516
|
+
validate(value) {
|
|
517
|
+
assertValidation(typeof value == "number", 'Value is not a "number"');
|
|
518
|
+
assertValidation(!isNaN(value), 'Number is "NaN"');
|
|
519
|
+
return value;
|
|
520
|
+
}
|
|
521
|
+
};
|
|
522
|
+
var NumberValidator = class extends Validator {
|
|
523
|
+
#isMultipleOf;
|
|
524
|
+
allowNaN;
|
|
525
|
+
exclusiveMaximum;
|
|
526
|
+
exclusiveMinimum;
|
|
527
|
+
maximum;
|
|
528
|
+
minimum;
|
|
529
|
+
multipleOf;
|
|
530
|
+
brand;
|
|
534
531
|
constructor(constraints = {}) {
|
|
535
532
|
super();
|
|
536
|
-
__privateAdd(this, _isMultipleOf, void 0);
|
|
537
|
-
__publicField(this, "allowNaN");
|
|
538
|
-
__publicField(this, "exclusiveMaximum");
|
|
539
|
-
__publicField(this, "exclusiveMinimum");
|
|
540
|
-
__publicField(this, "maximum");
|
|
541
|
-
__publicField(this, "minimum");
|
|
542
|
-
__publicField(this, "multipleOf");
|
|
543
533
|
const {
|
|
544
534
|
allowNaN = false,
|
|
545
535
|
exclusiveMaximum,
|
|
@@ -548,6 +538,8 @@ var _NumberValidator = class extends Validator {
|
|
|
548
538
|
minimum = Number.NEGATIVE_INFINITY,
|
|
549
539
|
multipleOf
|
|
550
540
|
} = constraints;
|
|
541
|
+
if ("brand" in constraints)
|
|
542
|
+
this.brand = constraints.brand;
|
|
551
543
|
assertSchema(maximum >= minimum, `Constraint "minimum" (${minimum}) is greater than "maximum" (${maximum})`);
|
|
552
544
|
if (exclusiveMaximum !== void 0) {
|
|
553
545
|
assertSchema(exclusiveMaximum > minimum, `Constraint "exclusiveMaximum" (${exclusiveMaximum}) must be greater than "minimum" (${minimum})`);
|
|
@@ -560,13 +552,19 @@ var _NumberValidator = class extends Validator {
|
|
|
560
552
|
}
|
|
561
553
|
if (multipleOf !== void 0) {
|
|
562
554
|
assertSchema(multipleOf > 0, `Constraint "multipleOf" (${multipleOf}) must be greater than zero`);
|
|
563
|
-
const
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
if (
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
555
|
+
const decimals = countDecimals(multipleOf);
|
|
556
|
+
if (decimals === 0) {
|
|
557
|
+
this.#isMultipleOf = (value) => !(value % multipleOf);
|
|
558
|
+
} else if (decimals <= PRECISION) {
|
|
559
|
+
this.#isMultipleOf = (value) => {
|
|
560
|
+
try {
|
|
561
|
+
if (countDecimals(value) > PRECISION)
|
|
562
|
+
return false;
|
|
563
|
+
return !(value * MULTIPLIER % (multipleOf * MULTIPLIER));
|
|
564
|
+
} catch (error) {
|
|
565
|
+
throw new ValidationError(error.message);
|
|
566
|
+
}
|
|
567
|
+
};
|
|
570
568
|
} else {
|
|
571
569
|
assertSchema(false, `Constraint "multipleOf" (${multipleOf}) requires too much precision`);
|
|
572
570
|
}
|
|
@@ -588,30 +586,28 @@ var _NumberValidator = class extends Validator {
|
|
|
588
586
|
assertValidation(value <= this.maximum, `Number is greater than ${this.maximum}`);
|
|
589
587
|
assertValidation(this.exclusiveMinimum == void 0 || value > this.exclusiveMinimum, `Number is less than or equal to ${this.exclusiveMinimum}`);
|
|
590
588
|
assertValidation(this.exclusiveMaximum == void 0 || value < this.exclusiveMaximum, `Number is greater than or equal to ${this.exclusiveMaximum}`);
|
|
591
|
-
assertValidation(
|
|
589
|
+
assertValidation(this.#isMultipleOf ? this.#isMultipleOf(value) : true, `Number is not a multiple of ${this.multipleOf}`);
|
|
592
590
|
return value;
|
|
593
591
|
}
|
|
594
592
|
};
|
|
595
|
-
var
|
|
596
|
-
_isMultipleOf = new WeakMap();
|
|
597
|
-
__publicField(NumberValidator, "PRECISION", 1e6);
|
|
598
|
-
var anyNumberValidator = new class extends Validator {
|
|
599
|
-
validate(value) {
|
|
600
|
-
assertValidation(typeof value == "number", 'Value is not a "number"');
|
|
601
|
-
assertValidation(!isNaN(value), 'Number is "NaN"');
|
|
602
|
-
return value;
|
|
603
|
-
}
|
|
604
|
-
}();
|
|
593
|
+
var anyNumberValidator = new AnyNumberValidator();
|
|
605
594
|
function _number(constraints) {
|
|
606
595
|
return constraints ? new NumberValidator(constraints) : anyNumberValidator;
|
|
607
596
|
}
|
|
608
597
|
var number = makeTupleRestIterable(_number);
|
|
609
598
|
|
|
610
599
|
// src/validators/string.ts
|
|
600
|
+
var AnyStringValidator = class extends Validator {
|
|
601
|
+
validate(value) {
|
|
602
|
+
assertValidation(typeof value == "string", 'Value is not a "string"');
|
|
603
|
+
return value;
|
|
604
|
+
}
|
|
605
|
+
};
|
|
611
606
|
var StringValidator = class extends Validator {
|
|
612
607
|
maxLength;
|
|
613
608
|
minLength;
|
|
614
609
|
pattern;
|
|
610
|
+
brand;
|
|
615
611
|
constructor(constraints = {}) {
|
|
616
612
|
super();
|
|
617
613
|
const {
|
|
@@ -619,6 +615,8 @@ var StringValidator = class extends Validator {
|
|
|
619
615
|
maxLength = Number.MAX_SAFE_INTEGER,
|
|
620
616
|
pattern
|
|
621
617
|
} = constraints;
|
|
618
|
+
if ("brand" in constraints)
|
|
619
|
+
this.brand = constraints.brand;
|
|
622
620
|
assertSchema(minLength >= 0, `Constraint "minLength" (${minLength}) must be non-negative`);
|
|
623
621
|
assertSchema(maxLength >= 0, `Constraint "maxLength" (${maxLength}) must be non-negative`);
|
|
624
622
|
assertSchema(minLength <= maxLength, `Constraint "minLength" (${minLength}) is greater than "maxLength" (${maxLength})`);
|
|
@@ -634,17 +632,95 @@ var StringValidator = class extends Validator {
|
|
|
634
632
|
return value;
|
|
635
633
|
}
|
|
636
634
|
};
|
|
637
|
-
var anyStringValidator = new
|
|
638
|
-
validate(value) {
|
|
639
|
-
assertValidation(typeof value == "string", 'Value is not a "string"');
|
|
640
|
-
return value;
|
|
641
|
-
}
|
|
642
|
-
}();
|
|
635
|
+
var anyStringValidator = new AnyStringValidator();
|
|
643
636
|
function _string(constraints) {
|
|
644
637
|
return constraints ? new StringValidator(constraints) : anyStringValidator;
|
|
645
638
|
}
|
|
646
639
|
var string = makeTupleRestIterable(_string);
|
|
647
640
|
|
|
641
|
+
// src/validators/url.ts
|
|
642
|
+
var KEYS = [
|
|
643
|
+
"href",
|
|
644
|
+
"origin",
|
|
645
|
+
"protocol",
|
|
646
|
+
"username",
|
|
647
|
+
"password",
|
|
648
|
+
"host",
|
|
649
|
+
"hostname",
|
|
650
|
+
"port",
|
|
651
|
+
"pathname",
|
|
652
|
+
"search",
|
|
653
|
+
"hash"
|
|
654
|
+
];
|
|
655
|
+
var OPTIONS = {
|
|
656
|
+
stripAdditionalProperties: false,
|
|
657
|
+
stripForbiddenProperties: false
|
|
658
|
+
};
|
|
659
|
+
var URLValidator = class extends Validator {
|
|
660
|
+
href;
|
|
661
|
+
origin;
|
|
662
|
+
protocol;
|
|
663
|
+
username;
|
|
664
|
+
password;
|
|
665
|
+
host;
|
|
666
|
+
hostname;
|
|
667
|
+
port;
|
|
668
|
+
pathname;
|
|
669
|
+
search;
|
|
670
|
+
hash;
|
|
671
|
+
searchParams;
|
|
672
|
+
constructor(constraints = {}) {
|
|
673
|
+
super();
|
|
674
|
+
for (const key of KEYS) {
|
|
675
|
+
const constraint = constraints[key];
|
|
676
|
+
if (typeof constraint === "string") {
|
|
677
|
+
this[key] = new ConstantValidator(constraint);
|
|
678
|
+
} else if (constraint) {
|
|
679
|
+
this[key] = constraint;
|
|
680
|
+
}
|
|
681
|
+
}
|
|
682
|
+
if (constraints.searchParams) {
|
|
683
|
+
this.searchParams = new ObjectValidator(constraints.searchParams);
|
|
684
|
+
}
|
|
685
|
+
}
|
|
686
|
+
validate(value) {
|
|
687
|
+
let url2;
|
|
688
|
+
try {
|
|
689
|
+
url2 = value instanceof URL ? value : new URL(value);
|
|
690
|
+
} catch (error) {
|
|
691
|
+
throw new ValidationError('Value could not be converted to a "URL"');
|
|
692
|
+
}
|
|
693
|
+
const builder = new ValidationErrorBuilder();
|
|
694
|
+
for (const key of KEYS) {
|
|
695
|
+
const validator = this[key];
|
|
696
|
+
if (validator) {
|
|
697
|
+
try {
|
|
698
|
+
validator.validate(url2[key], OPTIONS);
|
|
699
|
+
} catch (error) {
|
|
700
|
+
builder.record(error, key);
|
|
701
|
+
}
|
|
702
|
+
}
|
|
703
|
+
}
|
|
704
|
+
if (this.searchParams) {
|
|
705
|
+
const parameters = {};
|
|
706
|
+
for (const param of url2.searchParams.keys()) {
|
|
707
|
+
parameters[param] = url2.searchParams.get(param);
|
|
708
|
+
}
|
|
709
|
+
try {
|
|
710
|
+
this.searchParams.validate(parameters, OPTIONS);
|
|
711
|
+
} catch (error) {
|
|
712
|
+
builder.record(error, "searchParams");
|
|
713
|
+
}
|
|
714
|
+
}
|
|
715
|
+
return builder.assert(url2);
|
|
716
|
+
}
|
|
717
|
+
};
|
|
718
|
+
var anyURLValidator = new URLValidator();
|
|
719
|
+
function _url(constraints) {
|
|
720
|
+
return constraints ? new URLValidator(constraints) : anyURLValidator;
|
|
721
|
+
}
|
|
722
|
+
var url = makeTupleRestIterable(_url);
|
|
723
|
+
|
|
648
724
|
// src/index.ts
|
|
649
725
|
function validate(validation, value, options = {}) {
|
|
650
726
|
const opts = __spreadValues({
|
|
@@ -653,8 +729,19 @@ function validate(validation, value, options = {}) {
|
|
|
653
729
|
}, options);
|
|
654
730
|
return getValidator(validation).validate(value, opts);
|
|
655
731
|
}
|
|
732
|
+
function strip(validation, value, options = {}) {
|
|
733
|
+
const opts = __spreadValues({
|
|
734
|
+
stripAdditionalProperties: true,
|
|
735
|
+
stripForbiddenProperties: false
|
|
736
|
+
}, options);
|
|
737
|
+
return getValidator(validation).validate(value, opts);
|
|
738
|
+
}
|
|
656
739
|
export {
|
|
657
740
|
AllOfValidator,
|
|
741
|
+
AnyArrayValidator,
|
|
742
|
+
AnyNumberValidator,
|
|
743
|
+
AnyObjectValidator,
|
|
744
|
+
AnyStringValidator,
|
|
658
745
|
AnyValidator,
|
|
659
746
|
ArrayValidator,
|
|
660
747
|
BooleanValidator,
|
|
@@ -665,9 +752,17 @@ export {
|
|
|
665
752
|
OneOfValidator,
|
|
666
753
|
StringValidator,
|
|
667
754
|
TupleValidator,
|
|
755
|
+
URLValidator,
|
|
668
756
|
ValidationError,
|
|
669
757
|
ValidationErrorBuilder,
|
|
670
758
|
Validator,
|
|
759
|
+
_allowAdditionalProperties,
|
|
760
|
+
_array,
|
|
761
|
+
_date,
|
|
762
|
+
_number,
|
|
763
|
+
_object,
|
|
764
|
+
_string,
|
|
765
|
+
_url,
|
|
671
766
|
additionalValidator,
|
|
672
767
|
allOf,
|
|
673
768
|
allowAdditionalProperties,
|
|
@@ -691,7 +786,9 @@ export {
|
|
|
691
786
|
restValidator,
|
|
692
787
|
schemaValidator,
|
|
693
788
|
string,
|
|
789
|
+
strip,
|
|
694
790
|
tuple,
|
|
791
|
+
url,
|
|
695
792
|
validate
|
|
696
793
|
};
|
|
697
794
|
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../src/errors.ts", "../src/types.ts", "../src/validators/any.ts", "../src/validators/constant.ts", "../src/validators/tuple.ts", "../src/validators/object.ts", "../src/utilities.ts", "../src/schema.ts", "../src/validators/union.ts", "../src/validators/array.ts", "../src/validators/boolean.ts", "../src/validators/date.ts", "../src/validators/number.ts", "../src/validators/string.ts", "../src/index.ts"],
|
|
4
|
-
"mappings": "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",
|
|
3
|
+
"sources": ["../src/errors.ts", "../src/types.ts", "../src/validators/any.ts", "../src/validators/constant.ts", "../src/validators/tuple.ts", "../src/validators/object.ts", "../src/utilities.ts", "../src/schema.ts", "../src/validators/union.ts", "../src/validators/array.ts", "../src/validators/boolean.ts", "../src/validators/date.ts", "../src/validators/number.ts", "../src/validators/string.ts", "../src/validators/url.ts", "../src/index.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import { Validation, Validator } from './index';
|
|
3
|
+
/** A function taking a `Validator` and producing its `TypeNode`. */
|
|
4
|
+
declare type TypeGenerator<V extends Validator = Validator> = (validator: V, references: ReadonlyMap<Validator, string>) => ts.TypeNode;
|
|
5
|
+
/** The generic constructor of a `Validator` instance. */
|
|
6
|
+
declare type ValidatorConstructor<V extends Validator = Validator> = {
|
|
7
|
+
new (...args: any[]): V;
|
|
8
|
+
};
|
|
9
|
+
/** Register a `TypeGenerator` function for a `Validator`. */
|
|
10
|
+
export declare function registerTypeGenerator<V extends Validator>(validator: ValidatorConstructor<V>, generator: TypeGenerator<V>): void;
|
|
11
|
+
/** Generate typings for the given `Validation`s. */
|
|
12
|
+
export declare function generateTypes(validations: Record<string, Validation>): string;
|
|
13
|
+
export {};
|