@aws/nx-plugin 1.0.0-rc.32 → 1.0.0-rc.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (277) hide show
  1. package/LICENSE-THIRD-PARTY +75 -86
  2. package/generators.json +27 -0
  3. package/package.json +10 -10
  4. package/src/connection/generator.js +12 -1
  5. package/src/connection/generator.js.map +1 -1
  6. package/src/connection/supported-connections.d.ts +10 -1
  7. package/src/connection/supported-connections.js +13 -0
  8. package/src/connection/supported-connections.js.map +1 -1
  9. package/src/infra/app/__snapshots__/generator.spec.ts.snap +21 -21
  10. package/src/infra/app/files/app/src/main.ts.template +1 -1
  11. package/src/infra/app/files/app/src/stages/application-stage.ts.template +1 -1
  12. package/src/infra/app/generator.js +3 -1
  13. package/src/infra/app/generator.js.map +1 -1
  14. package/src/open-api/ts-client/__snapshots__/generator.complex-types.spec.ts.snap +12 -12
  15. package/src/open-api/ts-client/__snapshots__/generator.composite-types.spec.ts.snap +74 -10
  16. package/src/open-api/ts-client/__snapshots__/generator.content-type.spec.ts.snap +22 -4
  17. package/src/open-api/ts-client/__snapshots__/generator.duplicate-types.spec.ts.snap +53 -8
  18. package/src/open-api/ts-client/__snapshots__/generator.edge-cases.spec.ts.snap +32 -4
  19. package/src/open-api/ts-client/__snapshots__/generator.fast-api-gaps.spec.ts.snap +736 -0
  20. package/src/open-api/ts-client/__snapshots__/generator.fast-api.spec.ts.snap +86 -11
  21. package/src/open-api/ts-client/__snapshots__/generator.multipart.spec.ts.snap +21 -3
  22. package/src/open-api/ts-client/__snapshots__/generator.primitive-types.spec.ts.snap +2 -2
  23. package/src/open-api/ts-client/__snapshots__/generator.request.spec.ts.snap +6 -6
  24. package/src/open-api/ts-client/__snapshots__/generator.reserved-keywords.spec.ts.snap +2 -2
  25. package/src/open-api/ts-client/__snapshots__/generator.spec-compliance.spec.ts.snap +1883 -0
  26. package/src/open-api/ts-client/__snapshots__/generator.tags.spec.ts.snap +4 -4
  27. package/src/open-api/ts-client/files/client.gen.ts.template +196 -13
  28. package/src/open-api/ts-client/files/types.gen.ts.template +2 -0
  29. package/src/open-api/ts-client/generator.js +27 -2
  30. package/src/open-api/ts-client/generator.js.map +1 -1
  31. package/src/open-api/ts-hooks/files/options-proxy.gen.ts.template +2 -2
  32. package/src/open-api/ts-hooks/generator.js +5 -1
  33. package/src/open-api/ts-hooks/generator.js.map +1 -1
  34. package/src/open-api/utils/codegen-data/languages.js +6 -0
  35. package/src/open-api/utils/codegen-data/languages.js.map +1 -1
  36. package/src/open-api/utils/codegen-data/types.d.ts +16 -1
  37. package/src/open-api/utils/codegen-data/types.js.map +1 -1
  38. package/src/open-api/utils/codegen-data.js +71 -0
  39. package/src/open-api/utils/codegen-data.js.map +1 -1
  40. package/src/open-api/utils/normalise.js +53 -8
  41. package/src/open-api/utils/normalise.js.map +1 -1
  42. package/src/open-api/utils/parser.js +48 -15
  43. package/src/open-api/utils/parser.js.map +1 -1
  44. package/src/preset/__snapshots__/generator.spec.ts.snap +5 -3
  45. package/src/preset/generator.d.ts +1 -1
  46. package/src/preset/generator.js +5 -2
  47. package/src/preset/generator.js.map +1 -1
  48. package/src/preset/schema.d.js.map +1 -1
  49. package/src/preset/schema.d.ts +2 -0
  50. package/src/preset/schema.json +6 -0
  51. package/src/py/agent/__snapshots__/generator.constructs.spec.ts.snap +7 -7
  52. package/src/py/agent/__snapshots__/generator.frameworks.spec.ts.snap +8 -8
  53. package/src/py/agent/__snapshots__/generator.protocols.spec.ts.snap +89 -3
  54. package/src/py/dynamodb/__snapshots__/generator.spec.ts.snap +2 -2
  55. package/src/py/fast-api/__snapshots__/generator.terraform.spec.ts.snap +12 -12
  56. package/src/py/lambda-function/__snapshots__/generator.spec.ts.snap +2 -2
  57. package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +91 -5
  58. package/src/py/rdb/__snapshots__/generator.spec.ts.snap +2038 -0
  59. package/src/py/rdb/agent-connection/__snapshots__/generator.spec.ts.snap +104 -0
  60. package/src/py/rdb/agent-connection/generator.d.ts +10 -0
  61. package/src/py/rdb/agent-connection/generator.js +46 -0
  62. package/src/py/rdb/agent-connection/generator.js.map +1 -0
  63. package/src/py/rdb/agent-connection/schema.d.js +8 -0
  64. package/src/py/rdb/agent-connection/schema.d.js.map +1 -0
  65. package/src/py/rdb/agent-connection/schema.d.ts +15 -0
  66. package/src/py/rdb/agent-connection/schema.json +27 -0
  67. package/src/py/rdb/fast-api-connection/__snapshots__/generator.spec.ts.snap +44 -0
  68. package/src/py/rdb/fast-api-connection/files/__apiModuleName__/dependencies/__rdbNameSnake__.py.template +14 -0
  69. package/src/py/rdb/fast-api-connection/generator.d.ts +10 -0
  70. package/src/py/rdb/fast-api-connection/generator.js +54 -0
  71. package/src/py/rdb/fast-api-connection/generator.js.map +1 -0
  72. package/src/py/rdb/fast-api-connection/schema.d.js +8 -0
  73. package/src/py/rdb/fast-api-connection/schema.d.js.map +1 -0
  74. package/src/py/rdb/fast-api-connection/schema.d.ts +13 -0
  75. package/src/py/rdb/fast-api-connection/schema.json +23 -0
  76. package/src/py/rdb/files/Dockerfile.create-db-user.template +10 -0
  77. package/src/py/rdb/files/Dockerfile.migration.template +10 -0
  78. package/src/py/rdb/files/__name__/__init__.py.template +3 -0
  79. package/src/py/rdb/files/__name__/connection.py.template +55 -0
  80. package/src/py/rdb/files/__name__/create_db_user_handler.py.template +97 -0
  81. package/src/py/rdb/files/__name__/migration_handler.py.template +36 -0
  82. package/src/py/rdb/files/__name__/models/__init__.py.template +3 -0
  83. package/src/py/rdb/files/__name__/models/example.py.template +8 -0
  84. package/src/py/rdb/files/__name__/utils.py.template +104 -0
  85. package/src/py/rdb/files/alembic.ini.template +38 -0
  86. package/src/py/rdb/files/config.json.template +14 -0
  87. package/src/py/rdb/files/migrations/env.py.template +80 -0
  88. package/src/py/rdb/files/migrations/script.py.mako.template +28 -0
  89. package/src/py/rdb/generator.d.ts +6 -0
  90. package/src/py/rdb/generator.js +263 -0
  91. package/src/py/rdb/generator.js.map +1 -0
  92. package/src/py/rdb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +101 -0
  93. package/src/py/rdb/mcp-server-connection/generator.d.ts +10 -0
  94. package/src/py/rdb/mcp-server-connection/generator.js +46 -0
  95. package/src/py/rdb/mcp-server-connection/generator.js.map +1 -0
  96. package/src/py/rdb/mcp-server-connection/schema.d.js +8 -0
  97. package/src/py/rdb/mcp-server-connection/schema.d.js.map +1 -0
  98. package/src/py/rdb/mcp-server-connection/schema.d.ts +15 -0
  99. package/src/py/rdb/mcp-server-connection/schema.json +27 -0
  100. package/src/py/rdb/schema.d.js +6 -0
  101. package/src/py/rdb/schema.d.js.map +1 -0
  102. package/src/py/rdb/schema.d.ts +16 -0
  103. package/src/py/rdb/schema.json +77 -0
  104. package/src/py/rdb/utils.d.ts +6 -0
  105. package/src/py/rdb/utils.js +16 -0
  106. package/src/py/rdb/utils.js.map +1 -0
  107. package/src/sdk/py.d.ts +2 -0
  108. package/src/sdk/py.js +1 -0
  109. package/src/sdk/py.js.map +1 -1
  110. package/src/smithy/ts/api/__snapshots__/generator.spec.ts.snap +7 -7
  111. package/src/smithy/ts/api/files/handler.ts.template +2 -2
  112. package/src/smithy/ts/api/files/local-server.ts.template +2 -2
  113. package/src/smithy/ts/api/files/operations/echo.ts.template +2 -2
  114. package/src/smithy/ts/api/files/service.ts.template +3 -3
  115. package/src/smithy/ts/api/generator.js +3 -1
  116. package/src/smithy/ts/api/generator.js.map +1 -1
  117. package/src/trpc/backend/__snapshots__/generator.spec.ts.snap +12 -12
  118. package/src/trpc/backend/files/src/client/index.ts.template +1 -1
  119. package/src/trpc/backend/files/src/handler.ts.template +1 -1
  120. package/src/trpc/backend/files/src/index.ts.template +5 -5
  121. package/src/trpc/backend/files/src/init.ts.template +1 -1
  122. package/src/trpc/backend/files/src/local-server.ts.template +1 -1
  123. package/src/trpc/backend/files/src/middleware/index.ts.template +7 -7
  124. package/src/trpc/backend/files/src/procedures/echo.ts.template +2 -2
  125. package/src/trpc/backend/files/src/router.ts.template +2 -2
  126. package/src/trpc/backend/files/src/schema/index.ts.template +1 -1
  127. package/src/trpc/backend/generator.js +3 -1
  128. package/src/trpc/backend/generator.js.map +1 -1
  129. package/src/ts/agent/__snapshots__/generator.spec.ts.snap +89 -3
  130. package/src/ts/agent/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client-strands.ts.template +2 -2
  131. package/src/ts/agent/a2a-connection/generator.js +3 -1
  132. package/src/ts/agent/a2a-connection/generator.js.map +1 -1
  133. package/src/ts/agent/files/a2a/index.ts.template +1 -1
  134. package/src/ts/agent/files/ag-ui/index.ts.template +1 -1
  135. package/src/ts/agent/files/http/client.ts.template +2 -2
  136. package/src/ts/agent/files/http/index.ts.template +2 -2
  137. package/src/ts/agent/files/http/router.ts.template +3 -3
  138. package/src/ts/agent/gateway-connection/files/agent-connection/app/__gatewayKebabCase__-client-strands.ts.template +2 -2
  139. package/src/ts/agent/gateway-connection/generator.js +3 -1
  140. package/src/ts/agent/gateway-connection/generator.js.map +1 -1
  141. package/src/ts/agent/generator.js +5 -2
  142. package/src/ts/agent/generator.js.map +1 -1
  143. package/src/ts/agent/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client-strands.ts.template +2 -2
  144. package/src/ts/agent/mcp-connection/generator.js +3 -1
  145. package/src/ts/agent/mcp-connection/generator.js.map +1 -1
  146. package/src/ts/astro-docs/files/translation/scripts/translate.ts.template +3 -2
  147. package/src/ts/astro-docs/generator.js +2 -0
  148. package/src/ts/astro-docs/generator.js.map +1 -1
  149. package/src/ts/dynamodb/__snapshots__/generator.spec.ts.snap +2 -2
  150. package/src/ts/dynamodb/files/src/client.ts.template +5 -2
  151. package/src/ts/dynamodb/files/src/entities/example.ts.template +1 -1
  152. package/src/ts/dynamodb/files/src/entities/index.ts.template +1 -1
  153. package/src/ts/dynamodb/files/src/index.ts.template +2 -2
  154. package/src/ts/dynamodb/generator.js +3 -1
  155. package/src/ts/dynamodb/generator.js.map +1 -1
  156. package/src/ts/lambda-function/__snapshots__/generator.spec.ts.snap +2 -2
  157. package/src/ts/lib/generator.js +7 -1
  158. package/src/ts/lib/generator.js.map +1 -1
  159. package/src/ts/lib/ts-project-utils.js +19 -4
  160. package/src/ts/lib/ts-project-utils.js.map +1 -1
  161. package/src/ts/lib/types.d.ts +6 -0
  162. package/src/ts/lib/types.js.map +1 -1
  163. package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +94 -8
  164. package/src/ts/mcp-server/generator.js +3 -2
  165. package/src/ts/mcp-server/generator.js.map +1 -1
  166. package/src/ts/nx-generator/files/local/generator.ts.template +2 -2
  167. package/src/ts/nx-generator/files/nx-plugin-for-aws/generator/generator.ts.template +2 -2
  168. package/src/ts/nx-generator/generator.js +5 -2
  169. package/src/ts/nx-generator/generator.js.map +1 -1
  170. package/src/ts/nx-plugin/files/mcp-server/server.ts.template +5 -5
  171. package/src/ts/nx-plugin/files/mcp-server/tools/create-workspace-command.ts.template +2 -2
  172. package/src/ts/nx-plugin/files/mcp-server/tools/general-guidance.ts.template +1 -1
  173. package/src/ts/nx-plugin/files/mcp-server/tools/generator-guide.ts.template +2 -2
  174. package/src/ts/nx-plugin/files/mcp-server/tools/list-generators.ts.template +2 -2
  175. package/src/ts/nx-plugin/files/mcp-server/utils.ts.template +3 -3
  176. package/src/ts/nx-plugin/generator.js +3 -1
  177. package/src/ts/nx-plugin/generator.js.map +1 -1
  178. package/src/ts/nx-plugin/utils.js +7 -4
  179. package/src/ts/nx-plugin/utils.js.map +1 -1
  180. package/src/ts/rdb/__snapshots__/generator.spec.ts.snap +149 -177
  181. package/src/ts/rdb/files/src/create-db-user-handler.ts.template +2 -2
  182. package/src/ts/rdb/files/src/index.ts.template +1 -1
  183. package/src/ts/rdb/files/src/migration-handler.ts.template +1 -1
  184. package/src/ts/rdb/files/src/prisma.ts.template +7 -4
  185. package/src/ts/rdb/generator.js +7 -4
  186. package/src/ts/rdb/generator.js.map +1 -1
  187. package/src/ts/rdb/schema.json +1 -1
  188. package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +45 -45
  189. package/src/ts/react-website/cognito-auth/__snapshots__/generator.terraform.spec.ts.snap +2 -2
  190. package/src/utils/agent-chat/agent-chat.js +3 -1
  191. package/src/utils/agent-chat/agent-chat.js.map +1 -1
  192. package/src/utils/agent-chat/files/a2a/chat.ts.template +1 -1
  193. package/src/utils/agent-chat/files/ag-ui/chat.ts.template +1 -1
  194. package/src/utils/agent-chat/files/http-py/chat.ts.template +2 -2
  195. package/src/utils/agent-chat/files/http-ts/chat.ts.template +1 -1
  196. package/src/utils/agent-connection/agent-connection.js +4 -1
  197. package/src/utils/agent-connection/agent-connection.js.map +1 -1
  198. package/src/utils/agent-connection/files/core-a2a/agentcore-a2a-client-config.ts.template +2 -2
  199. package/src/utils/agent-connection/files/core-auth/agentcore-fetch.ts.template +1 -1
  200. package/src/utils/agent-connection/files/core-gateway/agentcore-gateway-mcp-transport.ts.template +2 -2
  201. package/src/utils/agent-connection/files/core-mcp/agentcore-mcp-transport.ts.template +2 -2
  202. package/src/utils/agent-connection/files/core-shared/agentcore-transport.ts.template +1 -1
  203. package/src/utils/agent-connection/files/core-strands/a2a/agentcore-a2a-client-strands.ts.template +1 -1
  204. package/src/utils/agent-connection/files/core-strands/base/with-session-id-strands.ts.template +1 -1
  205. package/src/utils/agent-connection/files/core-strands/gateway/agentcore-gateway-mcp-client-strands.ts.template +1 -1
  206. package/src/utils/agent-connection/files/core-strands/mcp/agentcore-mcp-client-strands.ts.template +1 -1
  207. package/src/utils/agent-core-constructs/agent-core-constructs.js +10 -3
  208. package/src/utils/agent-core-constructs/agent-core-constructs.js.map +1 -1
  209. package/src/utils/agent-core-constructs/files/cdk/app/agent-core/__nameKebabCase__/__nameKebabCase__.ts.template +3 -3
  210. package/src/utils/agent-core-constructs/files/cdk/app/agentcore-gateway/__nameKebabCase__/__nameKebabCase__.ts.template +4 -4
  211. package/src/utils/agent-core-constructs/files/cdk/core/agentcore-gateway/agentcore-gateway.ts.template +1 -1
  212. package/src/utils/agent-core-constructs/files/terraform/app/agent-core/__nameKebabCase__/__nameKebabCase__.tf.template +27 -0
  213. package/src/utils/agent-core-constructs/files/terraform/core/agent-core/runtime.tf.template +60 -1
  214. package/src/utils/api-constructs/api-constructs.js +8 -2
  215. package/src/utils/api-constructs/api-constructs.js.map +1 -1
  216. package/src/utils/api-constructs/files/cdk/app/apis/http/__apiNameKebabCase__.ts.template +8 -8
  217. package/src/utils/api-constructs/files/cdk/app/apis/rest/__apiNameKebabCase__.ts.template +8 -8
  218. package/src/utils/api-constructs/files/cdk/core/api/http/http-api.ts.template +3 -3
  219. package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account/index.js.template +32 -20
  220. package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account.ts.template +1 -1
  221. package/src/utils/api-constructs/files/cdk/core/api/rest/rest-api.ts.template +4 -4
  222. package/src/utils/api-constructs/files/cdk/core/api/trpc/trpc-utils.ts.template +1 -1
  223. package/src/utils/ast.js +16 -0
  224. package/src/utils/ast.js.map +1 -1
  225. package/src/utils/commands.d.ts +1 -1
  226. package/src/utils/commands.js +4 -1
  227. package/src/utils/commands.js.map +1 -1
  228. package/src/utils/dynamodb-constructs/dynamodb-constructs.js +9 -2
  229. package/src/utils/dynamodb-constructs/dynamodb-constructs.js.map +1 -1
  230. package/src/utils/dynamodb-constructs/files/cdk/app/dynamodb/__nameKebabCase__.ts.template +3 -3
  231. package/src/utils/dynamodb-constructs/files/cdk/core/dynamodb.ts.template +1 -1
  232. package/src/utils/files/common/constructs/src/core/index.ts.template +4 -4
  233. package/src/utils/files/common/constructs/src/index.ts.template +2 -2
  234. package/src/utils/files/common/infra-config/src/index.ts.template +3 -3
  235. package/src/utils/files/common/infra-config/src/resolve-stage.ts.template +2 -2
  236. package/src/utils/files/common/infra-config/src/stages.config.ts.template +1 -1
  237. package/src/utils/files/common/scripts/src/infra/infra-deploy.ts.template +1 -1
  238. package/src/utils/files/common/scripts/src/infra/infra-destroy.ts.template +1 -1
  239. package/src/utils/files/common/scripts/src/infra/stage-credentials/run.ts.template +3 -3
  240. package/src/utils/files/common/shadcn/src/index.ts.template +2 -2
  241. package/src/utils/function-constructs/files/cdk/app/lambda-functions/__nameKebabCase__.ts.template +1 -1
  242. package/src/utils/function-constructs/function-constructs.js +3 -1
  243. package/src/utils/function-constructs/function-constructs.js.map +1 -1
  244. package/src/utils/identity-constructs/files/cdk/core/user-identity.ts.template +2 -2
  245. package/src/utils/identity-constructs/identity-constructs.js +5 -1
  246. package/src/utils/identity-constructs/identity-constructs.js.map +1 -1
  247. package/src/utils/module-format.d.ts +28 -0
  248. package/src/utils/module-format.js +28 -0
  249. package/src/utils/module-format.js.map +1 -0
  250. package/src/utils/rdb-constructs/files/cdk/app/dbs/__nameKebabCase__.ts.template +61 -17
  251. package/src/utils/rdb-constructs/files/cdk/core/rdb/aurora.ts.template +68 -78
  252. package/src/utils/rdb-constructs/files/terraform/app/dbs/__nameKebabCase__/__nameKebabCase__.tf.template +88 -8
  253. package/src/utils/rdb-constructs/files/terraform/core/rdb/aurora/aurora.tf.template +5 -32
  254. package/src/utils/rdb-constructs/rdb-constructs.d.ts +11 -1
  255. package/src/utils/rdb-constructs/rdb-constructs.js +9 -2
  256. package/src/utils/rdb-constructs/rdb-constructs.js.map +1 -1
  257. package/src/utils/shared-constructs.js +12 -22
  258. package/src/utils/shared-constructs.js.map +1 -1
  259. package/src/utils/shared-infra-config.js +3 -1
  260. package/src/utils/shared-infra-config.js.map +1 -1
  261. package/src/utils/shared-infra-scripts.js +3 -1
  262. package/src/utils/shared-infra-scripts.js.map +1 -1
  263. package/src/utils/shared-rdb-scripts.js +5 -1
  264. package/src/utils/shared-rdb-scripts.js.map +1 -1
  265. package/src/utils/shared-shadcn.js +3 -1
  266. package/src/utils/shared-shadcn.js.map +1 -1
  267. package/src/utils/test.d.ts +2 -0
  268. package/src/utils/test.js +7 -1
  269. package/src/utils/test.js.map +1 -1
  270. package/src/utils/versions.d.ts +73 -69
  271. package/src/utils/versions.js +71 -67
  272. package/src/utils/versions.js.map +1 -1
  273. package/src/utils/website-constructs/files/cdk/app/static-websites/__websiteNameKebabCase__.ts.template +2 -2
  274. package/src/utils/website-constructs/files/cdk/core/static-website.ts.template +2 -2
  275. package/src/utils/website-constructs/website-constructs.js +9 -2
  276. package/src/utils/website-constructs/website-constructs.js.map +1 -1
  277. package/src/utils/files/terraform/scripts/reset-runtime-config.ts.template +0 -25
