0.1.2 #3
@@ -4,6 +4,9 @@ import { z } from "zod"
|
||||
|
||||
|
||||
export const option = {
|
||||
option: <S extends z.ZodSchema>(schema: S) =>
|
||||
z.union([option.some(schema), option.none(schema)]),
|
||||
|
||||
some: <S extends z.ZodSchema>(schema: S) => z
|
||||
.custom(v => Option.isOption(v) && Option.isSome(v), "Not an Option")
|
||||
.pipe(z.object({ value: schema }).passthrough())
|
||||
@@ -15,7 +18,4 @@ export const option = {
|
||||
? z.output<S>
|
||||
: unknown
|
||||
>>(v => Option.isOption(v) && Option.isNone(v), "Not an Option"),
|
||||
|
||||
option: <S extends z.ZodSchema>(schema: S) =>
|
||||
z.union([option.some(schema), option.none(schema)]),
|
||||
} as const
|
||||
|
||||
Reference in New Issue
Block a user