justus 0.0.2 → 0.0.4
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/dts-generator.js +15 -8
- package/dist/dts-generator.js.map +1 -1
- package/dist/dts-generator.mjs +2 -0
- package/dist/dts-generator.mjs.map +1 -1
- package/dist/index.js +116 -4
- package/dist/index.js.map +2 -2
- package/dist/index.mjs +95 -2
- package/dist/index.mjs.map +2 -2
- package/index.d.ts +73 -2
- package/package.json +14 -13
- package/src/dts-generator.ts +2 -0
- package/src/errors.ts +2 -2
- package/src/index.ts +25 -1
- package/src/validators/url.ts +140 -0
package/dist/dts-generator.js
CHANGED
|
@@ -6,29 +6,34 @@ var __getProtoOf = Object.getPrototypeOf;
|
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
7
|
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
8
8
|
var __export = (target, all) => {
|
|
9
|
-
__markAsModule(target);
|
|
10
9
|
for (var name in all)
|
|
11
10
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
12
11
|
};
|
|
13
|
-
var __reExport = (target, module2, desc) => {
|
|
12
|
+
var __reExport = (target, module2, copyDefault, desc) => {
|
|
14
13
|
if (module2 && typeof module2 === "object" || typeof module2 === "function") {
|
|
15
14
|
for (let key of __getOwnPropNames(module2))
|
|
16
|
-
if (!__hasOwnProp.call(target, key) && key !== "default")
|
|
15
|
+
if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
|
|
17
16
|
__defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
|
|
18
17
|
}
|
|
19
18
|
return target;
|
|
20
19
|
};
|
|
21
|
-
var
|
|
22
|
-
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default",
|
|
20
|
+
var __toESM = (module2, isNodeMode) => {
|
|
21
|
+
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
|
23
22
|
};
|
|
23
|
+
var __toCommonJS = /* @__PURE__ */ ((cache) => {
|
|
24
|
+
return (module2, temp) => {
|
|
25
|
+
return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
|
|
26
|
+
};
|
|
27
|
+
})(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
|
|
24
28
|
|
|
25
29
|
// src/dts-generator.ts
|
|
26
|
-
|
|
30
|
+
var dts_generator_exports = {};
|
|
31
|
+
__export(dts_generator_exports, {
|
|
27
32
|
generateTypes: () => generateTypes,
|
|
28
33
|
registerTypeGenerator: () => registerTypeGenerator
|
|
29
34
|
});
|
|
30
|
-
var import_typescript =
|
|
31
|
-
var import_index =
|
|
35
|
+
var import_typescript = __toESM(require("typescript"));
|
|
36
|
+
var import_index = require("./index.js");
|
|
32
37
|
var generators = /* @__PURE__ */ new Map();
|
|
33
38
|
function registerTypeGenerator(validator, generator) {
|
|
34
39
|
(0, import_index.assertSchema)(validator.prototype instanceof import_index.Validator, "Not a `Validator` class");
|
|
@@ -80,6 +85,7 @@ registerTypeGenerator(import_index.AnyObjectValidator, () => recordType);
|
|
|
80
85
|
registerTypeGenerator(import_index.AnyStringValidator, () => stringType);
|
|
81
86
|
registerTypeGenerator(import_index.BooleanValidator, () => booleanType);
|
|
82
87
|
registerTypeGenerator(import_index.DateValidator, () => import_typescript.default.factory.createTypeReferenceNode("Date"));
|
|
88
|
+
registerTypeGenerator(import_index.URLValidator, () => import_typescript.default.factory.createTypeReferenceNode("URL"));
|
|
83
89
|
registerTypeGenerator(import_index.ArrayValidator, (validator, references) => {
|
|
84
90
|
const itemType = generateTypeNode(validator.items, references);
|
|
85
91
|
return import_typescript.default.factory.createArrayTypeNode(itemType);
|
|
@@ -158,6 +164,7 @@ registerTypeGenerator(import_index.ObjectValidator, (validator, references) => {
|
|
|
158
164
|
return import_typescript.default.factory.createTypeLiteralNode(properties);
|
|
159
165
|
}
|
|
160
166
|
});
|
|
167
|
+
module.exports = __toCommonJS(dts_generator_exports);
|
|
161
168
|
// Annotate the CommonJS export names for ESM import in node:
|
|
162
169
|
0 && (module.exports = {
|
|
163
170
|
generateTypes,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/dts-generator.ts"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/dts-generator.mjs
CHANGED
|
@@ -18,6 +18,7 @@ import {
|
|
|
18
18
|
OneOfValidator,
|
|
19
19
|
StringValidator,
|
|
20
20
|
TupleValidator,
|
|
21
|
+
URLValidator,
|
|
21
22
|
Validator
|
|
22
23
|
} from "./index.mjs";
|
|
23
24
|
var generators = /* @__PURE__ */ new Map();
|
|
@@ -71,6 +72,7 @@ registerTypeGenerator(AnyObjectValidator, () => recordType);
|
|
|
71
72
|
registerTypeGenerator(AnyStringValidator, () => stringType);
|
|
72
73
|
registerTypeGenerator(BooleanValidator, () => booleanType);
|
|
73
74
|
registerTypeGenerator(DateValidator, () => ts.factory.createTypeReferenceNode("Date"));
|
|
75
|
+
registerTypeGenerator(URLValidator, () => ts.factory.createTypeReferenceNode("URL"));
|
|
74
76
|
registerTypeGenerator(ArrayValidator, (validator, references) => {
|
|
75
77
|
const itemType = generateTypeNode(validator.items, references);
|
|
76
78
|
return ts.factory.createArrayTypeNode(itemType);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/dts-generator.ts"],
|
|
4
|
-
"mappings": ";AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
var __defProp = Object.defineProperty;
|
|
2
2
|
var __defProps = Object.defineProperties;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
4
|
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
6
|
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
8
|
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
@@ -32,13 +34,26 @@ var __objRest = (source, exclude) => {
|
|
|
32
34
|
return target;
|
|
33
35
|
};
|
|
34
36
|
var __export = (target, all) => {
|
|
35
|
-
__markAsModule(target);
|
|
36
37
|
for (var name in all)
|
|
37
38
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
38
39
|
};
|
|
40
|
+
var __reExport = (target, module2, copyDefault, desc) => {
|
|
41
|
+
if (module2 && typeof module2 === "object" || typeof module2 === "function") {
|
|
42
|
+
for (let key of __getOwnPropNames(module2))
|
|
43
|
+
if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
|
|
44
|
+
__defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
|
|
45
|
+
}
|
|
46
|
+
return target;
|
|
47
|
+
};
|
|
48
|
+
var __toCommonJS = /* @__PURE__ */ ((cache) => {
|
|
49
|
+
return (module2, temp) => {
|
|
50
|
+
return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
|
|
51
|
+
};
|
|
52
|
+
})(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
|
|
39
53
|
|
|
40
54
|
// src/index.ts
|
|
41
|
-
|
|
55
|
+
var src_exports = {};
|
|
56
|
+
__export(src_exports, {
|
|
42
57
|
AllOfValidator: () => AllOfValidator,
|
|
43
58
|
AnyArrayValidator: () => AnyArrayValidator,
|
|
44
59
|
AnyNumberValidator: () => AnyNumberValidator,
|
|
@@ -54,6 +69,7 @@ __export(exports, {
|
|
|
54
69
|
OneOfValidator: () => OneOfValidator,
|
|
55
70
|
StringValidator: () => StringValidator,
|
|
56
71
|
TupleValidator: () => TupleValidator,
|
|
72
|
+
URLValidator: () => URLValidator,
|
|
57
73
|
ValidationError: () => ValidationError,
|
|
58
74
|
ValidationErrorBuilder: () => ValidationErrorBuilder,
|
|
59
75
|
Validator: () => Validator,
|
|
@@ -80,7 +96,9 @@ __export(exports, {
|
|
|
80
96
|
restValidator: () => restValidator,
|
|
81
97
|
schemaValidator: () => schemaValidator,
|
|
82
98
|
string: () => string,
|
|
99
|
+
strip: () => strip,
|
|
83
100
|
tuple: () => tuple,
|
|
101
|
+
url: () => url,
|
|
84
102
|
validate: () => validate
|
|
85
103
|
});
|
|
86
104
|
|
|
@@ -120,8 +138,8 @@ var ValidationError = class extends Error {
|
|
|
120
138
|
};
|
|
121
139
|
var ValidationErrorBuilder = class {
|
|
122
140
|
errors = [];
|
|
123
|
-
record(error, key) {
|
|
124
|
-
const path =
|
|
141
|
+
record(error, ...key) {
|
|
142
|
+
const path = [...key];
|
|
125
143
|
if (error instanceof ValidationError) {
|
|
126
144
|
error.errors.forEach(({ path: subpath, message }) => {
|
|
127
145
|
this.errors.push({ path: [...path, ...subpath], message });
|
|
@@ -692,6 +710,89 @@ function _string(constraints) {
|
|
|
692
710
|
}
|
|
693
711
|
var string = makeTupleRestIterable(_string);
|
|
694
712
|
|
|
713
|
+
// src/validators/url.ts
|
|
714
|
+
var KEYS = [
|
|
715
|
+
"href",
|
|
716
|
+
"origin",
|
|
717
|
+
"protocol",
|
|
718
|
+
"username",
|
|
719
|
+
"password",
|
|
720
|
+
"host",
|
|
721
|
+
"hostname",
|
|
722
|
+
"port",
|
|
723
|
+
"pathname",
|
|
724
|
+
"search",
|
|
725
|
+
"hash"
|
|
726
|
+
];
|
|
727
|
+
var OPTIONS = {
|
|
728
|
+
stripAdditionalProperties: false,
|
|
729
|
+
stripForbiddenProperties: false
|
|
730
|
+
};
|
|
731
|
+
var URLValidator = class extends Validator {
|
|
732
|
+
href;
|
|
733
|
+
origin;
|
|
734
|
+
protocol;
|
|
735
|
+
username;
|
|
736
|
+
password;
|
|
737
|
+
host;
|
|
738
|
+
hostname;
|
|
739
|
+
port;
|
|
740
|
+
pathname;
|
|
741
|
+
search;
|
|
742
|
+
hash;
|
|
743
|
+
searchParams;
|
|
744
|
+
constructor(constraints = {}) {
|
|
745
|
+
super();
|
|
746
|
+
for (const key of KEYS) {
|
|
747
|
+
const constraint = constraints[key];
|
|
748
|
+
if (typeof constraint === "string") {
|
|
749
|
+
this[key] = new ConstantValidator(constraint);
|
|
750
|
+
} else if (constraint) {
|
|
751
|
+
this[key] = constraint;
|
|
752
|
+
}
|
|
753
|
+
}
|
|
754
|
+
if (constraints.searchParams) {
|
|
755
|
+
this.searchParams = new ObjectValidator(constraints.searchParams);
|
|
756
|
+
}
|
|
757
|
+
}
|
|
758
|
+
validate(value) {
|
|
759
|
+
let url2;
|
|
760
|
+
try {
|
|
761
|
+
url2 = value instanceof URL ? value : new URL(value);
|
|
762
|
+
} catch (error) {
|
|
763
|
+
throw new ValidationError('Value could not be converted to a "URL"');
|
|
764
|
+
}
|
|
765
|
+
const builder = new ValidationErrorBuilder();
|
|
766
|
+
for (const key of KEYS) {
|
|
767
|
+
const validator = this[key];
|
|
768
|
+
if (validator) {
|
|
769
|
+
try {
|
|
770
|
+
validator.validate(url2[key], OPTIONS);
|
|
771
|
+
} catch (error) {
|
|
772
|
+
builder.record(error, key);
|
|
773
|
+
}
|
|
774
|
+
}
|
|
775
|
+
}
|
|
776
|
+
if (this.searchParams) {
|
|
777
|
+
const parameters = {};
|
|
778
|
+
for (const param of url2.searchParams.keys()) {
|
|
779
|
+
parameters[param] = url2.searchParams.get(param);
|
|
780
|
+
}
|
|
781
|
+
try {
|
|
782
|
+
this.searchParams.validate(parameters, OPTIONS);
|
|
783
|
+
} catch (error) {
|
|
784
|
+
builder.record(error, "searchParams");
|
|
785
|
+
}
|
|
786
|
+
}
|
|
787
|
+
return builder.assert(url2);
|
|
788
|
+
}
|
|
789
|
+
};
|
|
790
|
+
var anyURLValidator = new URLValidator();
|
|
791
|
+
function _url(constraints) {
|
|
792
|
+
return constraints ? new URLValidator(constraints) : anyURLValidator;
|
|
793
|
+
}
|
|
794
|
+
var url = makeTupleRestIterable(_url);
|
|
795
|
+
|
|
695
796
|
// src/index.ts
|
|
696
797
|
function validate(validation, value, options = {}) {
|
|
697
798
|
const opts = __spreadValues({
|
|
@@ -700,6 +801,14 @@ function validate(validation, value, options = {}) {
|
|
|
700
801
|
}, options);
|
|
701
802
|
return getValidator(validation).validate(value, opts);
|
|
702
803
|
}
|
|
804
|
+
function strip(validation, value, options = {}) {
|
|
805
|
+
const opts = __spreadValues({
|
|
806
|
+
stripAdditionalProperties: true,
|
|
807
|
+
stripForbiddenProperties: false
|
|
808
|
+
}, options);
|
|
809
|
+
return getValidator(validation).validate(value, opts);
|
|
810
|
+
}
|
|
811
|
+
module.exports = __toCommonJS(src_exports);
|
|
703
812
|
// Annotate the CommonJS export names for ESM import in node:
|
|
704
813
|
0 && (module.exports = {
|
|
705
814
|
AllOfValidator,
|
|
@@ -717,6 +826,7 @@ function validate(validation, value, options = {}) {
|
|
|
717
826
|
OneOfValidator,
|
|
718
827
|
StringValidator,
|
|
719
828
|
TupleValidator,
|
|
829
|
+
URLValidator,
|
|
720
830
|
ValidationError,
|
|
721
831
|
ValidationErrorBuilder,
|
|
722
832
|
Validator,
|
|
@@ -743,7 +853,9 @@ function validate(validation, value, options = {}) {
|
|
|
743
853
|
restValidator,
|
|
744
854
|
schemaValidator,
|
|
745
855
|
string,
|
|
856
|
+
strip,
|
|
746
857
|
tuple,
|
|
858
|
+
url,
|
|
747
859
|
validate
|
|
748
860
|
});
|
|
749
861
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../src/index.ts", "../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"],
|
|
4
|
-
"mappings": "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",
|
|
3
|
+
"sources": ["../src/index.ts", "../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"],
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/index.mjs
CHANGED
|
@@ -67,8 +67,8 @@ var ValidationError = class extends Error {
|
|
|
67
67
|
};
|
|
68
68
|
var ValidationErrorBuilder = class {
|
|
69
69
|
errors = [];
|
|
70
|
-
record(error, key) {
|
|
71
|
-
const path =
|
|
70
|
+
record(error, ...key) {
|
|
71
|
+
const path = [...key];
|
|
72
72
|
if (error instanceof ValidationError) {
|
|
73
73
|
error.errors.forEach(({ path: subpath, message }) => {
|
|
74
74
|
this.errors.push({ path: [...path, ...subpath], message });
|
|
@@ -639,6 +639,89 @@ function _string(constraints) {
|
|
|
639
639
|
}
|
|
640
640
|
var string = makeTupleRestIterable(_string);
|
|
641
641
|
|
|
642
|
+
// src/validators/url.ts
|
|
643
|
+
var KEYS = [
|
|
644
|
+
"href",
|
|
645
|
+
"origin",
|
|
646
|
+
"protocol",
|
|
647
|
+
"username",
|
|
648
|
+
"password",
|
|
649
|
+
"host",
|
|
650
|
+
"hostname",
|
|
651
|
+
"port",
|
|
652
|
+
"pathname",
|
|
653
|
+
"search",
|
|
654
|
+
"hash"
|
|
655
|
+
];
|
|
656
|
+
var OPTIONS = {
|
|
657
|
+
stripAdditionalProperties: false,
|
|
658
|
+
stripForbiddenProperties: false
|
|
659
|
+
};
|
|
660
|
+
var URLValidator = class extends Validator {
|
|
661
|
+
href;
|
|
662
|
+
origin;
|
|
663
|
+
protocol;
|
|
664
|
+
username;
|
|
665
|
+
password;
|
|
666
|
+
host;
|
|
667
|
+
hostname;
|
|
668
|
+
port;
|
|
669
|
+
pathname;
|
|
670
|
+
search;
|
|
671
|
+
hash;
|
|
672
|
+
searchParams;
|
|
673
|
+
constructor(constraints = {}) {
|
|
674
|
+
super();
|
|
675
|
+
for (const key of KEYS) {
|
|
676
|
+
const constraint = constraints[key];
|
|
677
|
+
if (typeof constraint === "string") {
|
|
678
|
+
this[key] = new ConstantValidator(constraint);
|
|
679
|
+
} else if (constraint) {
|
|
680
|
+
this[key] = constraint;
|
|
681
|
+
}
|
|
682
|
+
}
|
|
683
|
+
if (constraints.searchParams) {
|
|
684
|
+
this.searchParams = new ObjectValidator(constraints.searchParams);
|
|
685
|
+
}
|
|
686
|
+
}
|
|
687
|
+
validate(value) {
|
|
688
|
+
let url2;
|
|
689
|
+
try {
|
|
690
|
+
url2 = value instanceof URL ? value : new URL(value);
|
|
691
|
+
} catch (error) {
|
|
692
|
+
throw new ValidationError('Value could not be converted to a "URL"');
|
|
693
|
+
}
|
|
694
|
+
const builder = new ValidationErrorBuilder();
|
|
695
|
+
for (const key of KEYS) {
|
|
696
|
+
const validator = this[key];
|
|
697
|
+
if (validator) {
|
|
698
|
+
try {
|
|
699
|
+
validator.validate(url2[key], OPTIONS);
|
|
700
|
+
} catch (error) {
|
|
701
|
+
builder.record(error, key);
|
|
702
|
+
}
|
|
703
|
+
}
|
|
704
|
+
}
|
|
705
|
+
if (this.searchParams) {
|
|
706
|
+
const parameters = {};
|
|
707
|
+
for (const param of url2.searchParams.keys()) {
|
|
708
|
+
parameters[param] = url2.searchParams.get(param);
|
|
709
|
+
}
|
|
710
|
+
try {
|
|
711
|
+
this.searchParams.validate(parameters, OPTIONS);
|
|
712
|
+
} catch (error) {
|
|
713
|
+
builder.record(error, "searchParams");
|
|
714
|
+
}
|
|
715
|
+
}
|
|
716
|
+
return builder.assert(url2);
|
|
717
|
+
}
|
|
718
|
+
};
|
|
719
|
+
var anyURLValidator = new URLValidator();
|
|
720
|
+
function _url(constraints) {
|
|
721
|
+
return constraints ? new URLValidator(constraints) : anyURLValidator;
|
|
722
|
+
}
|
|
723
|
+
var url = makeTupleRestIterable(_url);
|
|
724
|
+
|
|
642
725
|
// src/index.ts
|
|
643
726
|
function validate(validation, value, options = {}) {
|
|
644
727
|
const opts = __spreadValues({
|
|
@@ -647,6 +730,13 @@ function validate(validation, value, options = {}) {
|
|
|
647
730
|
}, options);
|
|
648
731
|
return getValidator(validation).validate(value, opts);
|
|
649
732
|
}
|
|
733
|
+
function strip(validation, value, options = {}) {
|
|
734
|
+
const opts = __spreadValues({
|
|
735
|
+
stripAdditionalProperties: true,
|
|
736
|
+
stripForbiddenProperties: false
|
|
737
|
+
}, options);
|
|
738
|
+
return getValidator(validation).validate(value, opts);
|
|
739
|
+
}
|
|
650
740
|
export {
|
|
651
741
|
AllOfValidator,
|
|
652
742
|
AnyArrayValidator,
|
|
@@ -663,6 +753,7 @@ export {
|
|
|
663
753
|
OneOfValidator,
|
|
664
754
|
StringValidator,
|
|
665
755
|
TupleValidator,
|
|
756
|
+
URLValidator,
|
|
666
757
|
ValidationError,
|
|
667
758
|
ValidationErrorBuilder,
|
|
668
759
|
Validator,
|
|
@@ -689,7 +780,9 @@ export {
|
|
|
689
780
|
restValidator,
|
|
690
781
|
schemaValidator,
|
|
691
782
|
string,
|
|
783
|
+
strip,
|
|
692
784
|
tuple,
|
|
785
|
+
url,
|
|
693
786
|
validate
|
|
694
787
|
};
|
|
695
788
|
//# 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": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,sBAAsB,MAAmC;AACvD,SAAO,KAAK,OAAO,CAAC,SAAgB,KAAK,UAAkB;AACzD,QAAI,OAAO,QAAQ;AAAU,aAAO,GAAG,WAAU;AACjD,WAAO,UAAU,IAAI,MAAM,GAAG,WAAU;AAAA,KACvC;AAAA;AAME,oCAA8B,MAAM;AAAA,EAEhC;AAAA,EAEA;AAAA,EAaT,YACI,gBACA,mBACA,kBACF;AACA,QAAI;AACJ,QAAI;AAEJ,QAAI,0BAA0B,wBAAwB;AACpD,eAAS,eAAe;AACxB,oBAAc,eAAe;AAAA,WACxB;AACL,YAAM,OAAO,MAAM,QAAQ,qBAAqB,oBAAoB;AAEpE,UAAI,0BAA0B,iBAAiB;AAC7C,iBAAS,eAAe,OAAO,IAAI,CAAC,EAAE,MAAM,SAAS,wBAClD,GAAE,MAAM,CAAE,GAAG,MAAM,GAAG,UAAW;AAAA,aAC/B;AACL,iBAAS,CAAE,EAAE,MAAM,SAAS,GAAG;AAAA;AAGjC,oBACE,OAAO,qBAAqB,aAAa,mBACzC,OAAO,sBAAsB,aAAa,oBAC1C;AAAA;AAGJ,UAAM,UAAU,OACX,IAAI,CAAC,EAAE,MAAM,wBAAe,GAAE,KAAK,aAAa,OAAO,sBACvD,IAAI,CAAC,EAAE,KAAK,wBAAc,MAAM,GAAG,QAAQ,aAAY,UACvD,KAAK;AAEV,UAAM,UAAU,OAAO,WAAW,IAChC,SAAS,OAAO,6BAChB;AAEF,UAAM,GAAG;AAAA,IAAc;AAEvB,UAAM,kBAAkB,MAAM;AAC9B,WAAO,eAAe,MAAM,UAAU,EAAE,OAAO;AAAA;AAAA;AAO5C,mCAA6B;AAAA,EAEzB,SAA2B;AAAA,EAUpC,OAAO,UAAe,KAAgC;AACpD,UAAM,OAAO,CAAE,GAAG;AAClB,QAAI,iBAAiB,iBAAiB;AACpC,YAAM,OAAO,QAAQ,CAAC,EAAE,MAAM,SAAS,cAAc;AACnD,aAAK,OAAO,KAAK,EAAE,MAAM,CAAE,GAAG,MAAM,GAAG,UAAW;AAAA;AAAA,WAE/C;AACL,WAAK,OAAO,KAAK,EAAE,MAAM,SAAS,GAAG;AAAA;AAEvC,WAAO;AAAA;AAAA,EAST,OAAU,OAAa;AACrB,QAAI,KAAK,OAAO,SAAS;AAAG,YAAM,IAAI,gBAAgB;AACtD,WAAO;AAAA;AAAA;AAOJ,0BAA0B,MAA2B,SAA+B;AACzF,MAAI,CAAE;AAAM,UAAM,IAAI,gBAAgB,SAAS;AAAA;AAO1C,sBAAsB,MAA2B,SAA+B;AACrF,MAAI,CAAE;AAAM,UAAM,IAAI,UAAU;AAAA;;;ACvH3B,IAAM,gBAAgB,OAAO,IAAI;AAGjC,IAAM,kBAAkB,OAAO,IAAI;AAGnC,IAAM,oBAAoB,OAAO,IAAI;AAGrC,IAAM,sBAAsB,OAAO,IAAI;AAGvC,IAAM,QAAQ,OAAO,IAAI;AAoBzB,sBAA6E;AAAA,IAK/E,OAAO,YAA8C;AACtD,UAAM,GAAG,gBAAgB;AAAA;AAAA;;;ACxCtB,iCAA2B,UAAe;AAAA,EAC/C,SAAS,OAAqB;AAC5B,WAAO;AAAA;AAAA;AAKJ,IAAM,MAAM,IAAI;;;ACNhB,sCAA4E,UAAa;AAAA,EACrF;AAAA,EAET,YAAY,WAAa;AACvB;AACA,SAAK,WAAW;AAAA;AAAA,EAGlB,SAAS,OAAmB;AAC1B,qBAAiB,UAAU,KAAK,UAAU,kCAAkC,KAAK;AACjF,WAAO;AAAA;AAAA;AAKJ,kBAA8D,WAA2B;AAC9F,SAAO,IAAI,kBAAkB;AAAA;AAIxB,IAAM,gBAAgB,IAAI,kBAAkB;;;ACf5C,mCAA8C,UAAyB;AAAA,EACnE;AAAA,EACA;AAAA,EAET,YAAY,QAAU;AACpB;AAEA,UAAM,UAAyB;AAC/B,eAAW,QAAQ,QAAO;AACxB,UAAI,SAAS,MAAM;AACjB,gBAAQ,KAAK,EAAE,QAAQ,MAAM,WAAW;AAAA,iBAC9B,OAAO,SAAS,YAAc,iBAAiB,MAAO;AAChE,gBAAQ,KAAK,EAAE,QAAQ,OAAO,WAAiB,KAAM;AAAA,aAChD;AACL,gBAAQ,KAAK,EAAE,QAAQ,MAAM,WAAW,aAAa;AAAA;AAAA;AAIzD,SAAK,UAAU;AACf,SAAK,QAAQ;AAAA;AAAA,EAGf,SAAS,OAAgB,SAA2C;AAClE,qBAAiB,MAAM,QAAQ,QAAQ;AAGvC,QAAI,KAAK,QAAQ,WAAW,GAAG;AAC7B,YAAM,OAAO,MAAM;AACnB,uBAAiB,SAAS,GAAG,SAAS,eAAe,SAAS,IAAI,KAAK;AACvE,aAAO;AAAA;AAIT,UAAM,QAAQ,IAAI,MAAM,MAAM;AAC9B,QAAI,SAAS;AACb,QAAI,WAAW;AACf,QAAI,EAAE,QAAQ,cAAc,KAAK,QAAQ;AAEzC,WAAQ,SAAS,KAAK,QAAQ,UAAY,WAAW,MAAM,QAAS;AAClE,UAAI;AACF,cAAM,YAAY,UAAU,SAAS,MAAM,WAAW;AACtD,YAAI;AAAQ,UAAC,GAAE,QAAQ,cAAc,KAAK,QAAQ,EAAG,WAAW;AAChE;AAAA,eACO,OAAP;AACA,YAAI;AAAQ,gBAAM,IAAI,gBAAgB,OAAO,CAAE;AAAA;AAC1C,UAAC,GAAE,QAAQ,cAAc,KAAK,QAAQ,EAAG,WAAW;AAAA;AAAA;AAI7D,WAAQ,SAAS,KAAK,QAAQ,UAAY,KAAK,QAAQ,QAAQ,WAAW,OAAQ;AAChF;AAAA;AAGF,UAAM,UAAU,KAAK,QAAQ,SAAS;AACtC,QAAK,YAAY,KAAM,QAAQ;AAC7B,YAAM,IAAI,gBAAgB;AAAA,eACjB,UAAU,GAAG;AACtB,YAAM,IAAI,gBAAgB,iBAAiB;AAAA;AAG7C,UAAM,QAAQ,MAAM,SAAS;AAC7B,qBAAiB,UAAU,GAAG,SAAS,sBAAsB,UAAU,IAAI,KAAK;AAEhF,WAAO;AAAA;AAAA;AAKJ,eAAgC,QAAoC;AACzE,SAAO,IAAI,eAAe;AAAA;AAGrB,+BAEL,QAAiE;AACjE,QAAM,YAAY;AACjB,EAAM,OAAQ,OAAO,YAAY,aAAgE;AAChG,UAAM,GAAG,gBAAgB;AAAA;AAE3B,SAAO;AAAA;;;AC5DF,uCAAiC,UAA+B;AAAA,EACrE,SAAS,OAAqC;AAC5C,qBAAiB,OAAO,SAAS,UAAU;AAC3C,qBAAiB,UAAU,MAAM;AACjC,WAAO;AAAA;AAAA;AAKJ,oCAAgD,UAA0B;AAAA,EACtE;AAAA,EAET,aAAa,oBAAI;AAAA,EACjB;AAAA,EAEA,YAAY,QAAW;AACrB;AA5CJ;AA6CI,UAA6D,aAApD,8BAAsB,eAA8B,IAAf,uBAAe,IAAf,CAArC;AAET,QAAI;AAAY,WAAK,uBAAuB,aAAa;AAEzD,eAAW,OAAO,OAAO,KAAK,aAAa;AACzC,YAAM,aAAa,WAAW;AAE9B,UAAI,eAAe,OAAO;AACxB,aAAK,WAAW,IAAI,KAAK;AAAA,iBAChB,WAAW,aAAa;AACjC,aAAK,WAAW,IAAI,KAAK;AAAA,UACvB,WAAW,WAAW;AAAA,UACtB,UAAU,WAAW;AAAA,UACrB,UAAU,WAAW;AAAA;AAAA,aAElB;AACL,aAAK,WAAW,IAAI,KAAK,EAAE,WAAW,aAAa;AAAA;AAAA;AAIvD,SAAK,SAAS;AAAA;AAAA,EAGhB,SAAS,OAAgB,SAA4C;AACnE,qBAAiB,OAAO,UAAU,UAAU;AAC5C,qBAAiB,UAAU,MAAM;AAEjC,UAAM,SAA0D;AAChE,UAAM,UAAU,IAAI;AACpB,UAAM,QAA6B;AAEnC,eAAW,CAAE,KAAK,aAAc,KAAK,WAAW,WAAW;AACzD,YAAM,EAAE,WAAW,wBAAa,YAAY;AAG5C,UAAI,CAAE,WAAW;AACf,YAAI,OAAO,SAAS;AAAW;AAC/B,YAAI,QAAQ;AAA0B;AACtC,gBAAQ,OAAO,sBAAsB;AACrC;AAAA;AAIF,UAAI,OAAO,SAAS,QAAW;AAC7B,YAAI,CAAE;AAAU,kBAAQ,OAAO,6BAA6B;AAC5D;AAAA;AAIF,UAAI;AACF,cAAM,OAAO,UAAU,SAAS,OAAO,MAAM;AAAA,eACtC,OAAP;AACA,gBAAQ,OAAO,OAAO;AAAA;AAAA;AAI1B,UAAM,iBAAiB,OAAO,KAAK,QAAQ,OAAO,CAAC,MAAM,CAAC,KAAK,WAAW,IAAI;AAC9E,UAAM,aAAa,KAAK;AAExB,QAAI,YAAY;AACd,qBAAe,QAAQ,CAAC,QAAQ;AAC9B,YAAI,OAAO,SAAS;AAAW;AAC/B,YAAI;AACF,gBAAM,OAAO,WAAW,SAAS,OAAO,MAAM;AAAA,iBACvC,OAAP;AACA,kBAAQ,OAAO,OAAO;AAAA;AAAA;AAAA,eAGjB,CAAE,QAAQ,2BAA2B;AAC9C,qBAAe,QAAQ,CAAC,QAAQ;AAC9B,YAAI,OAAO,SAAS;AAAW,kBAAQ,OAAO,oBAAoB;AAAA;AAAA;AAItE,WAAO,QAAQ,OAAO;AAAA;AAAA;AAI1B,IAAM,qBAAqB,IAAI;AAM/B,iBAAiB,QAA0D;AACzE,MAAI,CAAE;AAAQ,WAAO;AAErB,QAAM,YAAY,IAAI,gBAAgB;AACtC,uBAAoD;AAClD,UAAM,GAAG,gBAAgB;AAAA;AAG3B,SAAO,OAAO,iBAAiB,QAAQ;AAAA,KACpC,kBAAkB,EAAE,OAAO,WAAW,YAAY;AAAA,KAClD,OAAO,WAAW,EAAE,OAAO,UAAU,YAAY;AAAA;AAAA;AAK/C,IAAM,SAAS,sBAAsB;;;ACjIrC,sBAAsB,YAAoC;AAE/D,MAAI,eAAe;AAAW,WAAO;AACrC,MAAI,eAAe;AAAM,WAAO;AAGhC,MAAI,sBAAsB;AAAW,WAAO;AAG5C,UAAQ,OAAO;AAAA,SAER;AAAA,SACA;AAAA,SACA;AACH,aAAO,IAAI,kBAAkB;AAAA,SAG1B;AACH,aAAO;AAAA,SAGJ;AAEH,UAAI,mBAAmB;AAAY,eAAc,WAAY;AAE7D,UAAI,MAAM,QAAQ;AAAa,eAAO,IAAI,eAAe;AAEzD,aAAO,IAAI,gBAAgB;AAAA;AAI3B,YAAM,IAAI,UAAU,4BAA4B,OAAO;AAAA;AAAA;;;ACpB7D,oCAAoC,SAAyE;AAC3G,MAAI,YAAY;AAAO,WAAO,GAAG,sBAAsB;AACvD,MAAI,YAAY;AAAM,WAAO,GAAG,sBAAsB;AAEtD,SAAO,GAAG,sBAAsB,aAAa;AAAA;AAYxC,IAAM,4BAA4B;AAGzC,0BAA0B,uBAAuB;AAoB1C,oBAAoB,MAAkC;AAC3D,SAAQ,QAAS,OAAO,SAAS,YAAc,qBAAqB;AAAA;AAc/D,kBAAkB,SAA2C;AAClE,QAAM,GAAG,oBAAoB,aAAa,KAAK,sBAAW,UACxD,WAAW,WAAW,UAAU,GAAG,oBAAoB;AAEzD,QAAM,YAAY,aAAa;AAE/B,SAAO,YACL,GAAG,oBAAoB,WAAW,qBAAU,UAAU,SACtD,GAAG,oBAAoB,WAAW,UAAU;AAAA;AAczC,kBAAkB,SAAqD;AAC5E,QAAM,GAAG,oBAAoB,aAAa,KAAK,sBAAW,UACxD,WAAW,WAAW,UAAU,GAAG,oBAAoB;AAEzD,QAAM,YAAY,aAAa;AAE/B,SAAO,YACL,GAAG,oBAAoB,WAAW,qBAAU,UAAU,SACtD,GAAG,oBAAoB,WAAW,UAAU;AAAA;;;ACvFzC,mCAAuD,UAAuC;AAAA,EAC1F;AAAA,EAET,YAAY,MAAS;AACnB;AACA,SAAK,aAAa,KAAK,IAAI,CAAC,eAAe,aAAa;AAAA;AAAA,EAG1D,SAAS,OAAgB,SAAyD;AAChF,UAAM,UAAU,IAAI;AACpB,eAAW,aAAa,KAAK,YAAY;AACvC,UAAI;AACF,eAAO,UAAU,SAAS,OAAO;AAAA,eAC1B,OAAP;AACA,gBAAQ,OAAO;AAAA;AAAA;AAGnB,WAAO,QAAQ,OAAO;AAAA;AAAA;AAKnB,kBAA4C,MAA4B;AAC7E,SAAO,IAAI,eAAe;AAAA;AAerB,mCAAuD,UAAuC;AAAA,EAC1F;AAAA,EAET,YAAY,MAAS;AACnB;AACA,SAAK,aAAa,KAAK,IAAI,CAAC,eAAe,aAAa;AAAA;AAAA,EAG1D,SAAS,OAAgB,SAAyD;AAChF,eAAW,aAAa,KAAK,YAAY;AACvC,cAAQ,UAAU,SAAS,OAAO;AAAA;AAEpC,WAAO;AAAA;AAAA;AAKJ,kBAA4C,MAA4B;AAC7E,SAAO,IAAI,eAAe;AAAA;;;ACxDrB,sCAAyC,UAAe;AAAA,EAC7D,SAAS,OAAgB,SAAiC;AACxD;AACA,qBAAiB,MAAM,QAAQ,QAAQ;AACvC,WAAO,CAAE,GAAG;AAAA;AAAA;AAKT,mCAAgC,UAAe;AAAA,EAC3C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY,UAA0C,IAAI;AACxD;AAEA,UAAM;AAAA,MACJ,QAAQ;AAAA,MACR,WAAW,OAAO;AAAA,MAClB,WAAW;AAAA,MACX,cAAc;AAAA,QACZ;AAEJ,iBAAa,YAAY,GAAG,0BAA0B;AACtD,iBAAa,YAAY,GAAG,0BAA0B;AACtD,iBAAa,YAAY,UAAU,0BAA0B,yCAAyC;AAEtG,SAAK,QAAQ;AACb,SAAK,WAAW;AAChB,SAAK,WAAW;AAChB,SAAK,cAAc;AAAA;AAAA,EAGrB,SAAS,OAAgB,SAAiC;AACxD,qBAAiB,MAAM,QAAQ,QAAQ;AAEvC,qBAAiB,MAAM,UAAU,KAAK,UAClC,uCAAuC,KAAK;AAEhD,qBAAiB,MAAM,UAAU,KAAK,UAClC,uCAAuC,KAAK;AAEhD,UAAM,UAAU,IAAI;AACpB,UAAM,QAAe,IAAI,MAAM,MAAM;AAErC,UAAM,QAAQ,CAAC,MAAM,MAAM;AACzB,UAAI;AACF,cAAM,WAAW,MAAM,QAAQ,MAAM;AACrC,YAAI,aAAa,GAAG;AAClB,gBAAM,KAAK,KAAK,MAAM,SAAS,MAAM;AAAA,mBAC5B,KAAK,aAAa;AAC3B,kBAAQ,OAAO,8BAA8B,YAAY;AAAA,eACpD;AACL,gBAAM,KAAK,MAAM;AAAA;AAAA,eAEZ,OAAP;AACA,gBAAQ,OAAO,OAAO;AAAA;AAAA;AAI1B,WAAO,QAAQ,OAAO;AAAA;AAAA;AAI1B,IAAM,oBAAoB,IAAI;AAO9B,gBAAgB,SAA0D;AACxE,MAAI,CAAE;AAAS,WAAO;AAEtB,QAAM,QAAQ,aAAa,QAAQ;AACnC,SAAO,IAAI,eAAe,iCAAK,UAAL,EAAc;AAAA;AAInC,IAAM,QAAQ,sBAAsB;AAGpC,iBAAuC,YAAmD;AAC/F,SAAO,IAAI,eAAe,EAAE,OAAO,aAAa;AAAA;;;ACxG3C,qCAA+B,UAAmB;AAAA,EACvD,SAAS,OAAyB;AAChC,qBAAiB,OAAO,UAAU,WAAW;AAC7C,WAAO;AAAA;AAAA;AAKJ,IAAM,UAAU,IAAI;;;ACP3B,IAAM,iBAAiB;AAahB,kCAA4B,UAAgB;AAAA,EACxC;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY,cAA+B,IAAI;AAC7C;AAEA,UAAM,EAAE,QAAQ,MAAM,UAAU;AAEhC,QAAK,QAAQ,UAAe,UAAU,QAAY;AAChD,mBAAa,MAAM,aAAa,KAAK,WACjC,uBAAuB,MAAM,6CAA6C,KAAK;AAAA;AAGrF,SAAK,SAAS;AACd,SAAK,OAAO;AACZ,SAAK,QAAQ;AAAA;AAAA,EAGf,SAAS,OAAsB;AAC7B,QAAI;AACJ,QAAI;AACF,cAAO,IAAI,KAAK;AAAA,aACT,OAAP;AACA,YAAM,IAAI,gBAAgB;AAAA;AAG5B,QAAI,MAAM,MAAK;AAAY,YAAM,IAAI,gBAAgB;AAErD,QAAI,KAAK,WAAW,OAAO;AACzB,uBAAiB,OAAO,UAAU,UAAU;AAC5C,uBAAiB,eAAe,KAAK,QAAQ;AAAA,eACpC,KAAK,WAAW,aAAa;AACtC,uBAAiB,OAAO,UAAU,UAAU;AAAA;AAG9C,QAAI,KAAK,MAAM;AACb,uBAAiB,KAAK,KAAK,aAAa,MAAK,WAAW,kBAAkB,KAAK,KAAK;AAAA;AAGtF,QAAI,KAAK,OAAO;AACd,uBAAiB,KAAK,MAAM,aAAa,MAAK,WAAW,iBAAiB,KAAK,MAAM;AAAA;AAGvF,WAAO;AAAA;AAAA;AAIX,IAAM,mBAAmB,IAAI;AAK7B,eAAe,aAA8C;AAC3D,SAAO,cAAc,IAAI,cAAc,eAAe;AAAA;AAIjD,IAAM,OAAO,sBAAsB;;;ACtE1C,IAAM,YAAY;AAClB,IAAM,aAAa,KAAK,IAAI,IAAI;AAEhC,uBAAuB,GAAmB;AAExC,QAAM,QAAQ,EAAE,gBAAgB,MAAM;AACtC,MAAI,CAAE;AAAO,UAAM,IAAI,WAAW,sCAAsC;AAExE,QAAM,SAAW,OAAM,MAAM,KAAK,SAAS,IAAM,SAAS,MAAM;AAChE,SAAO,SAAS,IAAI,IAAI;AAAA;AA4BnB,uCAAiC,UAAkB;AAAA,EACxD,SAAS,OAAwB;AAC/B,qBAAiB,OAAO,SAAS,UAAU;AAC3C,qBAAiB,CAAE,MAAM,QAAQ;AACjC,WAAO;AAAA;AAAA;AAKJ,oCAAyD,UAAa;AAAA,EAC3E;AAAA,EAES;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY,cAAiC,IAAI;AAC/C;AAEA,UAAM;AAAA,MACJ,WAAW;AAAA,MACX;AAAA,MACA;AAAA,MACA,UAAU,OAAO;AAAA,MACjB,UAAU,OAAO;AAAA,MACjB;AAAA,QACE;AAEJ,QAAI,WAAW;AAAa,WAAK,QAAe,YAAa;AAE7D,iBAAa,WAAW,SAAS,yBAAyB,uCAAuC;AAEjG,QAAI,qBAAqB,QAAW;AAClC,mBAAa,mBAAmB,SAC5B,kCAAkC,qDAAqD;AAAA;AAG7F,QAAI,qBAAqB,QAAW;AAClC,mBAAa,UAAU,kBACnB,yBAAyB,qDAAqD;AAAA;AAGpF,QAAK,oBAAoB,UAAe,qBAAqB,QAAY;AACvE,mBAAa,mBAAmB,kBAC5B,kCAAkC,8DAA8D;AAAA;AAGtG,QAAI,eAAe,QAAW;AAC5B,mBAAa,aAAa,GAAG,4BAA4B;AACzD,YAAM,WAAW,cAAc;AAE/B,UAAI,aAAa,GAAG;AAElB,6BAAqB,CAAC,UAAmB,CAAG,SAAQ;AAAA,iBAC3C,YAAY,WAAW;AAEhC,6BAAqB,CAAC,UAAmB;AACvC,cAAI;AACF,gBAAI,cAAc,SAAS;AAAW,qBAAO;AAC7C,mBAAO,CAAI,SAAQ,aAAe,cAAa;AAAA,mBACxC,OAAP;AACA,kBAAM,IAAI,gBAAgB,MAAM;AAAA;AAAA;AAAA,aAG/B;AAEL,qBAAa,OAAO,4BAA4B;AAAA;AAAA;AAIpD,SAAK,WAAW;AAChB,SAAK,mBAAmB;AACxB,SAAK,mBAAmB;AACxB,SAAK,UAAU;AACf,SAAK,UAAU;AACf,SAAK,aAAa;AAAA;AAAA,EAGpB,SAAS,OAAmB;AAC1B,qBAAiB,OAAO,SAAS,UAAU;AAE3C,QAAI,MAAM,QAAQ;AAChB,uBAAiB,KAAK,UAAU;AAChC,aAAO;AAAA;AAGT,qBAAiB,SAAS,KAAK,SAAS,uBAAuB,KAAK;AACpE,qBAAiB,SAAS,KAAK,SAAS,0BAA0B,KAAK;AAEvE,qBAAkB,KAAK,oBAAoB,UAAe,QAAQ,KAAK,kBACnE,mCAAmC,KAAK;AAE5C,qBAAkB,KAAK,oBAAoB,UAAe,QAAQ,KAAK,kBACnE,sCAAsC,KAAK;AAE/C,qBAAiB,qBAAqB,mBAAmB,SAAS,MAC9D,+BAA+B,KAAK;AAExC,WAAO;AAAA;AAAA;AAIX,IAAM,qBAAqB,IAAI;AAO/B,iBAAiB,aAAoD;AACnE,SAAO,cAAc,IAAI,gBAAgB,eAAe;AAAA;AAInD,IAAM,SAAS,sBAAsB;;;AC7IrC,uCAAiC,UAAkB;AAAA,EACxD,SAAS,OAAwB;AAC/B,qBAAiB,OAAO,SAAS,UAAU;AAC3C,WAAO;AAAA;AAAA;AAKJ,oCAAyD,UAAa;AAAA,EAClE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY,cAAiC,IAAI;AAC/C;AAEA,UAAM;AAAA,MACJ,YAAY;AAAA,MACZ,YAAY,OAAO;AAAA,MACnB;AAAA,QACE;AAEJ,QAAI,WAAW;AAAa,WAAK,QAAe,YAAa;AAE7D,iBAAa,aAAa,GAAG,2BAA2B;AACxD,iBAAa,aAAa,GAAG,2BAA2B;AACxD,iBAAa,aAAa,WAAW,2BAA2B,2CAA2C;AAE3G,SAAK,YAAY;AACjB,SAAK,YAAY;AACjB,SAAK,UAAU;AAAA;AAAA,EAGjB,SAAS,OAAmB;AAC1B,qBAAiB,OAAO,SAAS,UAAU;AAE3C,qBAAiB,MAAM,UAAU,KAAK,WAClC,wCAAwC,KAAK;AAEjD,qBAAiB,MAAM,UAAU,KAAK,WAClC,wCAAwC,KAAK;AAEjD,qBAAiB,KAAK,UAAU,KAAK,QAAQ,KAAK,SAAS,MACvD,0CAA0C,KAAK;AAEnD,WAAO;AAAA;AAAA;AAIX,IAAM,qBAAqB,IAAI;AAO/B,iBAAiB,aAAoD;AACnE,SAAO,cAAc,IAAI,gBAAgB,eAAe;AAAA;AAInD,IAAM,SAAS,sBAAsB;;;AC7E5C,IAAM,OAAwD;AAAA,EAC5D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAGF,IAAM,UAA6B;AAAA,EACjC,2BAA2B;AAAA,EAC3B,0BAA0B;AAAA;AAqCrB,iCAA2B,UAAe;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EAET,YAAY,cAA8B,IAAI;AAC5C;AAEA,eAAW,OAAO,MAAM;AACtB,YAAM,aAAa,YAAY;AAC/B,UAAI,OAAO,eAAe,UAAU;AAClC,aAAK,OAAO,IAAI,kBAAkB;AAAA,iBACzB,YAAY;AACrB,aAAK,OAAO;AAAA;AAAA;AAIhB,QAAI,YAAY,cAAc;AAC5B,WAAK,eAAe,IAAI,gBAAgB,YAAY;AAAA;AAAA;AAAA,EAIxD,SAAS,OAAqB;AAC5B,QAAI;AACJ,QAAI;AACF,aAAM,iBAAiB,MAAM,QAAQ,IAAI,IAAI;AAAA,aACtC,OAAP;AACA,YAAM,IAAI,gBAAgB;AAAA;AAG5B,UAAM,UAAU,IAAI;AAEpB,eAAW,OAAO,MAAM;AACtB,YAAM,YAAY,KAAK;AACvB,UAAI,WAAW;AACb,YAAI;AACF,oBAAU,SAAS,KAAI,MAAM;AAAA,iBACtB,OAAP;AACA,kBAAQ,OAAO,OAAO;AAAA;AAAA;AAAA;AAK5B,QAAI,KAAK,cAAc;AACrB,YAAM,aAAqC;AAC3C,iBAAW,SAAS,KAAI,aAAa,QAAQ;AAC3C,mBAAW,SAAS,KAAI,aAAa,IAAI;AAAA;AAG3C,UAAI;AACF,aAAK,aAAa,SAAS,YAAY;AAAA,eAChC,OAAP;AACA,gBAAQ,OAAO,OAAO;AAAA;AAAA;AAI1B,WAAO,QAAQ,OAAO;AAAA;AAAA;AAI1B,IAAM,kBAAkB,IAAI;AAK5B,cAAc,aAA4C;AACxD,SAAO,cAAc,IAAI,aAAa,eAAe;AAAA;AAIhD,IAAM,MAAM,sBAAsB;;;AClGlC,kBACH,YACA,OACA,UAA2B,IACT;AACpB,QAAM,OAA0B;AAAA,IAC9B,2BAA2B;AAAA,IAC3B,0BAA0B;AAAA,KACvB;AAGL,SAAO,aAAa,YAAY,SAAS,OAAO;AAAA;AAO3C,eACH,YACA,OACA,UAA2B,IACT;AACpB,QAAM,OAA0B;AAAA,IAC9B,2BAA2B;AAAA,IAC3B,0BAA0B;AAAA,KACvB;AAGL,SAAO,aAAa,YAAY,SAAS,OAAO;AAAA;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/index.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
|
|
1
3
|
/**
|
|
2
4
|
* An interface defining whether a `Schema` should include additional
|
|
3
5
|
* properties, and the `Validator` used to validate them.
|
|
@@ -429,6 +431,12 @@ export declare class StringValidator<S extends string = string> extends Validato
|
|
|
429
431
|
validate(value: unknown): S;
|
|
430
432
|
}
|
|
431
433
|
|
|
434
|
+
/**
|
|
435
|
+
* Validate a _value_ using the specified `Validation`, automatically stripping
|
|
436
|
+
* additional properties (but not forbidden ones).
|
|
437
|
+
*/
|
|
438
|
+
export declare function strip<V extends Validation>(validation: V, value: any, options?: ValidateOptions): InferValidation<V>;
|
|
439
|
+
|
|
432
440
|
/**
|
|
433
441
|
* A `Tuple` is defined to be an array of `Validation` or `TupleRest`
|
|
434
442
|
*/
|
|
@@ -469,7 +477,70 @@ export declare class TupleValidator<T extends Tuple> extends Validator<InferTupl
|
|
|
469
477
|
|
|
470
478
|
declare type UnionArguments = readonly [Validation, ...Validation[]];
|
|
471
479
|
|
|
472
|
-
/** Validate
|
|
480
|
+
/** Validate URLs and convert them to `URL` instances. */
|
|
481
|
+
export declare const url: typeof _url & Iterable<TupleRestParameter<URL>>;
|
|
482
|
+
|
|
483
|
+
declare function _url(): URLValidator;
|
|
484
|
+
|
|
485
|
+
declare function _url(constraints: URLConstraints): URLValidator;
|
|
486
|
+
|
|
487
|
+
/** Constraints to validate a `URL` with. */
|
|
488
|
+
declare interface URLConstraints {
|
|
489
|
+
/** Constraint to validate the `href` component of the `URL`. */
|
|
490
|
+
href?: string | Validator<string>;
|
|
491
|
+
/** Constraint to validate the `origin` component of the `URL`. */
|
|
492
|
+
origin?: string | Validator<string>;
|
|
493
|
+
/** Constraint to validate the `protocol` component of the `URL`. */
|
|
494
|
+
protocol?: string | Validator<string>;
|
|
495
|
+
/** Constraint to validate the `username` component of the `URL`. */
|
|
496
|
+
username?: string | Validator<string>;
|
|
497
|
+
/** Constraint to validate the `password` component of the `URL`. */
|
|
498
|
+
password?: string | Validator<string>;
|
|
499
|
+
/** Constraint to validate the `host` (`hostname:port`) component of the `URL`. */
|
|
500
|
+
host?: string | Validator<string>;
|
|
501
|
+
/** Constraint to validate the `hostname` component of the `URL`. */
|
|
502
|
+
hostname?: string | Validator<string>;
|
|
503
|
+
/** Constraint to validate the `port` component of the `URL`. */
|
|
504
|
+
port?: string | Validator<string>;
|
|
505
|
+
/** Constraint to validate the `pathname` component of the `URL`. */
|
|
506
|
+
pathname?: string | Validator<string>;
|
|
507
|
+
/** Constraint to validate the `search` component of the `URL` as a string. */
|
|
508
|
+
search?: string | Validator<string>;
|
|
509
|
+
/** Constraint to validate the `hash` component of the `URL`. */
|
|
510
|
+
hash?: string | Validator<string>;
|
|
511
|
+
/**
|
|
512
|
+
* Schema used to validate the `searchParams` component of the `URL`.
|
|
513
|
+
*
|
|
514
|
+
* The `searchParams` will be normalized in a `Record<string, string>`, where
|
|
515
|
+
* only the _first_ value associated with a search parameter will be checked.
|
|
516
|
+
*/
|
|
517
|
+
searchParams?: Schema;
|
|
518
|
+
}
|
|
519
|
+
|
|
520
|
+
/** A `Validator` validating URLs and converting them to `URL` instances. */
|
|
521
|
+
export declare class URLValidator extends Validator<URL> {
|
|
522
|
+
readonly href?: Validator<string>;
|
|
523
|
+
readonly origin?: Validator<string>;
|
|
524
|
+
readonly protocol?: Validator<string>;
|
|
525
|
+
readonly username?: Validator<string>;
|
|
526
|
+
readonly password?: Validator<string>;
|
|
527
|
+
readonly host?: Validator<string>;
|
|
528
|
+
readonly hostname?: Validator<string>;
|
|
529
|
+
readonly port?: Validator<string>;
|
|
530
|
+
readonly pathname?: Validator<string>;
|
|
531
|
+
readonly search?: Validator<string>;
|
|
532
|
+
readonly hash?: Validator<string>;
|
|
533
|
+
readonly searchParams?: ObjectValidator<Schema>;
|
|
534
|
+
constructor(constraints?: URLConstraints);
|
|
535
|
+
validate(value: unknown): URL;
|
|
536
|
+
}
|
|
537
|
+
|
|
538
|
+
/**
|
|
539
|
+
* Validate a _value_ using the specified `Validation`.
|
|
540
|
+
*
|
|
541
|
+
* By default additional and forbidden properties will _not_ be stripped and
|
|
542
|
+
* reported as an error.
|
|
543
|
+
*/
|
|
473
544
|
export declare function validate<V extends Validation>(validation: V, value: any, options?: ValidateOptions): InferValidation<V>;
|
|
474
545
|
|
|
475
546
|
/** Options for `validate` */
|
|
@@ -525,7 +596,7 @@ export declare class ValidationErrorBuilder {
|
|
|
525
596
|
* @param key - The key in an object, or index in an array where the
|
|
526
597
|
* vaildation error was encountered
|
|
527
598
|
*/
|
|
528
|
-
record(error: any, key
|
|
599
|
+
record(error: any, ...key: (string | number)[]): this;
|
|
529
600
|
/**
|
|
530
601
|
* Assert there are no validation errors and return the specified value, or
|
|
531
602
|
* throw a `ValidationError` combining all errors
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "justus",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"description": "A JavaScript validation library, with types!",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
},
|
|
17
17
|
"types": "./index.d.ts",
|
|
18
18
|
"scripts": {
|
|
19
|
-
"build": "build.sh",
|
|
19
|
+
"build": "./build.sh",
|
|
20
20
|
"dev": "nodemon -e ts -x build.sh -w src -w test -w test-d",
|
|
21
21
|
"lint": "eslint src test test-d",
|
|
22
22
|
"prepare": "patch -N -p0 -i .nyc.patch || true"
|
|
@@ -24,20 +24,21 @@
|
|
|
24
24
|
"author": "Juit Developers <developers@juit.com>",
|
|
25
25
|
"license": "MIT",
|
|
26
26
|
"devDependencies": {
|
|
27
|
-
"@microsoft/api-extractor": "^7.
|
|
28
|
-
"@types/chai": "^4.
|
|
29
|
-
"@types/mocha": "^9.
|
|
30
|
-
"@
|
|
31
|
-
"@typescript-eslint/
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"
|
|
27
|
+
"@microsoft/api-extractor": "^7.19.4",
|
|
28
|
+
"@types/chai": "^4.3.0",
|
|
29
|
+
"@types/mocha": "^9.1.0",
|
|
30
|
+
"@types/node": "~16.11.24",
|
|
31
|
+
"@typescript-eslint/eslint-plugin": "^5.11.0",
|
|
32
|
+
"@typescript-eslint/parser": "^5.11.0",
|
|
33
|
+
"chai": "^4.3.6",
|
|
34
|
+
"esbuild": "^0.14.21",
|
|
35
|
+
"eslint": "^8.9.0",
|
|
35
36
|
"eslint-config-google": "^0.14.0",
|
|
36
|
-
"mocha": "^9.
|
|
37
|
+
"mocha": "^9.2.0",
|
|
37
38
|
"nodemon": "^2.0.15",
|
|
38
39
|
"nyc": "^15.1.0",
|
|
39
|
-
"tsd": "^0.19.
|
|
40
|
-
"typescript": "^4.5.
|
|
40
|
+
"tsd": "^0.19.1",
|
|
41
|
+
"typescript": "^4.5.5"
|
|
41
42
|
},
|
|
42
43
|
"directories": {
|
|
43
44
|
"test": "test"
|
package/src/dts-generator.ts
CHANGED
|
@@ -17,6 +17,7 @@ import {
|
|
|
17
17
|
OneOfValidator,
|
|
18
18
|
StringValidator,
|
|
19
19
|
TupleValidator,
|
|
20
|
+
URLValidator,
|
|
20
21
|
Validation,
|
|
21
22
|
Validator,
|
|
22
23
|
} from './index'
|
|
@@ -146,6 +147,7 @@ registerTypeGenerator(AnyObjectValidator, () => recordType)
|
|
|
146
147
|
registerTypeGenerator(AnyStringValidator, () => stringType)
|
|
147
148
|
registerTypeGenerator(BooleanValidator, () => booleanType)
|
|
148
149
|
registerTypeGenerator(DateValidator, () => ts.factory.createTypeReferenceNode('Date'))
|
|
150
|
+
registerTypeGenerator(URLValidator, () => ts.factory.createTypeReferenceNode('URL'))
|
|
149
151
|
|
|
150
152
|
/* ========================================================================== */
|
|
151
153
|
|
package/src/errors.ts
CHANGED
|
@@ -86,8 +86,8 @@ export class ValidationErrorBuilder {
|
|
|
86
86
|
* @param key - The key in an object, or index in an array where the
|
|
87
87
|
* vaildation error was encountered
|
|
88
88
|
*/
|
|
89
|
-
record(error: any, key
|
|
90
|
-
const path =
|
|
89
|
+
record(error: any, ...key: (string | number)[]): this {
|
|
90
|
+
const path = [ ...key ]
|
|
91
91
|
if (error instanceof ValidationError) {
|
|
92
92
|
error.errors.forEach(({ path: subpath, message }) => {
|
|
93
93
|
this.errors.push({ path: [ ...path, ...subpath ], message })
|
package/src/index.ts
CHANGED
|
@@ -19,6 +19,7 @@ export { number, AnyNumberValidator, NumberValidator } from './validators/number
|
|
|
19
19
|
export { object, AnyObjectValidator, ObjectValidator } from './validators/object'
|
|
20
20
|
export { string, AnyStringValidator, StringValidator } from './validators/string'
|
|
21
21
|
export { tuple, TupleValidator } from './validators/tuple'
|
|
22
|
+
export { url, URLValidator } from './validators/url'
|
|
22
23
|
|
|
23
24
|
/* ========================================================================== *
|
|
24
25
|
* VALIDATE FUNCTION (our main entry point) *
|
|
@@ -32,7 +33,12 @@ export type ValidateOptions = {
|
|
|
32
33
|
-readonly [ key in keyof ValidationOptions ]?: ValidationOptions[key] | undefined
|
|
33
34
|
}
|
|
34
35
|
|
|
35
|
-
/**
|
|
36
|
+
/**
|
|
37
|
+
* Validate a _value_ using the specified `Validation`.
|
|
38
|
+
*
|
|
39
|
+
* By default additional and forbidden properties will _not_ be stripped and
|
|
40
|
+
* reported as an error.
|
|
41
|
+
*/
|
|
36
42
|
export function validate<V extends Validation>(
|
|
37
43
|
validation: V,
|
|
38
44
|
value: any,
|
|
@@ -46,3 +52,21 @@ export function validate<V extends Validation>(
|
|
|
46
52
|
|
|
47
53
|
return getValidator(validation).validate(value, opts)
|
|
48
54
|
}
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Validate a _value_ using the specified `Validation`, automatically stripping
|
|
58
|
+
* additional properties (but not forbidden ones).
|
|
59
|
+
*/
|
|
60
|
+
export function strip<V extends Validation>(
|
|
61
|
+
validation: V,
|
|
62
|
+
value: any,
|
|
63
|
+
options: ValidateOptions = {},
|
|
64
|
+
): InferValidation<V> {
|
|
65
|
+
const opts: ValidationOptions = {
|
|
66
|
+
stripAdditionalProperties: true,
|
|
67
|
+
stripForbiddenProperties: false,
|
|
68
|
+
...options,
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
return getValidator(validation).validate(value, opts)
|
|
72
|
+
}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { ConstantValidator } from './constant'
|
|
2
|
+
import { ValidationError, ValidationErrorBuilder } from '../errors'
|
|
3
|
+
import { Schema, Validator } from '../types'
|
|
4
|
+
import { makeTupleRestIterable } from './tuple'
|
|
5
|
+
import { ObjectValidator, ValidationOptions } from '..'
|
|
6
|
+
|
|
7
|
+
const KEYS: Exclude<keyof URLConstraints, 'searchParams'>[] = [
|
|
8
|
+
'href',
|
|
9
|
+
'origin',
|
|
10
|
+
'protocol',
|
|
11
|
+
'username',
|
|
12
|
+
'password',
|
|
13
|
+
'host',
|
|
14
|
+
'hostname',
|
|
15
|
+
'port',
|
|
16
|
+
'pathname',
|
|
17
|
+
'search',
|
|
18
|
+
'hash',
|
|
19
|
+
]
|
|
20
|
+
|
|
21
|
+
const OPTIONS: ValidationOptions = {
|
|
22
|
+
stripAdditionalProperties: false,
|
|
23
|
+
stripForbiddenProperties: false,
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/** Constraints to validate a `URL` with. */
|
|
27
|
+
export interface URLConstraints {
|
|
28
|
+
/** Constraint to validate the `href` component of the `URL`. */
|
|
29
|
+
href?: string | Validator<string>,
|
|
30
|
+
/** Constraint to validate the `origin` component of the `URL`. */
|
|
31
|
+
origin?: string | Validator<string>,
|
|
32
|
+
/** Constraint to validate the `protocol` component of the `URL`. */
|
|
33
|
+
protocol?: string | Validator<string>,
|
|
34
|
+
/** Constraint to validate the `username` component of the `URL`. */
|
|
35
|
+
username?: string | Validator<string>,
|
|
36
|
+
/** Constraint to validate the `password` component of the `URL`. */
|
|
37
|
+
password?: string | Validator<string>,
|
|
38
|
+
/** Constraint to validate the `host` (`hostname:port`) component of the `URL`. */
|
|
39
|
+
host?: string | Validator<string>,
|
|
40
|
+
/** Constraint to validate the `hostname` component of the `URL`. */
|
|
41
|
+
hostname?: string | Validator<string>,
|
|
42
|
+
/** Constraint to validate the `port` component of the `URL`. */
|
|
43
|
+
port?: string | Validator<string>,
|
|
44
|
+
/** Constraint to validate the `pathname` component of the `URL`. */
|
|
45
|
+
pathname?: string | Validator<string>,
|
|
46
|
+
/** Constraint to validate the `search` component of the `URL` as a string. */
|
|
47
|
+
search?: string | Validator<string>,
|
|
48
|
+
/** Constraint to validate the `hash` component of the `URL`. */
|
|
49
|
+
hash?: string | Validator<string>,
|
|
50
|
+
/**
|
|
51
|
+
* Schema used to validate the `searchParams` component of the `URL`.
|
|
52
|
+
*
|
|
53
|
+
* The `searchParams` will be normalized in a `Record<string, string>`, where
|
|
54
|
+
* only the _first_ value associated with a search parameter will be checked.
|
|
55
|
+
*/
|
|
56
|
+
searchParams?: Schema,
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/** A `Validator` validating URLs and converting them to `URL` instances. */
|
|
60
|
+
export class URLValidator extends Validator<URL> {
|
|
61
|
+
readonly href?: Validator<string>
|
|
62
|
+
readonly origin?: Validator<string>
|
|
63
|
+
readonly protocol?: Validator<string>
|
|
64
|
+
readonly username?: Validator<string>
|
|
65
|
+
readonly password?: Validator<string>
|
|
66
|
+
readonly host?: Validator<string>
|
|
67
|
+
readonly hostname?: Validator<string>
|
|
68
|
+
readonly port?: Validator<string>
|
|
69
|
+
readonly pathname?: Validator<string>
|
|
70
|
+
readonly search?: Validator<string>
|
|
71
|
+
readonly hash?: Validator<string>
|
|
72
|
+
|
|
73
|
+
readonly searchParams?: ObjectValidator<Schema>
|
|
74
|
+
|
|
75
|
+
constructor(constraints: URLConstraints = {}) {
|
|
76
|
+
super()
|
|
77
|
+
|
|
78
|
+
for (const key of KEYS) {
|
|
79
|
+
const constraint = constraints[key]
|
|
80
|
+
if (typeof constraint === 'string') {
|
|
81
|
+
this[key] = new ConstantValidator(constraint)
|
|
82
|
+
} else if (constraint) {
|
|
83
|
+
this[key] = constraint
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
if (constraints.searchParams) {
|
|
88
|
+
this.searchParams = new ObjectValidator(constraints.searchParams)
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
validate(value: unknown): URL {
|
|
93
|
+
let url: URL
|
|
94
|
+
try {
|
|
95
|
+
url = value instanceof URL ? value : new URL(value as any)
|
|
96
|
+
} catch (error) {
|
|
97
|
+
throw new ValidationError('Value could not be converted to a "URL"')
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
const builder = new ValidationErrorBuilder()
|
|
101
|
+
|
|
102
|
+
for (const key of KEYS) {
|
|
103
|
+
const validator = this[key]
|
|
104
|
+
if (validator) {
|
|
105
|
+
try {
|
|
106
|
+
validator.validate(url[key], OPTIONS)
|
|
107
|
+
} catch (error) {
|
|
108
|
+
builder.record(error, key)
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
if (this.searchParams) {
|
|
114
|
+
const parameters: Record<string, string> = {}
|
|
115
|
+
for (const param of url.searchParams.keys()) {
|
|
116
|
+
parameters[param] = url.searchParams.get(param) as string
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
try {
|
|
120
|
+
this.searchParams.validate(parameters, OPTIONS)
|
|
121
|
+
} catch (error) {
|
|
122
|
+
builder.record(error, 'searchParams')
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
return builder.assert(url)
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
const anyURLValidator = new URLValidator()
|
|
131
|
+
|
|
132
|
+
function _url(): URLValidator
|
|
133
|
+
function _url(constraints: URLConstraints): URLValidator
|
|
134
|
+
|
|
135
|
+
function _url(constraints?: URLConstraints): URLValidator {
|
|
136
|
+
return constraints ? new URLValidator(constraints) : anyURLValidator
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
/** Validate URLs and convert them to `URL` instances. */
|
|
140
|
+
export const url = makeTupleRestIterable(_url)
|