3.43.2
(chore): Simplify optional query parameter handling by removing unnecessary null/undefined checks.
Query parameters can now be assigned directly without wrapping in if-statements, as it’s
safe to pass null or undefined values to query string parameters.
(chore): Use optional chaining (?.) for optional query parameters that require method calls like
toISOString() for dates, instead of ternary expressions.
(chore): Skip unnecessary .map() calls for list query parameters when the item type doesn’t need
transformation (e.g., string arrays). Also skip the Array.isArray check entirely when
both scalar and array branches would produce identical code.
(chore): Refactor query parameter generation to use object initializers instead of sequential
property assignments. This produces cleaner, more idiomatic TypeScript code where all
query parameters are defined in a single object literal.
3.43.1
(fix): Fix bug where ts-morph would generate incorrect code when Accept: */* header would be defined as
a parameter in OpenAPI. The old generated code would generate broken JSDoc comments with invalid syntax.
(chore): Optimize generated SDK code by eliminating unnecessary .toString() calls on primitive types in headers
and query parameters. The generator now only stringifies types that require it (dates/datetimes) while
using primitives like strings, numbers, booleans, and UUIDs directly.
(fix): Add createNumericLiteralSafe utility to properly handle negative numbers in generated code examples,
ensuring compatibility with newer TypeScript/ts-morph versions that require prefix unary expressions.
(fix): Add support for nullable types in query parameter type resolution, properly unwrapping both optional
and nullable containers when determining primitive and object types.
(chore): Simplify header and query parameter types from verbose union types to Record<string, unknown> for
more flexible and less complex type signatures in generated SDKs.