3.43.2

(chore): 通过移除不必要的 null/undefined 检查来简化可选查询参数的处理。 现在可以直接分配查询参数而无需包装在 if 语句中,因为向查询字符串参数传递 null 或 undefined 值是安全的。

(chore): 对需要方法调用的可选查询参数(如日期的 toISOString())使用可选链操作符(?.), 而不是三元表达式。

(chore): 当项目类型不需要转换时(例如字符串数组),跳过列表查询参数不必要的 .map() 调用。 当标量和数组分支会产生相同代码时,也完全跳过 Array.isArray 检查。

(chore): 重构查询参数生成,使用对象初始化器而不是顺序属性分配。这产生更清洁、 更符合习惯的 TypeScript 代码,其中所有查询参数都在单个对象字面量中定义。

3.43.1

(fix): 修复当 OpenAPI 中将 Accept: */* 头部定义为参数时,ts-morph 会生成错误代码的 bug。 旧的生成代码会产生带有无效语法的损坏 JSDoc 注释。

(chore): 通过消除头部和查询参数中原始类型上不必要的 .toString() 调用来优化生成的 SDK 代码。 生成器现在只对需要的类型(日期/日期时间)进行字符串化,而直接使用字符串、数字、布尔值和 UUID 等原始类型。

(fix): 添加 createNumericLiteralSafe 实用工具来正确处理生成代码示例中的负数, 确保与需要前缀一元表达式的新版 TypeScript/ts-morph 版本兼容。

(fix): 在查询参数类型解析中添加对可空类型的支持,在确定原始类型和对象类型时正确解包可选和可空容器。

(chore): 将头部和查询参数类型从冗长的联合类型简化为 Record<string, unknown>, 以在生成的 SDK 中获得更灵活且复杂度更低的类型签名。