@forklaunch/validator 0.3.10 → 0.3.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/lib/src/shared/types/schema.types.d.ts +9 -2
- package/lib/src/shared/types/schema.types.d.ts.map +1 -1
- package/lib/src/typebox/staticSchemaValidator.d.ts +25 -23
- package/lib/src/typebox/staticSchemaValidator.d.ts.map +1 -1
- package/lib/src/typebox/staticSchemaValidator.js +4 -0
- package/lib/src/typebox/typeboxSchemaValidator.d.ts +7 -1
- package/lib/src/typebox/typeboxSchemaValidator.d.ts.map +1 -1
- package/lib/src/typebox/typeboxSchemaValidator.js +12 -1
- package/lib/src/zod/staticSchemaValidator.d.ts +25 -23
- package/lib/src/zod/staticSchemaValidator.d.ts.map +1 -1
- package/lib/src/zod/staticSchemaValidator.js +4 -0
- package/lib/src/zod/zodSchemaValidator.d.ts +7 -1
- package/lib/src/zod/zodSchemaValidator.d.ts.map +1 -1
- package/lib/src/zod/zodSchemaValidator.js +10 -5
- package/lib/tests/typebox/schemaValidator.test.js +22 -1
- package/lib/tests/utils/compare.js +2 -2
- package/lib/tests/utils/mockSchemaValidator.d.ts +3 -1
- package/lib/tests/utils/mockSchemaValidator.d.ts.map +1 -1
- package/lib/tests/utils/mockSchemaValidator.js +6 -2
- package/lib/tests/zod/schemaValidator.test.js +16 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +7 -7
- package/lib/eslint.config.d.mts +0 -1134
- package/lib/eslint.config.d.mts.map +0 -1
- package/lib/eslint.config.mjs +0 -10
- package/lib/jest.config.d.ts +0 -4
- package/lib/jest.config.d.ts.map +0 -1
- package/lib/jest.config.js +0 -19
|
@@ -25,7 +25,7 @@ export type ParseResult<T> = {
|
|
|
25
25
|
* @template ParseFunction - The function type for parsing a value against a schema.
|
|
26
26
|
* @template OpenAPIFunction - The function type for converting a schema into an OpenAPI schema object.
|
|
27
27
|
*/
|
|
28
|
-
export interface SchemaValidator<CompilationFunction = <T>(schema: T) => unknown, SchematicFunction = <T>(schema: T) => unknown, OptionalFunction = <T>(schema: T) => unknown, ArrayFunction = <T>(schema: T) => unknown, UnionFunction = <T>(schemas: T[]) => unknown, LiteralFunction = <T extends LiteralSchema>(schema: T) => unknown, ValidationFunction = <T>(schema: T, value: unknown) => boolean, ParseFunction = <T>(schema: T, value: unknown) => ParseResult<SchemaResolve<T>>, OpenAPIFunction = <T>(schema: T) => SchemaObject> {
|
|
28
|
+
export interface SchemaValidator<CompilationFunction = <T>(schema: T) => unknown, SchematicFunction = <T>(schema: T) => unknown, OptionalFunction = <T>(schema: T) => unknown, ArrayFunction = <T>(schema: T) => unknown, UnionFunction = <T>(schemas: T[]) => unknown, LiteralFunction = <T extends LiteralSchema>(schema: T) => unknown, EnumFunction = <T extends LiteralSchema>(schemaEnum: Record<string, T>) => unknown, ValidationFunction = <T>(schema: T, value: unknown) => boolean, ParseFunction = <T>(schema: T, value: unknown) => ParseResult<SchemaResolve<T>>, OpenAPIFunction = <T>(schema: T) => SchemaObject> {
|
|
29
29
|
/**
|
|
30
30
|
* The type of the schema validator. Meant to be used with non-null assertions.
|
|
31
31
|
*/
|
|
@@ -132,6 +132,13 @@ export interface SchemaValidator<CompilationFunction = <T>(schema: T) => unknown
|
|
|
132
132
|
* @returns {unknown} - The literal schema.
|
|
133
133
|
*/
|
|
134
134
|
literal: LiteralFunction;
|
|
135
|
+
/**
|
|
136
|
+
* Creates an enum schema from a record of literal values.
|
|
137
|
+
*
|
|
138
|
+
* @param {Record<string, T>} schemaEnum - The enum schema.
|
|
139
|
+
* @returns {unknown} - The enum schema.
|
|
140
|
+
*/
|
|
141
|
+
enum_: EnumFunction;
|
|
135
142
|
/**
|
|
136
143
|
* Validates a value against a schema.
|
|
137
144
|
*
|
|
@@ -159,7 +166,7 @@ export interface SchemaValidator<CompilationFunction = <T>(schema: T) => unknown
|
|
|
159
166
|
/**
|
|
160
167
|
* Type representing any schema validator.
|
|
161
168
|
*/
|
|
162
|
-
export type AnySchemaValidator = SchemaValidator<unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown> & {
|
|
169
|
+
export type AnySchemaValidator = SchemaValidator<unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown> & {
|
|
163
170
|
/**
|
|
164
171
|
* The type of the schema resolver.
|
|
165
172
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.types.d.ts","sourceRoot":"","sources":["../../../../src/shared/types/schema.types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema.types.d.ts","sourceRoot":"","sources":["../../../../src/shared/types/schema.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,90 +4,92 @@ import { TypeboxSchemaValidator } from './typeboxSchemaValidator';
|
|
|
4
4
|
* @returns {TypeboxSchemaValidator} The TypeboxSchemaValidator instance.
|
|
5
5
|
*/
|
|
6
6
|
export declare const SchemaValidator: () => TypeboxSchemaValidator;
|
|
7
|
-
declare const StaticSchemaValidator: TypeboxSchemaValidator;
|
|
8
7
|
/**
|
|
9
8
|
* TypeBox schema definition for string type.
|
|
10
9
|
*/
|
|
11
|
-
export declare const string:
|
|
10
|
+
export declare const string: import("@sinclair/typebox").TString;
|
|
12
11
|
/**
|
|
13
12
|
* TypeBox schema definition for UUID type.
|
|
14
13
|
*/
|
|
15
|
-
export declare const uuid:
|
|
14
|
+
export declare const uuid: import("@sinclair/typebox").TString;
|
|
16
15
|
/**
|
|
17
16
|
* TypeBox schema definition for URI type.
|
|
18
17
|
*/
|
|
19
|
-
export declare const uri:
|
|
18
|
+
export declare const uri: import("@sinclair/typebox").TString;
|
|
20
19
|
/**
|
|
21
20
|
* TypeBox schema definition for email type.
|
|
22
21
|
*/
|
|
23
|
-
export declare const email:
|
|
22
|
+
export declare const email: import("@sinclair/typebox").TString;
|
|
24
23
|
/**
|
|
25
24
|
* TypeBox schema definition for number type.
|
|
26
25
|
*/
|
|
27
|
-
export declare const number:
|
|
26
|
+
export declare const number: import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull, import("@sinclair/typebox").TDate, import("@sinclair/typebox").TBigInt]>, number>;
|
|
28
27
|
/**
|
|
29
28
|
* TypeBox schema definition for bigint type.
|
|
30
29
|
*/
|
|
31
|
-
export declare const bigint:
|
|
30
|
+
export declare const bigint: import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TBigInt, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TDate]>, bigint>;
|
|
32
31
|
/**
|
|
33
32
|
* TypeBox schema definition for boolean type.
|
|
34
33
|
*/
|
|
35
|
-
export declare const boolean:
|
|
34
|
+
export declare const boolean: import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TString]>, boolean | undefined>;
|
|
36
35
|
/**
|
|
37
36
|
* TypeBox schema definition for date type.
|
|
38
37
|
*/
|
|
39
|
-
export declare const date:
|
|
38
|
+
export declare const date: import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>;
|
|
40
39
|
/**
|
|
41
40
|
* TypeBox schema definition for symbol type.
|
|
42
41
|
*/
|
|
43
|
-
export declare const symbol:
|
|
42
|
+
export declare const symbol: import("@sinclair/typebox").TSymbol;
|
|
44
43
|
/**
|
|
45
44
|
* TypeBox schema definition for undefined, null, void types.
|
|
46
45
|
*/
|
|
47
|
-
export declare const nullish:
|
|
46
|
+
export declare const nullish: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TVoid, import("@sinclair/typebox").TNull, import("@sinclair/typebox").TUndefined]>;
|
|
48
47
|
/**
|
|
49
48
|
* TypeBox schema definition for any type.
|
|
50
49
|
*/
|
|
51
|
-
export declare const any:
|
|
50
|
+
export declare const any: import("@sinclair/typebox").TAny;
|
|
52
51
|
/**
|
|
53
52
|
* TypeBox schema definition for unknown type.
|
|
54
53
|
*/
|
|
55
|
-
export declare const unknown:
|
|
54
|
+
export declare const unknown: import("@sinclair/typebox").TUnknown;
|
|
56
55
|
/**
|
|
57
56
|
* TypeBox schema definition for never type.
|
|
58
57
|
*/
|
|
59
|
-
export declare const never:
|
|
58
|
+
export declare const never: import("@sinclair/typebox").TNever;
|
|
60
59
|
/**
|
|
61
60
|
* Transforms valid schema into TypeBox schema.
|
|
62
61
|
*/
|
|
63
|
-
export declare const schemify:
|
|
62
|
+
export declare const schemify: <T extends import("./types/schema.types").TIdiomaticSchema>(schema: T) => import("./types/schema.types").TResolve<T>;
|
|
64
63
|
/**
|
|
65
64
|
* Makes a valid schema optional.
|
|
66
65
|
*/
|
|
67
|
-
export declare const optional:
|
|
66
|
+
export declare const optional: <T extends import("./types/schema.types").TIdiomaticSchema>(schema: T) => import("@sinclair/typebox").TOptional<import("./types/schema.types").TResolve<T>>;
|
|
68
67
|
/**
|
|
69
68
|
* Defines an array for a valid schema.
|
|
70
69
|
*/
|
|
71
|
-
export declare const array:
|
|
70
|
+
export declare const array: <T extends import("./types/schema.types").TIdiomaticSchema>(schema: T) => import("@sinclair/typebox").TArray<import("./types/schema.types").TResolve<T>>;
|
|
72
71
|
/**
|
|
73
72
|
* Defines a union for a valid schema.
|
|
74
73
|
*/
|
|
75
|
-
export declare const union:
|
|
74
|
+
export declare const union: <T extends import("./types/schema.types").TUnionContainer>(schemas: [...T]) => import("@sinclair/typebox").TUnion<import("./types/schema.types").UnionTResolve<T>>;
|
|
76
75
|
/**
|
|
77
76
|
* Defines a literal for a valid schema.
|
|
78
77
|
*/
|
|
79
|
-
export declare const literal:
|
|
78
|
+
export declare const literal: <T extends import("../..").LiteralSchema>(value: T) => import("@sinclair/typebox").TLiteral<T>;
|
|
79
|
+
/**
|
|
80
|
+
* Defines an enum for a valid schema.
|
|
81
|
+
*/
|
|
82
|
+
export declare const enum_: <T extends import("../..").LiteralSchema>(schemaEnum: Record<string, T>) => import("@sinclair/typebox").TUnion<import("./types/schema.types").UnionTResolve<T[]>>;
|
|
80
83
|
/**
|
|
81
84
|
* Validates a value against a valid schema.
|
|
82
85
|
*/
|
|
83
|
-
export declare const validate:
|
|
86
|
+
export declare const validate: <T extends import("./types/schema.types").TIdiomaticSchema | import("@sinclair/typebox").TSchema>(schema: T | import("@sinclair/typebox/compiler").TypeCheck<import("./types/schema.types").TResolve<T>>, value: unknown) => boolean;
|
|
84
87
|
/**
|
|
85
88
|
* Parses a value against a valid schema.
|
|
86
89
|
*/
|
|
87
|
-
export declare const parse:
|
|
90
|
+
export declare const parse: <T extends import("./types/schema.types").TIdiomaticSchema | import("@sinclair/typebox").TSchema>(schema: T | import("@sinclair/typebox/compiler").TypeCheck<import("./types/schema.types").TResolve<T>>, value: unknown) => import("../..").ParseResult<import("./types/schema.types").TResolve<T>>;
|
|
88
91
|
/**
|
|
89
92
|
* Generates an OpenAPI schema object from a valid schema.
|
|
90
93
|
*/
|
|
91
|
-
export declare const openapi:
|
|
92
|
-
export {};
|
|
94
|
+
export declare const openapi: <T extends import("./types/schema.types").TIdiomaticSchema | import("@sinclair/typebox").TSchema>(schema: T) => import("openapi3-ts/oas31").SchemaObject;
|
|
93
95
|
//# sourceMappingURL=staticSchemaValidator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"staticSchemaValidator.d.ts","sourceRoot":"","sources":["../../../src/typebox/staticSchemaValidator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE;;;GAGG;AACH,eAAO,MAAM,eAAe,8BAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"staticSchemaValidator.d.ts","sourceRoot":"","sources":["../../../src/typebox/staticSchemaValidator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE;;;GAGG;AACH,eAAO,MAAM,eAAe,8BAAqC,CAAC;AAIlE;;GAEG;AACH,eAAO,MAAM,MAAM,qCAA+B,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,IAAI,qCAA6B,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,GAAG,qCAA4B,CAAC;AAE7C;;GAEG;AACH,eAAO,MAAM,KAAK,qCAA8B,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,MAAM,iTAA+B,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,MAAM,8QAA+B,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,OAAO,8KAAgC,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,IAAI,0QAA6B,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,MAAM,qCAA+B,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,OAAO,oJAAgC,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,GAAG,kCAA4B,CAAC;AAE7C;;GAEG;AACH,eAAO,MAAM,OAAO,sCAAgC,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,KAAK,oCAA8B,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,QAAQ,sHAEpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,6JAEpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,0JAA0D,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,KAAK,oKAA0D,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,OAAO,gGAEnB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,mKAA0D,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,QAAQ,sOAEpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,sSAA0D,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,OAAO,0JAEnB,CAAC"}
|
|
@@ -77,6 +77,10 @@ export const union = StaticSchemaValidator.union.bind(StaticSchemaValidator);
|
|
|
77
77
|
* Defines a literal for a valid schema.
|
|
78
78
|
*/
|
|
79
79
|
export const literal = StaticSchemaValidator.literal.bind(StaticSchemaValidator);
|
|
80
|
+
/**
|
|
81
|
+
* Defines an enum for a valid schema.
|
|
82
|
+
*/
|
|
83
|
+
export const enum_ = StaticSchemaValidator.enum_.bind(StaticSchemaValidator);
|
|
80
84
|
/**
|
|
81
85
|
* Validates a value against a valid schema.
|
|
82
86
|
*/
|
|
@@ -13,7 +13,7 @@ import { TIdiomaticSchema, TObject, TResolve, TUnionContainer, UnionTResolve } f
|
|
|
13
13
|
* Class representing a TypeBox schema definition.
|
|
14
14
|
* @implements {SchemaValidator}
|
|
15
15
|
*/
|
|
16
|
-
export declare class TypeboxSchemaValidator implements SV<(<T extends TObject<TProperties>>(schema: T) => TypeCheck<T>), <T extends TIdiomaticSchema>(schema: T) => TResolve<T>, <T extends TIdiomaticSchema>(schema: T) => TOptional<TResolve<T>>, <T extends TIdiomaticSchema>(schema: T) => TArray<TResolve<T>>, <T extends TUnionContainer>(schemas: [...T]) => TUnion<UnionTResolve<T>>, <T extends LiteralSchema>(value: T) => TLiteral<T>, <T extends TIdiomaticSchema>(schema: T, value: unknown) => boolean, <T extends TIdiomaticSchema>(schema: T, value: unknown) => ParseResult<TResolve<T>>, <T extends TIdiomaticSchema>(schema: T) => SchemaObject> {
|
|
16
|
+
export declare class TypeboxSchemaValidator implements SV<(<T extends TObject<TProperties>>(schema: T) => TypeCheck<T>), <T extends TIdiomaticSchema>(schema: T) => TResolve<T>, <T extends TIdiomaticSchema>(schema: T) => TOptional<TResolve<T>>, <T extends TIdiomaticSchema>(schema: T) => TArray<TResolve<T>>, <T extends TUnionContainer>(schemas: [...T]) => TUnion<UnionTResolve<T>>, <T extends LiteralSchema>(value: T) => TLiteral<T>, <T extends LiteralSchema>(schemaEnum: Record<string, T>) => TUnion<UnionTResolve<T[]>>, <T extends TIdiomaticSchema>(schema: T, value: unknown) => boolean, <T extends TIdiomaticSchema>(schema: T, value: unknown) => ParseResult<TResolve<T>>, <T extends TIdiomaticSchema>(schema: T) => SchemaObject> {
|
|
17
17
|
_Type: 'TypeBox';
|
|
18
18
|
_SchemaCatchall: TKind;
|
|
19
19
|
_ValidSchemaObject: TObject<TProperties> | TArray<TObject<TProperties>>;
|
|
@@ -84,6 +84,12 @@ export declare class TypeboxSchemaValidator implements SV<(<T extends TObject<TP
|
|
|
84
84
|
* @returns {TLiteral<T>} The literal schema.
|
|
85
85
|
*/
|
|
86
86
|
literal<T extends LiteralSchema>(value: T): TLiteral<T>;
|
|
87
|
+
/**
|
|
88
|
+
* Create an enum schema.
|
|
89
|
+
* @param {Record<string, LiteralSchema>} schemaEnum - The enum schema.
|
|
90
|
+
* @returns {TUnion<UnionTResolve<T[]>>} The enum schema.
|
|
91
|
+
*/
|
|
92
|
+
enum_<T extends LiteralSchema>(schemaEnum: Record<string, T>): TUnion<UnionTResolve<T[]>>;
|
|
87
93
|
/**
|
|
88
94
|
* Validate a value against a schema.
|
|
89
95
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typeboxSchemaValidator.d.ts","sourceRoot":"","sources":["../../../src/typebox/typeboxSchemaValidator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAGL,MAAM,EACN,KAAK,EACL,QAAQ,EACR,SAAS,EACT,WAAW,EACX,OAAO,EACP,MAAM,EAEP,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAgB,MAAM,4BAA4B,CAAC;AAOrE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EACL,aAAa,EACb,WAAW,EACX,eAAe,IAAI,EAAE,EACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAEL,gBAAgB,EAChB,OAAO,EAEP,QAAQ,EACR,eAAe,EACf,aAAa,EACd,MAAM,sBAAsB,CAAC;AAmB9B;;;GAGG;AACH,qBAAa,sBACX,YACE,EAAE,EACA,CAAC,CAAC,SAAS,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,GAC3D,CAAC,CAAC,SAAS,gBAAgB,EAAE,MAAM,EAAE,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,EACtD,CAAC,CAAC,SAAS,gBAAgB,EAAE,MAAM,EAAE,CAAC,KAAK,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EACjE,CAAC,CAAC,SAAS,gBAAgB,EAAE,MAAM,EAAE,CAAC,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAC9D,CAAC,CAAC,SAAS,eAAe,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EACxE,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,EAClD,CAAC,CAAC,SAAS,gBAAgB,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,EAClE,CAAC,CAAC,SAAS,gBAAgB,EACzB,MAAM,EAAE,CAAC,EACT,KAAK,EAAE,OAAO,KACX,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAC7B,CAAC,CAAC,SAAS,gBAAgB,EAAE,MAAM,EAAE,CAAC,KAAK,YAAY,CACxD;IAEH,KAAK,EAAG,SAAS,CAAC;IAClB,eAAe,EAAG,KAAK,CAAC;IACxB,kBAAkB,EAAG,OAAO,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IAEzE,MAAM,sCAAiB;IAEvB,IAAI,sCAID;IACH,GAAG,sCAGA;IACH,KAAK,sCAIF;IACH,MAAM,sRA2BY;IAClB,MAAM,mPAyBY;IAClB,OAAO,mJAsBY;IACnB,IAAI,+OA2BkC;IACtC,MAAM,sCAAiB;IACvB,OAAO,yHAEJ;IACH,GAAG,mCAAc;IACjB,OAAO,uCAAkB;IACzB,KAAK,qCAAgB;IAErB;;;;;OAKG;IACH,OAAO,CAAC,SAAS;
|
|
1
|
+
{"version":3,"file":"typeboxSchemaValidator.d.ts","sourceRoot":"","sources":["../../../src/typebox/typeboxSchemaValidator.ts"],"names":[],"mappings":"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"}
|
|
@@ -152,6 +152,9 @@ export class TypeboxSchemaValidator {
|
|
|
152
152
|
if (Object.hasOwn(schema, 'errorType')) {
|
|
153
153
|
return schema.errorType;
|
|
154
154
|
}
|
|
155
|
+
else if (KindGuard.IsLiteral(schema)) {
|
|
156
|
+
return schema.const;
|
|
157
|
+
}
|
|
155
158
|
return schema[Kind].toLowerCase();
|
|
156
159
|
}
|
|
157
160
|
/**
|
|
@@ -254,9 +257,17 @@ export class TypeboxSchemaValidator {
|
|
|
254
257
|
*/
|
|
255
258
|
literal(value) {
|
|
256
259
|
return Type.Literal(value, {
|
|
257
|
-
errorType:
|
|
260
|
+
errorType: value
|
|
258
261
|
});
|
|
259
262
|
}
|
|
263
|
+
/**
|
|
264
|
+
* Create an enum schema.
|
|
265
|
+
* @param {Record<string, LiteralSchema>} schemaEnum - The enum schema.
|
|
266
|
+
* @returns {TUnion<UnionTResolve<T[]>>} The enum schema.
|
|
267
|
+
*/
|
|
268
|
+
enum_(schemaEnum) {
|
|
269
|
+
return this.union(Object.values(schemaEnum));
|
|
270
|
+
}
|
|
260
271
|
/**
|
|
261
272
|
* Validate a value against a schema.
|
|
262
273
|
*
|
|
@@ -4,90 +4,92 @@ import { ZodSchemaValidator } from './zodSchemaValidator';
|
|
|
4
4
|
* @returns {ZodSchemaValidator} The ZodSchemaValidator instance.
|
|
5
5
|
*/
|
|
6
6
|
export declare const SchemaValidator: () => ZodSchemaValidator;
|
|
7
|
-
declare const StaticSchemaValidator: ZodSchemaValidator;
|
|
8
7
|
/**
|
|
9
8
|
* Zod schema definition for string type.
|
|
10
9
|
*/
|
|
11
|
-
export declare const string:
|
|
10
|
+
export declare const string: import("zod").ZodString;
|
|
12
11
|
/**
|
|
13
12
|
* Zod schema definition for UUID type.
|
|
14
13
|
*/
|
|
15
|
-
export declare const uuid:
|
|
14
|
+
export declare const uuid: import("zod").ZodString;
|
|
16
15
|
/**
|
|
17
16
|
* Zod schema definition for email type.
|
|
18
17
|
*/
|
|
19
|
-
export declare const email:
|
|
18
|
+
export declare const email: import("zod").ZodString;
|
|
20
19
|
/**
|
|
21
20
|
* Zod schema definition for URI type.
|
|
22
21
|
*/
|
|
23
|
-
export declare const uri:
|
|
22
|
+
export declare const uri: import("zod").ZodString;
|
|
24
23
|
/**
|
|
25
24
|
* Zod schema definition for number type.
|
|
26
25
|
*/
|
|
27
|
-
export declare const number:
|
|
26
|
+
export declare const number: import("zod").ZodNumber;
|
|
28
27
|
/**
|
|
29
28
|
* Zod schema definition for bigint type.
|
|
30
29
|
*/
|
|
31
|
-
export declare const bigint:
|
|
30
|
+
export declare const bigint: import("zod").ZodBigInt;
|
|
32
31
|
/**
|
|
33
32
|
* Zod schema definition for boolean type.
|
|
34
33
|
*/
|
|
35
|
-
export declare const boolean:
|
|
34
|
+
export declare const boolean: import("zod").ZodEffects<import("zod").ZodBoolean, boolean, unknown>;
|
|
36
35
|
/**
|
|
37
36
|
* Zod schema definition for date type.
|
|
38
37
|
*/
|
|
39
|
-
export declare const date:
|
|
38
|
+
export declare const date: import("zod").ZodDate;
|
|
40
39
|
/**
|
|
41
40
|
* Zod schema definition for symbol type.
|
|
42
41
|
*/
|
|
43
|
-
export declare const symbol:
|
|
42
|
+
export declare const symbol: import("zod").ZodSymbol;
|
|
44
43
|
/**
|
|
45
44
|
* Zod schema definition for undefined, null, void types.
|
|
46
45
|
*/
|
|
47
|
-
export declare const nullish:
|
|
46
|
+
export declare const nullish: import("zod").ZodUnion<[import("zod").ZodVoid, import("zod").ZodNull, import("zod").ZodUndefined]>;
|
|
48
47
|
/**
|
|
49
48
|
* Zod schema definition for any type.
|
|
50
49
|
*/
|
|
51
|
-
export declare const any:
|
|
50
|
+
export declare const any: import("zod").ZodAny;
|
|
52
51
|
/**
|
|
53
52
|
* Zod schema definition for unknown type.
|
|
54
53
|
*/
|
|
55
|
-
export declare const unknown:
|
|
54
|
+
export declare const unknown: import("zod").ZodUnknown;
|
|
56
55
|
/**
|
|
57
56
|
* Zod schema definition for never type.
|
|
58
57
|
*/
|
|
59
|
-
export declare const never:
|
|
58
|
+
export declare const never: import("zod").ZodNever;
|
|
60
59
|
/**
|
|
61
60
|
* Transforms valid schema into Zod schema.
|
|
62
61
|
*/
|
|
63
|
-
export declare const schemify:
|
|
62
|
+
export declare const schemify: <T extends import("./types/schema.types").ZodIdiomaticSchema>(schema: T) => import("./types/schema.types").ZodResolve<T>;
|
|
64
63
|
/**
|
|
65
64
|
* Makes a valid schema optional.
|
|
66
65
|
*/
|
|
67
|
-
export declare const optional:
|
|
66
|
+
export declare const optional: <T extends import("./types/schema.types").ZodIdiomaticSchema>(schema: T) => import("zod").ZodOptional<import("./types/schema.types").ZodResolve<T>>;
|
|
68
67
|
/**
|
|
69
68
|
* Defines an array for a valid schema.
|
|
70
69
|
*/
|
|
71
|
-
export declare const array:
|
|
70
|
+
export declare const array: <T extends import("./types/schema.types").ZodIdiomaticSchema>(schema: T) => import("zod").ZodArray<import("./types/schema.types").ZodResolve<T>>;
|
|
72
71
|
/**
|
|
73
72
|
* Defines a union for a valid schema.
|
|
74
73
|
*/
|
|
75
|
-
export declare const union:
|
|
74
|
+
export declare const union: <T extends import("./types/schema.types").ZodUnionContainer>(schemas: T) => import("zod").ZodUnion<import("./types/schema.types").UnionZodResolve<T>>;
|
|
76
75
|
/**
|
|
77
76
|
* Defines a literal for a valid schema.
|
|
78
77
|
*/
|
|
79
|
-
export declare const literal:
|
|
78
|
+
export declare const literal: <T extends import("../..").LiteralSchema>(value: T) => import("zod").ZodLiteral<import("./types/schema.types").ZodResolve<T>>;
|
|
79
|
+
/**
|
|
80
|
+
* Defines an enum for a valid schema.
|
|
81
|
+
*/
|
|
82
|
+
export declare const enum_: <T extends import("../..").LiteralSchema>(schemaEnum: Record<string, T>) => import("zod").ZodUnion<import("./types/schema.types").UnionZodResolve<[T, T, ...T[]]>>;
|
|
80
83
|
/**
|
|
81
84
|
* Validates a value against a valid schema.
|
|
82
85
|
*/
|
|
83
|
-
export declare const validate:
|
|
86
|
+
export declare const validate: <T extends import("./types/schema.types").ZodCatchall>(schema: T, value: unknown) => boolean;
|
|
84
87
|
/**
|
|
85
88
|
* Parses a value to be conformant to a particular schema.
|
|
86
89
|
*/
|
|
87
|
-
export declare const parse:
|
|
90
|
+
export declare const parse: <T extends import("./types/schema.types").ZodCatchall>(schema: T, value: unknown) => import("../..").ParseResult<import("./types/schema.types").ZodResolve<T>>;
|
|
88
91
|
/**
|
|
89
92
|
* Generates an OpenAPI schema object from a valid schema.
|
|
90
93
|
*/
|
|
91
|
-
export declare const openapi:
|
|
92
|
-
export {};
|
|
94
|
+
export declare const openapi: <T extends import("./types/schema.types").ZodIdiomaticSchema>(schema: T) => import("openapi3-ts/oas31").SchemaObject;
|
|
93
95
|
//# sourceMappingURL=staticSchemaValidator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"staticSchemaValidator.d.ts","sourceRoot":"","sources":["../../../src/zod/staticSchemaValidator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;;GAGG;AACH,eAAO,MAAM,eAAe,0BAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"staticSchemaValidator.d.ts","sourceRoot":"","sources":["../../../src/zod/staticSchemaValidator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;;GAGG;AACH,eAAO,MAAM,eAAe,0BAAiC,CAAC;AAI9D;;GAEG;AACH,eAAO,MAAM,MAAM,yBAA+B,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,IAAI,yBAA6B,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,KAAK,yBAA8B,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,GAAG,yBAA4B,CAAC;AAE7C;;GAEG;AACH,eAAO,MAAM,MAAM,yBAA+B,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,MAAM,yBAA+B,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,OAAO,sEAAgC,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,IAAI,uBAA6B,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,MAAM,yBAA+B,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,OAAO,oGAAgC,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,GAAG,sBAA4B,CAAC;AAE7C;;GAEG;AACH,eAAO,MAAM,OAAO,0BAAgC,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,KAAK,wBAA8B,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,QAAQ,0HAEpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,qJAEpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,kJAA0D,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,KAAK,uJAA0D,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,OAAO,+HAEnB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,oKAA0D,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,QAAQ,8FAEpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,gKAA0D,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,OAAO,sHAEnB,CAAC"}
|
|
@@ -77,6 +77,10 @@ export const union = StaticSchemaValidator.union.bind(StaticSchemaValidator);
|
|
|
77
77
|
* Defines a literal for a valid schema.
|
|
78
78
|
*/
|
|
79
79
|
export const literal = StaticSchemaValidator.literal.bind(StaticSchemaValidator);
|
|
80
|
+
/**
|
|
81
|
+
* Defines an enum for a valid schema.
|
|
82
|
+
*/
|
|
83
|
+
export const enum_ = StaticSchemaValidator.enum_.bind(StaticSchemaValidator);
|
|
80
84
|
/**
|
|
81
85
|
* Validates a value against a valid schema.
|
|
82
86
|
*/
|
|
@@ -12,7 +12,7 @@ import { UnionZodResolve, ZodCatchall, ZodIdiomaticSchema, ZodResolve, ZodUnionC
|
|
|
12
12
|
* Class representing a Zod schema definition.
|
|
13
13
|
* @implements {StaticSchemaValidator}
|
|
14
14
|
*/
|
|
15
|
-
export declare class ZodSchemaValidator implements SV<(<T extends ZodObject<ZodRawShape>>(schema: T) => ZodResolve<T>), <T extends ZodIdiomaticSchema>(schema: T) => ZodResolve<T>, <T extends ZodIdiomaticSchema>(schema: T) => ZodOptional<ZodResolve<T>>, <T extends ZodIdiomaticSchema>(schema: T) => ZodArray<ZodResolve<T>>, <T extends ZodUnionContainer>(schemas: T) => ZodUnion<UnionZodResolve<T>>, <T extends LiteralSchema>(value: T) => ZodLiteral<ZodResolve<T>>, <T extends ZodCatchall>(schema: T, value: unknown) => boolean, <T extends ZodCatchall>(schema: T, value: unknown) => ParseResult<ZodResolve<T>>, <T extends ZodIdiomaticSchema>(schema: T) => SchemaObject> {
|
|
15
|
+
export declare class ZodSchemaValidator implements SV<(<T extends ZodObject<ZodRawShape>>(schema: T) => ZodResolve<T>), <T extends ZodIdiomaticSchema>(schema: T) => ZodResolve<T>, <T extends ZodIdiomaticSchema>(schema: T) => ZodOptional<ZodResolve<T>>, <T extends ZodIdiomaticSchema>(schema: T) => ZodArray<ZodResolve<T>>, <T extends ZodUnionContainer>(schemas: T) => ZodUnion<UnionZodResolve<T>>, <T extends LiteralSchema>(value: T) => ZodLiteral<ZodResolve<T>>, <T extends LiteralSchema>(schemaEnum: Record<string, T>) => ZodUnion<UnionZodResolve<[T, T, ...T[]]>>, <T extends ZodCatchall>(schema: T, value: unknown) => boolean, <T extends ZodCatchall>(schema: T, value: unknown) => ParseResult<ZodResolve<T>>, <T extends ZodIdiomaticSchema>(schema: T) => SchemaObject> {
|
|
16
16
|
_Type: 'Zod';
|
|
17
17
|
_SchemaCatchall: ZodType;
|
|
18
18
|
_ValidSchemaObject: ZodObject<ZodRawShape> | ZodArray<ZodObject<ZodRawShape>>;
|
|
@@ -73,6 +73,12 @@ export declare class ZodSchemaValidator implements SV<(<T extends ZodObject<ZodR
|
|
|
73
73
|
* @returns {ZodLiteral<ZodResolve<T>>} The literal schema.
|
|
74
74
|
*/
|
|
75
75
|
literal<T extends LiteralSchema>(value: T): ZodLiteral<ZodResolve<T>>;
|
|
76
|
+
/**
|
|
77
|
+
* Create an enum schema.
|
|
78
|
+
* @param {Record<string, LiteralSchema>} schemaEnum - The enum schema.
|
|
79
|
+
* @returns {ZodUnion<UnionZodResolve<[T, T, ...T[]]>>} The enum schema.
|
|
80
|
+
*/
|
|
81
|
+
enum_<T extends LiteralSchema>(schemaEnum: Record<string, T>): ZodUnion<UnionZodResolve<[T, T, ...T[]]>>;
|
|
76
82
|
/**
|
|
77
83
|
* Validate a value against a schema.
|
|
78
84
|
* @param {ZodCatchall} schema - The schema to validate against.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zodSchemaValidator.d.ts","sourceRoot":"","sources":["../../../src/zod/zodSchemaValidator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"zodSchemaValidator.d.ts","sourceRoot":"","sources":["../../../src/zod/zodSchemaValidator.ts"],"names":[],"mappings":"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"}
|
|
@@ -116,16 +116,13 @@ export class ZodSchemaValidator {
|
|
|
116
116
|
* @returns {ZodUnion<UnionZodResolve<T>>} The union schema.
|
|
117
117
|
*/
|
|
118
118
|
union(schemas) {
|
|
119
|
-
|
|
120
|
-
throw new Error('Union must have at least two schemas');
|
|
121
|
-
}
|
|
122
|
-
const unionTypes = schemas.map((schema) => {
|
|
119
|
+
const resolvedSchemas = schemas.map((schema) => {
|
|
123
120
|
if (schema instanceof ZodType) {
|
|
124
121
|
return schema;
|
|
125
122
|
}
|
|
126
123
|
return this.schemify(schema);
|
|
127
124
|
});
|
|
128
|
-
return z.union(
|
|
125
|
+
return z.union(resolvedSchemas);
|
|
129
126
|
}
|
|
130
127
|
/**
|
|
131
128
|
* Create a literal schema.
|
|
@@ -135,6 +132,14 @@ export class ZodSchemaValidator {
|
|
|
135
132
|
literal(value) {
|
|
136
133
|
return z.literal(value);
|
|
137
134
|
}
|
|
135
|
+
/**
|
|
136
|
+
* Create an enum schema.
|
|
137
|
+
* @param {Record<string, LiteralSchema>} schemaEnum - The enum schema.
|
|
138
|
+
* @returns {ZodUnion<UnionZodResolve<[T, T, ...T[]]>>} The enum schema.
|
|
139
|
+
*/
|
|
140
|
+
enum_(schemaEnum) {
|
|
141
|
+
return this.union(Object.values(schemaEnum));
|
|
142
|
+
}
|
|
138
143
|
/**
|
|
139
144
|
* Validate a value against a schema.
|
|
140
145
|
* @param {ZodCatchall} schema - The schema to validate against.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Type } from '@sinclair/typebox';
|
|
2
|
-
import { array, number, openapi, optional, parse, schemify, string, union, validate } from '../../src/typebox/staticSchemaValidator';
|
|
2
|
+
import { array, enum_, number, openapi, optional, parse, schemify, string, union, validate } from '../../src/typebox/staticSchemaValidator';
|
|
3
3
|
import { compare } from '../utils/compare';
|
|
4
4
|
describe('typebox schema validator tests', () => {
|
|
5
5
|
let schema;
|
|
@@ -145,6 +145,27 @@ describe('typebox schema validator tests', () => {
|
|
|
145
145
|
hello: Type.Literal('world')
|
|
146
146
|
}));
|
|
147
147
|
});
|
|
148
|
+
test('enum', async () => {
|
|
149
|
+
let TestSingleEnum;
|
|
150
|
+
(function (TestSingleEnum) {
|
|
151
|
+
TestSingleEnum["WORLD"] = "world";
|
|
152
|
+
})(TestSingleEnum || (TestSingleEnum = {}));
|
|
153
|
+
const schemified = enum_(TestSingleEnum);
|
|
154
|
+
compare(schemified, Type.Literal('world', {
|
|
155
|
+
errorType: 'any of world',
|
|
156
|
+
errorSuffix: true
|
|
157
|
+
}));
|
|
158
|
+
let TestMultipleEnum;
|
|
159
|
+
(function (TestMultipleEnum) {
|
|
160
|
+
TestMultipleEnum["WORLD"] = "world";
|
|
161
|
+
TestMultipleEnum["HELLO"] = "hello";
|
|
162
|
+
})(TestMultipleEnum || (TestMultipleEnum = {}));
|
|
163
|
+
const schemifiedMultiple = enum_(TestMultipleEnum);
|
|
164
|
+
compare(schemifiedMultiple, Type.Union([Type.Literal('world'), Type.Literal('hello')], {
|
|
165
|
+
errorType: 'any of world, hello',
|
|
166
|
+
errorSuffix: true
|
|
167
|
+
}));
|
|
168
|
+
});
|
|
148
169
|
test('validate', async () => {
|
|
149
170
|
validate(schemified, {
|
|
150
171
|
hello: {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export const compare = (received, expected) => {
|
|
2
2
|
switch (typeof received) {
|
|
3
3
|
case 'bigint':
|
|
4
|
-
return expect(
|
|
4
|
+
return expect(expected).toEqual(received);
|
|
5
5
|
default:
|
|
6
|
-
return expect(JSON.stringify(
|
|
6
|
+
return expect(JSON.stringify(expected)).toEqual(JSON.stringify(received));
|
|
7
7
|
}
|
|
8
8
|
};
|
|
@@ -13,7 +13,7 @@ type RecursiveUnion<T extends readonly string[]> = T extends readonly [
|
|
|
13
13
|
infer F extends string,
|
|
14
14
|
...infer R extends readonly string[]
|
|
15
15
|
] ? R extends [] ? F : `${F} | ${RecursiveUnion<R>}` : '';
|
|
16
|
-
export declare class MockSchemaValidator implements SchemaValidator<(<T extends string>(schema: T) => T), <T extends string>(schema: T) => T, <T extends string>(schema: T) => `optional ${T}`, <T extends string>(schema: T) => `array ${T}`, <T extends readonly string[]>(schemas: T) => RecursiveUnion<T>, <T extends LiteralSchema>(schema: T) => `literal ${T}`, <T extends string>(schema: T, value: string) => boolean, <T extends string>(schema: T, value: string) => ParseResult<T>, <T extends string>(schema: T) => SchemaObject> {
|
|
16
|
+
export declare class MockSchemaValidator implements SchemaValidator<(<T extends string>(schema: T) => T), <T extends string>(schema: T) => T, <T extends string>(schema: T) => `optional ${T}`, <T extends string>(schema: T) => `array ${T}`, <T extends readonly string[]>(schemas: T) => RecursiveUnion<T>, <T extends LiteralSchema>(schema: T) => `literal ${T}`, <T extends LiteralSchema>(schemaEnum: Record<string, T>) => `enum ${T}`, <T extends string>(schema: T, value: string) => boolean, <T extends string>(schema: T, value: string) => ParseResult<T>, <T extends string>(schema: T) => SchemaObject> {
|
|
17
17
|
_Type: 'Mock';
|
|
18
18
|
_SchemaCatchall: string;
|
|
19
19
|
_ValidSchemaObject: string;
|
|
@@ -36,6 +36,7 @@ export declare class MockSchemaValidator implements SchemaValidator<(<T extends
|
|
|
36
36
|
array<T extends string>(schema: T): `array ${T}`;
|
|
37
37
|
union<T extends readonly string[]>(schemas: T): RecursiveUnion<T>;
|
|
38
38
|
literal<T extends LiteralSchema>(schema: T): `literal ${T}`;
|
|
39
|
+
enum_<T extends LiteralSchema>(schemaEnum: Record<string, T>): `enum ${T}`;
|
|
39
40
|
validate<T extends string>(schema: T, value: string): boolean;
|
|
40
41
|
parse<T extends string>(schema: T, value: string): ParseResult<T>;
|
|
41
42
|
openapi<T extends string>(_schema: T): SchemaObject;
|
|
@@ -56,6 +57,7 @@ export declare const optional: <T extends string>(schema: T) => `optional ${T}`;
|
|
|
56
57
|
export declare const array: <T extends string>(schema: T) => `array ${T}`;
|
|
57
58
|
export declare const union: <T extends readonly string[]>(schemas: T) => RecursiveUnion<T>;
|
|
58
59
|
export declare const literal: <T extends LiteralSchema>(schema: T) => `literal ${T}`;
|
|
60
|
+
export declare const enum_: <T extends LiteralSchema>(schemaEnum: Record<string, T>) => `enum ${T}`;
|
|
59
61
|
export declare const validate: <T extends string>(schema: T, value: string) => boolean;
|
|
60
62
|
export declare const openapi: <T extends string>(_schema: T) => SchemaObject;
|
|
61
63
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mockSchemaValidator.d.ts","sourceRoot":"","sources":["../../../tests/utils/mockSchemaValidator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mockSchemaValidator.d.ts","sourceRoot":"","sources":["../../../tests/utils/mockSchemaValidator.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,10 +22,10 @@ export class MockSchemaValidator {
|
|
|
22
22
|
return schema;
|
|
23
23
|
}
|
|
24
24
|
optional(schema) {
|
|
25
|
-
return
|
|
25
|
+
return `optional ${schema}`;
|
|
26
26
|
}
|
|
27
27
|
array(schema) {
|
|
28
|
-
return
|
|
28
|
+
return `array ${schema}`;
|
|
29
29
|
}
|
|
30
30
|
union(schemas) {
|
|
31
31
|
return schemas.join(' | ');
|
|
@@ -33,6 +33,9 @@ export class MockSchemaValidator {
|
|
|
33
33
|
literal(schema) {
|
|
34
34
|
return `literal ${schema}`;
|
|
35
35
|
}
|
|
36
|
+
enum_(schemaEnum) {
|
|
37
|
+
return `enum ${Object.values(schemaEnum).join(' | ')}`;
|
|
38
|
+
}
|
|
36
39
|
validate(schema, value) {
|
|
37
40
|
return schema === value;
|
|
38
41
|
}
|
|
@@ -68,5 +71,6 @@ export const array = mockSchemaValidator.array.bind(mockSchemaValidator);
|
|
|
68
71
|
// note, use 'as const' when calling on the input array, for proper type parsing
|
|
69
72
|
export const union = mockSchemaValidator.union.bind(mockSchemaValidator);
|
|
70
73
|
export const literal = mockSchemaValidator.literal.bind(mockSchemaValidator);
|
|
74
|
+
export const enum_ = mockSchemaValidator.enum_.bind(mockSchemaValidator);
|
|
71
75
|
export const validate = mockSchemaValidator.validate.bind(mockSchemaValidator);
|
|
72
76
|
export const openapi = mockSchemaValidator.openapi.bind(mockSchemaValidator);
|