@forklaunch/validator 0.3.11 → 0.3.12

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.
@@ -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, 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> {
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, SchemaGuardFunction = <T>(value: unknown) => value is T, 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
  */
@@ -139,6 +139,13 @@ export interface SchemaValidator<CompilationFunction = <T>(schema: T) => unknown
139
139
  * @returns {unknown} - The enum schema.
140
140
  */
141
141
  enum_: EnumFunction;
142
+ /**
143
+ * Checks if a value is a schema.
144
+ *
145
+ * @param {unknown} value - The value to check.
146
+ * @returns {boolean} - Whether the value is a schema.
147
+ */
148
+ isSchema: SchemaGuardFunction;
142
149
  /**
143
150
  * Validates a value against a schema.
144
151
  *
@@ -166,7 +173,7 @@ export interface SchemaValidator<CompilationFunction = <T>(schema: T) => unknown
166
173
  /**
167
174
  * Type representing any schema validator.
168
175
  */
169
- export type AnySchemaValidator = SchemaValidator<unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown> & {
176
+ export type AnySchemaValidator = SchemaValidator<unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown> & {
170
177
  /**
171
178
  * The type of the schema resolver.
172
179
  */
@@ -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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"}
@@ -80,6 +80,10 @@ export declare const literal: <T extends import("../..").LiteralSchema>(value: T
80
80
  * Defines an enum for a valid schema.
81
81
  */
82
82
  export declare const enum_: <T extends import("../..").LiteralSchema>(schemaEnum: Record<string, T>) => import("@sinclair/typebox").TUnion<import("./types/schema.types").UnionTResolve<T[]>>;
83
+ /**
84
+ * Checks if a value is a TypeBox schema.
85
+ */
86
+ export declare const isSchema: (value: unknown) => value is import("@sinclair/typebox").TSchema;
83
87
  /**
84
88
  * Validates a value against a valid schema.
85
89
  */
@@ -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;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"}
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,kEAEpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,sOAEpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,sSAA0D,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,OAAO,0JAEnB,CAAC"}
@@ -81,6 +81,10 @@ export const literal = StaticSchemaValidator.literal.bind(StaticSchemaValidator)
81
81
  * Defines an enum for a valid schema.
82
82
  */
83
83
  export const enum_ = StaticSchemaValidator.enum_.bind(StaticSchemaValidator);
84
+ /**
85
+ * Checks if a value is a TypeBox schema.
86
+ */
87
+ export const isSchema = StaticSchemaValidator.isSchema.bind(StaticSchemaValidator);
84
88
  /**
85
89
  * Validates a value against a valid schema.
86
90
  */
@@ -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 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> {
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[]>>, (value: unknown) => value is TSchema, <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>>;
@@ -90,6 +90,12 @@ export declare class TypeboxSchemaValidator implements SV<(<T extends TObject<TP
90
90
  * @returns {TUnion<UnionTResolve<T[]>>} The enum schema.
91
91
  */
92
92
  enum_<T extends LiteralSchema>(schemaEnum: Record<string, T>): TUnion<UnionTResolve<T[]>>;
93
+ /**
94
+ * Check if a value is a TypeBox object schema.
95
+ * @param {unknown} value - The value to check.
96
+ * @returns {boolean} True if the value is a TypeBox object schema.
97
+ */
98
+ isSchema(value: unknown): value is TSchema;
93
99
  /**
94
100
  * Validate a value against a schema.
95
101
  *
@@ -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,aAAa,EACtB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,KAC1B,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAC/B,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;IASjB;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAWhC;;;;;OAKG;IACH,OAAO,CAAC,CAAC,SAAS,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;IAIhE;;;;OAIG;IACH,QAAQ,CAAC,CAAC,SAAS,gBAAgB,EAAE,MAAM,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;IA0B5D;;;;OAIG;IACH,QAAQ,CAAC,CAAC,SAAS,gBAAgB,EAAE,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAOvE;;;;OAIG;IACH,KAAK,CAAC,CAAC,SAAS,gBAAgB,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IASjE;;;;;;;OAOG;IACH,KAAK,CAAC,CAAC,SAAS,eAAe,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAa3E;;;;OAIG;IACH,OAAO,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;IAMvD;;;;OAIG;IACH,KAAK,CAAC,CAAC,SAAS,aAAa,EAC3B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAC5B,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC;IAI7B;;;;;;OAMG;IACH,QAAQ,CAAC,CAAC,SAAS,gBAAgB,GAAG,OAAO,EAC3C,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAClC,KAAK,EAAE,OAAO,GACb,OAAO;IAWV;;;;;;OAMG;IACH,KAAK,CAAC,CAAC,SAAS,gBAAgB,GAAG,OAAO,EACxC,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAClC,KAAK,EAAE,OAAO,GACb,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAgC3B;;;;OAIG;IACH,OAAO,CAAC,CAAC,SAAS,gBAAgB,GAAG,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,YAAY;CA0BvE"}
1
+ {"version":3,"file":"typeboxSchemaValidator.d.ts","sourceRoot":"","sources":["../../../src/typebox/typeboxSchemaValidator.ts"],"names":[],"mappings":"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"}
@@ -268,6 +268,14 @@ export class TypeboxSchemaValidator {
268
268
  enum_(schemaEnum) {
269
269
  return this.union(Object.values(schemaEnum));
270
270
  }
271
+ /**
272
+ * Check if a value is a TypeBox object schema.
273
+ * @param {unknown} value - The value to check.
274
+ * @returns {boolean} True if the value is a TypeBox object schema.
275
+ */
276
+ isSchema(value) {
277
+ return KindGuard.IsSchema(value);
278
+ }
271
279
  /**
272
280
  * Validate a value against a schema.
273
281
  *
@@ -80,6 +80,10 @@ export declare const literal: <T extends import("../..").LiteralSchema>(value: T
80
80
  * Defines an enum for a valid schema.
81
81
  */
82
82
  export declare const enum_: <T extends import("../..").LiteralSchema>(schemaEnum: Record<string, T>) => import("zod").ZodUnion<import("./types/schema.types").UnionZodResolve<[T, T, ...T[]]>>;
83
+ /**
84
+ * Checks if a value is a Zod schema.
85
+ */
86
+ export declare const isSchema: (value: unknown) => value is import("zod").ZodSchema;
83
87
  /**
84
88
  * Validates a value against a valid schema.
85
89
  */
@@ -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;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"}
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,sDAEpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,8FAEpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,gKAA0D,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,OAAO,sHAEnB,CAAC"}
@@ -81,6 +81,10 @@ export const literal = StaticSchemaValidator.literal.bind(StaticSchemaValidator)
81
81
  * Defines an enum for a valid schema.
82
82
  */
83
83
  export const enum_ = StaticSchemaValidator.enum_.bind(StaticSchemaValidator);
84
+ /**
85
+ * Checks if a value is a Zod schema.
86
+ */
87
+ export const isSchema = StaticSchemaValidator.isSchema.bind(StaticSchemaValidator);
84
88
  /**
85
89
  * Validates a value against a valid schema.
86
90
  */
@@ -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 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> {
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[]]>>, (value: unknown) => value is ZodType, <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>>;
@@ -79,6 +79,12 @@ export declare class ZodSchemaValidator implements SV<(<T extends ZodObject<ZodR
79
79
  * @returns {ZodUnion<UnionZodResolve<[T, T, ...T[]]>>} The enum schema.
80
80
  */
81
81
  enum_<T extends LiteralSchema>(schemaEnum: Record<string, T>): ZodUnion<UnionZodResolve<[T, T, ...T[]]>>;
82
+ /**
83
+ * Checks if a value is a Zod schema.
84
+ * @param {unknown} value - The value to check.
85
+ * @returns {boolean} True if the value is a Zod schema.
86
+ */
87
+ isSchema(value: unknown): value is ZodType;
82
88
  /**
83
89
  * Validate a value against a schema.
84
90
  * @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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"}
@@ -140,6 +140,14 @@ export class ZodSchemaValidator {
140
140
  enum_(schemaEnum) {
141
141
  return this.union(Object.values(schemaEnum));
142
142
  }
143
+ /**
144
+ * Checks if a value is a Zod schema.
145
+ * @param {unknown} value - The value to check.
146
+ * @returns {boolean} True if the value is a Zod schema.
147
+ */
148
+ isSchema(value) {
149
+ return value instanceof ZodType;
150
+ }
143
151
  /**
144
152
  * Validate a value against a schema.
145
153
  * @param {ZodCatchall} schema - The schema to validate against.
@@ -1,5 +1,5 @@
1
1
  import { Type } from '@sinclair/typebox';
2
- import { array, enum_, number, openapi, optional, parse, schemify, string, union, validate } from '../../src/typebox/staticSchemaValidator';
2
+ import { array, enum_, isSchema, 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;
@@ -166,6 +166,19 @@ describe('typebox schema validator tests', () => {
166
166
  errorSuffix: true
167
167
  }));
168
168
  });
169
+ test('isSchema', () => {
170
+ expect(isSchema(Type.String())).toBe(true);
171
+ expect(isSchema(Type.Number())).toBe(true);
172
+ expect(isSchema(Type.Object({
173
+ foo: Type.String()
174
+ }))).toBe(true);
175
+ expect(isSchema(Type.Array(Type.String()))).toBe(true);
176
+ expect(isSchema('not a schema')).toBe(false);
177
+ expect(isSchema(42)).toBe(false);
178
+ expect(isSchema({})).toBe(false);
179
+ expect(isSchema(null)).toBe(false);
180
+ expect(isSchema(undefined)).toBe(false);
181
+ });
169
182
  test('validate', async () => {
170
183
  validate(schemified, {
171
184
  hello: {
@@ -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 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> {
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}`, (value: unknown) => value is string, <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;
@@ -37,6 +37,7 @@ export declare class MockSchemaValidator implements SchemaValidator<(<T extends
37
37
  union<T extends readonly string[]>(schemas: T): RecursiveUnion<T>;
38
38
  literal<T extends LiteralSchema>(schema: T): `literal ${T}`;
39
39
  enum_<T extends LiteralSchema>(schemaEnum: Record<string, T>): `enum ${T}`;
40
+ isSchema(value: unknown): value is string;
40
41
  validate<T extends string>(schema: T, value: string): boolean;
41
42
  parse<T extends string>(schema: T, value: string): ParseResult<T>;
42
43
  openapi<T extends string>(_schema: T): SchemaObject;
@@ -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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"}
@@ -36,6 +36,9 @@ export class MockSchemaValidator {
36
36
  enum_(schemaEnum) {
37
37
  return `enum ${Object.values(schemaEnum).join(' | ')}`;
38
38
  }
39
+ isSchema(value) {
40
+ return typeof value === 'string';
41
+ }
39
42
  validate(schema, value) {
40
43
  return schema === value;
41
44
  }
@@ -1,6 +1,6 @@
1
1
  import { generateSchema } from '@anatine/zod-openapi';
2
2
  import { z } from 'zod';
3
- import { array, enum_, number, openapi, optional, parse, schemify, string, union, validate } from '../../src/zod';
3
+ import { array, enum_, isSchema, number, openapi, optional, parse, schemify, string, union, validate } from '../../src/zod';
4
4
  import { compare } from '../utils/compare';
5
5
  describe('zod schema validator tests', () => {
6
6
  let schema;
@@ -133,6 +133,17 @@ describe('zod schema validator tests', () => {
133
133
  const schemifiedMultiple = enum_(TestMultipleEnum);
134
134
  compare(schemifiedMultiple, z.union([z.literal('world'), z.literal('hello')]));
135
135
  });
136
+ test('isSchema', () => {
137
+ expect(isSchema(z.string())).toBe(true);
138
+ expect(isSchema(z.number())).toBe(true);
139
+ expect(isSchema(z.object({ foo: z.string() }))).toBe(true);
140
+ expect(isSchema(schemified)).toBe(true);
141
+ expect(isSchema('not a schema')).toBe(false);
142
+ expect(isSchema(42)).toBe(false);
143
+ expect(isSchema({})).toBe(false);
144
+ expect(isSchema(null)).toBe(false);
145
+ expect(isSchema(undefined)).toBe(false);
146
+ });
136
147
  test('validate', async () => {
137
148
  validate(schemified, {
138
149
  hello: {