@aws/nx-plugin 1.0.0-rc.6 → 1.0.0-rc.60

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 (1262) hide show
  1. package/LICENSE-THIRD-PARTY +7104 -6167
  2. package/README.md +8 -7
  3. package/generators.json +145 -10
  4. package/migrations.json +111 -0
  5. package/package.json +41 -22
  6. package/src/agentcore-gateway/__snapshots__/generator.spec.ts.snap +273 -0
  7. package/src/agentcore-gateway/agent-connection/generator.d.ts +19 -0
  8. package/src/agentcore-gateway/agent-connection/generator.js +95 -0
  9. package/src/agentcore-gateway/agent-connection/generator.js.map +1 -0
  10. package/src/agentcore-gateway/agent-connection/schema.d.js +6 -0
  11. package/src/agentcore-gateway/agent-connection/schema.d.js.map +1 -0
  12. package/src/agentcore-gateway/agent-connection/schema.d.ts +13 -0
  13. package/src/agentcore-gateway/agent-connection/schema.json +31 -0
  14. package/src/agentcore-gateway/attach-upstream.d.ts +49 -0
  15. package/src/agentcore-gateway/attach-upstream.js +59 -0
  16. package/src/agentcore-gateway/attach-upstream.js.map +1 -0
  17. package/src/agentcore-gateway/files/cedar/policies/README.md +61 -0
  18. package/src/agentcore-gateway/files/cedar/policies/permit-all.cedar +26 -0
  19. package/src/agentcore-gateway/files/project/http/local-dev.ts.template +77 -0
  20. package/src/agentcore-gateway/files/project/mcp/local-dev.ts.template +134 -0
  21. package/src/agentcore-gateway/gateway-connection/generator.d.ts +21 -0
  22. package/src/agentcore-gateway/gateway-connection/generator.js +103 -0
  23. package/src/agentcore-gateway/gateway-connection/generator.js.map +1 -0
  24. package/src/agentcore-gateway/gateway-connection/schema.d.js +6 -0
  25. package/src/agentcore-gateway/gateway-connection/schema.d.js.map +1 -0
  26. package/src/agentcore-gateway/gateway-connection/schema.d.ts +13 -0
  27. package/src/agentcore-gateway/gateway-connection/schema.json +31 -0
  28. package/src/agentcore-gateway/generator.d.ts +89 -0
  29. package/src/agentcore-gateway/generator.js +212 -0
  30. package/src/agentcore-gateway/generator.js.map +1 -0
  31. package/src/agentcore-gateway/mcp-connection/generator.d.ts +19 -0
  32. package/src/agentcore-gateway/mcp-connection/generator.js +61 -0
  33. package/src/agentcore-gateway/mcp-connection/generator.js.map +1 -0
  34. package/src/agentcore-gateway/mcp-connection/schema.d.js +6 -0
  35. package/src/agentcore-gateway/mcp-connection/schema.d.js.map +1 -0
  36. package/src/agentcore-gateway/mcp-connection/schema.d.ts +13 -0
  37. package/src/agentcore-gateway/mcp-connection/schema.json +31 -0
  38. package/src/agentcore-gateway/react-connection/__snapshots__/generator.spec.ts.snap +68 -0
  39. package/src/agentcore-gateway/react-connection/generator.d.ts +19 -0
  40. package/src/agentcore-gateway/react-connection/generator.js +119 -0
  41. package/src/agentcore-gateway/react-connection/generator.js.map +1 -0
  42. package/src/agentcore-gateway/react-connection/schema.d.js +6 -0
  43. package/src/agentcore-gateway/react-connection/schema.d.js.map +1 -0
  44. package/src/agentcore-gateway/react-connection/schema.d.ts +13 -0
  45. package/src/agentcore-gateway/react-connection/schema.json +31 -0
  46. package/src/agentcore-gateway/schema.d.js +6 -0
  47. package/src/agentcore-gateway/schema.d.js.map +1 -0
  48. package/src/agentcore-gateway/schema.d.ts +17 -0
  49. package/src/agentcore-gateway/schema.json +72 -0
  50. package/src/connection/agent-local-dev.d.ts +49 -0
  51. package/src/connection/agent-local-dev.js +84 -0
  52. package/src/connection/agent-local-dev.js.map +1 -0
  53. package/src/connection/agent-runtime-config.js +9 -14
  54. package/src/connection/agent-runtime-config.js.map +1 -1
  55. package/src/connection/gateway-runtime-config.d.ts +19 -0
  56. package/src/connection/gateway-runtime-config.js +47 -0
  57. package/src/connection/gateway-runtime-config.js.map +1 -0
  58. package/src/connection/generator.d.ts +3 -10
  59. package/src/connection/generator.js +172 -194
  60. package/src/connection/generator.js.map +1 -1
  61. package/src/connection/{serve-local.d.ts → local-dev.d.ts} +3 -3
  62. package/src/connection/local-dev.js +37 -0
  63. package/src/connection/local-dev.js.map +1 -0
  64. package/src/connection/scaffold-catalog.d.ts +267 -0
  65. package/src/connection/scaffold-catalog.js +347 -0
  66. package/src/connection/scaffold-catalog.js.map +1 -0
  67. package/src/connection/schema-resolver.d.ts +5 -0
  68. package/src/connection/schema-resolver.js +27 -0
  69. package/src/connection/schema-resolver.js.map +1 -0
  70. package/src/connection/schema.d.js +6 -0
  71. package/src/connection/schema.d.js.map +1 -0
  72. package/src/connection/schema.d.ts +1 -0
  73. package/src/connection/schema.json +5 -0
  74. package/src/connection/supported-connections.d.ts +116 -0
  75. package/src/connection/supported-connections.js +163 -0
  76. package/src/connection/supported-connections.js.map +1 -0
  77. package/src/index.js +2 -5
  78. package/src/index.js.map +1 -1
  79. package/src/infra/app/__snapshots__/generator.spec.ts.snap +91 -72
  80. package/src/infra/app/files/app/src/main.ts.template +1 -1
  81. package/src/infra/app/files/app/src/stages/application-stage.ts.template +1 -1
  82. package/src/infra/app/generator.d.ts +43 -0
  83. package/src/infra/app/generator.js +179 -127
  84. package/src/infra/app/generator.js.map +1 -1
  85. package/src/infra/app/schema.d.js +6 -0
  86. package/src/infra/app/schema.d.js.map +1 -0
  87. package/src/infra/app/schema.d.ts +1 -1
  88. package/src/infra/app/schema.json +5 -0
  89. package/src/init/generator.d.ts +31 -0
  90. package/src/init/generator.js +46 -0
  91. package/src/init/generator.js.map +1 -0
  92. package/src/init/schema.d.js +6 -0
  93. package/src/init/schema.d.js.map +1 -0
  94. package/src/init/schema.d.ts +16 -0
  95. package/src/init/schema.json +35 -0
  96. package/src/internal/test-matrix/generator.d.ts +29 -0
  97. package/src/internal/test-matrix/generator.js +698 -0
  98. package/src/internal/test-matrix/generator.js.map +1 -0
  99. package/src/internal/test-matrix/schema.d.js +6 -0
  100. package/src/internal/test-matrix/schema.d.js.map +1 -0
  101. package/src/internal/test-matrix/schema.d.ts +12 -0
  102. package/src/internal/test-matrix/schema.json +21 -0
  103. package/src/license/config-types.js +5 -3
  104. package/src/license/config-types.js.map +1 -1
  105. package/src/license/config.d.ts +1 -1
  106. package/src/license/config.js +267 -242
  107. package/src/license/config.js.map +1 -1
  108. package/src/license/dependency-check/check.js +51 -46
  109. package/src/license/dependency-check/check.js.map +1 -1
  110. package/src/license/dependency-check/collectors/collector.js +41 -71
  111. package/src/license/dependency-check/collectors/collector.js.map +1 -1
  112. package/src/license/dependency-check/collectors/npm-collector.js +34 -41
  113. package/src/license/dependency-check/collectors/npm-collector.js.map +1 -1
  114. package/src/license/dependency-check/collectors/python-collector.js +55 -62
  115. package/src/license/dependency-check/collectors/python-collector.js.map +1 -1
  116. package/src/license/dependency-check/evaluator.js +40 -68
  117. package/src/license/dependency-check/evaluator.js.map +1 -1
  118. package/src/license/dependency-check/executor.js +30 -22
  119. package/src/license/dependency-check/executor.js.map +1 -1
  120. package/src/license/dependency-check/pre-approved.js +949 -336
  121. package/src/license/dependency-check/pre-approved.js.map +1 -1
  122. package/src/license/dependency-check/types.js +2 -3
  123. package/src/license/dependency-check/types.js.map +1 -1
  124. package/src/license/generator.js +65 -68
  125. package/src/license/generator.js.map +1 -1
  126. package/src/license/index.js +3 -9
  127. package/src/license/index.js.map +1 -1
  128. package/src/license/known-exceptions.d.ts +1 -1
  129. package/src/license/known-exceptions.js +19 -13
  130. package/src/license/known-exceptions.js.map +1 -1
  131. package/src/license/schema.d.js +6 -0
  132. package/src/license/schema.d.js.map +1 -0
  133. package/src/license/schema.d.ts +2 -0
  134. package/src/license/schema.json +5 -0
  135. package/src/license/sync/generator.js +94 -119
  136. package/src/license/sync/generator.js.map +1 -1
  137. package/src/license/sync/project-file-sync.js +28 -35
  138. package/src/license/sync/project-file-sync.js.map +1 -1
  139. package/src/mcp-server/dev-server.d.ts +1 -0
  140. package/src/mcp-server/dev-server.js +18 -0
  141. package/src/mcp-server/dev-server.js.map +1 -0
  142. package/src/mcp-server/generator-info.js +149 -165
  143. package/src/mcp-server/generator-info.js.map +1 -1
  144. package/src/mcp-server/guide-pipeline.js +199 -206
  145. package/src/mcp-server/guide-pipeline.js.map +1 -1
  146. package/src/mcp-server/guide-render.js +10 -25
  147. package/src/mcp-server/guide-render.js.map +1 -1
  148. package/src/mcp-server/index.js +6 -10
  149. package/src/mcp-server/index.js.map +1 -1
  150. package/src/mcp-server/mdx-ast.js +39 -57
  151. package/src/mcp-server/mdx-ast.js.map +1 -1
  152. package/src/mcp-server/option-filter.js +33 -47
  153. package/src/mcp-server/option-filter.js.map +1 -1
  154. package/src/mcp-server/schema-registry.d.ts +9 -3
  155. package/src/mcp-server/schema-registry.js +41 -38
  156. package/src/mcp-server/schema-registry.js.map +1 -1
  157. package/src/mcp-server/schema.d.ts +1 -1
  158. package/src/mcp-server/schema.js +9 -7
  159. package/src/mcp-server/schema.js.map +1 -1
  160. package/src/mcp-server/server.js +24 -24
  161. package/src/mcp-server/server.js.map +1 -1
  162. package/src/mcp-server/tools/add-to-existing-project.d.ts +12 -0
  163. package/src/mcp-server/tools/add-to-existing-project.js +36 -0
  164. package/src/mcp-server/tools/add-to-existing-project.js.map +1 -0
  165. package/src/mcp-server/tools/create-workspace-command.js +23 -24
  166. package/src/mcp-server/tools/create-workspace-command.js.map +1 -1
  167. package/src/mcp-server/tools/general-guidance.d.ts +1 -1
  168. package/src/mcp-server/tools/general-guidance.js +53 -31
  169. package/src/mcp-server/tools/general-guidance.js.map +1 -1
  170. package/src/mcp-server/tools/generator-guide.js +29 -37
  171. package/src/mcp-server/tools/generator-guide.js.map +1 -1
  172. package/src/mcp-server/tools/list-generators.js +19 -25
  173. package/src/mcp-server/tools/list-generators.js.map +1 -1
  174. package/src/mcp-server/tools/upgrade-workspace.d.ts +11 -0
  175. package/src/mcp-server/tools/upgrade-workspace.js +32 -0
  176. package/src/mcp-server/tools/upgrade-workspace.js.map +1 -0
  177. package/src/migrations/latest/gateway-agent-targets/__snapshots__/migration.spec.ts.snap +223 -0
  178. package/src/migrations/latest/gateway-agent-targets/metadata.json +3 -0
  179. package/src/migrations/latest/gateway-agent-targets/migration.d.ts +6 -0
  180. package/src/migrations/latest/gateway-agent-targets/migration.js +217 -0
  181. package/src/migrations/latest/gateway-agent-targets/migration.js.map +1 -0
  182. package/src/migrations/latest/gateway-cognito-passthrough/__snapshots__/migration.spec.ts.snap +149 -0
  183. package/src/migrations/latest/gateway-cognito-passthrough/metadata.json +3 -0
  184. package/src/migrations/latest/gateway-cognito-passthrough/migration.d.ts +6 -0
  185. package/src/migrations/latest/gateway-cognito-passthrough/migration.js +195 -0
  186. package/src/migrations/latest/gateway-cognito-passthrough/migration.js.map +1 -0
  187. package/src/migrations/latest/smithy-ssdk-bundle-pins/metadata.json +3 -0
  188. package/src/migrations/latest/smithy-ssdk-bundle-pins/migration.d.ts +6 -0
  189. package/src/migrations/latest/smithy-ssdk-bundle-pins/migration.js +78 -0
  190. package/src/migrations/latest/smithy-ssdk-bundle-pins/migration.js.map +1 -0
  191. package/src/migrations/latest/strip-pip-from-python-images/__snapshots__/migration.spec.ts.snap +48 -0
  192. package/src/migrations/latest/strip-pip-from-python-images/metadata.json +3 -0
  193. package/src/migrations/latest/strip-pip-from-python-images/migration.d.ts +6 -0
  194. package/src/migrations/latest/strip-pip-from-python-images/migration.js +91 -0
  195. package/src/migrations/latest/strip-pip-from-python-images/migration.js.map +1 -0
  196. package/src/migrations/latest/waf-log-group-removal/__snapshots__/migration.spec.ts.snap +57 -0
  197. package/src/migrations/latest/waf-log-group-removal/metadata.json +3 -0
  198. package/src/migrations/latest/waf-log-group-removal/migration.d.ts +6 -0
  199. package/src/migrations/latest/waf-log-group-removal/migration.js +77 -0
  200. package/src/migrations/latest/waf-log-group-removal/migration.js.map +1 -0
  201. package/src/migrations/v1.0.0-rc.50/modernize-function-props-cast/metadata.json +3 -0
  202. package/src/migrations/v1.0.0-rc.50/modernize-function-props-cast/migration.d.ts +6 -0
  203. package/src/migrations/v1.0.0-rc.50/modernize-function-props-cast/migration.js +65 -0
  204. package/src/migrations/v1.0.0-rc.50/modernize-function-props-cast/migration.js.map +1 -0
  205. package/src/migrations/v1.0.0-rc.50/restrict-cors-to-custom-domains/metadata.json +3 -0
  206. package/src/migrations/v1.0.0-rc.50/restrict-cors-to-custom-domains/migration.d.ts +6 -0
  207. package/src/migrations/v1.0.0-rc.50/restrict-cors-to-custom-domains/migration.js +108 -0
  208. package/src/migrations/v1.0.0-rc.50/restrict-cors-to-custom-domains/migration.js.map +1 -0
  209. package/src/migrations/v1.0.0-rc.50/terraform-bootstrap-adopt-existing-bucket/metadata.json +3 -0
  210. package/src/migrations/v1.0.0-rc.50/terraform-bootstrap-adopt-existing-bucket/migration.d.ts +6 -0
  211. package/src/migrations/v1.0.0-rc.50/terraform-bootstrap-adopt-existing-bucket/migration.js +128 -0
  212. package/src/migrations/v1.0.0-rc.50/terraform-bootstrap-adopt-existing-bucket/migration.js.map +1 -0
  213. package/src/migrations/v1.0.0-rc.52/user-identity-waf-allow-localhost-callback/metadata.json +3 -0
  214. package/src/migrations/v1.0.0-rc.52/user-identity-waf-allow-localhost-callback/migration.d.ts +6 -0
  215. package/src/migrations/v1.0.0-rc.52/user-identity-waf-allow-localhost-callback/migration.js +215 -0
  216. package/src/migrations/v1.0.0-rc.52/user-identity-waf-allow-localhost-callback/migration.js.map +1 -0
  217. package/src/migrations/v1.0.0-rc.54/order-access-log-delivery-after-bucket-policy/metadata.json +3 -0
  218. package/src/migrations/v1.0.0-rc.54/order-access-log-delivery-after-bucket-policy/migration.d.ts +6 -0
  219. package/src/migrations/v1.0.0-rc.54/order-access-log-delivery-after-bucket-policy/migration.js +93 -0
  220. package/src/migrations/v1.0.0-rc.54/order-access-log-delivery-after-bucket-policy/migration.js.map +1 -0
  221. package/src/migrations/v1.0.0-rc.55/backfill-generator-metadata/metadata.json +3 -0
  222. package/src/migrations/v1.0.0-rc.55/backfill-generator-metadata/migration.d.ts +96 -0
  223. package/src/migrations/v1.0.0-rc.55/backfill-generator-metadata/migration.js +670 -0
  224. package/src/migrations/v1.0.0-rc.55/backfill-generator-metadata/migration.js.map +1 -0
  225. package/src/migrations/v1.0.0-rc.56/dynamodb-local-remove-optimize-flag/metadata.json +3 -0
  226. package/src/migrations/v1.0.0-rc.56/dynamodb-local-remove-optimize-flag/migration.d.ts +6 -0
  227. package/src/migrations/v1.0.0-rc.56/dynamodb-local-remove-optimize-flag/migration.js +89 -0
  228. package/src/migrations/v1.0.0-rc.56/dynamodb-local-remove-optimize-flag/migration.js.map +1 -0
  229. package/src/migrations/v1.0.0-rc.57/ts-agent-session-management-support/metadata.json +3 -0
  230. package/src/migrations/v1.0.0-rc.57/ts-agent-session-management-support/migration.d.ts +6 -0
  231. package/src/migrations/v1.0.0-rc.57/ts-agent-session-management-support/migration.js +449 -0
  232. package/src/migrations/v1.0.0-rc.57/ts-agent-session-management-support/migration.js.map +1 -0
  233. package/src/open-api/ts-client/__snapshots__/generator.additional-properties.spec.ts.snap +147 -33
  234. package/src/open-api/ts-client/__snapshots__/generator.arrays.spec.ts.snap +308 -75
  235. package/src/open-api/ts-client/__snapshots__/generator.complex-types.spec.ts.snap +298 -74
  236. package/src/open-api/ts-client/__snapshots__/generator.composite-types.spec.ts.snap +748 -103
  237. package/src/open-api/ts-client/__snapshots__/generator.content-type.spec.ts.snap +230 -37
  238. package/src/open-api/ts-client/__snapshots__/generator.duplicate-types.spec.ts.snap +249 -52
  239. package/src/open-api/ts-client/__snapshots__/generator.edge-cases.spec.ts.snap +5535 -0
  240. package/src/open-api/ts-client/__snapshots__/generator.fast-api-gaps.spec.ts.snap +736 -0
  241. package/src/open-api/ts-client/__snapshots__/generator.fast-api.spec.ts.snap +305 -71
  242. package/src/open-api/ts-client/__snapshots__/generator.multipart.spec.ts.snap +298 -0
  243. package/src/open-api/ts-client/__snapshots__/generator.primitive-types.spec.ts.snap +353 -82
  244. package/src/open-api/ts-client/__snapshots__/generator.request.spec.ts.snap +176 -55
  245. package/src/open-api/ts-client/__snapshots__/generator.reserved-keywords.spec.ts.snap +100 -24
  246. package/src/open-api/ts-client/__snapshots__/generator.response.spec.ts.snap +147 -33
  247. package/src/open-api/ts-client/__snapshots__/generator.spec-compliance.spec.ts.snap +1883 -0
  248. package/src/open-api/ts-client/__snapshots__/generator.streaming.spec.ts.snap +392 -88
  249. package/src/open-api/ts-client/__snapshots__/generator.tags.spec.ts.snap +200 -48
  250. package/src/open-api/ts-client/files/client.gen.ts.template +358 -24
  251. package/src/open-api/ts-client/files/types.gen.ts.template +6 -4
  252. package/src/open-api/ts-client/generator.js +41 -26
  253. package/src/open-api/ts-client/generator.js.map +1 -1
  254. package/src/open-api/ts-client/schema.d.js +6 -0
  255. package/src/open-api/ts-client/schema.d.js.map +1 -0
  256. package/src/open-api/ts-hooks/files/options-proxy.gen.ts.template +7 -2
  257. package/src/open-api/ts-hooks/generator.js +17 -21
  258. package/src/open-api/ts-hooks/generator.js.map +1 -1
  259. package/src/open-api/ts-hooks/generator.spec.tsx +70 -0
  260. package/src/open-api/ts-hooks/schema.d.js +6 -0
  261. package/src/open-api/ts-hooks/schema.d.js.map +1 -0
  262. package/src/open-api/ts-metadata/generator.js +12 -20
  263. package/src/open-api/ts-metadata/generator.js.map +1 -1
  264. package/src/open-api/ts-metadata/schema.d.js +6 -0
  265. package/src/open-api/ts-metadata/schema.d.js.map +1 -0
  266. package/src/open-api/utils/codegen-data/languages.d.ts +0 -6
  267. package/src/open-api/utils/codegen-data/languages.js +59 -66
  268. package/src/open-api/utils/codegen-data/languages.js.map +1 -1
  269. package/src/open-api/utils/codegen-data/types.d.ts +255 -10
  270. package/src/open-api/utils/codegen-data/types.js +54 -30
  271. package/src/open-api/utils/codegen-data/types.js.map +1 -1
  272. package/src/open-api/utils/codegen-data.d.ts +2 -2
  273. package/src/open-api/utils/codegen-data.js +494 -674
  274. package/src/open-api/utils/codegen-data.js.map +1 -1
  275. package/src/open-api/utils/normalise.js +437 -246
  276. package/src/open-api/utils/normalise.js.map +1 -1
  277. package/src/open-api/utils/parse.js +8 -14
  278. package/src/open-api/utils/parse.js.map +1 -1
  279. package/src/open-api/utils/parser.d.ts +55 -0
  280. package/src/open-api/utils/parser.js +787 -0
  281. package/src/open-api/utils/parser.js.map +1 -0
  282. package/src/open-api/utils/refs.js +12 -22
  283. package/src/open-api/utils/refs.js.map +1 -1
  284. package/src/open-api/utils/types.d.ts +18 -0
  285. package/src/open-api/utils/types.js +5 -2
  286. package/src/open-api/utils/types.js.map +1 -1
  287. package/src/preset/__snapshots__/generator.spec.ts.snap +99 -20
  288. package/src/preset/generator.d.ts +14 -1
  289. package/src/preset/generator.js +76 -151
  290. package/src/preset/generator.js.map +1 -1
  291. package/src/preset/schema.d.js +6 -0
  292. package/src/preset/schema.d.js.map +1 -0
  293. package/src/preset/schema.d.ts +4 -1
  294. package/src/preset/schema.json +16 -5
  295. package/src/py/agent/__snapshots__/generator.constructs.spec.ts.snap +334 -0
  296. package/src/py/agent/__snapshots__/generator.frameworks.spec.ts.snap +734 -0
  297. package/src/py/agent/__snapshots__/{generator.spec.ts.snap → generator.protocols.spec.ts.snap} +191 -315
  298. package/src/py/agent/a2a-connection/__snapshots__/generator.spec.ts.snap +190 -0
  299. package/src/py/agent/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client_strands.py.template +31 -0
  300. package/src/py/agent/a2a-connection/files/langchain/agent-connection/app/__targetAgentSnakeCase___client_langchain.py.template +29 -0
  301. package/src/py/agent/a2a-connection/generator.d.ts +24 -0
  302. package/src/py/agent/a2a-connection/generator.js +145 -88
  303. package/src/py/agent/a2a-connection/generator.js.map +1 -1
  304. package/src/py/agent/a2a-connection/schema.d.js +8 -0
  305. package/src/py/agent/a2a-connection/schema.d.js.map +1 -0
  306. package/src/py/agent/a2a-connection/schema.d.ts +1 -0
  307. package/src/py/agent/a2a-connection/schema.json +5 -0
  308. package/src/py/agent/files/a2a-langchain/main.py.template +89 -0
  309. package/src/py/agent/files/ag-ui-langchain/main.py.template +83 -0
  310. package/src/py/agent/files/common/agent.py.template +2 -0
  311. package/src/py/agent/files/common-langchain/agent.py.template +30 -0
  312. package/src/py/agent/files/deploy/Dockerfile.template +8 -1
  313. package/src/py/agent/files/http/init.py.template +7 -25
  314. package/src/py/agent/files/http/main.py.template +3 -4
  315. package/src/py/agent/files/http-langchain/main.py.template +84 -0
  316. package/src/py/agent/gateway-connection/__snapshots__/generator.spec.ts.snap +184 -0
  317. package/src/py/agent/gateway-connection/files/agent-connection/app/__gatewaySnakeCase___client_strands.py.template +35 -0
  318. package/src/py/agent/gateway-connection/files/langchain/agent-connection/app/__gatewaySnakeCase___client_langchain.py.template +34 -0
  319. package/src/py/agent/gateway-connection/generator.d.ts +33 -0
  320. package/src/py/agent/gateway-connection/generator.js +153 -0
  321. package/src/py/agent/gateway-connection/generator.js.map +1 -0
  322. package/src/py/agent/gateway-connection/schema.d.js +6 -0
  323. package/src/py/agent/gateway-connection/schema.d.js.map +1 -0
  324. package/src/py/agent/gateway-connection/schema.d.ts +13 -0
  325. package/src/py/agent/gateway-connection/schema.json +31 -0
  326. package/src/py/agent/generator.d.ts +146 -1
  327. package/src/py/agent/generator.js +406 -197
  328. package/src/py/agent/generator.js.map +1 -1
  329. package/src/py/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +154 -89
  330. package/src/py/agent/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client_strands.py.template +31 -0
  331. package/src/py/agent/mcp-connection/files/langchain/agent-connection/app/__mcpServerSnakeCase___client_langchain.py.template +31 -0
  332. package/src/py/agent/mcp-connection/generator.d.ts +23 -0
  333. package/src/py/agent/mcp-connection/generator.js +103 -130
  334. package/src/py/agent/mcp-connection/generator.js.map +1 -1
  335. package/src/py/agent/mcp-connection/schema.d.js +8 -0
  336. package/src/py/agent/mcp-connection/schema.d.js.map +1 -0
  337. package/src/py/agent/mcp-connection/schema.d.ts +1 -0
  338. package/src/py/agent/mcp-connection/schema.json +5 -0
  339. package/src/py/agent/react-connection/__snapshots__/generator.spec.ts.snap +17 -19
  340. package/src/py/agent/react-connection/generator.d.ts +150 -1
  341. package/src/py/agent/react-connection/generator.js +105 -65
  342. package/src/py/agent/react-connection/generator.js.map +1 -1
  343. package/src/py/agent/react-connection/{serve-local.d.ts → local-dev.d.ts} +4 -4
  344. package/src/py/agent/react-connection/local-dev.js +36 -0
  345. package/src/py/agent/react-connection/local-dev.js.map +1 -0
  346. package/src/py/agent/react-connection/schema.d.js +8 -0
  347. package/src/py/agent/react-connection/schema.d.js.map +1 -0
  348. package/src/py/agent/react-connection/schema.d.ts +1 -0
  349. package/src/py/agent/react-connection/schema.json +5 -0
  350. package/src/py/agent/schema.d.js +6 -0
  351. package/src/py/agent/schema.d.js.map +1 -0
  352. package/src/py/agent/schema.d.ts +5 -1
  353. package/src/py/agent/schema.json +15 -1
  354. package/src/py/api/generator.js +12 -11
  355. package/src/py/api/generator.js.map +1 -1
  356. package/src/py/api/schema.d.js +6 -0
  357. package/src/py/api/schema.d.js.map +1 -0
  358. package/src/py/api/schema.d.ts +1 -0
  359. package/src/py/api/schema.json +5 -0
  360. package/src/py/dynamodb/__snapshots__/generator.spec.ts.snap +1520 -0
  361. package/src/py/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +63 -0
  362. package/src/py/dynamodb/agent-connection/generator.d.ts +10 -0
  363. package/src/py/dynamodb/agent-connection/generator.js +45 -0
  364. package/src/py/dynamodb/agent-connection/generator.js.map +1 -0
  365. package/src/py/dynamodb/agent-connection/schema.d.js +8 -0
  366. package/src/py/dynamodb/agent-connection/schema.d.js.map +1 -0
  367. package/src/py/dynamodb/agent-connection/schema.d.ts +15 -0
  368. package/src/py/dynamodb/agent-connection/schema.json +27 -0
  369. package/src/py/dynamodb/fast-api-connection/__snapshots__/generator.spec.ts.snap +32 -0
  370. package/src/py/dynamodb/fast-api-connection/generator.d.ts +10 -0
  371. package/src/py/dynamodb/fast-api-connection/generator.js +39 -0
  372. package/src/py/dynamodb/fast-api-connection/generator.js.map +1 -0
  373. package/src/py/dynamodb/fast-api-connection/schema.d.js +8 -0
  374. package/src/py/dynamodb/fast-api-connection/schema.d.js.map +1 -0
  375. package/src/py/dynamodb/fast-api-connection/schema.d.ts +13 -0
  376. package/src/py/dynamodb/fast-api-connection/schema.json +23 -0
  377. package/src/py/dynamodb/files/__name__/__init__.py.template +6 -0
  378. package/src/py/dynamodb/files/__name__/client.py.template +39 -0
  379. package/src/py/dynamodb/files/__name__/entities/__init__.py.template +4 -0
  380. package/src/py/dynamodb/files/__name__/entities/base.py.template +63 -0
  381. package/src/py/dynamodb/files/__name__/entities/example.py.template +64 -0
  382. package/src/py/dynamodb/files/config.json.template +24 -0
  383. package/src/py/dynamodb/generator.d.ts +39 -0
  384. package/src/py/dynamodb/generator.js +130 -0
  385. package/src/py/dynamodb/generator.js.map +1 -0
  386. package/src/py/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +63 -0
  387. package/src/py/dynamodb/mcp-server-connection/generator.d.ts +10 -0
  388. package/src/py/dynamodb/mcp-server-connection/generator.js +45 -0
  389. package/src/py/dynamodb/mcp-server-connection/generator.js.map +1 -0
  390. package/src/py/dynamodb/mcp-server-connection/schema.d.js +8 -0
  391. package/src/py/dynamodb/mcp-server-connection/schema.d.js.map +1 -0
  392. package/src/py/dynamodb/mcp-server-connection/schema.d.ts +15 -0
  393. package/src/py/dynamodb/mcp-server-connection/schema.json +27 -0
  394. package/src/py/dynamodb/schema.d.js +6 -0
  395. package/src/py/dynamodb/schema.d.js.map +1 -0
  396. package/src/py/dynamodb/schema.d.ts +16 -0
  397. package/src/py/dynamodb/schema.json +76 -0
  398. package/src/py/fast-api/__snapshots__/generator.spec.ts.snap +240 -4693
  399. package/src/py/fast-api/__snapshots__/generator.terraform.spec.ts.snap +5409 -0
  400. package/src/py/fast-api/files/app/__name__/init.py.template +5 -22
  401. package/src/py/fast-api/files/app/__name__/main.py.template +4 -1
  402. package/src/py/fast-api/generator.d.ts +68 -0
  403. package/src/py/fast-api/generator.js +134 -95
  404. package/src/py/fast-api/generator.js.map +1 -1
  405. package/src/py/fast-api/react/__snapshots__/generator.spec.ts.snap +4 -3
  406. package/src/py/fast-api/react/generator.d.ts +16 -1
  407. package/src/py/fast-api/react/generator.js +38 -26
  408. package/src/py/fast-api/react/generator.js.map +1 -1
  409. package/src/py/fast-api/react/open-api.js +31 -29
  410. package/src/py/fast-api/react/open-api.js.map +1 -1
  411. package/src/py/fast-api/react/schema.d.js +6 -0
  412. package/src/py/fast-api/react/schema.d.js.map +1 -0
  413. package/src/py/fast-api/react/schema.d.ts +1 -0
  414. package/src/py/fast-api/react/schema.json +5 -0
  415. package/src/py/fast-api/schema.d.js +6 -0
  416. package/src/py/fast-api/schema.d.js.map +1 -0
  417. package/src/py/fast-api/schema.d.ts +1 -0
  418. package/src/py/fast-api/schema.json +6 -0
  419. package/src/py/lambda-function/__snapshots__/generator.spec.ts.snap +4 -4
  420. package/src/py/lambda-function/generator.d.ts +21 -0
  421. package/src/py/lambda-function/generator.js +82 -62
  422. package/src/py/lambda-function/generator.js.map +1 -1
  423. package/src/py/lambda-function/schema.d.js +6 -0
  424. package/src/py/lambda-function/schema.d.js.map +1 -0
  425. package/src/py/lambda-function/schema.d.ts +1 -0
  426. package/src/py/lambda-function/schema.json +5 -0
  427. package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +221 -21
  428. package/src/py/mcp-server/files/deploy/Dockerfile.template +8 -1
  429. package/src/py/mcp-server/generator.d.ts +60 -0
  430. package/src/py/mcp-server/generator.js +204 -131
  431. package/src/py/mcp-server/generator.js.map +1 -1
  432. package/src/py/mcp-server/schema.d.js +6 -0
  433. package/src/py/mcp-server/schema.d.js.map +1 -0
  434. package/src/py/mcp-server/schema.d.ts +1 -0
  435. package/src/py/mcp-server/schema.json +6 -0
  436. package/src/py/project/generator.d.ts +27 -1
  437. package/src/py/project/generator.js +248 -130
  438. package/src/py/project/generator.js.map +1 -1
  439. package/src/py/project/schema.d.js +6 -0
  440. package/src/py/project/schema.d.js.map +1 -0
  441. package/src/py/project/schema.d.ts +1 -0
  442. package/src/py/project/schema.json +5 -0
  443. package/src/py/rdb/__snapshots__/generator.spec.ts.snap +2070 -0
  444. package/src/py/rdb/agent-connection/__snapshots__/generator.spec.ts.snap +123 -0
  445. package/src/py/rdb/agent-connection/generator.d.ts +10 -0
  446. package/src/py/rdb/agent-connection/generator.js +52 -0
  447. package/src/py/rdb/agent-connection/generator.js.map +1 -0
  448. package/src/py/rdb/agent-connection/schema.d.js +8 -0
  449. package/src/py/rdb/agent-connection/schema.d.js.map +1 -0
  450. package/src/py/rdb/agent-connection/schema.d.ts +15 -0
  451. package/src/py/rdb/agent-connection/schema.json +27 -0
  452. package/src/py/rdb/fast-api-connection/__snapshots__/generator.spec.ts.snap +51 -0
  453. package/src/py/rdb/fast-api-connection/files/__apiModuleName__/dependencies/__rdbNameSnake__.py.template +14 -0
  454. package/src/py/rdb/fast-api-connection/generator.d.ts +10 -0
  455. package/src/py/rdb/fast-api-connection/generator.js +56 -0
  456. package/src/py/rdb/fast-api-connection/generator.js.map +1 -0
  457. package/src/py/rdb/fast-api-connection/schema.d.js +8 -0
  458. package/src/py/rdb/fast-api-connection/schema.d.js.map +1 -0
  459. package/src/py/rdb/fast-api-connection/schema.d.ts +13 -0
  460. package/src/py/rdb/fast-api-connection/schema.json +23 -0
  461. package/src/py/rdb/files/Dockerfile.create-db-user.template +14 -0
  462. package/src/py/rdb/files/Dockerfile.migration.template +14 -0
  463. package/src/py/rdb/files/__name__/__init__.py.template +3 -0
  464. package/src/py/rdb/files/__name__/connection.py.template +55 -0
  465. package/src/py/rdb/files/__name__/create_db_user_handler.py.template +97 -0
  466. package/src/py/rdb/files/__name__/migration_handler.py.template +36 -0
  467. package/src/py/rdb/files/__name__/models/__init__.py.template +3 -0
  468. package/src/py/rdb/files/__name__/models/example.py.template +8 -0
  469. package/src/py/rdb/files/__name__/utils.py.template +104 -0
  470. package/src/py/rdb/files/alembic.ini.template +38 -0
  471. package/src/py/rdb/files/config.json.template +14 -0
  472. package/src/py/rdb/files/migrations/env.py.template +80 -0
  473. package/src/py/rdb/files/migrations/script.py.mako.template +28 -0
  474. package/src/py/rdb/generator.d.ts +95 -0
  475. package/src/py/rdb/generator.js +328 -0
  476. package/src/py/rdb/generator.js.map +1 -0
  477. package/src/py/rdb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +119 -0
  478. package/src/py/rdb/mcp-server-connection/generator.d.ts +10 -0
  479. package/src/py/rdb/mcp-server-connection/generator.js +52 -0
  480. package/src/py/rdb/mcp-server-connection/generator.js.map +1 -0
  481. package/src/py/rdb/mcp-server-connection/schema.d.js +8 -0
  482. package/src/py/rdb/mcp-server-connection/schema.d.js.map +1 -0
  483. package/src/py/rdb/mcp-server-connection/schema.d.ts +15 -0
  484. package/src/py/rdb/mcp-server-connection/schema.json +27 -0
  485. package/src/py/rdb/schema.d.js +6 -0
  486. package/src/py/rdb/schema.d.js.map +1 -0
  487. package/src/py/rdb/schema.d.ts +16 -0
  488. package/src/py/rdb/schema.json +78 -0
  489. package/src/py/rdb/utils.d.ts +6 -0
  490. package/src/py/rdb/utils.js +16 -0
  491. package/src/py/rdb/utils.js.map +1 -0
  492. package/src/sdk/agentcore-gateway.d.ts +6 -0
  493. package/src/sdk/agentcore-gateway.js +7 -0
  494. package/src/sdk/agentcore-gateway.js.map +1 -0
  495. package/src/sdk/connection.d.ts +6 -0
  496. package/src/sdk/connection.js +6 -0
  497. package/src/sdk/connection.js.map +1 -0
  498. package/src/sdk/license.d.ts +8 -0
  499. package/src/sdk/license.js +7 -0
  500. package/src/sdk/license.js.map +1 -0
  501. package/src/sdk/open-api.d.ts +10 -0
  502. package/src/sdk/open-api.js +8 -0
  503. package/src/sdk/open-api.js.map +1 -0
  504. package/src/sdk/py.d.ts +18 -0
  505. package/src/sdk/py.js +12 -0
  506. package/src/sdk/py.js.map +1 -0
  507. package/src/sdk/terraform.d.ts +6 -0
  508. package/src/sdk/terraform.js +7 -0
  509. package/src/sdk/terraform.js.map +1 -0
  510. package/src/sdk/ts.d.ts +39 -0
  511. package/src/sdk/ts.js +41 -0
  512. package/src/sdk/ts.js.map +1 -0
  513. package/{sdk/utils/format.d.ts → src/sdk/utils/ast.d.ts} +1 -1
  514. package/src/sdk/utils/ast.js +6 -0
  515. package/src/sdk/utils/ast.js.map +1 -0
  516. package/{sdk/utils/ast.d.ts → src/sdk/utils/format.d.ts} +1 -2
  517. package/src/sdk/utils/format.js +6 -0
  518. package/src/sdk/utils/format.js.map +1 -0
  519. package/{sdk → src/sdk}/utils/test.d.ts +1 -1
  520. package/src/sdk/utils/test.js +6 -0
  521. package/src/sdk/utils/test.js.map +1 -0
  522. package/src/smithy/project/__snapshots__/generator.spec.ts.snap +132 -32
  523. package/src/smithy/project/files/{build.Dockerfile.template → service/build.Dockerfile.template} +3 -6
  524. package/src/smithy/project/files/{src → service/src}/operations/echo.smithy.template +1 -0
  525. package/src/smithy/project/files/shapes/build.Dockerfile.template +33 -0
  526. package/src/smithy/project/files/shapes/smithy-build.json.template +7 -0
  527. package/src/smithy/project/files/shapes/src/main.smithy.template +11 -0
  528. package/src/smithy/project/generator.d.ts +32 -0
  529. package/src/smithy/project/generator.js +101 -56
  530. package/src/smithy/project/generator.js.map +1 -1
  531. package/src/smithy/project/schema.d.js +6 -0
  532. package/src/smithy/project/schema.d.js.map +1 -0
  533. package/src/smithy/project/schema.d.ts +2 -0
  534. package/src/smithy/project/schema.json +28 -1
  535. package/src/smithy/react-connection/__snapshots__/generator.spec.ts.snap +1 -1
  536. package/src/smithy/react-connection/generator.d.ts +15 -0
  537. package/src/smithy/react-connection/generator.js +54 -48
  538. package/src/smithy/react-connection/generator.js.map +1 -1
  539. package/src/smithy/react-connection/schema.d.js +6 -0
  540. package/src/smithy/react-connection/schema.d.js.map +1 -0
  541. package/src/smithy/react-connection/schema.d.ts +1 -0
  542. package/src/smithy/react-connection/schema.json +5 -0
  543. package/src/smithy/ts/api/__snapshots__/generator.spec.ts.snap +847 -104
  544. package/src/smithy/ts/api/files/handler.ts.template +2 -2
  545. package/src/smithy/ts/api/files/local-server.ts.template +2 -2
  546. package/src/smithy/ts/api/files/operations/echo.ts.template +2 -2
  547. package/src/smithy/ts/api/files/service.ts.template +3 -3
  548. package/src/smithy/ts/api/generator.d.ts +84 -0
  549. package/src/smithy/ts/api/generator.js +187 -114
  550. package/src/smithy/ts/api/generator.js.map +1 -1
  551. package/src/smithy/ts/api/schema.d.js +6 -0
  552. package/src/smithy/ts/api/schema.d.js.map +1 -0
  553. package/src/smithy/ts/api/schema.d.ts +1 -0
  554. package/src/smithy/ts/api/schema.json +6 -0
  555. package/src/terraform/project/files/application/scripts/bootstrap.ts.template +40 -1
  556. package/src/terraform/project/files/application/src/main.tf.template +6 -1
  557. package/src/terraform/project/files/application/src/providers.tf.template +1 -1
  558. package/src/terraform/project/generator.d.ts +50 -0
  559. package/src/terraform/project/generator.js +212 -111
  560. package/src/terraform/project/generator.js.map +1 -1
  561. package/src/terraform/project/schema.d.js +9 -0
  562. package/src/terraform/project/schema.d.js.map +1 -0
  563. package/src/terraform/project/schema.d.ts +1 -0
  564. package/src/terraform/project/schema.json +5 -0
  565. package/src/trpc/backend/__snapshots__/generator.spec.ts.snap +1182 -184
  566. package/src/trpc/backend/files/src/client/index.ts.template +1 -1
  567. package/src/trpc/backend/files/src/handler.ts.template +1 -1
  568. package/src/trpc/backend/files/src/index.ts.template +5 -5
  569. package/src/trpc/backend/files/src/init.ts.template +1 -1
  570. package/src/trpc/backend/files/src/local-server.ts.template +1 -1
  571. package/src/trpc/backend/files/src/middleware/index.ts.template +7 -7
  572. package/src/trpc/backend/files/src/procedures/echo.ts.template +3 -3
  573. package/src/trpc/backend/files/src/router.ts.template +2 -2
  574. package/src/trpc/backend/files/src/schema/echo.ts.template +2 -2
  575. package/src/trpc/backend/files/src/schema/index.ts.template +1 -1
  576. package/src/trpc/backend/generator.d.ts +90 -1
  577. package/src/trpc/backend/generator.js +177 -100
  578. package/src/trpc/backend/generator.js.map +1 -1
  579. package/src/trpc/backend/schema.d.js +6 -0
  580. package/src/trpc/backend/schema.d.js.map +1 -0
  581. package/src/trpc/backend/schema.d.ts +1 -0
  582. package/src/trpc/backend/schema.json +6 -0
  583. package/src/trpc/react/__snapshots__/generator.spec.ts.snap +4 -4
  584. package/src/trpc/react/files/src/components/__apiNameClassName__ClientProvider.tsx.template +3 -3
  585. package/src/trpc/react/generator.d.ts +38 -1
  586. package/src/trpc/react/generator.js +105 -63
  587. package/src/trpc/react/generator.js.map +1 -1
  588. package/src/trpc/react/schema.d.js +6 -0
  589. package/src/trpc/react/schema.d.js.map +1 -0
  590. package/src/trpc/react/schema.d.ts +1 -0
  591. package/src/trpc/react/schema.json +5 -0
  592. package/src/ts/agent/__snapshots__/generator.spec.ts.snap +1452 -25
  593. package/src/ts/agent/a2a-connection/__snapshots__/generator.spec.ts.snap +258 -0
  594. package/src/ts/agent/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client-strands.ts.template +23 -0
  595. package/src/ts/agent/a2a-connection/generator.d.ts +46 -0
  596. package/src/ts/agent/a2a-connection/generator.js +110 -63
  597. package/src/ts/agent/a2a-connection/generator.js.map +1 -1
  598. package/src/ts/agent/a2a-connection/schema.d.js +8 -0
  599. package/src/ts/agent/a2a-connection/schema.d.js.map +1 -0
  600. package/src/ts/agent/a2a-connection/schema.d.ts +1 -0
  601. package/src/ts/agent/a2a-connection/schema.json +5 -0
  602. package/src/ts/agent/files/a2a/index.ts.template +1 -1
  603. package/src/ts/agent/files/ag-ui/index.ts.template +36 -11
  604. package/src/ts/agent/files/common/agent.ts.template +15 -2
  605. package/src/ts/agent/files/common/session.ts.template +43 -0
  606. package/src/ts/agent/files/deploy/Dockerfile.template +13 -2
  607. package/src/ts/agent/files/http/client.ts.template +2 -2
  608. package/src/ts/agent/files/http/index.ts.template +2 -2
  609. package/src/ts/agent/files/http/router.ts.template +5 -5
  610. package/src/ts/agent/gateway-connection/__snapshots__/generator.spec.ts.snap +222 -0
  611. package/src/ts/agent/gateway-connection/files/agent-connection/app/__gatewayKebabCase__-client-strands.ts.template +30 -0
  612. package/src/ts/agent/gateway-connection/generator.d.ts +47 -0
  613. package/src/ts/agent/gateway-connection/generator.js +144 -0
  614. package/src/ts/agent/gateway-connection/generator.js.map +1 -0
  615. package/src/ts/agent/gateway-connection/schema.d.js +6 -0
  616. package/src/ts/agent/gateway-connection/schema.d.js.map +1 -0
  617. package/src/ts/agent/gateway-connection/schema.d.ts +13 -0
  618. package/src/ts/agent/gateway-connection/schema.json +31 -0
  619. package/src/ts/agent/generator.d.ts +197 -0
  620. package/src/ts/agent/generator.js +339 -156
  621. package/src/ts/agent/generator.js.map +1 -1
  622. package/src/ts/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +194 -113
  623. package/src/ts/agent/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client-strands.ts.template +23 -0
  624. package/src/ts/agent/mcp-connection/generator.d.ts +37 -0
  625. package/src/ts/agent/mcp-connection/generator.js +88 -65
  626. package/src/ts/agent/mcp-connection/generator.js.map +1 -1
  627. package/src/ts/agent/mcp-connection/schema.d.js +8 -0
  628. package/src/ts/agent/mcp-connection/schema.d.js.map +1 -0
  629. package/src/ts/agent/mcp-connection/schema.d.ts +1 -0
  630. package/src/ts/agent/mcp-connection/schema.json +5 -0
  631. package/src/ts/agent/react-connection/__snapshots__/generator.spec.ts.snap +8 -4
  632. package/src/ts/agent/react-connection/files/src/components/__agentNameClassName__AgentClientProvider.tsx.template +2 -1
  633. package/src/ts/agent/react-connection/generator.d.ts +202 -1
  634. package/src/ts/agent/react-connection/generator.js +158 -99
  635. package/src/ts/agent/react-connection/generator.js.map +1 -1
  636. package/src/ts/agent/react-connection/{serve-local.d.ts → local-dev.d.ts} +2 -2
  637. package/src/ts/agent/react-connection/local-dev.js +17 -0
  638. package/src/ts/agent/react-connection/local-dev.js.map +1 -0
  639. package/src/ts/agent/react-connection/schema.d.js +8 -0
  640. package/src/ts/agent/react-connection/schema.d.js.map +1 -0
  641. package/src/ts/agent/react-connection/schema.d.ts +1 -0
  642. package/src/ts/agent/react-connection/schema.json +5 -0
  643. package/src/ts/agent/schema.d.js +6 -0
  644. package/src/ts/agent/schema.d.js.map +1 -0
  645. package/src/ts/agent/schema.d.ts +4 -0
  646. package/src/ts/agent/schema.json +14 -0
  647. package/src/ts/api/generator.js +16 -16
  648. package/src/ts/api/generator.js.map +1 -1
  649. package/src/ts/api/schema.d.js +6 -0
  650. package/src/ts/api/schema.d.js.map +1 -0
  651. package/src/ts/api/schema.d.ts +1 -0
  652. package/src/ts/api/schema.json +5 -0
  653. package/src/ts/astro-docs/__snapshots__/generator.spec.ts.snap +14 -14
  654. package/src/ts/astro-docs/files/translation/scripts/translate.ts.template +3 -2
  655. package/src/ts/astro-docs/generator.d.ts +38 -0
  656. package/src/ts/astro-docs/generator.js +126 -61
  657. package/src/ts/astro-docs/generator.js.map +1 -1
  658. package/src/ts/astro-docs/schema.d.js +6 -0
  659. package/src/ts/astro-docs/schema.d.js.map +1 -0
  660. package/src/ts/astro-docs/schema.d.ts +2 -2
  661. package/src/ts/astro-docs/schema.json +3 -3
  662. package/src/ts/dcr-proxy/__snapshots__/generator.spec.ts.snap +982 -0
  663. package/src/ts/dcr-proxy/generator.d.ts +34 -0
  664. package/src/ts/dcr-proxy/generator.js +115 -0
  665. package/src/ts/dcr-proxy/generator.js.map +1 -0
  666. package/src/ts/dcr-proxy/schema.d.js +6 -0
  667. package/src/ts/dcr-proxy/schema.d.js.map +1 -0
  668. package/src/ts/dcr-proxy/schema.d.ts +13 -0
  669. package/src/ts/dcr-proxy/schema.json +44 -0
  670. package/src/ts/docs/generator.js +10 -10
  671. package/src/ts/docs/generator.js.map +1 -1
  672. package/src/ts/docs/schema.d.js +6 -0
  673. package/src/ts/docs/schema.d.js.map +1 -0
  674. package/src/ts/docs/schema.d.ts +1 -4
  675. package/src/ts/docs/schema.json +3 -3
  676. package/src/ts/dynamodb/__snapshots__/generator.spec.ts.snap +400 -518
  677. package/src/ts/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +23 -5
  678. package/src/ts/dynamodb/agent-connection/generator.js +27 -23
  679. package/src/ts/dynamodb/agent-connection/generator.js.map +1 -1
  680. package/src/ts/dynamodb/agent-connection/schema.d.js +8 -0
  681. package/src/ts/dynamodb/agent-connection/schema.d.js.map +1 -0
  682. package/src/ts/dynamodb/agent-connection/schema.d.ts +1 -0
  683. package/src/ts/dynamodb/agent-connection/schema.json +5 -0
  684. package/src/ts/dynamodb/files/config.json.template +24 -0
  685. package/src/ts/dynamodb/files/src/client.ts.template +30 -11
  686. package/src/ts/dynamodb/files/src/entities/example.ts.template +1 -1
  687. package/src/ts/dynamodb/files/src/entities/index.ts.template +1 -1
  688. package/src/ts/dynamodb/files/src/index.ts.template +2 -11
  689. package/src/ts/dynamodb/generator.d.ts +41 -0
  690. package/src/ts/dynamodb/generator.js +106 -64
  691. package/src/ts/dynamodb/generator.js.map +1 -1
  692. package/src/ts/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +23 -5
  693. package/src/ts/dynamodb/mcp-server-connection/generator.js +27 -23
  694. package/src/ts/dynamodb/mcp-server-connection/generator.js.map +1 -1
  695. package/src/ts/dynamodb/mcp-server-connection/schema.d.js +8 -0
  696. package/src/ts/dynamodb/mcp-server-connection/schema.d.js.map +1 -0
  697. package/src/ts/dynamodb/mcp-server-connection/schema.d.ts +1 -0
  698. package/src/ts/dynamodb/mcp-server-connection/schema.json +5 -0
  699. package/src/ts/dynamodb/schema.d.js +6 -0
  700. package/src/ts/dynamodb/schema.d.js.map +1 -0
  701. package/src/ts/dynamodb/schema.d.ts +2 -0
  702. package/src/ts/dynamodb/schema.json +26 -2
  703. package/src/ts/dynamodb/smithy-connection/__snapshots__/generator.spec.ts.snap +12 -3
  704. package/src/ts/dynamodb/smithy-connection/generator.js +22 -22
  705. package/src/ts/dynamodb/smithy-connection/generator.js.map +1 -1
  706. package/src/ts/dynamodb/smithy-connection/schema.d.js +8 -0
  707. package/src/ts/dynamodb/smithy-connection/schema.d.js.map +1 -0
  708. package/src/ts/dynamodb/smithy-connection/schema.d.ts +1 -0
  709. package/src/ts/dynamodb/smithy-connection/schema.json +5 -0
  710. package/src/ts/dynamodb/trpc-connection/__snapshots__/generator.spec.ts.snap +12 -3
  711. package/src/ts/dynamodb/trpc-connection/generator.js +22 -22
  712. package/src/ts/dynamodb/trpc-connection/generator.js.map +1 -1
  713. package/src/ts/dynamodb/trpc-connection/schema.d.js +8 -0
  714. package/src/ts/dynamodb/trpc-connection/schema.d.js.map +1 -0
  715. package/src/ts/dynamodb/trpc-connection/schema.d.ts +1 -0
  716. package/src/ts/dynamodb/trpc-connection/schema.json +5 -0
  717. package/src/ts/lambda-function/__snapshots__/generator.spec.ts.snap +8 -6
  718. package/src/ts/lambda-function/files/handler/__lambdaFunctionKebabCase__.ts.template +2 -1
  719. package/src/ts/lambda-function/generator.d.ts +38 -0
  720. package/src/ts/lambda-function/generator.js +98 -65
  721. package/src/ts/lambda-function/generator.js.map +1 -1
  722. package/src/ts/lambda-function/io.js +83 -52
  723. package/src/ts/lambda-function/io.js.map +1 -1
  724. package/src/ts/lambda-function/schema.d.js +6 -0
  725. package/src/ts/lambda-function/schema.d.js.map +1 -0
  726. package/src/ts/lambda-function/schema.d.ts +1 -0
  727. package/src/ts/lambda-function/schema.json +5 -0
  728. package/src/ts/lib/__snapshots__/generator.spec.ts.snap +83 -45
  729. package/src/ts/lib/biome.js +71 -35
  730. package/src/ts/lib/biome.js.map +1 -1
  731. package/src/ts/lib/generator.d.ts +7 -0
  732. package/src/ts/lib/generator.js +115 -103
  733. package/src/ts/lib/generator.js.map +1 -1
  734. package/src/ts/lib/grit/vitest-pass-with-no-tests.grit +1 -4
  735. package/src/ts/lib/schema.d.js +6 -0
  736. package/src/ts/lib/schema.d.js.map +1 -0
  737. package/src/ts/lib/schema.d.ts +1 -1
  738. package/src/ts/lib/schema.json +5 -0
  739. package/src/ts/lib/ts-project-utils.d.ts +13 -1
  740. package/src/ts/lib/ts-project-utils.js +96 -71
  741. package/src/ts/lib/ts-project-utils.js.map +1 -1
  742. package/src/ts/lib/types.d.ts +6 -0
  743. package/src/ts/lib/types.js +5 -2
  744. package/src/ts/lib/types.js.map +1 -1
  745. package/src/ts/lib/vitest.d.ts +10 -1
  746. package/src/ts/lib/vitest.js +42 -26
  747. package/src/ts/lib/vitest.js.map +1 -1
  748. package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +221 -44
  749. package/src/ts/mcp-server/files/Dockerfile.template +13 -2
  750. package/src/ts/mcp-server/generator.d.ts +102 -0
  751. package/src/ts/mcp-server/generator.js +231 -148
  752. package/src/ts/mcp-server/generator.js.map +1 -1
  753. package/src/ts/mcp-server/schema.d.js +6 -0
  754. package/src/ts/mcp-server/schema.d.js.map +1 -0
  755. package/src/ts/mcp-server/schema.d.ts +1 -0
  756. package/src/ts/mcp-server/schema.json +6 -0
  757. package/src/ts/nx-generator/__snapshots__/generator.spec.ts.snap +27 -12
  758. package/src/ts/nx-generator/files/common/schema.d.ts.template +1 -0
  759. package/src/ts/nx-generator/files/common/schema.json.template +5 -0
  760. package/src/ts/nx-generator/files/local/generator.ts.template +3 -3
  761. package/src/ts/nx-generator/files/nx-plugin-for-aws/generator/generator.ts.template +6 -7
  762. package/src/ts/nx-generator/generator.d.ts +3 -0
  763. package/src/ts/nx-generator/generator.js +124 -73
  764. package/src/ts/nx-generator/generator.js.map +1 -1
  765. package/src/ts/nx-generator/schema.d.js +6 -0
  766. package/src/ts/nx-generator/schema.d.js.map +1 -0
  767. package/src/ts/nx-generator/schema.d.ts +1 -0
  768. package/src/ts/nx-generator/schema.json +5 -0
  769. package/src/ts/nx-migration/files/migration.spec.ts.template +26 -0
  770. package/src/ts/nx-migration/files/migration.ts.template +65 -0
  771. package/src/ts/nx-migration/files/prompt.md.template +46 -0
  772. package/src/ts/nx-migration/generator.d.ts +27 -0
  773. package/src/ts/nx-migration/generator.js +141 -0
  774. package/src/ts/nx-migration/generator.js.map +1 -0
  775. package/src/ts/nx-migration/schema.d.js +6 -0
  776. package/src/ts/nx-migration/schema.d.js.map +1 -0
  777. package/src/ts/nx-migration/schema.d.ts +13 -0
  778. package/src/ts/nx-migration/schema.json +63 -0
  779. package/src/ts/nx-plugin/__snapshots__/generator.spec.ts.snap +36 -25
  780. package/src/ts/nx-plugin/files/mcp-server/resources/GENERAL_GUIDANCE.md.template +5 -6
  781. package/src/ts/nx-plugin/files/mcp-server/server.ts.template +5 -5
  782. package/src/ts/nx-plugin/files/mcp-server/tools/create-workspace-command.ts.template +2 -2
  783. package/src/ts/nx-plugin/files/mcp-server/tools/general-guidance.ts.template +1 -1
  784. package/src/ts/nx-plugin/files/mcp-server/tools/generator-guide.ts.template +2 -2
  785. package/src/ts/nx-plugin/files/mcp-server/tools/list-generators.ts.template +2 -2
  786. package/src/ts/nx-plugin/files/mcp-server/utils.ts.template +4 -4
  787. package/src/ts/nx-plugin/generator.d.ts +3 -0
  788. package/src/ts/nx-plugin/generator.js +67 -50
  789. package/src/ts/nx-plugin/generator.js.map +1 -1
  790. package/src/ts/nx-plugin/schema.d.js +9 -0
  791. package/src/ts/nx-plugin/schema.d.js.map +1 -0
  792. package/src/ts/nx-plugin/schema.json +5 -0
  793. package/src/ts/nx-plugin/utils.d.ts +27 -2
  794. package/src/ts/nx-plugin/utils.js +66 -51
  795. package/src/ts/nx-plugin/utils.js.map +1 -1
  796. package/src/ts/rdb/__snapshots__/generator.spec.ts.snap +551 -642
  797. package/src/ts/rdb/agent-connection/__snapshots__/generator.spec.ts.snap +16 -6
  798. package/src/ts/rdb/agent-connection/generator.js +44 -39
  799. package/src/ts/rdb/agent-connection/generator.js.map +1 -1
  800. package/src/ts/rdb/agent-connection/schema.d.js +8 -0
  801. package/src/ts/rdb/agent-connection/schema.d.js.map +1 -0
  802. package/src/ts/rdb/agent-connection/schema.d.ts +1 -0
  803. package/src/ts/rdb/agent-connection/schema.json +5 -0
  804. package/src/ts/rdb/files/Dockerfile.template +19 -1
  805. package/src/ts/rdb/files/config.json.template +14 -0
  806. package/src/ts/rdb/files/prisma.config.ts.template +6 -5
  807. package/src/ts/rdb/files/src/create-db-user-handler.ts.template +9 -11
  808. package/src/ts/rdb/files/src/index.ts.template +1 -2
  809. package/src/ts/rdb/files/src/migration-handler.ts.template +5 -30
  810. package/src/ts/rdb/files/src/prisma.ts.template +33 -25
  811. package/src/ts/rdb/files/src/utils.ts.template +3 -0
  812. package/src/ts/rdb/generator.d.ts +109 -4
  813. package/src/ts/rdb/generator.js +257 -138
  814. package/src/ts/rdb/generator.js.map +1 -1
  815. package/src/ts/rdb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +16 -6
  816. package/src/ts/rdb/mcp-server-connection/generator.js +42 -37
  817. package/src/ts/rdb/mcp-server-connection/generator.js.map +1 -1
  818. package/src/ts/rdb/mcp-server-connection/schema.d.js +8 -0
  819. package/src/ts/rdb/mcp-server-connection/schema.d.js.map +1 -0
  820. package/src/ts/rdb/mcp-server-connection/schema.d.ts +1 -0
  821. package/src/ts/rdb/mcp-server-connection/schema.json +5 -0
  822. package/src/ts/rdb/schema.d.js +6 -0
  823. package/src/ts/rdb/schema.d.js.map +1 -0
  824. package/src/ts/rdb/schema.d.ts +1 -0
  825. package/src/ts/rdb/schema.json +7 -1
  826. package/src/ts/rdb/smithy-connection/__snapshots__/generator.spec.ts.snap +12 -3
  827. package/src/ts/rdb/smithy-connection/generator.js +48 -43
  828. package/src/ts/rdb/smithy-connection/generator.js.map +1 -1
  829. package/src/ts/rdb/smithy-connection/schema.d.js +8 -0
  830. package/src/ts/rdb/smithy-connection/schema.d.js.map +1 -0
  831. package/src/ts/rdb/smithy-connection/schema.d.ts +1 -0
  832. package/src/ts/rdb/smithy-connection/schema.json +5 -0
  833. package/src/ts/rdb/trpc-connection/__snapshots__/generator.spec.ts.snap +12 -3
  834. package/src/ts/rdb/trpc-connection/generator.js +37 -31
  835. package/src/ts/rdb/trpc-connection/generator.js.map +1 -1
  836. package/src/ts/rdb/trpc-connection/schema.d.js +8 -0
  837. package/src/ts/rdb/trpc-connection/schema.d.js.map +1 -0
  838. package/src/ts/rdb/trpc-connection/schema.d.ts +1 -0
  839. package/src/ts/rdb/trpc-connection/schema.json +5 -0
  840. package/src/ts/rdb/utils.js +9 -11
  841. package/src/ts/rdb/utils.js.map +1 -1
  842. package/src/ts/react-website/agui/files/common/src/hooks/useAgui__agentNameClassName__.tsx.template +17 -16
  843. package/src/ts/react-website/agui/generator.d.ts +97 -0
  844. package/src/ts/react-website/agui/generator.js +114 -67
  845. package/src/ts/react-website/agui/generator.js.map +1 -1
  846. package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +1381 -634
  847. package/src/ts/react-website/app/generator.d.ts +142 -2
  848. package/src/ts/react-website/app/generator.js +330 -206
  849. package/src/ts/react-website/app/generator.js.map +1 -1
  850. package/src/ts/react-website/app/schema.d.js +6 -0
  851. package/src/ts/react-website/app/schema.d.js.map +1 -0
  852. package/src/ts/react-website/app/schema.d.ts +1 -1
  853. package/src/ts/react-website/app/schema.json +12 -6
  854. package/src/ts/react-website/cognito-auth/__snapshots__/generator.spec.ts.snap +161 -26
  855. package/src/ts/react-website/cognito-auth/__snapshots__/generator.terraform.spec.ts.snap +48 -12
  856. package/src/ts/react-website/cognito-auth/__snapshots__/generator.ux-provider.spec.ts.snap +0 -20
  857. package/src/ts/react-website/cognito-auth/files/app/components/CognitoAuth/index.tsx.template +2 -2
  858. package/src/ts/react-website/cognito-auth/generator.d.ts +25 -1
  859. package/src/ts/react-website/cognito-auth/generator.js +79 -64
  860. package/src/ts/react-website/cognito-auth/generator.js.map +1 -1
  861. package/src/ts/react-website/cognito-auth/grit/cloudscape-auth-menu.grit +3 -1
  862. package/src/ts/react-website/cognito-auth/grit/none-auth-menu.grit +1 -0
  863. package/src/ts/react-website/cognito-auth/grit/shadcn-auth-menu.grit +3 -1
  864. package/src/ts/react-website/cognito-auth/grit/shadcn-state-declarations.grit +3 -1
  865. package/src/ts/react-website/cognito-auth/schema.d.js +6 -0
  866. package/src/ts/react-website/cognito-auth/schema.d.js.map +1 -0
  867. package/src/ts/react-website/cognito-auth/schema.d.ts +1 -0
  868. package/src/ts/react-website/cognito-auth/schema.json +5 -0
  869. package/src/ts/react-website/cognito-auth/utils.js +34 -32
  870. package/src/ts/react-website/cognito-auth/utils.js.map +1 -1
  871. package/src/ts/react-website/runtime-config/__snapshots__/generator.spec.ts.snap +2 -2
  872. package/src/ts/react-website/runtime-config/files/app/components/RuntimeConfig/index.tsx.template +2 -2
  873. package/src/ts/react-website/runtime-config/generator.js +29 -31
  874. package/src/ts/react-website/runtime-config/generator.js.map +1 -1
  875. package/src/ts/react-website/runtime-config/schema.d.js +6 -0
  876. package/src/ts/react-website/runtime-config/schema.d.js.map +1 -0
  877. package/src/ts/react-website/runtime-config/schema.d.ts +1 -0
  878. package/src/ts/react-website/runtime-config/schema.json +5 -0
  879. package/src/ts/sync/generator.js +137 -60
  880. package/src/ts/sync/generator.js.map +1 -1
  881. package/src/ts/website/app/generator.js +10 -10
  882. package/src/ts/website/app/generator.js.map +1 -1
  883. package/src/ts/website/app/schema.d.js +6 -0
  884. package/src/ts/website/app/schema.d.js.map +1 -0
  885. package/src/ts/website/app/schema.d.ts +1 -1
  886. package/src/ts/website/app/schema.json +11 -6
  887. package/src/ts/website/auth/generator.d.ts +1 -1
  888. package/src/ts/website/auth/generator.js +11 -10
  889. package/src/ts/website/auth/generator.js.map +1 -1
  890. package/src/ts/website/auth/schema.d.js +6 -0
  891. package/src/ts/website/auth/schema.d.js.map +1 -0
  892. package/src/ts/website/auth/schema.d.ts +1 -0
  893. package/src/ts/website/auth/schema.json +5 -0
  894. package/src/utils/__snapshots__/shared-constructs.spec.ts.snap +21 -0
  895. package/src/utils/add-dependencies.d.ts +38 -0
  896. package/src/utils/add-dependencies.js +83 -0
  897. package/src/utils/add-dependencies.js.map +1 -0
  898. package/src/utils/agent-chat/agent-chat.d.ts +31 -0
  899. package/src/utils/agent-chat/agent-chat.js +31 -0
  900. package/src/utils/agent-chat/agent-chat.js.map +1 -0
  901. package/src/utils/agent-chat/files/a2a/chat.ts.template +33 -0
  902. package/src/utils/agent-chat/files/ag-ui/chat.ts.template +17 -0
  903. package/src/utils/agent-chat/files/common/agentcore.ts.template +81 -0
  904. package/src/utils/agent-chat/files/http-py/chat.ts.template +43 -0
  905. package/src/utils/agent-chat/files/http-ts/chat.ts.template +54 -0
  906. package/src/utils/agent-connection/agent-connection.d.ts +139 -26
  907. package/src/utils/agent-connection/agent-connection.js +500 -103
  908. package/src/utils/agent-connection/agent-connection.js.map +1 -1
  909. package/src/utils/agent-connection/files/core-a2a/agentcore-a2a-client-config.ts.template +93 -0
  910. package/src/utils/agent-connection/files/core-auth/agentcore-endpoints.ts.template +37 -0
  911. package/src/utils/agent-connection/files/core-auth/agentcore-fetch.ts.template +54 -0
  912. package/src/utils/agent-connection/files/core-gateway/agentcore-gateway-mcp-transport.ts.template +41 -0
  913. package/src/utils/agent-connection/files/core-mcp/agentcore-mcp-transport.ts.template +70 -0
  914. package/src/utils/agent-connection/files/core-runtime-config/runtime-config.ts.template +33 -33
  915. package/src/utils/agent-connection/files/core-shared/agentcore-transport.ts.template +39 -0
  916. package/src/utils/agent-connection/files/core-strands/a2a/agentcore-a2a-client-strands.ts.template +61 -0
  917. package/src/utils/agent-connection/files/core-strands/base/model-errors-strands.ts.template +47 -0
  918. package/src/utils/agent-connection/files/core-strands/base/tool-errors-strands.ts.template +29 -0
  919. package/src/utils/agent-connection/files/{core-runtime-config/with-session-id.ts.template → core-strands/base/with-session-id-strands.ts.template} +1 -1
  920. package/src/utils/agent-connection/files/core-strands/gateway/agentcore-gateway-mcp-client-strands.ts.template +26 -0
  921. package/src/utils/agent-connection/files/core-strands/mcp/agentcore-mcp-client-strands.ts.template +27 -0
  922. package/src/utils/agent-connection/files/py-core-a2a/agentcore_a2a_client_config.py.template +43 -0
  923. package/src/utils/agent-connection/files/py-core-auth/agentcore_endpoints.py.template +47 -0
  924. package/src/utils/agent-connection/files/py-core-auth/auth/session.py.template +51 -0
  925. package/src/utils/agent-connection/files/py-core-gateway/agentcore_gateway_mcp_transport.py.template +28 -0
  926. package/src/utils/agent-connection/files/py-core-langchain/a2a/agentcore_a2a_client_langchain.py.template +99 -0
  927. package/src/utils/agent-connection/files/py-core-langchain/gateway/agentcore_gateway_mcp_client_langchain.py.template +57 -0
  928. package/src/utils/agent-connection/files/py-core-langchain/mcp/agentcore_mcp_client_langchain.py.template +64 -0
  929. package/src/utils/agent-connection/files/py-core-mcp/agentcore_mcp_transport.py.template +34 -0
  930. package/src/utils/agent-connection/files/py-core-runtime-config/runtime_config.py.template +6 -18
  931. package/src/utils/agent-connection/files/py-core-shared/agentcore_transport.py.template +40 -0
  932. package/src/utils/agent-connection/files/py-core-strands/a2a/agentcore_a2a_client_strands.py.template +66 -0
  933. package/src/utils/agent-connection/files/py-core-strands/base/model_errors_strands.py.template +40 -0
  934. package/src/utils/agent-connection/files/py-core-strands/gateway/agentcore_gateway_mcp_client_strands.py.template +22 -0
  935. package/src/utils/agent-connection/files/py-core-strands/mcp/agentcore_mcp_client_strands.py.template +30 -0
  936. package/src/utils/agent-core-constructs/agent-core-constructs.d.ts +54 -0
  937. package/src/utils/agent-core-constructs/agent-core-constructs.js +153 -38
  938. package/src/utils/agent-core-constructs/agent-core-constructs.js.map +1 -1
  939. package/src/utils/agent-core-constructs/files/cdk/app/agent-core/__nameKebabCase__/__nameKebabCase__.ts.template +170 -6
  940. package/src/utils/agent-core-constructs/files/cdk/app/agentcore-gateway/__nameKebabCase__/__nameKebabCase__.ts.template +87 -0
  941. package/src/utils/agent-core-constructs/files/cdk/core/agentcore-gateway/agentcore-gateway.ts.template +624 -0
  942. package/src/utils/agent-core-constructs/files/cdk/core/agentcore-gateway/readiness-probe/index.js.template +55 -0
  943. package/src/utils/agent-core-constructs/files/terraform/app/agent-core/__nameKebabCase__/__nameKebabCase__.tf.template +212 -1
  944. package/src/utils/agent-core-constructs/files/terraform/app/agentcore-gateway/__nameKebabCase__/__nameKebabCase__.tf.template +505 -0
  945. package/src/utils/agent-core-constructs/files/terraform/app/agentcore-gateway/__nameKebabCase__/render-cedar.cjs.template +13 -0
  946. package/src/utils/agent-core-constructs/files/terraform/core/agent-core/runtime.tf.template +159 -13
  947. package/src/utils/agent-core-constructs/files/terraform/core/agentcore-gateway/gateway.tf.template +14 -0
  948. package/src/utils/api-constructs/api-constructs.d.ts +30 -2
  949. package/src/utils/api-constructs/api-constructs.js +82 -32
  950. package/src/utils/api-constructs/api-constructs.js.map +1 -1
  951. package/src/utils/api-constructs/files/cdk/app/apis/http/__apiNameKebabCase__.ts.template +20 -15
  952. package/src/utils/api-constructs/files/cdk/app/apis/rest/__apiNameKebabCase__.ts.template +24 -16
  953. package/src/utils/api-constructs/files/cdk/core/api/http/http-api.ts.template +26 -9
  954. package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account/index.js.template +70 -0
  955. package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account.ts.template +82 -0
  956. package/src/utils/api-constructs/files/cdk/core/api/rest/rest-api.ts.template +56 -17
  957. package/src/utils/api-constructs/files/cdk/core/api/trpc/trpc-utils.ts.template +1 -1
  958. package/src/utils/api-constructs/files/cdk/core/api/utils/utils.ts.template +61 -7
  959. package/src/utils/api-constructs/files/terraform/app/apis/http/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +101 -12
  960. package/src/utils/api-constructs/files/terraform/app/apis/rest/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +194 -8
  961. package/src/utils/api-constructs/files/terraform/core/api/http/http-api/http-api.tf.template +1 -1
  962. package/src/utils/api-constructs/files/terraform/core/api/rest/api-gateway-account/api-gateway-account.tf.template +83 -0
  963. package/src/utils/api-constructs/files/terraform/core/api/rest/rest-api/rest-api.tf.template +5 -11
  964. package/src/utils/api-constructs/open-api-metadata.js +22 -22
  965. package/src/utils/api-constructs/open-api-metadata.js.map +1 -1
  966. package/src/utils/ast/website.js +18 -20
  967. package/src/utils/ast/website.js.map +1 -1
  968. package/src/utils/ast.d.ts +9 -0
  969. package/src/utils/ast.js +125 -86
  970. package/src/utils/ast.js.map +1 -1
  971. package/src/utils/base-tsconfig.d.ts +30 -0
  972. package/src/utils/base-tsconfig.js +32 -0
  973. package/src/utils/base-tsconfig.js.map +1 -0
  974. package/src/utils/bundle/bundle.d.ts +6 -1
  975. package/src/utils/bundle/bundle.js +57 -47
  976. package/src/utils/bundle/bundle.js.map +1 -1
  977. package/src/utils/commands.d.ts +14 -3
  978. package/src/utils/commands.js +83 -28
  979. package/src/utils/commands.js.map +1 -1
  980. package/src/utils/config/index.d.ts +18 -2
  981. package/src/utils/config/index.js +5 -4
  982. package/src/utils/config/index.js.map +1 -1
  983. package/src/utils/config/utils.d.ts +8 -2
  984. package/src/utils/config/utils.js +56 -59
  985. package/src/utils/config/utils.js.map +1 -1
  986. package/src/utils/connection/open-api/files/components/__apiNameClassName__Provider.tsx.template +16 -3
  987. package/src/utils/connection/open-api/react.d.ts +31 -5
  988. package/src/utils/connection/open-api/react.js +106 -76
  989. package/src/utils/connection/open-api/react.js.map +1 -1
  990. package/src/utils/containers.js +22 -23
  991. package/src/utils/containers.js.map +1 -1
  992. package/src/utils/dcr-proxy-constructs/dcr-proxy-constructs.d.ts +38 -0
  993. package/src/utils/dcr-proxy-constructs/dcr-proxy-constructs.js +93 -0
  994. package/src/utils/dcr-proxy-constructs/dcr-proxy-constructs.js.map +1 -0
  995. package/src/utils/dcr-proxy-constructs/files/cdk/app/dcr-proxies/__nameKebabCase__/__nameKebabCase__.ts.template +227 -0
  996. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/authorization-server-metadata.ts.template +39 -0
  997. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/authorize.ts.template +26 -0
  998. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/mcp-proxy.ts.template +89 -0
  999. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/protected-resource-metadata.ts.template +13 -0
  1000. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/register.ts.template +70 -0
  1001. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/token.ts.template +75 -0
  1002. package/src/utils/dcr-proxy-constructs/files/terraform/app/dcr-proxies/__nameKebabCase__/__nameKebabCase__.tf.template +410 -0
  1003. package/src/utils/declared-dependencies.d.ts +140 -0
  1004. package/src/utils/declared-dependencies.js +64 -0
  1005. package/src/utils/declared-dependencies.js.map +1 -0
  1006. package/src/utils/dependencies.d.ts +18 -0
  1007. package/src/utils/dependencies.js +206 -0
  1008. package/src/utils/dependencies.js.map +1 -0
  1009. package/src/utils/docker.d.ts +87 -0
  1010. package/src/utils/docker.js +125 -0
  1011. package/src/utils/docker.js.map +1 -0
  1012. package/src/utils/dynamodb-constructs/dynamodb-constructs.d.ts +1 -1
  1013. package/src/utils/dynamodb-constructs/dynamodb-constructs.js +39 -41
  1014. package/src/utils/dynamodb-constructs/dynamodb-constructs.js.map +1 -1
  1015. package/src/utils/dynamodb-constructs/files/cdk/app/dynamodb/__nameKebabCase__.ts.template +18 -5
  1016. package/src/utils/dynamodb-constructs/files/cdk/core/dynamodb.ts.template +1 -1
  1017. package/src/utils/dynamodb-constructs/files/terraform/app/dynamodb/__nameKebabCase__/__nameKebabCase__.tf.template +24 -17
  1018. package/src/utils/dynamodb-constructs/files/terraform/core/dynamodb/dynamodb.tf.template +1 -1
  1019. package/src/utils/files/common/constructs/src/core/cloudfront.ts.template +14 -0
  1020. package/src/utils/files/common/constructs/src/core/index.ts.template +5 -4
  1021. package/src/utils/files/common/constructs/src/index.ts.template +2 -2
  1022. package/src/utils/files/common/infra-config/src/index.ts.template +3 -3
  1023. package/src/utils/files/common/infra-config/src/resolve-stage.ts.template +2 -2
  1024. package/src/utils/files/common/infra-config/src/stages.config.ts.template +1 -1
  1025. package/src/{ts/dynamodb/files/scripts → utils/files/common/scripts/src/dynamodb}/create-local-table.ts.template +65 -31
  1026. package/src/utils/files/common/scripts/src/dynamodb/pull-image.ts.template +13 -0
  1027. package/src/utils/files/common/scripts/src/dynamodb/start-container.ts.template +103 -0
  1028. package/src/utils/files/common/scripts/src/infra/infra-deploy.ts.template +2 -0
  1029. package/src/utils/files/common/scripts/src/infra/infra-destroy.ts.template +2 -0
  1030. package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/cdk-command.ts.template +6 -3
  1031. package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/run.ts.template +3 -3
  1032. package/src/utils/files/common/scripts/src/rdb/mysql/wait-for-mysql-db.ts.template +32 -0
  1033. package/src/utils/files/common/scripts/src/rdb/postgres/wait-for-postgres-db.ts.template +32 -0
  1034. package/src/utils/files/common/scripts/src/rdb/shared/pull-image.ts.template +16 -0
  1035. package/src/utils/files/common/scripts/src/rdb/shared/start-container.ts.template +115 -0
  1036. package/src/utils/files/common/shadcn/readme/README.md.template +3 -3
  1037. package/src/utils/files/common/shadcn/src/index.ts.template +2 -2
  1038. package/src/utils/files/shadcn/components.json.template +1 -1
  1039. package/src/utils/files/terraform/src/core/asset-bucket/asset-bucket.tf.template +63 -72
  1040. package/src/utils/files/terraform/src/core/runtime-config/appconfig/appconfig.tf.template +1 -1
  1041. package/src/utils/files/terraform/src/core/runtime-config/appconfig-deployment/appconfig-deployment.tf.template +12 -6
  1042. package/src/utils/files/terraform/src/core/runtime-config/entry/entry.tf.template +1 -1
  1043. package/src/utils/files/terraform/src/core/runtime-config/read/read.tf.template +9 -4
  1044. package/src/utils/files/website/hooks/sigv4/useSigV4.tsx.template +1 -1
  1045. package/src/utils/format.d.ts +39 -4
  1046. package/src/utils/format.js +327 -127
  1047. package/src/utils/format.js.map +1 -1
  1048. package/src/utils/fs.d.ts +16 -5
  1049. package/src/utils/fs.js +29 -15
  1050. package/src/utils/fs.js.map +1 -1
  1051. package/src/utils/function-constructs/files/cdk/app/lambda-functions/__nameKebabCase__.ts.template +1 -1
  1052. package/src/utils/function-constructs/files/terraform/app/lambda-functions/__nameKebabCase__/__nameKebabCase__.tf.template +2 -2
  1053. package/src/utils/function-constructs/function-constructs.js +22 -25
  1054. package/src/utils/function-constructs/function-constructs.js.map +1 -1
  1055. package/src/utils/generators.js +18 -20
  1056. package/src/utils/generators.js.map +1 -1
  1057. package/src/utils/git.js +19 -34
  1058. package/src/utils/git.js.map +1 -1
  1059. package/src/utils/iac-providers.js +5 -5
  1060. package/src/utils/iac-providers.js.map +1 -1
  1061. package/src/utils/iac.js +12 -14
  1062. package/src/utils/iac.js.map +1 -1
  1063. package/src/utils/identity-constructs/files/cdk/core/user-identity.ts.template +153 -24
  1064. package/src/utils/identity-constructs/files/terraform/core/user-identity/add-callback-url/add-callback-url.tf.template +28 -9
  1065. package/src/utils/identity-constructs/files/terraform/core/user-identity/identity/identity.tf.template +129 -12
  1066. package/src/utils/identity-constructs/files/terraform/core/user-identity/main.tf.template +7 -0
  1067. package/src/utils/identity-constructs/identity-constructs.d.ts +10 -0
  1068. package/src/utils/identity-constructs/identity-constructs.js +52 -31
  1069. package/src/utils/identity-constructs/identity-constructs.js.map +1 -1
  1070. package/src/utils/init.d.ts +72 -0
  1071. package/src/utils/init.js +300 -0
  1072. package/src/utils/init.js.map +1 -0
  1073. package/src/utils/install.d.ts +32 -0
  1074. package/src/utils/install.js +58 -0
  1075. package/src/utils/install.js.map +1 -0
  1076. package/src/utils/js.js +27 -20
  1077. package/src/utils/js.js.map +1 -1
  1078. package/src/utils/mcp.d.ts +9 -0
  1079. package/src/utils/mcp.js +42 -41
  1080. package/src/utils/mcp.js.map +1 -1
  1081. package/src/utils/metrics.d.ts +7 -1
  1082. package/src/utils/metrics.js +61 -46
  1083. package/src/utils/metrics.js.map +1 -1
  1084. package/src/utils/migration-manifest.d.ts +58 -0
  1085. package/src/utils/migration-manifest.js +76 -0
  1086. package/src/utils/migration-manifest.js.map +1 -0
  1087. package/src/utils/migration-versions.d.ts +116 -0
  1088. package/src/utils/migration-versions.js +186 -0
  1089. package/src/utils/migration-versions.js.map +1 -0
  1090. package/src/utils/mock-project-graph.js +8 -12
  1091. package/src/utils/mock-project-graph.js.map +1 -1
  1092. package/src/utils/module-format.d.ts +25 -0
  1093. package/src/utils/module-format.js +45 -0
  1094. package/src/utils/module-format.js.map +1 -0
  1095. package/src/utils/names.d.ts +22 -0
  1096. package/src/utils/names.js +44 -48
  1097. package/src/utils/names.js.map +1 -1
  1098. package/src/utils/npm-scope.d.ts +0 -4
  1099. package/src/utils/npm-scope.js +7 -20
  1100. package/src/utils/npm-scope.js.map +1 -1
  1101. package/src/utils/nx.d.ts +74 -3
  1102. package/src/utils/nx.js +196 -75
  1103. package/src/utils/nx.js.map +1 -1
  1104. package/src/utils/nxlv-python.js +27 -15
  1105. package/src/utils/nxlv-python.js.map +1 -1
  1106. package/src/utils/object.js +5 -11
  1107. package/src/utils/object.js.map +1 -1
  1108. package/src/utils/paths.js +11 -15
  1109. package/src/utils/paths.js.map +1 -1
  1110. package/src/utils/pkg-manager.js +4 -9
  1111. package/src/utils/pkg-manager.js.map +1 -1
  1112. package/src/utils/pnpm-workspace.d.ts +1 -12
  1113. package/src/utils/pnpm-workspace.js +16 -43
  1114. package/src/utils/pnpm-workspace.js.map +1 -1
  1115. package/src/utils/port.d.ts +28 -6
  1116. package/src/utils/port.js +67 -28
  1117. package/src/utils/port.js.map +1 -1
  1118. package/src/utils/project-package-json.d.ts +39 -0
  1119. package/src/utils/project-package-json.js +119 -0
  1120. package/src/utils/project-package-json.js.map +1 -0
  1121. package/src/utils/py.d.ts +17 -3
  1122. package/src/utils/py.js +73 -48
  1123. package/src/utils/py.js.map +1 -1
  1124. package/src/utils/rdb-constructs/files/cdk/app/dbs/__nameKebabCase__.ts.template +72 -18
  1125. package/src/utils/rdb-constructs/files/cdk/core/rdb/aurora.ts.template +112 -88
  1126. package/src/utils/rdb-constructs/files/terraform/app/dbs/__nameKebabCase__/__nameKebabCase__.tf.template +127 -53
  1127. package/src/utils/rdb-constructs/files/terraform/core/rdb/aurora/aurora.tf.template +60 -53
  1128. package/src/utils/rdb-constructs/rdb-constructs.d.ts +12 -1
  1129. package/src/utils/rdb-constructs/rdb-constructs.js +38 -41
  1130. package/src/utils/rdb-constructs/rdb-constructs.js.map +1 -1
  1131. package/src/utils/ruff.d.ts +59 -0
  1132. package/src/utils/ruff.js +140 -0
  1133. package/src/utils/ruff.js.map +1 -0
  1134. package/src/utils/shared-constructs-constants.d.ts +46 -4
  1135. package/src/utils/shared-constructs-constants.js +50 -15
  1136. package/src/utils/shared-constructs-constants.js.map +1 -1
  1137. package/src/utils/shared-constructs.d.ts +4 -1
  1138. package/src/utils/shared-constructs.js +62 -67
  1139. package/src/utils/shared-constructs.js.map +1 -1
  1140. package/src/utils/shared-dynamodb-scripts.d.ts +18 -0
  1141. package/src/utils/shared-dynamodb-scripts.js +35 -0
  1142. package/src/utils/shared-dynamodb-scripts.js.map +1 -0
  1143. package/src/utils/shared-infra-config.js +31 -30
  1144. package/src/utils/shared-infra-config.js.map +1 -1
  1145. package/src/utils/shared-infra-scripts.d.ts +26 -0
  1146. package/src/utils/shared-infra-scripts.js +58 -0
  1147. package/src/utils/shared-infra-scripts.js.map +1 -0
  1148. package/src/utils/shared-rdb-scripts.d.ts +27 -0
  1149. package/src/utils/shared-rdb-scripts.js +59 -0
  1150. package/src/utils/shared-rdb-scripts.js.map +1 -0
  1151. package/src/utils/shared-scripts.d.ts +1 -4
  1152. package/src/utils/shared-scripts.js +12 -38
  1153. package/src/utils/shared-scripts.js.map +1 -1
  1154. package/src/utils/shared-shadcn.d.ts +26 -1
  1155. package/src/utils/shared-shadcn.js +93 -67
  1156. package/src/utils/shared-shadcn.js.map +1 -1
  1157. package/src/utils/test-git.d.ts +39 -0
  1158. package/src/utils/test-git.js +117 -0
  1159. package/src/utils/test-git.js.map +1 -0
  1160. package/src/utils/test.d.ts +10 -0
  1161. package/src/utils/test.js +44 -25
  1162. package/src/utils/test.js.map +1 -1
  1163. package/src/utils/toml.d.ts +5 -0
  1164. package/src/utils/toml.js +17 -15
  1165. package/src/utils/toml.js.map +1 -1
  1166. package/src/utils/version-upgrade-migration/migration.d.ts +14 -0
  1167. package/src/utils/version-upgrade-migration/migration.js +16 -0
  1168. package/src/utils/version-upgrade-migration/migration.js.map +1 -0
  1169. package/src/utils/version-upgrade-migration/nx-package-updates.d.ts +45 -0
  1170. package/src/utils/version-upgrade-migration/nx-package-updates.js +50 -0
  1171. package/src/utils/version-upgrade-migration/nx-package-updates.js.map +1 -0
  1172. package/src/utils/version-upgrade-migration/owned-dependencies.d.ts +76 -0
  1173. package/src/utils/version-upgrade-migration/owned-dependencies.js +146 -0
  1174. package/src/utils/version-upgrade-migration/owned-dependencies.js.map +1 -0
  1175. package/src/utils/version-upgrade-migration/register.d.ts +29 -0
  1176. package/src/utils/version-upgrade-migration/register.js +42 -0
  1177. package/src/utils/version-upgrade-migration/register.js.map +1 -0
  1178. package/src/utils/version-upgrade-migration/sync-embedded-versions.d.ts +26 -0
  1179. package/src/utils/version-upgrade-migration/sync-embedded-versions.js +304 -0
  1180. package/src/utils/version-upgrade-migration/sync-embedded-versions.js.map +1 -0
  1181. package/src/utils/version-upgrade-migration/sync-metrics-version.d.ts +13 -0
  1182. package/src/utils/version-upgrade-migration/sync-metrics-version.js +33 -0
  1183. package/src/utils/version-upgrade-migration/sync-metrics-version.js.map +1 -0
  1184. package/src/utils/version-upgrade-migration/sync-vended-versions.d.ts +10 -0
  1185. package/src/utils/version-upgrade-migration/sync-vended-versions.js +518 -0
  1186. package/src/utils/version-upgrade-migration/sync-vended-versions.js.map +1 -0
  1187. package/src/utils/version-upgrade-migration/vended-upgrade.d.ts +14 -0
  1188. package/src/utils/version-upgrade-migration/vended-upgrade.js +40 -0
  1189. package/src/utils/version-upgrade-migration/vended-upgrade.js.map +1 -0
  1190. package/src/utils/versions.d.ts +206 -106
  1191. package/src/utils/versions.js +238 -119
  1192. package/src/utils/versions.js.map +1 -1
  1193. package/src/utils/website-constructs/files/cdk/app/static-websites/__websiteNameKebabCase__.ts.template +2 -2
  1194. package/src/utils/website-constructs/files/cdk/core/static-website.ts.template +207 -41
  1195. package/src/utils/website-constructs/files/terraform/app/static-websites/__websiteNameKebabCase__/__websiteNameKebabCase__.tf.template +1 -1
  1196. package/src/utils/website-constructs/files/terraform/core/static-website/static-website.tf.template +145 -93
  1197. package/src/utils/website-constructs/website-constructs.d.ts +11 -0
  1198. package/src/utils/website-constructs/website-constructs.js +49 -30
  1199. package/src/utils/website-constructs/website-constructs.js.map +1 -1
  1200. package/bin/aws-nx-mcp.d.ts +0 -2
  1201. package/bin/aws-nx-mcp.js +0 -17
  1202. package/bin/aws-nx-mcp.js.map +0 -1
  1203. package/sdk/connection.d.ts +0 -6
  1204. package/sdk/connection.js +0 -10
  1205. package/sdk/connection.js.map +0 -1
  1206. package/sdk/license.d.ts +0 -8
  1207. package/sdk/license.js +0 -13
  1208. package/sdk/license.js.map +0 -1
  1209. package/sdk/open-api.d.ts +0 -10
  1210. package/sdk/open-api.js +0 -15
  1211. package/sdk/open-api.js.map +0 -1
  1212. package/sdk/py.d.ts +0 -14
  1213. package/sdk/py.js +0 -18
  1214. package/sdk/py.js.map +0 -1
  1215. package/sdk/terraform.d.ts +0 -6
  1216. package/sdk/terraform.js +0 -11
  1217. package/sdk/terraform.js.map +0 -1
  1218. package/sdk/ts.d.ts +0 -29
  1219. package/sdk/ts.js +0 -47
  1220. package/sdk/ts.js.map +0 -1
  1221. package/sdk/utils/ast.js +0 -12
  1222. package/sdk/utils/ast.js.map +0 -1
  1223. package/sdk/utils/format.js +0 -10
  1224. package/sdk/utils/format.js.map +0 -1
  1225. package/sdk/utils/test.js +0 -10
  1226. package/sdk/utils/test.js.map +0 -1
  1227. package/src/connection/agent-serve-local.d.ts +0 -33
  1228. package/src/connection/agent-serve-local.js +0 -48
  1229. package/src/connection/agent-serve-local.js.map +0 -1
  1230. package/src/connection/serve-local.js +0 -41
  1231. package/src/connection/serve-local.js.map +0 -1
  1232. package/src/py/agent/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client.py.template +0 -22
  1233. package/src/py/agent/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client.py.template +0 -22
  1234. package/src/py/agent/react-connection/serve-local.js +0 -30
  1235. package/src/py/agent/react-connection/serve-local.js.map +0 -1
  1236. package/src/py/agent/scripts/http/chat.ts.template +0 -38
  1237. package/src/ts/agent/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client.ts.template +0 -19
  1238. package/src/ts/agent/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client.ts.template +0 -19
  1239. package/src/ts/agent/react-connection/serve-local.js +0 -19
  1240. package/src/ts/agent/react-connection/serve-local.js.map +0 -1
  1241. package/src/ts/agent/scripts/http/chat.ts.template +0 -35
  1242. package/src/ts/dynamodb/files/scripts/pull-image.ts.template +0 -15
  1243. package/src/ts/dynamodb/files/scripts/start-container.ts.template +0 -81
  1244. package/src/ts/dynamodb/files/src/constants.ts.template +0 -9
  1245. package/src/ts/dynamodb/files/src/gsi.ts.template +0 -14
  1246. package/src/ts/rdb/files/scripts/pull-image.ts.template +0 -15
  1247. package/src/ts/rdb/files/scripts/start-container.ts.template +0 -84
  1248. package/src/ts/rdb/files/scripts/wait-for-db.ts.template +0 -55
  1249. package/src/ts/rdb/files/src/constants.ts.template +0 -8
  1250. package/src/utils/agent-connection/files/core-a2a/agentcore-a2a-client.ts.template +0 -123
  1251. package/src/utils/agent-connection/files/core-mcp/agentcore-mcp-client.ts.template +0 -128
  1252. package/src/utils/agent-connection/files/py-core-a2a/agentcore_a2a_client.py.template +0 -120
  1253. package/src/utils/agent-connection/files/py-core-mcp/agentcore_mcp_client.py.template +0 -89
  1254. package/src/utils/files/common/scripts/src/infra-deploy.ts.template +0 -2
  1255. package/src/utils/files/common/scripts/src/infra-destroy.ts.template +0 -2
  1256. package/src/utils/files/terraform/scripts/reset-runtime-config.ts.template +0 -25
  1257. /package/src/smithy/project/files/{smithy-build.json.template → service/smithy-build.json.template} +0 -0
  1258. /package/src/smithy/project/files/{src → service/src}/main.smithy.template +0 -0
  1259. /package/src/utils/agent-connection/files/{py-core-runtime-config/with_session_id.py.template → py-core-strands/base/with_session_id_strands.py.template} +0 -0
  1260. /package/src/utils/files/common/scripts/src/{index.ts.template → infra/index.ts.template} +0 -0
  1261. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/credentials.ts.template +0 -0
  1262. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/stage-parser.ts.template +0 -0