@@ -436,8 +436,8 @@ export class $IO {
436
436
  return json;
437
437
  }
438
438
  return {
439
- ...$IO.PutTestRequestContentOneOf.fromJson(json),
440
- ...$IO.PutTestRequestContentOneOf1.fromJson(json),
439
+ ...$IO.PutTestRequestContentOneOf.$fromJsonPartial(json),
440
+ ...$IO.PutTestRequestContentOneOf1.$fromJsonPartial(json),
441
441
  };
442
442
  },
443
443
  };
@@ -469,6 +469,20 @@ export class $IO {
469
469
  valueA: json['valueA'],
470
470
  };
471
471
  },
472
+ $fromJsonPartial: (json: any): any => {
473
+ return {
474
+ ...(json['type'] === undefined
475
+ ? {}
476
+ : {
477
+ type: json['type'],
478
+ }),
479
+ ...(json['valueA'] === undefined
480
+ ? {}
481
+ : {
482
+ valueA: json['valueA'],
483
+ }),
484
+ };
485
+ },
472
486
  };
473
487
 
474
488
  public static PutTestRequestContentOneOf1 = {
@@ -498,6 +512,20 @@ export class $IO {
498
512
  valueB: json['valueB'],
499
513
  };
500
514
  },
515
+ $fromJsonPartial: (json: any): any => {
516
+ return {
517
+ ...(json['type'] === undefined
518
+ ? {}
519
+ : {
520
+ type: json['type'],
521
+ }),
522
+ ...(json['valueB'] === undefined
523
+ ? {}
524
+ : {
525
+ valueB: json['valueB'],
526
+ }),
527
+ };
528
+ },
501
529
  };
