Skip to content

Commit 6b5ee2e

Browse files
authored
Merge pull request #551 from TheyCodeMeSilvers/fix-discriminated-union-to-string-mapping
fix: adjust discriminatedUnion.toString() to match function signature
2 parents 21e5925 + c1aa2aa commit 6b5ee2e

File tree

2 files changed

+2
-3
lines changed

2 files changed

+2
-3
lines changed

packages/zod/src/to-string.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ export function toString(schema: z.ZodType | z.core.$ZodType, options?: toString
143143
case tagged('intersection')(x): return `${z}.intersection(${x._zod.def.left}, ${x._zod.def.right})`
144144
case tagged('union')(x): return x._zod.def.discriminator === undefined
145145
? `${z}.union([${x._zod.def.options.join(',')}])`
146-
: `${z}.discriminatedUnion(["${escape(x._zod.def.discriminator)}", ${x._zod.def.options.join(',')}])`
146+
: `${z}.discriminatedUnion("${escape(x._zod.def.discriminator)}",[${x._zod.def.options.join(',')}])`
147147
case tagged('lazy')(x): return `${z}.lazy(() => ${x._zod.def.getter()})`
148148
case tagged('pipe')(x): return `${x._zod.def.in}.pipe(${x._zod.def.out})`
149149
case tagged('default')(x): return `${x._zod.def.innerType}.default(${serializeShort(x._zod.def.defaultValue!)})`

packages/zod/test/to-string.test.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,8 +101,7 @@ vi.describe("〖️⛳️〗‹‹‹ ❲@traversable/zod❳: zx.toString", () =
101101
))).toMatchInlineSnapshot
102102
(`
103103
"z.object({
104-
field: z.discriminatedUnion([
105-
"discriminator",
104+
field: z.discriminatedUnion("discriminator", [
106105
z.object({
107106
discriminator: z.literal(true).default(true),
108107
x: z.boolean(),

0 commit comments

Comments
 (0)