@@ -1,66 +1,100 @@
1
- "use strict";
2
1
  /**
3
2
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
3
  * SPDX-License-Identifier: Apache-2.0
5
- */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.DEFAULT_BIOME_CONFIG = void 0;
8
- exports.formatFilesInSubtree = formatFilesInSubtree;
9
- const tslib_1 = require("tslib");
10
- const nodejs_1 = require("@biomejs/js-api/nodejs");
11
- const child_process_1 = require("child_process");
12
- const path_1 = tslib_1.__importDefault(require("path"));
13
- exports.DEFAULT_BIOME_CONFIG = {
14
- $schema: 'https://biomejs.dev/schemas/2.4.16/schema.json',
15
- root: true,
16
- formatter: {
17
- enabled: true,
18
- indentStyle: 'space',
19
- indentWidth: 2,
20
- lineWidth: 80,
21
- },
22
- javascript: {
4
+ */ import { Biome } from "@biomejs/js-api/nodejs";
5
+ import { getProjects } from "@nx/devkit";
6
+ import path from "path";
7
+ import { ruffFixAndFormat } from "./ruff.js";
8
+ import { tryReadToml } from "./toml.js";
9
+ import { TS_VERSIONS } from "./versions.js";
10
+ /**
11
+ * The biome.json vended into a new workspace. The pnpm catalog resolver is only
12
+ * included on pnpm workspaces, since `experimentalPnpmCatalogs` is Biome's only
13
+ * catalog resolver and reads `pnpm-workspace.yaml` exclusively — it does nothing
14
+ * for yarn or bun catalogs, so vending it there would be misleading.
15
+ */ export const getDefaultBiomeConfig = (tree)=>({
16
+ $schema: `https://biomejs.dev/schemas/${TS_VERSIONS['@biomejs/biome']}/schema.json`,
17
+ root: true,
23
18
  formatter: {
24
- quoteStyle: 'single',
25
- trailingCommas: 'all',
19
+ enabled: true,
20
+ indentStyle: 'space',
21
+ indentWidth: 2,
22
+ lineWidth: 80
26
23
  },
27
- },
28
- css: {
29
- formatter: {
30
- quoteStyle: 'single',
24
+ javascript: {
25
+ formatter: {
26
+ quoteStyle: 'single',
27
+ trailingCommas: 'all'
28
+ },
29
+ // Resolve `catalog:` versions from pnpm-workspace.yaml (pnpm workspaces only).
30
+ ...tree.exists('pnpm-workspace.yaml') ? {
31
+ resolver: {
32
+ experimentalPnpmCatalogs: true
33
+ }
34
+ } : {}
35
+ },
36
+ css: {
37
+ formatter: {
38
+ quoteStyle: 'single'
39
+ },
40
+ linter: {
41
+ enabled: false
42
+ }
31
43
  },
32
44
  linter: {
33
- enabled: false,
45
+ enabled: true,
46
+ rules: {
47
+ preset: 'none',
48
+ correctness: {
49
+ // Every project must declare the third-party dependencies its source
50
+ // code imports in its own package.json.
51
+ noUndeclaredDependencies: 'error'
52
+ }
53
+ }
34
54
  },
35
- },
36
- linter: {
37
- enabled: true,
38
- rules: {
39
- recommended: false,
40
- correctness: {
41
- noUndeclaredDependencies: 'warn',
42
- },
55
+ assist: {
56
+ actions: {
57
+ source: {
58
+ organizeImports: 'on'
59
+ }
60
+ }
43
61
  },
44
- },
45
- assist: {
46
- actions: {
47
- source: {
48
- organizeImports: 'on',
49
- },
62
+ files: {
63
+ includes: [
64
+ '**',
65
+ '!**/dist',
66
+ '!**/out-tsc',
67
+ '!**/node_modules',
68
+ '!**/.nx',
69
+ '!**/.venv',
70
+ // GritQL codemod cache written by generators — its sample sources
71
+ // otherwise pollute a bare `biome check .` with parse errors.
72
+ '!**/.grit',
73
+ '!**/*.css',
74
+ '!**/*.gen.*',
75
+ '!**/generated/**',
76
+ '!**/tsconfig*.json'
77
+ ]
50
78
  },
51
- },
52
- files: {
53
- includes: [
54
- '**',
55
- '!**/dist',
56
- '!**/out-tsc',
57
- '!**/node_modules',
58
- '!**/.nx',
59
- '!**/.venv',
60
- '!**/*.css',
61
- ],
62
- },
63
- };
79
+ // Config files, build scripts and tests use root tooling rather than
80
+ // declaring it per-project, so the undeclared-dependency rule is off for them.
81
+ overrides: [
82
+ {
83
+ includes: [
84
+ '**/*.config.{ts,mts,cts,js,mjs,cjs}',
85
+ '**/*.{spec,test}.{ts,tsx,mts,cts,js,jsx,mjs,cjs}',
86
+ '**/*.stories.{ts,tsx}'
87
+ ],
88
+ linter: {
89
+ rules: {
90
+ correctness: {
91
+ noUndeclaredDependencies: 'off'
92
+ }
93
+ }
94
+ }
95
+ }
96
+ ]
97
+ });
64
98
  const BIOME_FORMATTABLE_EXTENSIONS = new Set([
65
99
  '.ts',
66
100
  '.tsx',
@@ -72,110 +106,276 @@ const BIOME_FORMATTABLE_EXTENSIONS = new Set([
72
106
  '.cts',
73
107
  '.json',
74
108
  '.jsonc',
75
- '.css',
109
+ '.css'
76
110
  ]);
111
+ /** Matches `tsconfig.json` and variants like `tsconfig.lib.json`. */ const isTsConfig = (filePath)=>/(^|\/)tsconfig[^/]*\.json$/.test(filePath);
112
+ /**
113
+ * Paths declared ignored for a tree, which stay ignored for every later call.
114
+ *
115
+ * A call formats every change pending in the tree, not only the ones its caller
116
+ * made, so the list cannot be scoped to the call that passes it: generators
117
+ * composing on one tree would reformat a file an earlier generator had excluded.
118
+ * Once the generator that owns a file declares it ignored, it stays ignored for
119
+ * the rest of the run.
120
+ */ const treeIgnoredPaths = new WeakMap();
121
+ /**
122
+ * Tree paths are workspace-relative and forward-slash separated. Normalise so a
123
+ * caller building a path with `path.join` on Windows still matches.
124
+ */ const normalizeTreePath = (filePath)=>filePath.split(path.sep).join('/').replace(/^\.\//, '');
77
125
  /**
78
126
  * Format files in the given directory within the tree.
79
127
  * Handles both TypeScript/JavaScript/JSON (via biome) and Python (via ruff) files.
80
128
  * See https://github.com/nrwl/nx/blob/4cd640a9187954505d12de5b6d76a90d8ce4c2eb/packages/devkit/src/generators/format-files.ts#L11
81
- */
82
- async function formatFilesInSubtree(tree, dir) {
83
- const changedFiles = tree
84
- .listChanges()
85
- .filter((file) => file.type !== 'DELETE')
86
- .filter((file) => (dir ? file.path.startsWith(dir) : true));
87
- const pyFiles = changedFiles.filter((file) => file.path.endsWith('.py'));
88
- const otherFiles = changedFiles.filter((file) => BIOME_FORMATTABLE_EXTENSIONS.has(path_1.default.extname(file.path)));
129
+ */ export async function formatFilesInSubtree(tree, dir, options) {
130
+ let ignored = treeIgnoredPaths.get(tree);
131
+ if (options?.ignore?.length) {
132
+ if (!ignored) {
133
+ ignored = new Set();
134
+ treeIgnoredPaths.set(tree, ignored);
135
+ }
136
+ for (const filePath of options.ignore){
137
+ ignored.add(normalizeTreePath(filePath));
138
+ }
139
+ }
140
+ const changedFiles = tree.listChanges().filter((file)=>file.type !== 'DELETE').filter((file)=>dir ? file.path.startsWith(dir) : true).filter((file)=>!ignored?.has(normalizeTreePath(file.path)));
141
+ const pyFiles = changedFiles.filter((file)=>file.path.endsWith('.py'));
142
+ const otherFiles = changedFiles.filter((file)=>BIOME_FORMATTABLE_EXTENSIONS.has(path.extname(file.path)) && // tsconfigs are not biome-managed: they're excluded from the vended
143
+ // format target (Nx's typescript-sync rewrites them without formatting),
144
+ // so formatting them at generation would only diverge from the form
145
+ // written on later runs. Leave them as updateJson/writeJson emit them so
146
+ // repeated generation stays idempotent.
147
+ !isTsConfig(file.path));
148
+ // Resolve each project's ruff settings (module names, line-length) so files
149
+ // are formatted to match the on-disk build (see getPythonProjectRuffConfigs).
150
+ const pythonProjectConfigs = pyFiles.length ? getPythonProjectRuffConfigs(tree) : [];
89
151
  // Format Python files with ruff (lint fixes + formatting)
90
- for (const file of pyFiles) {
152
+ for (const file of pyFiles){
91
153
  try {
92
- const content = ruffFixAndFormat(file.content.toString('utf-8'), file.path);
154
+ const content = ruffFixAndFormat(file.content.toString('utf-8'), file.path, resolveRuffOptions(readRuffConfig(tree, file.path), getOwningProjectRuffConfig(file.path, pythonProjectConfigs)));
93
155
  tree.write(file.path, content);
156
+ } catch {
157
+ // Silently skip ruff formatting failures
94
158
  }
95
- catch {
96
- // Silently skip ruff formatting failures
159
+ }
160
+ if (otherFiles.length === 0) return;
161
+ formatWithBiome(tree, otherFiles);
162
+ }
163
+ /**
164
+ * The Biome configuration to format with: the workspace's own `biome.json`, else
165
+ * the config we vend.
166
+ *
167
+ * Read through the tree, which falls back to disk for a file it doesn't hold. So
168
+ * this resolves the most current config either way — the workspace's on-disk one,
169
+ * or the version a generator has just written to the tree and not yet flushed,
170
+ * which shelling out to the CLI could never see.
171
+ */ function readBiomeConfig(tree) {
172
+ const config = tree.read('biome.json', 'utf-8');
173
+ if (config) {
174
+ try {
175
+ return JSON.parse(config);
176
+ } catch {
177
+ // Malformed config — fall through to the config we vend
97
178
  }
98
179
  }
99
- // Format TS/JS/JSON/CSS files with Biome via its library API, so nothing is
100
- // written to the filesystem (the config is applied in-memory).
101
- if (otherFiles.length === 0)
102
- return;
180
+ return getDefaultBiomeConfig(tree);
181
+ }
182
+ /**
183
+ * Format files with Biome in-process, reusing one instance across the batch.
184
+ *
185
+ * Replaces one `biome format --stdin-file-path` process per file, which
186
+ * dominated generation at ~70ms each: `formatFilesInSubtree` formats every
187
+ * change accumulated in the tree, not only the ones its caller made, so
188
+ * generators sharing a tree reformat the same files once per call. In-process is
189
+ * ~0.5ms per file. Output was verified byte-identical across the plugin's whole
190
+ * source tree, except that the CLI corrupts control characters passed through
191
+ * stdin (a NUL in a template literal) where formatting in-process preserves them.
192
+ */ function formatWithBiome(tree, files) {
103
193
  try {
104
- const biome = new nodejs_1.Biome();
194
+ const biome = new Biome();
105
195
  const { projectKey } = biome.openProject();
106
- // Apply the workspace biome.json if it exists in the tree, otherwise the defaults.
107
- const treeConfig = tree.read('biome.json', 'utf-8');
108
- biome.applyConfiguration(projectKey, treeConfig ? JSON.parse(treeConfig) : exports.DEFAULT_BIOME_CONFIG);
109
- for (const file of otherFiles) {
196
+ biome.applyConfiguration(projectKey, readBiomeConfig(tree));
197
+ for (const file of files){
110
198
  try {
111
- const { content } = biome.formatContent(projectKey, file.content.toString('utf-8'), { filePath: file.path });
199
+ const { content } = biome.formatContent(projectKey, file.content?.toString('utf-8') ?? '', {
200
+ filePath: file.path
201
+ });
112
202
  tree.write(file.path, content);
113
- }
114
- catch {
115
- // Leave individual files that fail to format untouched
203
+ } catch {
204
+ // Leave individual files that fail to format untouched
116
205
  }
117
206
  }
207
+ } catch {
208
+ // Silently skip formatting failures
118
209
  }
119
- catch {
120
- // Silently skip formatting failures
210
+ }
211
+ /**
212
+ * Read the ruff config for a file, by walking from its directory up to the
213
+ * workspace root looking for `.ruff.toml`, `ruff.toml`, or a `pyproject.toml`
214
+ * with a `[tool.ruff]` section — the same files, in the same order, that ruff
215
+ * itself resolves. The walk stops at the workspace root so a stray config in a
216
+ * parent of the workspace (or the home directory) is never treated as the
217
+ * project's.
218
+ *
219
+ * The settings are read rather than merely detected because formatting runs
220
+ * in-process against tree content, so ruff never sees the file's location and
221
+ * cannot resolve the config itself (see {@link resolveRuffOptions}).
222
+ *
223
+ * Reads go through the tree, which falls through to disk for files this run has
224
+ * not touched, so a config the generator has just written in memory is picked up
225
+ * as well as one already on disk.
226
+ */ function readRuffConfig(tree, filePath) {
227
+ let dir = path.dirname(filePath);
228
+ while(true){
229
+ for (const name of [
230
+ '.ruff.toml',
231
+ 'ruff.toml'
232
+ ]){
233
+ const config = tryReadToml(tree, path.join(dir, name));
234
+ if (config) {
235
+ return config;
236
+ }
237
+ }
238
+ const ruff = tryReadToml(tree, path.join(dir, 'pyproject.toml'))?.tool?.ruff;
239
+ if (ruff) {
240
+ return ruff;
241
+ }
242
+ // Stop once the workspace root ('.') has been checked.
243
+ if (dir === '.' || dir === '' || dir === path.dirname(dir)) {
244
+ return undefined;
245
+ }
246
+ dir = path.dirname(dir);
121
247
  }
122
248
  }
123
249
  /**
124
- * Find the ruff command. Tries 'uv run ruff', then 'uvx ruff'.
125
- * Matches how @nxlv/python runs ruff via the UV provider.
126
- */
127
- let _ruffCommand;
128
- function getRuffCommand() {
129
- if (_ruffCommand !== undefined) {
130
- return _ruffCommand || undefined;
250
+ * The `[tool.ruff.lint].select` generated Python projects vend. Generation
251
+ * formats before that config lands on disk, so it is pinned here to keep
252
+ * generated files clean under the project's own `lint` target rather than under
253
+ * whatever ruff's defaults happen to be for the pinned release.
254
+ */ const DEFAULT_RUFF_SELECT = [
255
+ 'E',
256
+ 'F',
257
+ 'UP',
258
+ 'B',
259
+ 'SIM',
260
+ 'I'
261
+ ];
262
+ /**
263
+ * Derive ruff's `target-version` (eg `py314`) from a PEP 508
264
+ * `requires-python` specifier (eg `>=3.14`). Ruff targets the minimum
265
+ * supported version, so take the lowest `major.minor` mentioned.
266
+ */ export const requiresPythonToRuffTarget = (requiresPython)=>{
267
+ if (typeof requiresPython !== 'string') {
268
+ return undefined;
131
269
  }
132
- for (const cmd of ['uv run ruff', 'uvx ruff']) {
133
- try {
134
- (0, child_process_1.execSync)(`${cmd} --version`, {
135
- encoding: 'utf-8',
136
- stdio: ['pipe', 'pipe', 'pipe'],
137
- });
138
- _ruffCommand = cmd;
139
- return cmd;
270
+ let min;
271
+ for (const match of requiresPython.matchAll(/(\d+)\.(\d+)/g)){
272
+ const major = Number(match[1]);
273
+ const minor = Number(match[2]);
274
+ if (!min || major < min.major || major === min.major && minor < min.minor) {
275
+ min = {
276
+ major,
277
+ minor
278
+ };
140
279
  }
141
- catch {
142
- // Try next command
280
+ }
281
+ return min ? `py${min.major}${min.minor}` : undefined;
282
+ };
283
+ /**
284
+ * Map each Nx project with a `pyproject.toml` to the ruff settings the on-disk
285
+ * build enforces for it: its top-level module names (from
286
+ * `[tool.hatch.build.targets.wheel].packages`), its `[tool.ruff].line-length`
287
+ * and its `[tool.ruff.lint].select`.
288
+ */ function getPythonProjectRuffConfigs(tree) {
289
+ const configs = [];
290
+ for (const project of getProjects(tree).values()){
291
+ // Projects without a pyproject.toml, or whose one cannot be parsed, have no
292
+ // ruff settings to contribute.
293
+ const pyproject = tryReadToml(tree, path.join(project.root, 'pyproject.toml'));
294
+ if (!pyproject) {
295
+ continue;
296
+ }
297
+ const wheelPackages = pyproject?.tool?.hatch?.build?.targets?.wheel?.packages;
298
+ // Record the top-level module segment (`pkg/sub` -> `pkg`), which is
299
+ // all `known-first-party` keys off.
300
+ const modules = Array.isArray(wheelPackages) ? wheelPackages.filter((pkg)=>typeof pkg === 'string' && !!pkg).map((pkg)=>pkg.split('/')[0]) : [];
301
+ const lineLength = pyproject?.tool?.ruff?.['line-length'];
302
+ const targetVersion = requiresPythonToRuffTarget(pyproject?.project?.['requires-python']);
303
+ const selected = pyproject?.tool?.ruff?.lint?.select;
304
+ const select = Array.isArray(selected) ? selected.filter((rule)=>typeof rule === 'string' && !!rule) : undefined;
305
+ if (modules.length || typeof lineLength === 'number' || targetVersion || select?.length) {
306
+ configs.push({
307
+ root: project.root.split(path.sep).join('/'),
308
+ modules,
309
+ lineLength: typeof lineLength === 'number' ? lineLength : undefined,
310
+ targetVersion,
311
+ select: select?.length ? select : undefined
312
+ });
143
313
  }
144
314
  }
145
- _ruffCommand = '';
146
- return undefined;
315
+ return configs;
147
316
  }
148
317
  /**
149
- * Run ruff check --fix and ruff format on Python file content via stdin.
150
- * Applies all configured lint fixes (including import sorting) and formatting.
151
- */
152
- function ruffFixAndFormat(content, filePath) {
153
- const ruff = getRuffCommand();
154
- if (!ruff)
155
- return content;
156
- // First apply lint fixes (import sorting, unused imports, etc.)
157
- try {
158
- const result = (0, child_process_1.execSync)(`${ruff} check --fix --stdin-filename ${filePath} -`, { input: content, encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'] });
159
- content = result;
160
- }
161
- catch (e) {
162
- // ruff check exits non-zero when it finds unfixable issues,
163
- // but stdout still contains the fixed content
164
- if (e.stdout) {
165
- content = e.stdout;
318
+ * Resolve the ruff config for the project that owns a file (the project with
319
+ * the longest root that is a prefix of the file path). Ruff runs per-project on
320
+ * disk, so a file's settings come from its own project — only its own module is
321
+ * first-party (sibling workspace packages are third-party) and its own
322
+ * line-length applies — and scoping this way keeps in-tree formatting
323
+ * consistent with the on-disk build.
324
+ */ function getOwningProjectRuffConfig(filePath, configs) {
325
+ let owner;
326
+ for (const config of configs){
327
+ if ((filePath === config.root || filePath.startsWith(`${config.root}/`)) && (!owner || config.root.length > owner.root.length)) {
328
+ owner = config;
166
329
  }
167
330
  }
168
- // Then apply formatting
169
- try {
170
- content = (0, child_process_1.execSync)(`${ruff} format --stdin-filename ${filePath} -`, {
171
- input: content,
172
- encoding: 'utf-8',
173
- stdio: ['pipe', 'pipe', 'pipe'],
174
- });
331
+ return owner;
332
+ }
333
+ /**
334
+ * Resolve the ruff settings to format a Python file with, mirroring what the
335
+ * file's build enforces.
336
+ *
337
+ * Ruff's own config discovery never runs: settings are passed to the linter
338
+ * directly rather than resolved from the file's location, which it never sees.
339
+ * That also means a stray config above the workspace (or in the home directory)
340
+ * can never be picked up.
341
+ *
342
+ * `config` is the file's nearest ruff config, whose rule selection is honoured
343
+ * as-is. Without one, ruff would fall back to its own defaults, which change
344
+ * between releases — 0.16 widened them from `E` and `F` to 36 rule prefixes — so
345
+ * generation would apply fixes the project's build never asks for (eg `RUF022`
346
+ * reordering `__all__`). Instead the project's own `lint.select` is pinned, so
347
+ * generation enforces exactly what `lint` does and nothing more.
348
+ *
349
+ * `projectConfig` layers on the settings derived from the owning project rather
350
+ * than declared under `[tool.ruff]`: `known-first-party` (the project's own
351
+ * modules, from its wheel packages) keeps its imports in their own group, and
352
+ * `target-version` (from its `requires-python`) matches the formatting the build
353
+ * produces.
354
+ */ function resolveRuffOptions(config, projectConfig) {
355
+ const lint = {
356
+ ...config?.lint
357
+ };
358
+ // Pin the rule selection only when deferring to ruff's defaults would
359
+ // otherwise apply rules the project's build does not enforce.
360
+ if (!config) {
361
+ lint.select = projectConfig?.select ?? DEFAULT_RUFF_SELECT;
175
362
  }
176
- catch {
177
- // Fall through with whatever content we have
363
+ if (projectConfig?.modules.length) {
364
+ lint.isort = {
365
+ ...lint.isort,
366
+ 'known-first-party': projectConfig.modules
367
+ };
178
368
  }
179
- return content;
369
+ return {
370
+ ...config,
371
+ ...typeof projectConfig?.lineLength === 'number' ? {
372
+ 'line-length': projectConfig.lineLength
373
+ } : {},
374
+ ...projectConfig?.targetVersion ? {
375
+ 'target-version': projectConfig.targetVersion
376
+ } : {},
377
+ lint
378
+ };
180
379
  }
380
+
181
381
  //# sourceMappingURL=format.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../packages/nx-plugin/src/utils/format.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Biome } from '@biomejs/js-api/nodejs';\nimport { getProjects, type Tree } from '@nx/devkit';\nimport path from 'path';\nimport { type RuffOptions, ruffFixAndFormat } from './ruff';\nimport { tryReadToml } from './toml';\nimport { TS_VERSIONS } from './versions';\n\n/**\n * The biome.json vended into a new workspace. The pnpm catalog resolver is only\n * included on pnpm workspaces, since `experimentalPnpmCatalogs` is Biome's only\n * catalog resolver and reads `pnpm-workspace.yaml` exclusively — it does nothing\n * for yarn or bun catalogs, so vending it there would be misleading.\n */\nexport const getDefaultBiomeConfig = (tree: Tree) => ({\n $schema: `https://biomejs.dev/schemas/${TS_VERSIONS['@biomejs/biome']}/schema.json`,\n root: true,\n formatter: {\n enabled: true,\n indentStyle: 'space',\n indentWidth: 2,\n lineWidth: 80,\n },\n javascript: {\n formatter: {\n quoteStyle: 'single',\n trailingCommas: 'all',\n },\n // Resolve `catalog:` versions from pnpm-workspace.yaml (pnpm workspaces only).\n ...(tree.exists('pnpm-workspace.yaml')\n ? { resolver: { experimentalPnpmCatalogs: true } }\n : {}),\n },\n css: {\n formatter: {\n quoteStyle: 'single',\n },\n linter: {\n enabled: false,\n },\n },\n linter: {\n enabled: true,\n rules: {\n preset: 'none',\n correctness: {\n // Every project must declare the third-party dependencies its source\n // code imports in its own package.json.\n noUndeclaredDependencies: 'error',\n },\n },\n },\n assist: {\n actions: {\n source: {\n organizeImports: 'on',\n },\n },\n },\n files: {\n includes: [\n '**',\n '!**/dist',\n '!**/out-tsc',\n '!**/node_modules',\n '!**/.nx',\n '!**/.venv',\n // GritQL codemod cache written by generators — its sample sources\n // otherwise pollute a bare `biome check .` with parse errors.\n '!**/.grit',\n '!**/*.css',\n '!**/*.gen.*',\n '!**/generated/**',\n '!**/tsconfig*.json',\n ],\n },\n // Config files, build scripts and tests use root tooling rather than\n // declaring it per-project, so the undeclared-dependency rule is off for them.\n overrides: [\n {\n includes: [\n '**/*.config.{ts,mts,cts,js,mjs,cjs}',\n '**/*.{spec,test}.{ts,tsx,mts,cts,js,jsx,mjs,cjs}',\n '**/*.stories.{ts,tsx}',\n ],\n linter: {\n rules: {\n correctness: {\n noUndeclaredDependencies: 'off',\n },\n },\n },\n },\n ],\n});\n\nconst BIOME_FORMATTABLE_EXTENSIONS = new Set([\n '.ts',\n '.tsx',\n '.js',\n '.jsx',\n '.mjs',\n '.cjs',\n '.mts',\n '.cts',\n '.json',\n '.jsonc',\n '.css',\n]);\n\n/** Matches `tsconfig.json` and variants like `tsconfig.lib.json`. */\nconst isTsConfig = (filePath: string): boolean =>\n /(^|\\/)tsconfig[^/]*\\.json$/.test(filePath);\n\nexport interface FormatFilesInSubtreeOptions {\n /**\n * Paths, relative to the workspace root, to leave untouched.\n *\n * For files another tool owns the formatting of: formatting them here makes\n * generation non-idempotent, since the tool rewrites them in its own shape on\n * the next run and the workspace flips between the two forms.\n */\n readonly ignore?: readonly string[];\n}\n\n/**\n * Paths declared ignored for a tree, which stay ignored for every later call.\n *\n * A call formats every change pending in the tree, not only the ones its caller\n * made, so the list cannot be scoped to the call that passes it: generators\n * composing on one tree would reformat a file an earlier generator had excluded.\n * Once the generator that owns a file declares it ignored, it stays ignored for\n * the rest of the run.\n */\nconst treeIgnoredPaths = new WeakMap<Tree, Set<string>>();\n\n/**\n * Tree paths are workspace-relative and forward-slash separated. Normalise so a\n * caller building a path with `path.join` on Windows still matches.\n */\nconst normalizeTreePath = (filePath: string): string =>\n filePath.split(path.sep).join('/').replace(/^\\.\\//, '');\n\n/**\n * Format files in the given directory within the tree.\n * Handles both TypeScript/JavaScript/JSON (via biome) and Python (via ruff) files.\n * See https://github.com/nrwl/nx/blob/4cd640a9187954505d12de5b6d76a90d8ce4c2eb/packages/devkit/src/generators/format-files.ts#L11\n */\nexport async function formatFilesInSubtree(\n tree: Tree,\n dir?: string,\n options?: FormatFilesInSubtreeOptions,\n): Promise<void> {\n let ignored = treeIgnoredPaths.get(tree);\n if (options?.ignore?.length) {\n if (!ignored) {\n ignored = new Set();\n treeIgnoredPaths.set(tree, ignored);\n }\n for (const filePath of options.ignore) {\n ignored.add(normalizeTreePath(filePath));\n }\n }\n const changedFiles = tree\n .listChanges()\n .filter((file) => file.type !== 'DELETE')\n .filter((file) => (dir ? file.path.startsWith(dir) : true))\n .filter((file) => !ignored?.has(normalizeTreePath(file.path)));\n\n const pyFiles = changedFiles.filter((file) => file.path.endsWith('.py'));\n const otherFiles = changedFiles.filter(\n (file) =>\n BIOME_FORMATTABLE_EXTENSIONS.has(path.extname(file.path)) &&\n // tsconfigs are not biome-managed: they're excluded from the vended\n // format target (Nx's typescript-sync rewrites them without formatting),\n // so formatting them at generation would only diverge from the form\n // written on later runs. Leave them as updateJson/writeJson emit them so\n // repeated generation stays idempotent.\n !isTsConfig(file.path),\n );\n\n // Resolve each project's ruff settings (module names, line-length) so files\n // are formatted to match the on-disk build (see getPythonProjectRuffConfigs).\n const pythonProjectConfigs = pyFiles.length\n ? getPythonProjectRuffConfigs(tree)\n : [];\n\n // Format Python files with ruff (lint fixes + formatting)\n for (const file of pyFiles) {\n try {\n const content = ruffFixAndFormat(\n file.content.toString('utf-8'),\n file.path,\n resolveRuffOptions(\n readRuffConfig(tree, file.path),\n getOwningProjectRuffConfig(file.path, pythonProjectConfigs),\n ),\n );\n tree.write(file.path, content);\n } catch {\n // Silently skip ruff formatting failures\n }\n }\n\n if (otherFiles.length === 0) return;\n\n formatWithBiome(tree, otherFiles);\n}\n\n/**\n * The Biome configuration to format with: the workspace's own `biome.json`, else\n * the config we vend.\n *\n * Read through the tree, which falls back to disk for a file it doesn't hold. So\n * this resolves the most current config either way — the workspace's on-disk one,\n * or the version a generator has just written to the tree and not yet flushed,\n * which shelling out to the CLI could never see.\n */\nfunction readBiomeConfig(tree: Tree): unknown {\n const config = tree.read('biome.json', 'utf-8');\n if (config) {\n try {\n return JSON.parse(config);\n } catch {\n // Malformed config — fall through to the config we vend\n }\n }\n return getDefaultBiomeConfig(tree);\n}\n\n/**\n * Format files with Biome in-process, reusing one instance across the batch.\n *\n * Replaces one `biome format --stdin-file-path` process per file, which\n * dominated generation at ~70ms each: `formatFilesInSubtree` formats every\n * change accumulated in the tree, not only the ones its caller made, so\n * generators sharing a tree reformat the same files once per call. In-process is\n * ~0.5ms per file. Output was verified byte-identical across the plugin's whole\n * source tree, except that the CLI corrupts control characters passed through\n * stdin (a NUL in a template literal) where formatting in-process preserves them.\n */\nfunction formatWithBiome(\n tree: Tree,\n files: { path: string; content: Buffer | null }[],\n): void {\n try {\n const biome = new Biome();\n const { projectKey } = biome.openProject();\n biome.applyConfiguration(projectKey, readBiomeConfig(tree));\n\n for (const file of files) {\n try {\n const { content } = biome.formatContent(\n projectKey,\n file.content?.toString('utf-8') ?? '',\n { filePath: file.path },\n );\n tree.write(file.path, content);\n } catch {\n // Leave individual files that fail to format untouched\n }\n }\n } catch {\n // Silently skip formatting failures\n }\n}\n\n/**\n * Read the ruff config for a file, by walking from its directory up to the\n * workspace root looking for `.ruff.toml`, `ruff.toml`, or a `pyproject.toml`\n * with a `[tool.ruff]` section — the same files, in the same order, that ruff\n * itself resolves. The walk stops at the workspace root so a stray config in a\n * parent of the workspace (or the home directory) is never treated as the\n * project's.\n *\n * The settings are read rather than merely detected because formatting runs\n * in-process against tree content, so ruff never sees the file's location and\n * cannot resolve the config itself (see {@link resolveRuffOptions}).\n *\n * Reads go through the tree, which falls through to disk for files this run has\n * not touched, so a config the generator has just written in memory is picked up\n * as well as one already on disk.\n */\nfunction readRuffConfig(tree: Tree, filePath: string): RuffOptions | undefined {\n let dir = path.dirname(filePath);\n while (true) {\n for (const name of ['.ruff.toml', 'ruff.toml']) {\n const config = tryReadToml(tree, path.join(dir, name));\n if (config) {\n return config as RuffOptions;\n }\n }\n const ruff = (tryReadToml(tree, path.join(dir, 'pyproject.toml')) as any)\n ?.tool?.ruff;\n if (ruff) {\n return ruff as RuffOptions;\n }\n // Stop once the workspace root ('.') has been checked.\n if (dir === '.' || dir === '' || dir === path.dirname(dir)) {\n return undefined;\n }\n dir = path.dirname(dir);\n }\n}\n\n/**\n * The `[tool.ruff.lint].select` generated Python projects vend. Generation\n * formats before that config lands on disk, so it is pinned here to keep\n * generated files clean under the project's own `lint` target rather than under\n * whatever ruff's defaults happen to be for the pinned release.\n */\nconst DEFAULT_RUFF_SELECT = ['E', 'F', 'UP', 'B', 'SIM', 'I'];\n\ninterface PythonProjectRuffConfig {\n /** Project root, normalised to use forward slashes. */\n readonly root: string;\n /** Top-level importable module names declared by the project. */\n readonly modules: string[];\n /** The project's `[tool.ruff].line-length`, if set. */\n readonly lineLength?: number;\n /**\n * Ruff `target-version` (eg `py314`) derived from `[project].requires-python`.\n * Generation formats via stdin with no pyproject, so it must be passed\n * explicitly — ruff's formatting differs by target.\n */\n readonly targetVersion?: string;\n /** The project's `[tool.ruff.lint].select`, if set. */\n readonly select?: string[];\n}\n\n/**\n * Derive ruff's `target-version` (eg `py314`) from a PEP 508\n * `requires-python` specifier (eg `>=3.14`). Ruff targets the minimum\n * supported version, so take the lowest `major.minor` mentioned.\n */\nexport const requiresPythonToRuffTarget = (\n requiresPython: unknown,\n): string | undefined => {\n if (typeof requiresPython !== 'string') {\n return undefined;\n }\n let min: { major: number; minor: number } | undefined;\n for (const match of requiresPython.matchAll(/(\\d+)\\.(\\d+)/g)) {\n const major = Number(match[1]);\n const minor = Number(match[2]);\n if (\n !min ||\n major < min.major ||\n (major === min.major && minor < min.minor)\n ) {\n min = { major, minor };\n }\n }\n return min ? `py${min.major}${min.minor}` : undefined;\n};\n\n/**\n * Map each Nx project with a `pyproject.toml` to the ruff settings the on-disk\n * build enforces for it: its top-level module names (from\n * `[tool.hatch.build.targets.wheel].packages`), its `[tool.ruff].line-length`\n * and its `[tool.ruff.lint].select`.\n */\nfunction getPythonProjectRuffConfigs(tree: Tree): PythonProjectRuffConfig[] {\n const configs: PythonProjectRuffConfig[] = [];\n\n for (const project of getProjects(tree).values()) {\n // Projects without a pyproject.toml, or whose one cannot be parsed, have no\n // ruff settings to contribute.\n const pyproject = tryReadToml(\n tree,\n path.join(project.root, 'pyproject.toml'),\n ) as any;\n if (!pyproject) {\n continue;\n }\n const wheelPackages: unknown =\n pyproject?.tool?.hatch?.build?.targets?.wheel?.packages;\n // Record the top-level module segment (`pkg/sub` -> `pkg`), which is\n // all `known-first-party` keys off.\n const modules = Array.isArray(wheelPackages)\n ? wheelPackages\n .filter((pkg): pkg is string => typeof pkg === 'string' && !!pkg)\n .map((pkg) => pkg.split('/')[0])\n : [];\n const lineLength: unknown = pyproject?.tool?.ruff?.['line-length'];\n const targetVersion = requiresPythonToRuffTarget(\n pyproject?.project?.['requires-python'],\n );\n const selected: unknown = pyproject?.tool?.ruff?.lint?.select;\n const select = Array.isArray(selected)\n ? selected.filter(\n (rule): rule is string => typeof rule === 'string' && !!rule,\n )\n : undefined;\n if (\n modules.length ||\n typeof lineLength === 'number' ||\n targetVersion ||\n select?.length\n ) {\n configs.push({\n root: project.root.split(path.sep).join('/'),\n modules,\n lineLength: typeof lineLength === 'number' ? lineLength : undefined,\n targetVersion,\n select: select?.length ? select : undefined,\n });\n }\n }\n\n return configs;\n}\n\n/**\n * Resolve the ruff config for the project that owns a file (the project with\n * the longest root that is a prefix of the file path). Ruff runs per-project on\n * disk, so a file's settings come from its own project — only its own module is\n * first-party (sibling workspace packages are third-party) and its own\n * line-length applies — and scoping this way keeps in-tree formatting\n * consistent with the on-disk build.\n */\nfunction getOwningProjectRuffConfig(\n filePath: string,\n configs: PythonProjectRuffConfig[],\n): PythonProjectRuffConfig | undefined {\n let owner: PythonProjectRuffConfig | undefined;\n for (const config of configs) {\n if (\n (filePath === config.root || filePath.startsWith(`${config.root}/`)) &&\n (!owner || config.root.length > owner.root.length)\n ) {\n owner = config;\n }\n }\n return owner;\n}\n\n/**\n * Resolve the ruff settings to format a Python file with, mirroring what the\n * file's build enforces.\n *\n * Ruff's own config discovery never runs: settings are passed to the linter\n * directly rather than resolved from the file's location, which it never sees.\n * That also means a stray config above the workspace (or in the home directory)\n * can never be picked up.\n *\n * `config` is the file's nearest ruff config, whose rule selection is honoured\n * as-is. Without one, ruff would fall back to its own defaults, which change\n * between releases — 0.16 widened them from `E` and `F` to 36 rule prefixes — so\n * generation would apply fixes the project's build never asks for (eg `RUF022`\n * reordering `__all__`). Instead the project's own `lint.select` is pinned, so\n * generation enforces exactly what `lint` does and nothing more.\n *\n * `projectConfig` layers on the settings derived from the owning project rather\n * than declared under `[tool.ruff]`: `known-first-party` (the project's own\n * modules, from its wheel packages) keeps its imports in their own group, and\n * `target-version` (from its `requires-python`) matches the formatting the build\n * produces.\n */\nfunction resolveRuffOptions(\n config: RuffOptions | undefined,\n projectConfig?: PythonProjectRuffConfig,\n): RuffOptions {\n const lint: Record<string, unknown> = { ...config?.lint };\n // Pin the rule selection only when deferring to ruff's defaults would\n // otherwise apply rules the project's build does not enforce.\n if (!config) {\n lint.select = projectConfig?.select ?? DEFAULT_RUFF_SELECT;\n }\n if (projectConfig?.modules.length) {\n lint.isort = {\n ...(lint.isort as object | undefined),\n 'known-first-party': projectConfig.modules,\n };\n }\n return {\n ...config,\n ...(typeof projectConfig?.lineLength === 'number'\n ? { 'line-length': projectConfig.lineLength }\n : {}),\n ...(projectConfig?.targetVersion\n ? { 'target-version': projectConfig.targetVersion }\n : {}),\n lint,\n };\n}\n"],"names":["Biome","getProjects","path","ruffFixAndFormat","tryReadToml","TS_VERSIONS","getDefaultBiomeConfig","tree","$schema","root","formatter","enabled","indentStyle","indentWidth","lineWidth","javascript","quoteStyle","trailingCommas","exists","resolver","experimentalPnpmCatalogs","css","linter","rules","preset","correctness","noUndeclaredDependencies","assist","actions","source","organizeImports","files","includes","overrides","BIOME_FORMATTABLE_EXTENSIONS","Set","isTsConfig","filePath","test","treeIgnoredPaths","WeakMap","normalizeTreePath","split","sep","join","replace","formatFilesInSubtree","dir","options","ignored","get","ignore","length","set","add","changedFiles","listChanges","filter","file","type","startsWith","has","pyFiles","endsWith","otherFiles","extname","pythonProjectConfigs","getPythonProjectRuffConfigs","content","toString","resolveRuffOptions","readRuffConfig","getOwningProjectRuffConfig","write","formatWithBiome","readBiomeConfig","config","read","JSON","parse","biome","projectKey","openProject","applyConfiguration","formatContent","dirname","name","ruff","tool","undefined","DEFAULT_RUFF_SELECT","requiresPythonToRuffTarget","requiresPython","min","match","matchAll","major","Number","minor","configs","project","values","pyproject","wheelPackages","hatch","build","targets","wheel","packages","modules","Array","isArray","pkg","map","lineLength","targetVersion","selected","lint","select","rule","push","owner","projectConfig","isort"],"mappings":"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"}
package/src/utils/fs.d.ts CHANGED
@@ -2,15 +2,26 @@
2
2
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- import { type Tree } from '@nx/devkit';
5
+ import type { Tree } from '@nx/devkit';
6
+ import { type DependencyDeclaration, type MustDeclare } from './declared-dependencies';
7
+ /** Dependencies a caller must declare to use `FsCommands`. */
8
+ export declare const FS_DEPENDENCIES: readonly [{
9
+ readonly name: "ncp";
10
+ }, {
11
+ readonly name: "rimraf";
12
+ }, {
13
+ readonly name: "make-dir-cli";
14
+ }];
6
15
  /**
7
- * Utility class for creating platform agnostic commands for filesystem operations.
8
- * Adds the required dependencies to the root package json
16
+ * Platform agnostic commands for filesystem operations, adding the CLIs they
17
+ * need to the root package.json.
9
18
  */
10
- export declare class FsCommands {
19
+ export declare class FsCommands<D extends DependencyDeclaration> {
11
20
  private tree;
12
- constructor(tree: Tree);
21
+ private declaration;
22
+ constructor(tree: Tree, declaration: D & MustDeclare<typeof FS_DEPENDENCIES, D>);
13
23
  cp(src: string, dst: string): string;
14
24
  rm(dir: string): string;
15
25
  mkdir(dir: string): string;
26
+ private add;
16
27
  }