502
530
  }
503
531
 
@@ -1598,7 +1626,7 @@ export class $IO {
1598
1626
  json,
1599
1627
  $IO.CompositeRequestContentOneOf3Value.fromJson,
1600
1628
  )),
1601
- ...$IO.CompositeRequestContentOneOf4.fromJson(json),
1629
+ ...$IO.CompositeRequestContentOneOf4.$fromJsonPartial(json),
1602
1630
  };
1603
1631
  },
1604
1632
  };
@@ -1682,6 +1710,15 @@ export class $IO {
1682
1710
  }),
1683
1711
  };
1684
1712
  },
1713
+ $fromJsonPartial: (json: any): any => {
1714
+ return {
1715
+ ...(json['key'] === undefined
1716
+ ? {}
1717
+ : {
1718
+ key: json['key'],
1719
+ }),
1720
+ };
1721
+ },
1685
1722
  };
1686
1723
  }
1687
1724
 
@@ -1831,7 +1868,7 @@ export class TestApi {
1831
1868
  );
1832
1869
 
1833
1870
  if (response.status === 200) {
1834
- return await response.text();
1871
+ return await response.json();
1835
1872
  }
1836
1873
  throw new Error(
1837
1874
  \`Unknown response status \${response.status} returned by API\`,
@@ -2033,8 +2070,8 @@ export class $IO {
2033
2070
  return json;
2034
2071
  }
2035
2072
  return {
2036
- ...$IO.TestComposites200ResponseAnyOf.fromJson(json),
2037
- ...$IO.TestComposites200ResponseAnyOf1.fromJson(json),
2073
+ ...$IO.TestComposites200ResponseAnyOf.$fromJsonPartial(json),
2074
+ ...$IO.TestComposites200ResponseAnyOf1.$fromJsonPartial(json),
2038
2075
  };
2039
2076
  },
2040
2077
  };
@@ -2064,6 +2101,15 @@ export class $IO {
2064
2101
  }),
2065
2102
  };
2066
2103
  },
2104
+ $fromJsonPartial: (json: any): any => {
2105
+ return {
2106
+ ...(json['foo'] === undefined
2107
+ ? {}
2108
+ : {
2109
+ foo: json['foo'],
2110
+ }),
2111
+ };
2112
+ },
2067
2113
  };
2068
2114
 
2069
2115
  public static TestComposites200ResponseAnyOf1 = {
@@ -2091,6 +2137,15 @@ export class $IO {
2091
2137
  }),
2092
2138
  };
2093
2139
  },
2140
+ $fromJsonPartial: (json: any): any => {
2141
+ return {
2142
+ ...(json['bar'] === undefined
2143
+ ? {}
2144
+ : {
2145
+ bar: json['bar'],
2146
+ }),
2147
+ };
2148
+ },
2094
2149
  };
2095
2150
 
2096
2151
  public static TestCompositesRequestContent = {
@@ -2366,7 +2421,7 @@ export class TestApi {
2366
2421
  );
2367
2422
 
2368
2423
  if (response.status === 200) {
2369
- return (await response.text()) as TestEnums200Response;
2424
+ return (await response.json()) as TestEnums200Response;
2370
2425
  }
2371
2426
  throw new Error(
2372
2427
  \`Unknown response status \${response.status} returned by API\`,
@@ -2422,7 +2477,7 @@ export class TestApi {
2422
2477
  );
2423
2478
 
2424
2479
  if (response.status === 200) {
2425
- return Number(await response.text());
2480
+ return await response.json();
2426
2481
  }
2427
2482
  throw new Error(
2428
2483
  \`Unknown response status \${response.status} returned by API\`,
@@ -2757,7 +2812,7 @@ export class $IO {
2757
2812
  return new Date(json);
2758
2813
  }
2759
2814
  return {
2760
- ...$IO.MaybeDateOneOf.fromJson(json),
2815
+ ...$IO.MaybeDateOneOf.$fromJsonPartial(json),
2761
2816
  };
2762
2817
  },
2763
2818
  };
@@ -2783,6 +2838,15 @@ export class $IO {
2783
2838
  marker: json['marker'],
2784
2839
  };
2785
2840
  },
2841
+ $fromJsonPartial: (json: any): any => {
2842
+ return {
2843
+ ...(json['marker'] === undefined
2844
+ ? {}
2845
+ : {
2846
+ marker: json['marker'],
2847
+ }),
2848
+ };
2849
+ },
2786
2850
  };
2787
2851
  }
2788
2852
 
@@ -2930,7 +2994,7 @@ export class TestApi {
2930
2994
  );
2931
2995
 
2932
2996
  if (response.status === 200) {
2933
- return await response.text();
2997
+ return await response.json();
2934
2998
  }
2935
2999
  throw new Error(
2936
3000
  \`Unknown response status \${response.status} returned by API\`,
@@ -166,18 +166,36 @@ export class TestApi {
166
166
  });
167
167
  };
168
168
 
169
- private $formData = (model: { [key: string]: any }): FormData => {
169
+ private $formData = (
170
+ model: { [key: string]: any },
171
+ partContentTypes?: { [key: string]: string },
172
+ ): FormData => {
170
173
  const formData = new FormData();
171
174
  const append = (key: string, value: any): void => {
172
175
  if (value === undefined || value === null) {
173
176
  return;
174
177
  }
178
+ const partContentType = partContentTypes?.[key];
175
179
  if (value instanceof Blob || typeof value === 'string') {
176
- formData.append(key, value);
180
+ // A declared part content type overrides the default (text/plain for
181
+ // strings, the Blob's own type otherwise)
182
+ if (partContentType) {
183
+ formData.append(key, new Blob([value], { type: partContentType }));
184
+ } else {
185
+ formData.append(key, value);
186
+ }
177
187
  } else if (Array.isArray(value)) {
178
188
  value.forEach((v) => append(key, v));
179
189
  } else if (typeof value === 'object') {
180
- formData.append(key, JSON.stringify(value));
190
+ const serialized = JSON.stringify(value);
191
+ if (partContentType) {
192
+ formData.append(
193
+ key,
194
+ new Blob([serialized], { type: partContentType }),
195
+ );
196
+ } else {
197
+ formData.append(key, serialized);
198
+ }
181
199
  } else {
182
200
  formData.append(key, String(value));
183
201
  }
@@ -628,7 +646,7 @@ export class TestApi {
628
646
  );
629
647
 
630
648
  if (response.status === 200) {
631
- return await response.text();
649
+ return await response.json();
632
650
  }
633
651
  throw new Error(
634
652
  \`Unknown response status \${response.status} returned by API\`,
@@ -68,6 +68,15 @@ export class $IO {
68
68
  message: json['message'],
69
69
  };
70
70
  },
71
+ $fromJsonPartial: (json: any): any => {
72
+ return {
73
+ ...(json['message'] === undefined
74
+ ? {}
75
+ : {
76
+ message: json['message'],
77
+ }),
78
+ };
79
+ },
71
80
  };
72
81
 
73
82
  public static MyModel = {
@@ -90,7 +99,7 @@ export class $IO {
90
99
  return json;
91
100
  }
92
101
  return {
93
- ...$IO.Clash1.fromJson(json),
102
+ ...$IO.Clash1.$fromJsonPartial(json),
94
103
  };
95
104
  },
96
105
  };
@@ -308,8 +317,8 @@ export class $IO {
308
317
  return json;
309
318
  }
310
319
  return {
311
- ...$IO.Clash3.fromJson(json),
312
- ...$IO.Clash4.fromJson(json),
320
+ ...$IO.Clash3.$fromJsonPartial(json),
321
+ ...$IO.Clash4.$fromJsonPartial(json),
313
322
  };
314
323
  },
315
324
  };
@@ -358,6 +367,15 @@ export class $IO {
358
367
  prop1: json['prop1'],
359
368
  };
360
369
  },
370
+ $fromJsonPartial: (json: any): any => {
371
+ return {
372
+ ...(json['prop1'] === undefined
373
+ ? {}
374
+ : {
375
+ prop1: json['prop1'],
376
+ }),
377
+ };
378
+ },
361
379
  };
362
380
 
363
381
  public static Clash2 = {
@@ -381,6 +399,15 @@ export class $IO {
381
399
  prop2: json['prop2'],
382
400
  };
383
401
  },
402
+ $fromJsonPartial: (json: any): any => {
403
+ return {
404
+ ...(json['prop2'] === undefined
405
+ ? {}
406
+ : {
407
+ prop2: json['prop2'],
408
+ }),
409
+ };
410
+ },
384
411
  };
385
412
 
386
413
  public static Clash3 = {
@@ -404,6 +431,15 @@ export class $IO {
404
431
  prop4: json['prop4'],
405
432
  };
406
433
  },
434
+ $fromJsonPartial: (json: any): any => {
435
+ return {
436
+ ...(json['prop4'] === undefined
437
+ ? {}
438
+ : {
439
+ prop4: json['prop4'],
440
+ }),
441
+ };
442
+ },
407
443
  };
408
444
 
409
445
  public static Clash4 = {
@@ -427,6 +463,15 @@ export class $IO {
427
463
  prop5: json['prop5'],
428
464
  };
429
465
  },
466
+ $fromJsonPartial: (json: any): any => {
467
+ return {
468
+ ...(json['prop5'] === undefined
469
+ ? {}
470
+ : {
471
+ prop5: json['prop5'],
472
+ }),
473
+ };
474
+ },
430
475
  };
431
476
 
432
477
  public static MyModel = {
@@ -444,8 +489,8 @@ export class $IO {
444
489
  return json;
445
490
  }
446
491
  return {
447
- ...$IO.Clash1.fromJson(json),
448
- ...$IO.Clash2.fromJson(json),
492
+ ...$IO.Clash1.$fromJsonPartial(json),
493
+ ...$IO.Clash2.$fromJsonPartial(json),
449
494
  };
450
495
  },
451
496
  };
@@ -828,7 +873,7 @@ export class TestApi {
828
873
  );
829
874
 
830
875
  if (response.status === 200) {
831
- return await response.text();
876
+ return await response.json();
832
877
  }
833
878
  throw new Error(
834
879
  \`Unknown response status \${response.status} returned by API\`,
@@ -857,7 +902,7 @@ export class TestApi {
857
902
  );
858
903
 
859
904
  if (response.status === 200) {
860
- return await response.text();
905
+ return await response.json();
861
906
  }
862
907
  throw new Error(
863
908
  \`Unknown response status \${response.status} returned by API\`,
@@ -1055,7 +1100,7 @@ export class TestApi {
1055
1100
  );
1056
1101
 
1057
1102
  if (response.status === 200) {
1058
- return await response.text();
1103
+ return await response.json();
1059
1104
  }
1060
1105
  throw new Error(
1061
1106
  \`Unknown response status \${response.status} returned by API\`,
@@ -297,8 +297,8 @@ export class $IO {
297
297
  return json;
298
298
  }
299
299
  return {
300
- ...$IO.ShapeOneOf.fromJson(json),
301
- ...$IO.ShapeOneOf1.fromJson(json),
300
+ ...$IO.ShapeOneOf.$fromJsonPartial(json),
301
+ ...$IO.ShapeOneOf1.$fromJsonPartial(json),
302
302
  };
303
303
  },
304
304
  };
@@ -330,6 +330,20 @@ export class $IO {
330
330
  napAt: new Date(json['napAt']),
331
331
  };
332
332
  },
333
+ $fromJsonPartial: (json: any): any => {
334
+ return {
335
+ ...(json['kind'] === undefined
336
+ ? {}
337
+ : {
338
+ kind: json['kind'],
339
+ }),
340
+ ...(json['napAt'] === undefined
341
+ ? {}
342
+ : {
343
+ napAt: new Date(json['napAt']),
344
+ }),
345
+ };
346
+ },
333
347
  };
334
348
 
335
349
  public static ShapeOneOf1 = {
@@ -359,6 +373,20 @@ export class $IO {
359
373
  walkAt: new Date(json['walkAt']),
360
374
  };
361
375
  },
376
+ $fromJsonPartial: (json: any): any => {
377
+ return {
378
+ ...(json['kind'] === undefined
379
+ ? {}
380
+ : {
381
+ kind: json['kind'],
382
+ }),
383
+ ...(json['walkAt'] === undefined
384
+ ? {}
385
+ : {
386
+ walkAt: new Date(json['walkAt']),
387
+ }),
388
+ };
389
+ },
362
390
  };
363
391
  }
364
392
 
@@ -947,7 +975,7 @@ export class TestApi {
947
975
  );
948
976
 
949
977
  if (response.status === 200) {
950
- return (await response.text()) as Tricky;
978
+ return (await response.json()) as Tricky;
951
979
  }
952
980
  throw new Error(
953
981
  \`Unknown response status \${response.status} returned by API\`,
@@ -5062,7 +5090,7 @@ export class TestApi {
5062
5090
  );
5063
5091
 
5064
5092
  if (response.status === 200) {
5065
- return (await response.text()) as Status;
5093
+ return (await response.json()) as Status;
5066
5094
  }
5067
5095
  throw new Error(
5068
5096
  \`Unknown response status \${response.status} returned by API\`,