From 3b67dc0b59c8cf05fb5ee00b1560a2ab68ca3918 Mon Sep 17 00:00:00 2001 From: Caleb Chase Date: Mon, 11 Jan 2021 08:02:27 -0600 Subject: [PATCH] Add Lazy within object and array schema generics (#1170) --- src/index.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/index.ts b/src/index.ts index 97ae53eef..26f41e088 100644 --- a/src/index.ts +++ b/src/index.ts @@ -40,19 +40,19 @@ function addMethod(schemaType: any, name: string, fn: any) { type ObjectSchemaOf = ObjectSchema< { [k in keyof T]-?: T[k] extends Array - ? ArraySchema> + ? ArraySchema | Lazy>> : T[k] extends AnyObject ? // we can't use ObjectSchema<{ []: SchemaOf }> b/c TS produces a union of two schema - ObjectSchemaOf + ObjectSchemaOf | ObjectSchemaOf> : BaseSchema, AnyObject, T[k]>; } >; type SchemaOf = T extends Array - ? ArraySchema | Lazy>> - : T extends AnyObject - ? ObjectSchemaOf - : BaseSchema, AnyObject, T>; + ? ArraySchema | Lazy>> + : T extends AnyObject + ? ObjectSchemaOf + : BaseSchema, AnyObject, T>; export type AnyObjectSchema = ObjectSchema;