···11----
22-'@hey-api/openapi-ts': minor
33----
44-55-feat(zod): generate a single schema for requests
66-77-### Single Zod schema per request
88-99-Previously, we generated a separate schema for each endpoint parameter and request body. In v0.74.0, a single request schema is generated for the whole endpoint. It may contain a request body, parameters, and headers.
1010-1111-```ts
1212-const zData = z.object({
1313- body: z.object({
1414- foo: z.string().optional(),
1515- bar: z.union([z.number(), z.null()]).optional(),
1616- }).optional(),
1717- headers: z.never().optional(),
1818- path: z.object({
1919- baz: z.string()
2020- }),
2121- query: z.never().optional()
2222-});
2323-```
2424-2525-If you need to access individual fields, you can do so using the [`.shape`](https://zod.dev/api?id=shape) API. For example, we can get the request body schema with `zData.shape.body`.
-5
.changeset/odd-yaks-love.md
···11----
22-"@hey-api/openapi-ts": patch
33----
44-55-fix(valibot): use `isoTimestamp` instead of `isoDateTime` for date-time format
-5
.changeset/poor-stingrays-remember.md
···11----
22-'@hey-api/openapi-ts': patch
33----
44-55-fix(parser): do not mark schemas as duplicate if they have different format
+34
packages/openapi-ts/CHANGELOG.md
···11# @hey-api/openapi-ts
2233+## 0.74.0
44+55+### Minor Changes
66+77+- [#2201](https://github.com/hey-api/openapi-ts/pull/2201) [`ab8cede`](https://github.com/hey-api/openapi-ts/commit/ab8cedefe0ca99492d064dfc191f5445bd8102fb) Thanks [@mrlubos](https://github.com/mrlubos)! - feat(zod): generate a single schema for requests
88+99+ ### Single Zod schema per request
1010+1111+ Previously, we generated a separate schema for each endpoint parameter and request body. In v0.74.0, a single request schema is generated for the whole endpoint. It may contain a request body, parameters, and headers.
1212+1313+ ```ts
1414+ const zData = z.object({
1515+ body: z
1616+ .object({
1717+ foo: z.string().optional(),
1818+ bar: z.union([z.number(), z.null()]).optional(),
1919+ })
2020+ .optional(),
2121+ headers: z.never().optional(),
2222+ path: z.object({
2323+ baz: z.string(),
2424+ }),
2525+ query: z.never().optional(),
2626+ });
2727+ ```
2828+2929+ If you need to access individual fields, you can do so using the [`.shape`](https://zod.dev/api?id=shape) API. For example, we can get the request body schema with `zData.shape.body`.
3030+3131+### Patch Changes
3232+3333+- [#2192](https://github.com/hey-api/openapi-ts/pull/2192) [`7a740ed`](https://github.com/hey-api/openapi-ts/commit/7a740ed2007b81c0088f4d80dd3401c9af673767) Thanks [@Daschi1](https://github.com/Daschi1)! - fix(valibot): use `isoTimestamp` instead of `isoDateTime` for date-time format
3434+3535+- [#2201](https://github.com/hey-api/openapi-ts/pull/2201) [`a889c3c`](https://github.com/hey-api/openapi-ts/commit/a889c3c899b54aec73a3ecffc071a412b44c112a) Thanks [@mrlubos](https://github.com/mrlubos)! - fix(parser): do not mark schemas as duplicate if they have different format
3636+337## 0.73.0
438539### Minor Changes
+1-1
packages/openapi-ts/package.json
···11{
22 "name": "@hey-api/openapi-ts",
33- "version": "0.73.0",
33+ "version": "0.74.0",
44 "description": "🚀 The OpenAPI to TypeScript codegen. Generate clients, SDKs, validators, and more.",
55 "homepage": "https://heyapi.dev/",
66 "repository": {