| 166 | const chainable: Record<string, unknown> = {} |
| 167 | const proxy: Record<string, unknown> = new Proxy(chainable, { |
| 168 | get(target, prop) { |
| 169 | if (prop === 'parse') return mockZodParse |
| 170 | if (prop === 'safeParse') { |
| 171 | return (data: unknown) => ({ success: true, data }) |
| 172 | } |
| 173 | if (prop === 'then') return undefined |
| 174 | if (typeof prop === 'symbol') return Reflect.get(target, prop) |
| 175 | if (!(prop in target)) { |
| 176 | target[prop as string] = vi.fn().mockReturnValue(proxy) |
| 177 | } |
| 178 | return target[prop as string] |
| 179 | }, |
| 180 | }) |
| 181 | const makeChain = vi.fn(() => proxy) |
| 182 | return { |