@aws/nx-plugin 1.0.0-rc.5 → 1.0.0-rc.50

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 (1198) hide show
  1. package/LICENSE-THIRD-PARTY +5300 -5843
  2. package/README.md +7 -7
  3. package/generators.json +120 -8
  4. package/migrations.json +21 -0
  5. package/package.json +39 -20
  6. package/src/agentcore-gateway/attach-upstream.d.ts +33 -0
  7. package/src/agentcore-gateway/attach-upstream.js +38 -0
  8. package/src/agentcore-gateway/attach-upstream.js.map +1 -0
  9. package/src/agentcore-gateway/files/cedar/policies/README.md +61 -0
  10. package/src/agentcore-gateway/files/cedar/policies/permit-all.cedar +26 -0
  11. package/src/agentcore-gateway/files/project/local-dev.ts.template +134 -0
  12. package/src/agentcore-gateway/gateway-connection/generator.d.ts +21 -0
  13. package/src/agentcore-gateway/gateway-connection/generator.js +101 -0
  14. package/src/agentcore-gateway/gateway-connection/generator.js.map +1 -0
  15. package/src/agentcore-gateway/gateway-connection/schema.d.js +6 -0
  16. package/src/agentcore-gateway/gateway-connection/schema.d.js.map +1 -0
  17. package/src/agentcore-gateway/gateway-connection/schema.d.ts +13 -0
  18. package/src/agentcore-gateway/gateway-connection/schema.json +31 -0
  19. package/src/agentcore-gateway/generator.d.ts +25 -0
  20. package/src/agentcore-gateway/generator.js +166 -0
  21. package/src/agentcore-gateway/generator.js.map +1 -0
  22. package/src/agentcore-gateway/mcp-connection/generator.d.ts +19 -0
  23. package/src/agentcore-gateway/mcp-connection/generator.js +59 -0
  24. package/src/agentcore-gateway/mcp-connection/generator.js.map +1 -0
  25. package/src/agentcore-gateway/mcp-connection/schema.d.js +6 -0
  26. package/src/agentcore-gateway/mcp-connection/schema.d.js.map +1 -0
  27. package/src/agentcore-gateway/mcp-connection/schema.d.ts +13 -0
  28. package/src/agentcore-gateway/mcp-connection/schema.json +31 -0
  29. package/src/agentcore-gateway/schema.d.js +6 -0
  30. package/src/agentcore-gateway/schema.d.js.map +1 -0
  31. package/src/agentcore-gateway/schema.d.ts +17 -0
  32. package/src/agentcore-gateway/schema.json +71 -0
  33. package/src/connection/{agent-serve-local.d.ts → agent-local-dev.d.ts} +7 -7
  34. package/src/connection/agent-local-dev.js +42 -0
  35. package/src/connection/agent-local-dev.js.map +1 -0
  36. package/src/connection/agent-runtime-config.d.ts +1 -1
  37. package/src/connection/agent-runtime-config.js +9 -14
  38. package/src/connection/agent-runtime-config.js.map +1 -1
  39. package/src/connection/generator.d.ts +7 -14
  40. package/src/connection/generator.js +167 -194
  41. package/src/connection/generator.js.map +1 -1
  42. package/src/connection/local-dev.d.ts +15 -0
  43. package/src/connection/local-dev.js +37 -0
  44. package/src/connection/local-dev.js.map +1 -0
  45. package/src/connection/schema.d.js +6 -0
  46. package/src/connection/schema.d.js.map +1 -0
  47. package/src/connection/schema.d.ts +1 -0
  48. package/src/connection/schema.json +5 -0
  49. package/src/connection/supported-connections.d.ts +107 -0
  50. package/src/connection/supported-connections.js +151 -0
  51. package/src/connection/supported-connections.js.map +1 -0
  52. package/src/index.js +2 -5
  53. package/src/index.js.map +1 -1
  54. package/src/infra/app/__snapshots__/generator.spec.ts.snap +106 -100
  55. package/src/infra/app/files/app/src/main.ts.template +1 -1
  56. package/src/infra/app/files/app/src/stages/application-stage.ts.template +1 -1
  57. package/src/infra/app/generator.d.ts +3 -3
  58. package/src/infra/app/generator.js +146 -123
  59. package/src/infra/app/generator.js.map +1 -1
  60. package/src/infra/app/schema.d.js +6 -0
  61. package/src/infra/app/schema.d.js.map +1 -0
  62. package/src/infra/app/schema.d.ts +1 -1
  63. package/src/infra/app/schema.json +5 -0
  64. package/src/init/generator.d.ts +18 -0
  65. package/src/init/generator.js +35 -0
  66. package/src/init/generator.js.map +1 -0
  67. package/src/init/schema.d.js +6 -0
  68. package/src/init/schema.d.js.map +1 -0
  69. package/src/init/schema.d.ts +16 -0
  70. package/src/init/schema.json +35 -0
  71. package/src/license/config-types.d.ts +2 -2
  72. package/src/license/config-types.js +8 -2
  73. package/src/license/config-types.js.map +1 -1
  74. package/src/license/config.d.ts +4 -4
  75. package/src/license/config.js +267 -242
  76. package/src/license/config.js.map +1 -1
  77. package/src/license/dependency-check/check.d.ts +6 -2
  78. package/src/license/dependency-check/check.js +51 -46
  79. package/src/license/dependency-check/check.js.map +1 -1
  80. package/src/license/dependency-check/collectors/collector.js +41 -71
  81. package/src/license/dependency-check/collectors/collector.js.map +1 -1
  82. package/src/license/dependency-check/collectors/npm-collector.js +34 -41
  83. package/src/license/dependency-check/collectors/npm-collector.js.map +1 -1
  84. package/src/license/dependency-check/collectors/python-collector.d.ts +4 -0
  85. package/src/license/dependency-check/collectors/python-collector.js +55 -62
  86. package/src/license/dependency-check/collectors/python-collector.js.map +1 -1
  87. package/src/license/dependency-check/evaluator.d.ts +1 -1
  88. package/src/license/dependency-check/evaluator.js +40 -68
  89. package/src/license/dependency-check/evaluator.js.map +1 -1
  90. package/src/license/dependency-check/executor.d.ts +1 -1
  91. package/src/license/dependency-check/executor.js +30 -22
  92. package/src/license/dependency-check/executor.js.map +1 -1
  93. package/src/license/dependency-check/pre-approved.js +949 -336
  94. package/src/license/dependency-check/pre-approved.js.map +1 -1
  95. package/src/license/dependency-check/types.js +2 -3
  96. package/src/license/dependency-check/types.js.map +1 -1
  97. package/src/license/generator.d.ts +3 -3
  98. package/src/license/generator.js +65 -68
  99. package/src/license/generator.js.map +1 -1
  100. package/src/license/index.d.ts +2 -2
  101. package/src/license/index.js +3 -9
  102. package/src/license/index.js.map +1 -1
  103. package/src/license/known-exceptions.d.ts +2 -2
  104. package/src/license/known-exceptions.js +19 -13
  105. package/src/license/known-exceptions.js.map +1 -1
  106. package/src/license/schema.d.js +6 -0
  107. package/src/license/schema.d.js.map +1 -0
  108. package/src/license/schema.d.ts +2 -0
  109. package/src/license/schema.json +5 -0
  110. package/src/license/sync/generator.d.ts +2 -2
  111. package/src/license/sync/generator.js +94 -119
  112. package/src/license/sync/generator.js.map +1 -1
  113. package/src/license/sync/project-file-sync.d.ts +2 -2
  114. package/src/license/sync/project-file-sync.js +28 -35
  115. package/src/license/sync/project-file-sync.js.map +1 -1
  116. package/src/mcp-server/dev-server.d.ts +1 -0
  117. package/src/mcp-server/dev-server.js +18 -0
  118. package/src/mcp-server/dev-server.js.map +1 -0
  119. package/src/mcp-server/generator-info.d.ts +5 -1
  120. package/src/mcp-server/generator-info.js +149 -165
  121. package/src/mcp-server/generator-info.js.map +1 -1
  122. package/src/mcp-server/guide-pipeline.d.ts +1 -1
  123. package/src/mcp-server/guide-pipeline.js +199 -206
  124. package/src/mcp-server/guide-pipeline.js.map +1 -1
  125. package/src/mcp-server/guide-render.js +10 -25
  126. package/src/mcp-server/guide-render.js.map +1 -1
  127. package/src/mcp-server/index.js +6 -10
  128. package/src/mcp-server/index.js.map +1 -1
  129. package/src/mcp-server/mdx-ast.js +42 -56
  130. package/src/mcp-server/mdx-ast.js.map +1 -1
  131. package/src/mcp-server/option-filter.js +33 -47
  132. package/src/mcp-server/option-filter.js.map +1 -1
  133. package/src/mcp-server/schema-registry.d.ts +9 -3
  134. package/src/mcp-server/schema-registry.js +41 -38
  135. package/src/mcp-server/schema-registry.js.map +1 -1
  136. package/src/mcp-server/schema.d.ts +1 -1
  137. package/src/mcp-server/schema.js +9 -7
  138. package/src/mcp-server/schema.js.map +1 -1
  139. package/src/mcp-server/server.js +24 -24
  140. package/src/mcp-server/server.js.map +1 -1
  141. package/src/mcp-server/tools/add-to-existing-project.d.ts +12 -0
  142. package/src/mcp-server/tools/add-to-existing-project.js +36 -0
  143. package/src/mcp-server/tools/add-to-existing-project.js.map +1 -0
  144. package/src/mcp-server/tools/create-workspace-command.d.ts +1 -1
  145. package/src/mcp-server/tools/create-workspace-command.js +23 -24
  146. package/src/mcp-server/tools/create-workspace-command.js.map +1 -1
  147. package/src/mcp-server/tools/general-guidance.d.ts +3 -3
  148. package/src/mcp-server/tools/general-guidance.js +53 -31
  149. package/src/mcp-server/tools/general-guidance.js.map +1 -1
  150. package/src/mcp-server/tools/generator-guide.d.ts +2 -2
  151. package/src/mcp-server/tools/generator-guide.js +29 -37
  152. package/src/mcp-server/tools/generator-guide.js.map +1 -1
  153. package/src/mcp-server/tools/list-generators.d.ts +2 -2
  154. package/src/mcp-server/tools/list-generators.js +19 -25
  155. package/src/mcp-server/tools/list-generators.js.map +1 -1
  156. package/src/mcp-server/tools/upgrade-workspace.d.ts +11 -0
  157. package/src/mcp-server/tools/upgrade-workspace.js +32 -0
  158. package/src/mcp-server/tools/upgrade-workspace.js.map +1 -0
  159. package/src/migrations/latest/modernize-function-props-cast/migration.d.ts +6 -0
  160. package/src/migrations/latest/modernize-function-props-cast/migration.js +66 -0
  161. package/src/migrations/latest/modernize-function-props-cast/migration.js.map +1 -0
  162. package/src/migrations/latest/restrict-cors-to-custom-domains/migration.d.ts +6 -0
  163. package/src/migrations/latest/restrict-cors-to-custom-domains/migration.js +110 -0
  164. package/src/migrations/latest/restrict-cors-to-custom-domains/migration.js.map +1 -0
  165. package/src/migrations/latest/terraform-bootstrap-adopt-existing-bucket/migration.d.ts +6 -0
  166. package/src/migrations/latest/terraform-bootstrap-adopt-existing-bucket/migration.js +129 -0
  167. package/src/migrations/latest/terraform-bootstrap-adopt-existing-bucket/migration.js.map +1 -0
  168. package/src/open-api/ts-client/__snapshots__/generator.additional-properties.spec.ts.snap +147 -33
  169. package/src/open-api/ts-client/__snapshots__/generator.arrays.spec.ts.snap +308 -75
  170. package/src/open-api/ts-client/__snapshots__/generator.complex-types.spec.ts.snap +298 -74
  171. package/src/open-api/ts-client/__snapshots__/generator.composite-types.spec.ts.snap +748 -103
  172. package/src/open-api/ts-client/__snapshots__/generator.content-type.spec.ts.snap +230 -37
  173. package/src/open-api/ts-client/__snapshots__/generator.duplicate-types.spec.ts.snap +249 -52
  174. package/src/open-api/ts-client/__snapshots__/generator.edge-cases.spec.ts.snap +5535 -0
  175. package/src/open-api/ts-client/__snapshots__/generator.fast-api-gaps.spec.ts.snap +736 -0
  176. package/src/open-api/ts-client/__snapshots__/generator.fast-api.spec.ts.snap +305 -71
  177. package/src/open-api/ts-client/__snapshots__/generator.multipart.spec.ts.snap +298 -0
  178. package/src/open-api/ts-client/__snapshots__/generator.primitive-types.spec.ts.snap +353 -82
  179. package/src/open-api/ts-client/__snapshots__/generator.request.spec.ts.snap +176 -55
  180. package/src/open-api/ts-client/__snapshots__/generator.reserved-keywords.spec.ts.snap +101 -25
  181. package/src/open-api/ts-client/__snapshots__/generator.response.spec.ts.snap +147 -33
  182. package/src/open-api/ts-client/__snapshots__/generator.spec-compliance.spec.ts.snap +1883 -0
  183. package/src/open-api/ts-client/__snapshots__/generator.streaming.spec.ts.snap +392 -88
  184. package/src/open-api/ts-client/__snapshots__/generator.tags.spec.ts.snap +200 -48
  185. package/src/open-api/ts-client/files/client.gen.ts.template +358 -24
  186. package/src/open-api/ts-client/files/types.gen.ts.template +6 -4
  187. package/src/open-api/ts-client/generator.d.ts +3 -3
  188. package/src/open-api/ts-client/generator.js +41 -26
  189. package/src/open-api/ts-client/generator.js.map +1 -1
  190. package/src/open-api/ts-client/schema.d.js +6 -0
  191. package/src/open-api/ts-client/schema.d.js.map +1 -0
  192. package/src/open-api/ts-hooks/files/options-proxy.gen.ts.template +7 -2
  193. package/src/open-api/ts-hooks/generator.d.ts +3 -3
  194. package/src/open-api/ts-hooks/generator.js +17 -21
  195. package/src/open-api/ts-hooks/generator.js.map +1 -1
  196. package/src/open-api/ts-hooks/generator.spec.tsx +84 -14
  197. package/src/open-api/ts-hooks/schema.d.js +6 -0
  198. package/src/open-api/ts-hooks/schema.d.js.map +1 -0
  199. package/src/open-api/ts-metadata/generator.d.ts +3 -3
  200. package/src/open-api/ts-metadata/generator.js +12 -20
  201. package/src/open-api/ts-metadata/generator.js.map +1 -1
  202. package/src/open-api/ts-metadata/schema.d.js +6 -0
  203. package/src/open-api/ts-metadata/schema.d.js.map +1 -0
  204. package/src/open-api/utils/codegen-data/languages.d.ts +3 -5
  205. package/src/open-api/utils/codegen-data/languages.js +59 -66
  206. package/src/open-api/utils/codegen-data/languages.js.map +1 -1
  207. package/src/open-api/utils/codegen-data/types.d.ts +255 -10
  208. package/src/open-api/utils/codegen-data/types.js +54 -30
  209. package/src/open-api/utils/codegen-data/types.js.map +1 -1
  210. package/src/open-api/utils/codegen-data.d.ts +8 -4
  211. package/src/open-api/utils/codegen-data.js +494 -674
  212. package/src/open-api/utils/codegen-data.js.map +1 -1
  213. package/src/open-api/utils/normalise.d.ts +5 -1
  214. package/src/open-api/utils/normalise.js +437 -246
  215. package/src/open-api/utils/normalise.js.map +1 -1
  216. package/src/open-api/utils/parse.d.ts +2 -2
  217. package/src/open-api/utils/parse.js +11 -13
  218. package/src/open-api/utils/parse.js.map +1 -1
  219. package/src/open-api/utils/parser.d.ts +55 -0
  220. package/src/open-api/utils/parser.js +787 -0
  221. package/src/open-api/utils/parser.js.map +1 -0
  222. package/src/open-api/utils/refs.d.ts +1 -1
  223. package/src/open-api/utils/refs.js +12 -22
  224. package/src/open-api/utils/refs.js.map +1 -1
  225. package/src/open-api/utils/types.d.ts +18 -0
  226. package/src/open-api/utils/types.js +5 -2
  227. package/src/open-api/utils/types.js.map +1 -1
  228. package/src/preset/__snapshots__/generator.spec.ts.snap +149 -28
  229. package/src/preset/generator.d.ts +4 -4
  230. package/src/preset/generator.js +66 -147
  231. package/src/preset/generator.js.map +1 -1
  232. package/src/preset/schema.d.js +6 -0
  233. package/src/preset/schema.d.js.map +1 -0
  234. package/src/preset/schema.d.ts +6 -2
  235. package/src/preset/schema.json +16 -5
  236. package/src/py/agent/__snapshots__/generator.constructs.spec.ts.snap +321 -0
  237. package/src/py/agent/__snapshots__/generator.frameworks.spec.ts.snap +734 -0
  238. package/src/py/agent/__snapshots__/{generator.spec.ts.snap → generator.protocols.spec.ts.snap} +182 -314
  239. package/src/py/agent/a2a-connection/__snapshots__/generator.spec.ts.snap +189 -0
  240. package/src/py/agent/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client_strands.py.template +30 -0
  241. package/src/py/agent/a2a-connection/files/langchain/agent-connection/app/__targetAgentSnakeCase___client_langchain.py.template +28 -0
  242. package/src/py/agent/a2a-connection/generator.d.ts +3 -3
  243. package/src/py/agent/a2a-connection/generator.js +113 -85
  244. package/src/py/agent/a2a-connection/generator.js.map +1 -1
  245. package/src/py/agent/a2a-connection/schema.d.js +8 -0
  246. package/src/py/agent/a2a-connection/schema.d.js.map +1 -0
  247. package/src/py/agent/a2a-connection/schema.d.ts +1 -0
  248. package/src/py/agent/a2a-connection/schema.json +5 -0
  249. package/src/py/agent/files/a2a-langchain/main.py.template +89 -0
  250. package/src/py/agent/files/ag-ui-langchain/main.py.template +83 -0
  251. package/src/py/agent/files/common/agent.py.template +2 -0
  252. package/src/py/agent/files/common-langchain/agent.py.template +30 -0
  253. package/src/py/agent/files/deploy/Dockerfile.template +1 -1
  254. package/src/py/agent/files/http/init.py.template +7 -25
  255. package/src/py/agent/files/http/main.py.template +3 -4
  256. package/src/py/agent/files/http-langchain/main.py.template +84 -0
  257. package/src/py/agent/gateway-connection/__snapshots__/generator.spec.ts.snap +184 -0
  258. package/src/py/agent/gateway-connection/files/agent-connection/app/__gatewaySnakeCase___client_strands.py.template +35 -0
  259. package/src/py/agent/gateway-connection/files/langchain/agent-connection/app/__gatewaySnakeCase___client_langchain.py.template +34 -0
  260. package/src/py/agent/gateway-connection/generator.d.ts +10 -0
  261. package/src/py/agent/gateway-connection/generator.js +119 -0
  262. package/src/py/agent/gateway-connection/generator.js.map +1 -0
  263. package/src/py/agent/gateway-connection/schema.d.js +6 -0
  264. package/src/py/agent/gateway-connection/schema.d.js.map +1 -0
  265. package/src/py/agent/gateway-connection/schema.d.ts +13 -0
  266. package/src/py/agent/gateway-connection/schema.json +31 -0
  267. package/src/py/agent/generator.d.ts +3 -3
  268. package/src/py/agent/generator.js +290 -183
  269. package/src/py/agent/generator.js.map +1 -1
  270. package/src/py/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +153 -89
  271. package/src/py/agent/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client_strands.py.template +30 -0
  272. package/src/py/agent/mcp-connection/files/langchain/agent-connection/app/__mcpServerSnakeCase___client_langchain.py.template +30 -0
  273. package/src/py/agent/mcp-connection/generator.d.ts +3 -3
  274. package/src/py/agent/mcp-connection/generator.js +65 -126
  275. package/src/py/agent/mcp-connection/generator.js.map +1 -1
  276. package/src/py/agent/mcp-connection/schema.d.js +8 -0
  277. package/src/py/agent/mcp-connection/schema.d.js.map +1 -0
  278. package/src/py/agent/mcp-connection/schema.d.ts +1 -0
  279. package/src/py/agent/mcp-connection/schema.json +5 -0
  280. package/src/py/agent/react-connection/__snapshots__/generator.spec.ts.snap +11 -19
  281. package/src/py/agent/react-connection/generator.d.ts +4 -4
  282. package/src/py/agent/react-connection/generator.js +55 -59
  283. package/src/py/agent/react-connection/generator.js.map +1 -1
  284. package/src/py/agent/react-connection/{serve-local.d.ts → local-dev.d.ts} +6 -6
  285. package/src/py/agent/react-connection/local-dev.js +36 -0
  286. package/src/py/agent/react-connection/local-dev.js.map +1 -0
  287. package/src/py/agent/react-connection/schema.d.js +8 -0
  288. package/src/py/agent/react-connection/schema.d.js.map +1 -0
  289. package/src/py/agent/react-connection/schema.d.ts +1 -0
  290. package/src/py/agent/react-connection/schema.json +5 -0
  291. package/src/py/agent/schema.d.js +6 -0
  292. package/src/py/agent/schema.d.js.map +1 -0
  293. package/src/py/agent/schema.d.ts +2 -1
  294. package/src/py/agent/schema.json +6 -1
  295. package/src/py/api/generator.d.ts +3 -3
  296. package/src/py/api/generator.js +12 -11
  297. package/src/py/api/generator.js.map +1 -1
  298. package/src/py/api/schema.d.js +6 -0
  299. package/src/py/api/schema.d.js.map +1 -0
  300. package/src/py/api/schema.d.ts +1 -0
  301. package/src/py/api/schema.json +5 -0
  302. package/src/py/dynamodb/__snapshots__/generator.spec.ts.snap +1522 -0
  303. package/src/py/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +45 -0
  304. package/src/py/dynamodb/agent-connection/generator.d.ts +10 -0
  305. package/src/py/dynamodb/agent-connection/generator.js +39 -0
  306. package/src/py/dynamodb/agent-connection/generator.js.map +1 -0
  307. package/src/py/dynamodb/agent-connection/schema.d.js +8 -0
  308. package/src/py/dynamodb/agent-connection/schema.d.js.map +1 -0
  309. package/src/py/dynamodb/agent-connection/schema.d.ts +15 -0
  310. package/src/py/dynamodb/agent-connection/schema.json +27 -0
  311. package/src/py/dynamodb/fast-api-connection/__snapshots__/generator.spec.ts.snap +23 -0
  312. package/src/py/dynamodb/fast-api-connection/generator.d.ts +10 -0
  313. package/src/py/dynamodb/fast-api-connection/generator.js +37 -0
  314. package/src/py/dynamodb/fast-api-connection/generator.js.map +1 -0
  315. package/src/py/dynamodb/fast-api-connection/schema.d.js +8 -0
  316. package/src/py/dynamodb/fast-api-connection/schema.d.js.map +1 -0
  317. package/src/py/dynamodb/fast-api-connection/schema.d.ts +13 -0
  318. package/src/py/dynamodb/fast-api-connection/schema.json +23 -0
  319. package/src/py/dynamodb/files/__name__/__init__.py.template +6 -0
  320. package/src/py/dynamodb/files/__name__/client.py.template +39 -0
  321. package/src/py/dynamodb/files/__name__/entities/__init__.py.template +4 -0
  322. package/src/py/dynamodb/files/__name__/entities/base.py.template +63 -0
  323. package/src/py/dynamodb/files/__name__/entities/example.py.template +64 -0
  324. package/src/py/dynamodb/files/config.json.template +24 -0
  325. package/src/py/dynamodb/generator.d.ts +10 -0
  326. package/src/py/dynamodb/generator.js +110 -0
  327. package/src/py/dynamodb/generator.js.map +1 -0
  328. package/src/py/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +45 -0
  329. package/src/py/dynamodb/mcp-server-connection/generator.d.ts +10 -0
  330. package/src/py/dynamodb/mcp-server-connection/generator.js +39 -0
  331. package/src/py/dynamodb/mcp-server-connection/generator.js.map +1 -0
  332. package/src/py/dynamodb/mcp-server-connection/schema.d.js +8 -0
  333. package/src/py/dynamodb/mcp-server-connection/schema.d.js.map +1 -0
  334. package/src/py/dynamodb/mcp-server-connection/schema.d.ts +15 -0
  335. package/src/py/dynamodb/mcp-server-connection/schema.json +27 -0
  336. package/src/py/dynamodb/schema.d.js +6 -0
  337. package/src/py/dynamodb/schema.d.js.map +1 -0
  338. package/src/py/dynamodb/schema.d.ts +16 -0
  339. package/src/py/dynamodb/schema.json +75 -0
  340. package/src/py/fast-api/__snapshots__/generator.spec.ts.snap +238 -4694
  341. package/src/py/fast-api/__snapshots__/generator.terraform.spec.ts.snap +5409 -0
  342. package/src/py/fast-api/files/app/__name__/init.py.template +5 -22
  343. package/src/py/fast-api/files/app/__name__/main.py.template +4 -1
  344. package/src/py/fast-api/generator.d.ts +3 -3
  345. package/src/py/fast-api/generator.js +90 -87
  346. package/src/py/fast-api/generator.js.map +1 -1
  347. package/src/py/fast-api/react/__snapshots__/generator.spec.ts.snap +4 -3
  348. package/src/py/fast-api/react/generator.d.ts +4 -4
  349. package/src/py/fast-api/react/generator.js +25 -25
  350. package/src/py/fast-api/react/generator.js.map +1 -1
  351. package/src/py/fast-api/react/open-api.d.ts +1 -1
  352. package/src/py/fast-api/react/open-api.js +31 -29
  353. package/src/py/fast-api/react/open-api.js.map +1 -1
  354. package/src/py/fast-api/react/schema.d.js +6 -0
  355. package/src/py/fast-api/react/schema.d.js.map +1 -0
  356. package/src/py/fast-api/react/schema.d.ts +1 -0
  357. package/src/py/fast-api/react/schema.json +5 -0
  358. package/src/py/fast-api/schema.d.js +6 -0
  359. package/src/py/fast-api/schema.d.js.map +1 -0
  360. package/src/py/fast-api/schema.d.ts +1 -0
  361. package/src/py/fast-api/schema.json +5 -0
  362. package/src/py/lambda-function/__snapshots__/generator.spec.ts.snap +4 -4
  363. package/src/py/lambda-function/generator.d.ts +3 -3
  364. package/src/py/lambda-function/generator.js +60 -59
  365. package/src/py/lambda-function/generator.js.map +1 -1
  366. package/src/py/lambda-function/schema.d.js +6 -0
  367. package/src/py/lambda-function/schema.d.js.map +1 -0
  368. package/src/py/lambda-function/schema.d.ts +1 -0
  369. package/src/py/lambda-function/schema.json +5 -0
  370. package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +209 -19
  371. package/src/py/mcp-server/files/deploy/Dockerfile.template +1 -1
  372. package/src/py/mcp-server/generator.d.ts +3 -3
  373. package/src/py/mcp-server/generator.js +163 -127
  374. package/src/py/mcp-server/generator.js.map +1 -1
  375. package/src/py/mcp-server/schema.d.js +6 -0
  376. package/src/py/mcp-server/schema.d.js.map +1 -0
  377. package/src/py/mcp-server/schema.d.ts +1 -0
  378. package/src/py/mcp-server/schema.json +5 -0
  379. package/src/py/project/generator.d.ts +17 -4
  380. package/src/py/project/generator.js +229 -130
  381. package/src/py/project/generator.js.map +1 -1
  382. package/src/py/project/schema.d.js +6 -0
  383. package/src/py/project/schema.d.js.map +1 -0
  384. package/src/py/project/schema.d.ts +1 -0
  385. package/src/py/project/schema.json +5 -0
  386. package/src/py/rdb/__snapshots__/generator.spec.ts.snap +2070 -0
  387. package/src/py/rdb/agent-connection/__snapshots__/generator.spec.ts.snap +104 -0
  388. package/src/py/rdb/agent-connection/generator.d.ts +10 -0
  389. package/src/py/rdb/agent-connection/generator.js +46 -0
  390. package/src/py/rdb/agent-connection/generator.js.map +1 -0
  391. package/src/py/rdb/agent-connection/schema.d.js +8 -0
  392. package/src/py/rdb/agent-connection/schema.d.js.map +1 -0
  393. package/src/py/rdb/agent-connection/schema.d.ts +15 -0
  394. package/src/py/rdb/agent-connection/schema.json +27 -0
  395. package/src/py/rdb/fast-api-connection/__snapshots__/generator.spec.ts.snap +44 -0
  396. package/src/py/rdb/fast-api-connection/files/__apiModuleName__/dependencies/__rdbNameSnake__.py.template +14 -0
  397. package/src/py/rdb/fast-api-connection/generator.d.ts +10 -0
  398. package/src/py/rdb/fast-api-connection/generator.js +54 -0
  399. package/src/py/rdb/fast-api-connection/generator.js.map +1 -0
  400. package/src/py/rdb/fast-api-connection/schema.d.js +8 -0
  401. package/src/py/rdb/fast-api-connection/schema.d.js.map +1 -0
  402. package/src/py/rdb/fast-api-connection/schema.d.ts +13 -0
  403. package/src/py/rdb/fast-api-connection/schema.json +23 -0
  404. package/src/py/rdb/files/Dockerfile.create-db-user.template +14 -0
  405. package/src/py/rdb/files/Dockerfile.migration.template +14 -0
  406. package/src/py/rdb/files/__name__/__init__.py.template +3 -0
  407. package/src/py/rdb/files/__name__/connection.py.template +55 -0
  408. package/src/py/rdb/files/__name__/create_db_user_handler.py.template +97 -0
  409. package/src/py/rdb/files/__name__/migration_handler.py.template +36 -0
  410. package/src/py/rdb/files/__name__/models/__init__.py.template +3 -0
  411. package/src/py/rdb/files/__name__/models/example.py.template +8 -0
  412. package/src/py/rdb/files/__name__/utils.py.template +104 -0
  413. package/src/py/rdb/files/alembic.ini.template +38 -0
  414. package/src/py/rdb/files/config.json.template +14 -0
  415. package/src/py/rdb/files/migrations/env.py.template +80 -0
  416. package/src/py/rdb/files/migrations/script.py.mako.template +28 -0
  417. package/src/py/rdb/generator.d.ts +6 -0
  418. package/src/py/rdb/generator.js +280 -0
  419. package/src/py/rdb/generator.js.map +1 -0
  420. package/src/py/rdb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +101 -0
  421. package/src/py/rdb/mcp-server-connection/generator.d.ts +10 -0
  422. package/src/py/rdb/mcp-server-connection/generator.js +46 -0
  423. package/src/py/rdb/mcp-server-connection/generator.js.map +1 -0
  424. package/src/py/rdb/mcp-server-connection/schema.d.js +8 -0
  425. package/src/py/rdb/mcp-server-connection/schema.d.js.map +1 -0
  426. package/src/py/rdb/mcp-server-connection/schema.d.ts +15 -0
  427. package/src/py/rdb/mcp-server-connection/schema.json +27 -0
  428. package/src/py/rdb/schema.d.js +6 -0
  429. package/src/py/rdb/schema.d.js.map +1 -0
  430. package/src/py/rdb/schema.d.ts +16 -0
  431. package/src/py/rdb/schema.json +77 -0
  432. package/src/py/rdb/utils.d.ts +6 -0
  433. package/src/py/rdb/utils.js +16 -0
  434. package/src/py/rdb/utils.js.map +1 -0
  435. package/src/sdk/agentcore-gateway.d.ts +6 -0
  436. package/src/sdk/agentcore-gateway.js +7 -0
  437. package/src/sdk/agentcore-gateway.js.map +1 -0
  438. package/src/sdk/connection.d.ts +6 -0
  439. package/src/sdk/connection.js +6 -0
  440. package/src/sdk/connection.js.map +1 -0
  441. package/src/sdk/license.d.ts +8 -0
  442. package/src/sdk/license.js +7 -0
  443. package/src/sdk/license.js.map +1 -0
  444. package/src/sdk/open-api.d.ts +10 -0
  445. package/src/sdk/open-api.js +8 -0
  446. package/src/sdk/open-api.js.map +1 -0
  447. package/src/sdk/py.d.ts +16 -0
  448. package/src/sdk/py.js +11 -0
  449. package/src/sdk/py.js.map +1 -0
  450. package/src/sdk/terraform.d.ts +6 -0
  451. package/src/sdk/terraform.js +7 -0
  452. package/src/sdk/terraform.js.map +1 -0
  453. package/src/sdk/ts.d.ts +37 -0
  454. package/src/sdk/ts.js +39 -0
  455. package/src/sdk/ts.js.map +1 -0
  456. package/{sdk → src/sdk}/utils/ast.d.ts +1 -2
  457. package/src/sdk/utils/ast.js +6 -0
  458. package/src/sdk/utils/ast.js.map +1 -0
  459. package/{sdk → src/sdk}/utils/format.d.ts +1 -1
  460. package/src/sdk/utils/format.js +6 -0
  461. package/src/sdk/utils/format.js.map +1 -0
  462. package/{sdk → src/sdk}/utils/test.d.ts +1 -1
  463. package/src/sdk/utils/test.js +6 -0
  464. package/src/sdk/utils/test.js.map +1 -0
  465. package/src/smithy/project/__snapshots__/generator.spec.ts.snap +19 -24
  466. package/src/smithy/project/files/build.Dockerfile.template +1 -4
  467. package/src/smithy/project/files/src/operations/echo.smithy.template +1 -0
  468. package/src/smithy/project/generator.d.ts +3 -3
  469. package/src/smithy/project/generator.js +64 -57
  470. package/src/smithy/project/generator.js.map +1 -1
  471. package/src/smithy/project/schema.d.js +6 -0
  472. package/src/smithy/project/schema.d.js.map +1 -0
  473. package/src/smithy/project/schema.d.ts +1 -0
  474. package/src/smithy/project/schema.json +5 -0
  475. package/src/smithy/react-connection/__snapshots__/generator.spec.ts.snap +1 -1
  476. package/src/smithy/react-connection/generator.d.ts +3 -3
  477. package/src/smithy/react-connection/generator.js +39 -47
  478. package/src/smithy/react-connection/generator.js.map +1 -1
  479. package/src/smithy/react-connection/schema.d.js +6 -0
  480. package/src/smithy/react-connection/schema.d.js.map +1 -0
  481. package/src/smithy/react-connection/schema.d.ts +1 -0
  482. package/src/smithy/react-connection/schema.json +5 -0
  483. package/src/smithy/ts/api/__snapshots__/generator.spec.ts.snap +850 -136
  484. package/src/smithy/ts/api/files/handler.ts.template +2 -2
  485. package/src/smithy/ts/api/files/local-server.ts.template +2 -2
  486. package/src/smithy/ts/api/files/operations/echo.ts.template +2 -2
  487. package/src/smithy/ts/api/files/service.ts.template +3 -3
  488. package/src/smithy/ts/api/generator.d.ts +3 -3
  489. package/src/smithy/ts/api/generator.js +131 -105
  490. package/src/smithy/ts/api/generator.js.map +1 -1
  491. package/src/smithy/ts/api/schema.d.js +6 -0
  492. package/src/smithy/ts/api/schema.d.js.map +1 -0
  493. package/src/smithy/ts/api/schema.d.ts +1 -0
  494. package/src/smithy/ts/api/schema.json +5 -0
  495. package/src/terraform/project/files/application/scripts/bootstrap.ts.template +40 -1
  496. package/src/terraform/project/files/application/src/main.tf.template +6 -1
  497. package/src/terraform/project/files/application/src/providers.tf.template +1 -1
  498. package/src/terraform/project/generator.d.ts +3 -3
  499. package/src/terraform/project/generator.js +159 -104
  500. package/src/terraform/project/generator.js.map +1 -1
  501. package/src/terraform/project/schema.d.js +9 -0
  502. package/src/terraform/project/schema.d.js.map +1 -0
  503. package/src/terraform/project/schema.d.ts +1 -0
  504. package/src/terraform/project/schema.json +5 -0
  505. package/src/trpc/backend/__snapshots__/generator.spec.ts.snap +1180 -185
  506. package/src/trpc/backend/files/src/client/index.ts.template +1 -1
  507. package/src/trpc/backend/files/src/handler.ts.template +1 -1
  508. package/src/trpc/backend/files/src/index.ts.template +5 -5
  509. package/src/trpc/backend/files/src/init.ts.template +1 -1
  510. package/src/trpc/backend/files/src/local-server.ts.template +1 -1
  511. package/src/trpc/backend/files/src/middleware/index.ts.template +7 -7
  512. package/src/trpc/backend/files/src/procedures/echo.ts.template +3 -3
  513. package/src/trpc/backend/files/src/router.ts.template +2 -2
  514. package/src/trpc/backend/files/src/schema/echo.ts.template +2 -2
  515. package/src/trpc/backend/files/src/schema/index.ts.template +1 -1
  516. package/src/trpc/backend/generator.d.ts +4 -4
  517. package/src/trpc/backend/generator.js +100 -84
  518. package/src/trpc/backend/generator.js.map +1 -1
  519. package/src/trpc/backend/schema.d.js +6 -0
  520. package/src/trpc/backend/schema.d.js.map +1 -0
  521. package/src/trpc/backend/schema.d.ts +3 -2
  522. package/src/trpc/backend/schema.json +5 -0
  523. package/src/trpc/react/__snapshots__/generator.spec.ts.snap +4 -4
  524. package/src/trpc/react/files/src/components/__apiNameClassName__ClientProvider.tsx.template +3 -3
  525. package/src/trpc/react/generator.d.ts +4 -4
  526. package/src/trpc/react/generator.js +64 -59
  527. package/src/trpc/react/generator.js.map +1 -1
  528. package/src/trpc/react/schema.d.js +6 -0
  529. package/src/trpc/react/schema.d.js.map +1 -0
  530. package/src/trpc/react/schema.d.ts +1 -0
  531. package/src/trpc/react/schema.json +5 -0
  532. package/src/ts/agent/__snapshots__/generator.spec.ts.snap +792 -23
  533. package/src/ts/agent/a2a-connection/__snapshots__/generator.spec.ts.snap +257 -0
  534. package/src/ts/agent/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client-strands.ts.template +23 -0
  535. package/src/ts/agent/a2a-connection/generator.d.ts +3 -3
  536. package/src/ts/agent/a2a-connection/generator.js +65 -55
  537. package/src/ts/agent/a2a-connection/generator.js.map +1 -1
  538. package/src/ts/agent/a2a-connection/schema.d.js +8 -0
  539. package/src/ts/agent/a2a-connection/schema.d.js.map +1 -0
  540. package/src/ts/agent/a2a-connection/schema.d.ts +1 -0
  541. package/src/ts/agent/a2a-connection/schema.json +5 -0
  542. package/src/ts/agent/files/a2a/index.ts.template +1 -1
  543. package/src/ts/agent/files/ag-ui/index.ts.template +26 -10
  544. package/src/ts/agent/files/common/agent.ts.template +7 -2
  545. package/src/ts/agent/files/deploy/Dockerfile.template +13 -2
  546. package/src/ts/agent/files/http/client.ts.template +2 -2
  547. package/src/ts/agent/files/http/index.ts.template +2 -2
  548. package/src/ts/agent/files/http/router.ts.template +5 -5
  549. package/src/ts/agent/gateway-connection/__snapshots__/generator.spec.ts.snap +221 -0
  550. package/src/ts/agent/gateway-connection/files/agent-connection/app/__gatewayKebabCase__-client-strands.ts.template +30 -0
  551. package/src/ts/agent/gateway-connection/generator.d.ts +10 -0
  552. package/src/ts/agent/gateway-connection/generator.js +117 -0
  553. package/src/ts/agent/gateway-connection/generator.js.map +1 -0
  554. package/src/ts/agent/gateway-connection/schema.d.js +6 -0
  555. package/src/ts/agent/gateway-connection/schema.d.js.map +1 -0
  556. package/src/ts/agent/gateway-connection/schema.d.ts +13 -0
  557. package/src/ts/agent/gateway-connection/schema.json +31 -0
  558. package/src/ts/agent/generator.d.ts +3 -3
  559. package/src/ts/agent/generator.js +213 -145
  560. package/src/ts/agent/generator.js.map +1 -1
  561. package/src/ts/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +193 -111
  562. package/src/ts/agent/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client-strands.ts.template +22 -0
  563. package/src/ts/agent/mcp-connection/generator.d.ts +3 -3
  564. package/src/ts/agent/mcp-connection/generator.js +56 -60
  565. package/src/ts/agent/mcp-connection/generator.js.map +1 -1
  566. package/src/ts/agent/mcp-connection/schema.d.js +8 -0
  567. package/src/ts/agent/mcp-connection/schema.d.js.map +1 -0
  568. package/src/ts/agent/mcp-connection/schema.d.ts +1 -0
  569. package/src/ts/agent/mcp-connection/schema.json +5 -0
  570. package/src/ts/agent/react-connection/generator.d.ts +4 -4
  571. package/src/ts/agent/react-connection/generator.js +88 -91
  572. package/src/ts/agent/react-connection/generator.js.map +1 -1
  573. package/src/ts/agent/react-connection/local-dev.d.ts +13 -0
  574. package/src/ts/agent/react-connection/local-dev.js +17 -0
  575. package/src/ts/agent/react-connection/local-dev.js.map +1 -0
  576. package/src/ts/agent/react-connection/schema.d.js +8 -0
  577. package/src/ts/agent/react-connection/schema.d.js.map +1 -0
  578. package/src/ts/agent/react-connection/schema.d.ts +1 -0
  579. package/src/ts/agent/react-connection/schema.json +5 -0
  580. package/src/ts/agent/schema.d.js +6 -0
  581. package/src/ts/agent/schema.d.js.map +1 -0
  582. package/src/ts/agent/schema.d.ts +1 -0
  583. package/src/ts/agent/schema.json +5 -0
  584. package/src/ts/api/generator.d.ts +3 -3
  585. package/src/ts/api/generator.js +16 -16
  586. package/src/ts/api/generator.js.map +1 -1
  587. package/src/ts/api/schema.d.js +6 -0
  588. package/src/ts/api/schema.d.js.map +1 -0
  589. package/src/ts/api/schema.d.ts +3 -1
  590. package/src/ts/api/schema.json +5 -0
  591. package/src/ts/astro-docs/__snapshots__/generator.spec.ts.snap +15 -16
  592. package/src/ts/astro-docs/files/translation/scripts/translate.ts.template +3 -2
  593. package/src/ts/astro-docs/generator.d.ts +3 -3
  594. package/src/ts/astro-docs/generator.js +80 -54
  595. package/src/ts/astro-docs/generator.js.map +1 -1
  596. package/src/ts/astro-docs/schema.d.js +6 -0
  597. package/src/ts/astro-docs/schema.d.js.map +1 -0
  598. package/src/ts/astro-docs/schema.d.ts +2 -2
  599. package/src/ts/astro-docs/schema.json +3 -3
  600. package/src/ts/dcr-proxy/__snapshots__/generator.spec.ts.snap +982 -0
  601. package/src/ts/dcr-proxy/generator.d.ts +10 -0
  602. package/src/ts/dcr-proxy/generator.js +98 -0
  603. package/src/ts/dcr-proxy/generator.js.map +1 -0
  604. package/src/ts/dcr-proxy/schema.d.js +6 -0
  605. package/src/ts/dcr-proxy/schema.d.js.map +1 -0
  606. package/src/ts/dcr-proxy/schema.d.ts +13 -0
  607. package/src/ts/dcr-proxy/schema.json +44 -0
  608. package/src/ts/docs/generator.d.ts +3 -3
  609. package/src/ts/docs/generator.js +10 -10
  610. package/src/ts/docs/generator.js.map +1 -1
  611. package/src/ts/docs/schema.d.js +6 -0
  612. package/src/ts/docs/schema.d.js.map +1 -0
  613. package/src/ts/docs/schema.d.ts +1 -4
  614. package/src/ts/docs/schema.json +3 -3
  615. package/src/ts/dynamodb/__snapshots__/generator.spec.ts.snap +402 -518
  616. package/src/ts/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +5 -5
  617. package/src/ts/dynamodb/agent-connection/generator.d.ts +3 -3
  618. package/src/ts/dynamodb/agent-connection/generator.js +21 -23
  619. package/src/ts/dynamodb/agent-connection/generator.js.map +1 -1
  620. package/src/ts/dynamodb/agent-connection/schema.d.js +8 -0
  621. package/src/ts/dynamodb/agent-connection/schema.d.js.map +1 -0
  622. package/src/ts/dynamodb/agent-connection/schema.d.ts +1 -0
  623. package/src/ts/dynamodb/agent-connection/schema.json +5 -0
  624. package/src/ts/dynamodb/files/config.json.template +24 -0
  625. package/src/ts/dynamodb/files/src/client.ts.template +30 -11
  626. package/src/ts/dynamodb/files/src/entities/example.ts.template +1 -1
  627. package/src/ts/dynamodb/files/src/entities/index.ts.template +1 -1
  628. package/src/ts/dynamodb/files/src/index.ts.template +2 -11
  629. package/src/ts/dynamodb/generator.d.ts +3 -3
  630. package/src/ts/dynamodb/generator.js +76 -63
  631. package/src/ts/dynamodb/generator.js.map +1 -1
  632. package/src/ts/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +5 -5
  633. package/src/ts/dynamodb/mcp-server-connection/generator.d.ts +3 -3
  634. package/src/ts/dynamodb/mcp-server-connection/generator.js +21 -23
  635. package/src/ts/dynamodb/mcp-server-connection/generator.js.map +1 -1
  636. package/src/ts/dynamodb/mcp-server-connection/schema.d.js +8 -0
  637. package/src/ts/dynamodb/mcp-server-connection/schema.d.js.map +1 -0
  638. package/src/ts/dynamodb/mcp-server-connection/schema.d.ts +1 -0
  639. package/src/ts/dynamodb/mcp-server-connection/schema.json +5 -0
  640. package/src/ts/dynamodb/schema.d.js +6 -0
  641. package/src/ts/dynamodb/schema.d.js.map +1 -0
  642. package/src/ts/dynamodb/schema.d.ts +2 -0
  643. package/src/ts/dynamodb/schema.json +25 -2
  644. package/src/ts/dynamodb/smithy-connection/__snapshots__/generator.spec.ts.snap +3 -3
  645. package/src/ts/dynamodb/smithy-connection/generator.d.ts +3 -3
  646. package/src/ts/dynamodb/smithy-connection/generator.js +20 -22
  647. package/src/ts/dynamodb/smithy-connection/generator.js.map +1 -1
  648. package/src/ts/dynamodb/smithy-connection/schema.d.js +8 -0
  649. package/src/ts/dynamodb/smithy-connection/schema.d.js.map +1 -0
  650. package/src/ts/dynamodb/smithy-connection/schema.d.ts +1 -0
  651. package/src/ts/dynamodb/smithy-connection/schema.json +5 -0
  652. package/src/ts/dynamodb/trpc-connection/__snapshots__/generator.spec.ts.snap +3 -3
  653. package/src/ts/dynamodb/trpc-connection/generator.d.ts +3 -3
  654. package/src/ts/dynamodb/trpc-connection/generator.js +20 -22
  655. package/src/ts/dynamodb/trpc-connection/generator.js.map +1 -1
  656. package/src/ts/dynamodb/trpc-connection/schema.d.js +8 -0
  657. package/src/ts/dynamodb/trpc-connection/schema.d.js.map +1 -0
  658. package/src/ts/dynamodb/trpc-connection/schema.d.ts +1 -0
  659. package/src/ts/dynamodb/trpc-connection/schema.json +5 -0
  660. package/src/ts/lambda-function/__snapshots__/generator.spec.ts.snap +8 -6
  661. package/src/ts/lambda-function/files/handler/__lambdaFunctionKebabCase__.ts.template +2 -1
  662. package/src/ts/lambda-function/generator.d.ts +3 -3
  663. package/src/ts/lambda-function/generator.js +60 -56
  664. package/src/ts/lambda-function/generator.js.map +1 -1
  665. package/src/ts/lambda-function/io.js +83 -52
  666. package/src/ts/lambda-function/io.js.map +1 -1
  667. package/src/ts/lambda-function/schema.d.js +6 -0
  668. package/src/ts/lambda-function/schema.d.js.map +1 -0
  669. package/src/ts/lambda-function/schema.d.ts +1 -0
  670. package/src/ts/lambda-function/schema.json +5 -0
  671. package/src/ts/lib/__snapshots__/generator.spec.ts.snap +98 -93
  672. package/src/ts/lib/__snapshots__/vitest.spec.ts.snap +24 -0
  673. package/src/ts/lib/biome.d.ts +7 -0
  674. package/src/ts/lib/biome.js +91 -0
  675. package/src/ts/lib/biome.js.map +1 -0
  676. package/src/ts/lib/generator.d.ts +3 -3
  677. package/src/ts/lib/generator.js +107 -108
  678. package/src/ts/lib/generator.js.map +1 -1
  679. package/src/ts/lib/grit/vitest-pass-with-no-tests.grit +1 -4
  680. package/src/ts/lib/schema.d.js +6 -0
  681. package/src/ts/lib/schema.d.js.map +1 -0
  682. package/src/ts/lib/schema.d.ts +1 -1
  683. package/src/ts/lib/schema.json +5 -0
  684. package/src/ts/lib/ts-project-utils.d.ts +12 -2
  685. package/src/ts/lib/ts-project-utils.js +95 -71
  686. package/src/ts/lib/ts-project-utils.js.map +1 -1
  687. package/src/ts/lib/types.d.ts +6 -0
  688. package/src/ts/lib/types.js +5 -2
  689. package/src/ts/lib/types.js.map +1 -1
  690. package/src/ts/lib/vitest.d.ts +2 -2
  691. package/src/ts/lib/vitest.js +30 -26
  692. package/src/ts/lib/vitest.js.map +1 -1
  693. package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +209 -42
  694. package/src/ts/mcp-server/files/Dockerfile.template +13 -2
  695. package/src/ts/mcp-server/generator.d.ts +3 -3
  696. package/src/ts/mcp-server/generator.js +183 -140
  697. package/src/ts/mcp-server/generator.js.map +1 -1
  698. package/src/ts/mcp-server/schema.d.js +6 -0
  699. package/src/ts/mcp-server/schema.d.js.map +1 -0
  700. package/src/ts/mcp-server/schema.d.ts +1 -0
  701. package/src/ts/mcp-server/schema.json +5 -0
  702. package/src/ts/nx-generator/__snapshots__/generator.spec.ts.snap +46 -26
  703. package/src/ts/nx-generator/files/common/schema.d.ts.template +1 -0
  704. package/src/ts/nx-generator/files/common/schema.json.template +5 -0
  705. package/src/ts/nx-generator/files/local/generator.ts.template +3 -3
  706. package/src/ts/nx-generator/files/nx-plugin-for-aws/generator/generator.ts.template +6 -7
  707. package/src/ts/nx-generator/generator.d.ts +2 -2
  708. package/src/ts/nx-generator/generator.js +118 -73
  709. package/src/ts/nx-generator/generator.js.map +1 -1
  710. package/src/ts/nx-generator/schema.d.js +6 -0
  711. package/src/ts/nx-generator/schema.d.js.map +1 -0
  712. package/src/ts/nx-generator/schema.d.ts +1 -0
  713. package/src/ts/nx-generator/schema.json +5 -0
  714. package/src/ts/nx-migration/files/migration.spec.ts.template +26 -0
  715. package/src/ts/nx-migration/files/migration.ts.template +61 -0
  716. package/src/ts/nx-migration/files/prompt.md.template +46 -0
  717. package/src/ts/nx-migration/generator.d.ts +24 -0
  718. package/src/ts/nx-migration/generator.js +122 -0
  719. package/src/ts/nx-migration/generator.js.map +1 -0
  720. package/src/ts/nx-migration/schema.d.js +6 -0
  721. package/src/ts/nx-migration/schema.d.js.map +1 -0
  722. package/src/ts/nx-migration/schema.d.ts +13 -0
  723. package/src/ts/nx-migration/schema.json +63 -0
  724. package/src/ts/nx-plugin/__snapshots__/generator.spec.ts.snap +36 -25
  725. package/src/ts/nx-plugin/files/mcp-server/resources/GENERAL_GUIDANCE.md.template +5 -6
  726. package/src/ts/nx-plugin/files/mcp-server/server.ts.template +5 -5
  727. package/src/ts/nx-plugin/files/mcp-server/tools/create-workspace-command.ts.template +2 -2
  728. package/src/ts/nx-plugin/files/mcp-server/tools/general-guidance.ts.template +1 -1
  729. package/src/ts/nx-plugin/files/mcp-server/tools/generator-guide.ts.template +2 -2
  730. package/src/ts/nx-plugin/files/mcp-server/tools/list-generators.ts.template +2 -2
  731. package/src/ts/nx-plugin/files/mcp-server/utils.ts.template +4 -4
  732. package/src/ts/nx-plugin/generator.d.ts +3 -3
  733. package/src/ts/nx-plugin/generator.js +61 -50
  734. package/src/ts/nx-plugin/generator.js.map +1 -1
  735. package/src/ts/nx-plugin/schema.d.js +9 -0
  736. package/src/ts/nx-plugin/schema.d.js.map +1 -0
  737. package/src/ts/nx-plugin/schema.json +5 -0
  738. package/src/ts/nx-plugin/utils.d.ts +21 -1
  739. package/src/ts/nx-plugin/utils.js +60 -51
  740. package/src/ts/nx-plugin/utils.js.map +1 -1
  741. package/src/ts/rdb/__snapshots__/generator.spec.ts.snap +551 -642
  742. package/src/ts/rdb/agent-connection/__snapshots__/generator.spec.ts.snap +6 -6
  743. package/src/ts/rdb/agent-connection/generator.d.ts +3 -3
  744. package/src/ts/rdb/agent-connection/generator.js +37 -39
  745. package/src/ts/rdb/agent-connection/generator.js.map +1 -1
  746. package/src/ts/rdb/agent-connection/schema.d.js +8 -0
  747. package/src/ts/rdb/agent-connection/schema.d.js.map +1 -0
  748. package/src/ts/rdb/agent-connection/schema.d.ts +1 -0
  749. package/src/ts/rdb/agent-connection/schema.json +5 -0
  750. package/src/ts/rdb/files/Dockerfile.template +19 -1
  751. package/src/ts/rdb/files/config.json.template +14 -0
  752. package/src/ts/rdb/files/prisma.config.ts.template +6 -5
  753. package/src/ts/rdb/files/src/create-db-user-handler.ts.template +9 -11
  754. package/src/ts/rdb/files/src/index.ts.template +1 -2
  755. package/src/ts/rdb/files/src/migration-handler.ts.template +5 -30
  756. package/src/ts/rdb/files/src/prisma.ts.template +33 -25
  757. package/src/ts/rdb/files/src/utils.ts.template +3 -0
  758. package/src/ts/rdb/generator.d.ts +3 -7
  759. package/src/ts/rdb/generator.js +177 -131
  760. package/src/ts/rdb/generator.js.map +1 -1
  761. package/src/ts/rdb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +6 -6
  762. package/src/ts/rdb/mcp-server-connection/generator.d.ts +3 -3
  763. package/src/ts/rdb/mcp-server-connection/generator.js +35 -37
  764. package/src/ts/rdb/mcp-server-connection/generator.js.map +1 -1
  765. package/src/ts/rdb/mcp-server-connection/schema.d.js +8 -0
  766. package/src/ts/rdb/mcp-server-connection/schema.d.js.map +1 -0
  767. package/src/ts/rdb/mcp-server-connection/schema.d.ts +1 -0
  768. package/src/ts/rdb/mcp-server-connection/schema.json +5 -0
  769. package/src/ts/rdb/schema.d.js +6 -0
  770. package/src/ts/rdb/schema.d.js.map +1 -0
  771. package/src/ts/rdb/schema.d.ts +1 -0
  772. package/src/ts/rdb/schema.json +6 -1
  773. package/src/ts/rdb/smithy-connection/__snapshots__/generator.spec.ts.snap +3 -3
  774. package/src/ts/rdb/smithy-connection/generator.d.ts +3 -3
  775. package/src/ts/rdb/smithy-connection/generator.js +45 -43
  776. package/src/ts/rdb/smithy-connection/generator.js.map +1 -1
  777. package/src/ts/rdb/smithy-connection/schema.d.js +8 -0
  778. package/src/ts/rdb/smithy-connection/schema.d.js.map +1 -0
  779. package/src/ts/rdb/smithy-connection/schema.d.ts +1 -0
  780. package/src/ts/rdb/smithy-connection/schema.json +5 -0
  781. package/src/ts/rdb/trpc-connection/__snapshots__/generator.spec.ts.snap +3 -3
  782. package/src/ts/rdb/trpc-connection/generator.d.ts +3 -3
  783. package/src/ts/rdb/trpc-connection/generator.js +35 -31
  784. package/src/ts/rdb/trpc-connection/generator.js.map +1 -1
  785. package/src/ts/rdb/trpc-connection/schema.d.js +8 -0
  786. package/src/ts/rdb/trpc-connection/schema.d.js.map +1 -0
  787. package/src/ts/rdb/trpc-connection/schema.d.ts +1 -0
  788. package/src/ts/rdb/trpc-connection/schema.json +5 -0
  789. package/src/ts/rdb/utils.d.ts +1 -1
  790. package/src/ts/rdb/utils.js +9 -11
  791. package/src/ts/rdb/utils.js.map +1 -1
  792. package/src/ts/react-website/agui/files/common/src/hooks/useAgui__agentNameClassName__.tsx.template +1 -16
  793. package/src/ts/react-website/agui/generator.d.ts +1 -1
  794. package/src/ts/react-website/agui/generator.js +70 -62
  795. package/src/ts/react-website/agui/generator.js.map +1 -1
  796. package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +1387 -813
  797. package/src/ts/react-website/app/generator.d.ts +4 -4
  798. package/src/ts/react-website/app/generator.js +241 -196
  799. package/src/ts/react-website/app/generator.js.map +1 -1
  800. package/src/ts/react-website/app/schema.d.js +6 -0
  801. package/src/ts/react-website/app/schema.d.js.map +1 -0
  802. package/src/ts/react-website/app/schema.d.ts +1 -1
  803. package/src/ts/react-website/app/schema.json +11 -6
  804. package/src/ts/react-website/cognito-auth/__snapshots__/generator.spec.ts.snap +139 -26
  805. package/src/ts/react-website/cognito-auth/__snapshots__/generator.terraform.spec.ts.snap +48 -12
  806. package/src/ts/react-website/cognito-auth/__snapshots__/generator.ux-provider.spec.ts.snap +0 -20
  807. package/src/ts/react-website/cognito-auth/files/app/components/CognitoAuth/index.tsx.template +2 -2
  808. package/src/ts/react-website/cognito-auth/generator.d.ts +4 -4
  809. package/src/ts/react-website/cognito-auth/generator.js +65 -63
  810. package/src/ts/react-website/cognito-auth/generator.js.map +1 -1
  811. package/src/ts/react-website/cognito-auth/grit/cloudscape-auth-menu.grit +8 -6
  812. package/src/ts/react-website/cognito-auth/grit/cognito-auth-wrapper.grit +1 -1
  813. package/src/ts/react-website/cognito-auth/grit/none-auth-menu.grit +1 -0
  814. package/src/ts/react-website/cognito-auth/grit/shadcn-auth-menu.grit +3 -1
  815. package/src/ts/react-website/cognito-auth/grit/shadcn-state-declarations.grit +3 -1
  816. package/src/ts/react-website/cognito-auth/schema.d.js +6 -0
  817. package/src/ts/react-website/cognito-auth/schema.d.js.map +1 -0
  818. package/src/ts/react-website/cognito-auth/schema.d.ts +1 -0
  819. package/src/ts/react-website/cognito-auth/schema.json +5 -0
  820. package/src/ts/react-website/cognito-auth/utils.d.ts +1 -1
  821. package/src/ts/react-website/cognito-auth/utils.js +34 -32
  822. package/src/ts/react-website/cognito-auth/utils.js.map +1 -1
  823. package/src/ts/react-website/runtime-config/__snapshots__/generator.spec.ts.snap +2 -2
  824. package/src/ts/react-website/runtime-config/files/app/components/RuntimeConfig/index.tsx.template +2 -2
  825. package/src/ts/react-website/runtime-config/generator.d.ts +3 -3
  826. package/src/ts/react-website/runtime-config/generator.js +29 -31
  827. package/src/ts/react-website/runtime-config/generator.js.map +1 -1
  828. package/src/ts/react-website/runtime-config/schema.d.js +6 -0
  829. package/src/ts/react-website/runtime-config/schema.d.js.map +1 -0
  830. package/src/ts/react-website/runtime-config/schema.d.ts +1 -0
  831. package/src/ts/react-website/runtime-config/schema.json +5 -0
  832. package/src/ts/sync/generator.d.ts +3 -3
  833. package/src/ts/sync/generator.js +137 -60
  834. package/src/ts/sync/generator.js.map +1 -1
  835. package/src/ts/website/app/generator.d.ts +3 -3
  836. package/src/ts/website/app/generator.js +10 -10
  837. package/src/ts/website/app/generator.js.map +1 -1
  838. package/src/ts/website/app/schema.d.js +6 -0
  839. package/src/ts/website/app/schema.d.js.map +1 -0
  840. package/src/ts/website/app/schema.d.ts +1 -1
  841. package/src/ts/website/app/schema.json +11 -6
  842. package/src/ts/website/auth/generator.d.ts +4 -4
  843. package/src/ts/website/auth/generator.js +11 -10
  844. package/src/ts/website/auth/generator.js.map +1 -1
  845. package/src/ts/website/auth/schema.d.js +6 -0
  846. package/src/ts/website/auth/schema.d.js.map +1 -0
  847. package/src/ts/website/auth/schema.d.ts +1 -0
  848. package/src/ts/website/auth/schema.json +5 -0
  849. package/src/utils/__snapshots__/shared-constructs.spec.ts.snap +21 -0
  850. package/src/utils/agent-chat/agent-chat.d.ts +31 -0
  851. package/src/utils/agent-chat/agent-chat.js +31 -0
  852. package/src/utils/agent-chat/agent-chat.js.map +1 -0
  853. package/src/utils/agent-chat/files/a2a/chat.ts.template +33 -0
  854. package/src/utils/agent-chat/files/ag-ui/chat.ts.template +17 -0
  855. package/src/utils/agent-chat/files/common/agentcore.ts.template +81 -0
  856. package/src/utils/agent-chat/files/http-py/chat.ts.template +43 -0
  857. package/src/utils/agent-chat/files/http-ts/chat.ts.template +54 -0
  858. package/src/utils/agent-connection/agent-connection.d.ts +117 -25
  859. package/src/utils/agent-connection/agent-connection.js +467 -103
  860. package/src/utils/agent-connection/agent-connection.js.map +1 -1
  861. package/src/utils/agent-connection/files/core-a2a/agentcore-a2a-client-config.ts.template +93 -0
  862. package/src/utils/agent-connection/files/core-auth/agentcore-endpoints.ts.template +37 -0
  863. package/src/utils/agent-connection/files/core-auth/agentcore-fetch.ts.template +54 -0
  864. package/src/utils/agent-connection/files/core-gateway/agentcore-gateway-mcp-transport.ts.template +41 -0
  865. package/src/utils/agent-connection/files/core-mcp/agentcore-mcp-transport.ts.template +70 -0
  866. package/src/utils/agent-connection/files/core-runtime-config/runtime-config.ts.template +22 -32
  867. package/src/utils/agent-connection/files/core-shared/agentcore-transport.ts.template +39 -0
  868. package/src/utils/agent-connection/files/core-strands/a2a/agentcore-a2a-client-strands.ts.template +61 -0
  869. package/src/utils/agent-connection/files/core-strands/base/model-errors-strands.ts.template +36 -0
  870. package/src/utils/agent-connection/files/core-strands/base/tool-errors-strands.ts.template +22 -0
  871. 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
  872. package/src/utils/agent-connection/files/core-strands/gateway/agentcore-gateway-mcp-client-strands.ts.template +26 -0
  873. package/src/utils/agent-connection/files/core-strands/mcp/agentcore-mcp-client-strands.ts.template +27 -0
  874. package/src/utils/agent-connection/files/py-core-a2a/agentcore_a2a_client_config.py.template +43 -0
  875. package/src/utils/agent-connection/files/py-core-auth/agentcore_endpoints.py.template +47 -0
  876. package/src/utils/agent-connection/files/py-core-auth/auth/session.py.template +51 -0
  877. package/src/utils/agent-connection/files/py-core-gateway/agentcore_gateway_mcp_transport.py.template +28 -0
  878. package/src/utils/agent-connection/files/py-core-langchain/a2a/agentcore_a2a_client_langchain.py.template +99 -0
  879. package/src/utils/agent-connection/files/py-core-langchain/gateway/agentcore_gateway_mcp_client_langchain.py.template +57 -0
  880. package/src/utils/agent-connection/files/py-core-langchain/mcp/agentcore_mcp_client_langchain.py.template +64 -0
  881. package/src/utils/agent-connection/files/py-core-mcp/agentcore_mcp_transport.py.template +34 -0
  882. package/src/utils/agent-connection/files/py-core-runtime-config/runtime_config.py.template +5 -18
  883. package/src/utils/agent-connection/files/py-core-shared/agentcore_transport.py.template +40 -0
  884. package/src/utils/agent-connection/files/py-core-strands/a2a/agentcore_a2a_client_strands.py.template +66 -0
  885. package/src/utils/agent-connection/files/py-core-strands/base/model_errors_strands.py.template +40 -0
  886. package/src/utils/agent-connection/files/py-core-strands/gateway/agentcore_gateway_mcp_client_strands.py.template +22 -0
  887. package/src/utils/agent-connection/files/py-core-strands/mcp/agentcore_mcp_client_strands.py.template +30 -0
  888. package/src/utils/agent-core-constructs/agent-core-constructs.d.ts +12 -3
  889. package/src/utils/agent-core-constructs/agent-core-constructs.js +104 -38
  890. package/src/utils/agent-core-constructs/agent-core-constructs.js.map +1 -1
  891. package/src/utils/agent-core-constructs/files/cdk/app/agent-core/__nameKebabCase__/__nameKebabCase__.ts.template +31 -4
  892. package/src/utils/agent-core-constructs/files/cdk/app/agentcore-gateway/__nameKebabCase__/__nameKebabCase__.ts.template +85 -0
  893. package/src/utils/agent-core-constructs/files/cdk/core/agentcore-gateway/agentcore-gateway.ts.template +497 -0
  894. package/src/utils/agent-core-constructs/files/cdk/core/agentcore-gateway/readiness-probe/index.js.template +55 -0
  895. package/src/utils/agent-core-constructs/files/terraform/app/agent-core/__nameKebabCase__/__nameKebabCase__.tf.template +32 -0
  896. package/src/utils/agent-core-constructs/files/terraform/app/agentcore-gateway/__nameKebabCase__/__nameKebabCase__.tf.template +488 -0
  897. package/src/utils/agent-core-constructs/files/terraform/app/agentcore-gateway/__nameKebabCase__/render-cedar.cjs.template +13 -0
  898. package/src/utils/agent-core-constructs/files/terraform/core/agent-core/runtime.tf.template +151 -13
  899. package/src/utils/agent-core-constructs/files/terraform/core/agentcore-gateway/gateway.tf.template +14 -0
  900. package/src/utils/api-constructs/api-constructs.d.ts +2 -2
  901. package/src/utils/api-constructs/api-constructs.js +50 -31
  902. package/src/utils/api-constructs/api-constructs.js.map +1 -1
  903. package/src/utils/api-constructs/files/cdk/app/apis/http/__apiNameKebabCase__.ts.template +20 -15
  904. package/src/utils/api-constructs/files/cdk/app/apis/rest/__apiNameKebabCase__.ts.template +24 -16
  905. package/src/utils/api-constructs/files/cdk/core/api/http/http-api.ts.template +26 -9
  906. package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account/index.js.template +70 -0
  907. package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account.ts.template +82 -0
  908. package/src/utils/api-constructs/files/cdk/core/api/rest/rest-api.ts.template +54 -18
  909. package/src/utils/api-constructs/files/cdk/core/api/trpc/trpc-utils.ts.template +1 -1
  910. package/src/utils/api-constructs/files/cdk/core/api/utils/utils.ts.template +61 -7
  911. package/src/utils/api-constructs/files/terraform/app/apis/http/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +101 -12
  912. package/src/utils/api-constructs/files/terraform/app/apis/rest/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +194 -8
  913. package/src/utils/api-constructs/files/terraform/core/api/http/http-api/http-api.tf.template +1 -1
  914. package/src/utils/api-constructs/files/terraform/core/api/rest/api-gateway-account/api-gateway-account.tf.template +83 -0
  915. package/src/utils/api-constructs/files/terraform/core/api/rest/rest-api/rest-api.tf.template +5 -11
  916. package/src/utils/api-constructs/open-api-metadata.d.ts +2 -2
  917. package/src/utils/api-constructs/open-api-metadata.js +22 -22
  918. package/src/utils/api-constructs/open-api-metadata.js.map +1 -1
  919. package/src/utils/ast/website.d.ts +5 -1
  920. package/src/utils/ast/website.js +18 -20
  921. package/src/utils/ast/website.js.map +1 -1
  922. package/src/utils/ast.d.ts +5 -1
  923. package/src/utils/ast.js +107 -89
  924. package/src/utils/ast.js.map +1 -1
  925. package/src/utils/base-tsconfig.d.ts +30 -0
  926. package/src/utils/base-tsconfig.js +32 -0
  927. package/src/utils/base-tsconfig.js.map +1 -0
  928. package/src/utils/bundle/bundle.d.ts +1 -1
  929. package/src/utils/bundle/bundle.js +51 -47
  930. package/src/utils/bundle/bundle.js.map +1 -1
  931. package/src/utils/commands.d.ts +15 -5
  932. package/src/utils/commands.js +87 -28
  933. package/src/utils/commands.js.map +1 -1
  934. package/src/utils/config/index.d.ts +21 -5
  935. package/src/utils/config/index.js +5 -4
  936. package/src/utils/config/index.js.map +1 -1
  937. package/src/utils/config/utils.d.ts +5 -4
  938. package/src/utils/config/utils.js +50 -59
  939. package/src/utils/config/utils.js.map +1 -1
  940. package/src/utils/connection/open-api/files/components/__apiNameClassName__Provider.tsx.template +1 -1
  941. package/src/utils/connection/open-api/react.d.ts +6 -6
  942. package/src/utils/connection/open-api/react.js +82 -77
  943. package/src/utils/connection/open-api/react.js.map +1 -1
  944. package/src/utils/containers.d.ts +1 -1
  945. package/src/utils/containers.js +22 -23
  946. package/src/utils/containers.js.map +1 -1
  947. package/src/utils/dcr-proxy-constructs/dcr-proxy-constructs.d.ts +38 -0
  948. package/src/utils/dcr-proxy-constructs/dcr-proxy-constructs.js +93 -0
  949. package/src/utils/dcr-proxy-constructs/dcr-proxy-constructs.js.map +1 -0
  950. package/src/utils/dcr-proxy-constructs/files/cdk/app/dcr-proxies/__nameKebabCase__/__nameKebabCase__.ts.template +227 -0
  951. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/authorization-server-metadata.ts.template +39 -0
  952. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/authorize.ts.template +26 -0
  953. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/mcp-proxy.ts.template +89 -0
  954. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/protected-resource-metadata.ts.template +13 -0
  955. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/register.ts.template +70 -0
  956. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/token.ts.template +75 -0
  957. package/src/utils/dcr-proxy-constructs/files/terraform/app/dcr-proxies/__nameKebabCase__/__nameKebabCase__.tf.template +410 -0
  958. package/src/utils/dependencies.d.ts +18 -0
  959. package/src/utils/dependencies.js +206 -0
  960. package/src/utils/dependencies.js.map +1 -0
  961. package/src/utils/docker.d.ts +53 -0
  962. package/src/utils/docker.js +92 -0
  963. package/src/utils/docker.js.map +1 -0
  964. package/src/utils/dynamodb-constructs/dynamodb-constructs.d.ts +3 -3
  965. package/src/utils/dynamodb-constructs/dynamodb-constructs.js +39 -41
  966. package/src/utils/dynamodb-constructs/dynamodb-constructs.js.map +1 -1
  967. package/src/utils/dynamodb-constructs/files/cdk/app/dynamodb/__nameKebabCase__.ts.template +18 -5
  968. package/src/utils/dynamodb-constructs/files/cdk/core/dynamodb.ts.template +1 -1
  969. package/src/utils/dynamodb-constructs/files/terraform/app/dynamodb/__nameKebabCase__/__nameKebabCase__.tf.template +24 -17
  970. package/src/utils/dynamodb-constructs/files/terraform/core/dynamodb/dynamodb.tf.template +1 -1
  971. package/src/utils/files/common/constructs/src/core/cloudfront.ts.template +14 -0
  972. package/src/utils/files/common/constructs/src/core/index.ts.template +5 -4
  973. package/src/utils/files/common/constructs/src/index.ts.template +2 -2
  974. package/src/utils/files/common/infra-config/src/index.ts.template +3 -3
  975. package/src/utils/files/common/infra-config/src/resolve-stage.ts.template +2 -2
  976. package/src/utils/files/common/infra-config/src/stages.config.ts.template +1 -1
  977. package/src/{ts/dynamodb/files/scripts → utils/files/common/scripts/src/dynamodb}/create-local-table.ts.template +65 -31
  978. package/src/utils/files/common/scripts/src/dynamodb/pull-image.ts.template +13 -0
  979. package/src/utils/files/common/scripts/src/dynamodb/start-container.ts.template +104 -0
  980. package/src/utils/files/common/scripts/src/infra/infra-deploy.ts.template +2 -0
  981. package/src/utils/files/common/scripts/src/infra/infra-destroy.ts.template +2 -0
  982. package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/cdk-command.ts.template +6 -3
  983. package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/run.ts.template +3 -3
  984. package/src/utils/files/common/scripts/src/rdb/mysql/wait-for-mysql-db.ts.template +32 -0
  985. package/src/utils/files/common/scripts/src/rdb/postgres/wait-for-postgres-db.ts.template +32 -0
  986. package/src/utils/files/common/scripts/src/rdb/shared/pull-image.ts.template +16 -0
  987. package/src/utils/files/common/scripts/src/rdb/shared/start-container.ts.template +115 -0
  988. package/src/utils/files/common/shadcn/readme/README.md.template +3 -3
  989. package/src/utils/files/common/shadcn/src/index.ts.template +2 -2
  990. package/src/utils/files/shadcn/components.json.template +1 -1
  991. package/src/utils/files/terraform/src/core/asset-bucket/asset-bucket.tf.template +63 -72
  992. package/src/utils/files/terraform/src/core/runtime-config/appconfig/appconfig.tf.template +1 -1
  993. package/src/utils/files/terraform/src/core/runtime-config/appconfig-deployment/appconfig-deployment.tf.template +12 -6
  994. package/src/utils/files/terraform/src/core/runtime-config/entry/entry.tf.template +1 -1
  995. package/src/utils/files/terraform/src/core/runtime-config/read/read.tf.template +9 -4
  996. package/src/utils/files/website/hooks/sigv4/useSigV4.tsx.template +1 -1
  997. package/src/utils/format.d.ts +70 -2
  998. package/src/utils/format.js +326 -108
  999. package/src/utils/format.js.map +1 -1
  1000. package/src/utils/fs.d.ts +1 -1
  1001. package/src/utils/fs.js +14 -13
  1002. package/src/utils/fs.js.map +1 -1
  1003. package/src/utils/function-constructs/files/cdk/app/lambda-functions/__nameKebabCase__.ts.template +1 -1
  1004. package/src/utils/function-constructs/files/terraform/app/lambda-functions/__nameKebabCase__/__nameKebabCase__.tf.template +2 -2
  1005. package/src/utils/function-constructs/function-constructs.d.ts +2 -2
  1006. package/src/utils/function-constructs/function-constructs.js +22 -25
  1007. package/src/utils/function-constructs/function-constructs.js.map +1 -1
  1008. package/src/utils/generators.d.ts +4 -0
  1009. package/src/utils/generators.js +18 -20
  1010. package/src/utils/generators.js.map +1 -1
  1011. package/src/utils/git.d.ts +1 -1
  1012. package/src/utils/git.js +19 -34
  1013. package/src/utils/git.js.map +1 -1
  1014. package/src/utils/iac-providers.js +5 -5
  1015. package/src/utils/iac-providers.js.map +1 -1
  1016. package/src/utils/iac.d.ts +1 -1
  1017. package/src/utils/iac.js +12 -14
  1018. package/src/utils/iac.js.map +1 -1
  1019. package/src/utils/identity-constructs/files/cdk/core/user-identity.ts.template +131 -24
  1020. package/src/utils/identity-constructs/files/terraform/core/user-identity/add-callback-url/add-callback-url.tf.template +28 -9
  1021. package/src/utils/identity-constructs/files/terraform/core/user-identity/identity/identity.tf.template +106 -6
  1022. package/src/utils/identity-constructs/files/terraform/core/user-identity/main.tf.template +7 -0
  1023. package/src/utils/identity-constructs/identity-constructs.d.ts +2 -2
  1024. package/src/utils/identity-constructs/identity-constructs.js +42 -31
  1025. package/src/utils/identity-constructs/identity-constructs.js.map +1 -1
  1026. package/src/utils/init.d.ts +59 -0
  1027. package/src/utils/init.js +282 -0
  1028. package/src/utils/init.js.map +1 -0
  1029. package/src/utils/install.d.ts +32 -0
  1030. package/src/utils/install.js +58 -0
  1031. package/src/utils/install.js.map +1 -0
  1032. package/src/utils/js.d.ts +4 -0
  1033. package/src/utils/js.js +27 -20
  1034. package/src/utils/js.js.map +1 -1
  1035. package/src/utils/mcp.d.ts +10 -1
  1036. package/src/utils/mcp.js +42 -41
  1037. package/src/utils/mcp.js.map +1 -1
  1038. package/src/utils/metrics.d.ts +9 -3
  1039. package/src/utils/metrics.js +61 -46
  1040. package/src/utils/metrics.js.map +1 -1
  1041. package/src/utils/migration-versions.d.ts +95 -0
  1042. package/src/utils/migration-versions.js +128 -0
  1043. package/src/utils/migration-versions.js.map +1 -0
  1044. package/src/utils/mock-project-graph.js +8 -12
  1045. package/src/utils/mock-project-graph.js.map +1 -1
  1046. package/src/utils/module-format.d.ts +25 -0
  1047. package/src/utils/module-format.js +45 -0
  1048. package/src/utils/module-format.js.map +1 -0
  1049. package/src/utils/names.d.ts +22 -0
  1050. package/src/utils/names.js +44 -48
  1051. package/src/utils/names.js.map +1 -1
  1052. package/src/utils/npm-scope.d.ts +1 -5
  1053. package/src/utils/npm-scope.js +7 -20
  1054. package/src/utils/npm-scope.js.map +1 -1
  1055. package/src/utils/nx.d.ts +57 -4
  1056. package/src/utils/nx.js +192 -75
  1057. package/src/utils/nx.js.map +1 -1
  1058. package/src/utils/nxlv-python.d.ts +1 -1
  1059. package/src/utils/nxlv-python.js +27 -15
  1060. package/src/utils/nxlv-python.js.map +1 -1
  1061. package/src/utils/object.js +5 -11
  1062. package/src/utils/object.js.map +1 -1
  1063. package/src/utils/paths.d.ts +1 -1
  1064. package/src/utils/paths.js +11 -15
  1065. package/src/utils/paths.js.map +1 -1
  1066. package/src/utils/pkg-manager.js +4 -9
  1067. package/src/utils/pkg-manager.js.map +1 -1
  1068. package/src/utils/pnpm-workspace.d.ts +1 -12
  1069. package/src/utils/pnpm-workspace.js +16 -43
  1070. package/src/utils/pnpm-workspace.js.map +1 -1
  1071. package/src/utils/port.d.ts +29 -7
  1072. package/src/utils/port.js +67 -28
  1073. package/src/utils/port.js.map +1 -1
  1074. package/src/utils/project-package-json.d.ts +39 -0
  1075. package/src/utils/project-package-json.js +119 -0
  1076. package/src/utils/project-package-json.js.map +1 -0
  1077. package/src/utils/py.d.ts +16 -3
  1078. package/src/utils/py.js +72 -47
  1079. package/src/utils/py.js.map +1 -1
  1080. package/src/utils/rdb-constructs/files/cdk/app/dbs/__nameKebabCase__.ts.template +72 -18
  1081. package/src/utils/rdb-constructs/files/cdk/core/rdb/aurora.ts.template +112 -88
  1082. package/src/utils/rdb-constructs/files/terraform/app/dbs/__nameKebabCase__/__nameKebabCase__.tf.template +127 -53
  1083. package/src/utils/rdb-constructs/files/terraform/core/rdb/aurora/aurora.tf.template +60 -53
  1084. package/src/utils/rdb-constructs/rdb-constructs.d.ts +15 -4
  1085. package/src/utils/rdb-constructs/rdb-constructs.js +38 -41
  1086. package/src/utils/rdb-constructs/rdb-constructs.js.map +1 -1
  1087. package/src/utils/ruff.d.ts +59 -0
  1088. package/src/utils/ruff.js +140 -0
  1089. package/src/utils/ruff.js.map +1 -0
  1090. package/src/utils/shared-constructs-constants.d.ts +1 -0
  1091. package/src/utils/shared-constructs-constants.js +16 -15
  1092. package/src/utils/shared-constructs-constants.js.map +1 -1
  1093. package/src/utils/shared-constructs.d.ts +2 -2
  1094. package/src/utils/shared-constructs.js +61 -67
  1095. package/src/utils/shared-constructs.js.map +1 -1
  1096. package/src/utils/shared-dynamodb-scripts.d.ts +11 -0
  1097. package/src/utils/shared-dynamodb-scripts.js +27 -0
  1098. package/src/utils/shared-dynamodb-scripts.js.map +1 -0
  1099. package/src/utils/shared-infra-config.d.ts +1 -1
  1100. package/src/utils/shared-infra-config.js +31 -30
  1101. package/src/utils/shared-infra-config.js.map +1 -1
  1102. package/src/utils/shared-infra-scripts.d.ts +11 -0
  1103. package/src/utils/shared-infra-scripts.js +43 -0
  1104. package/src/utils/shared-infra-scripts.js.map +1 -0
  1105. package/src/utils/shared-rdb-scripts.d.ts +16 -0
  1106. package/src/utils/shared-rdb-scripts.js +45 -0
  1107. package/src/utils/shared-rdb-scripts.js.map +1 -0
  1108. package/src/utils/shared-scripts.d.ts +2 -5
  1109. package/src/utils/shared-scripts.js +12 -38
  1110. package/src/utils/shared-scripts.js.map +1 -1
  1111. package/src/utils/shared-shadcn.d.ts +1 -1
  1112. package/src/utils/shared-shadcn.js +69 -72
  1113. package/src/utils/shared-shadcn.js.map +1 -1
  1114. package/src/utils/test-git.d.ts +39 -0
  1115. package/src/utils/test-git.js +117 -0
  1116. package/src/utils/test-git.js.map +1 -0
  1117. package/src/utils/test.d.ts +15 -1
  1118. package/src/utils/test.js +46 -23
  1119. package/src/utils/test.js.map +1 -1
  1120. package/src/utils/toml.d.ts +6 -1
  1121. package/src/utils/toml.js +20 -14
  1122. package/src/utils/toml.js.map +1 -1
  1123. package/src/utils/versions.d.ts +161 -99
  1124. package/src/utils/versions.js +177 -116
  1125. package/src/utils/versions.js.map +1 -1
  1126. package/src/utils/website-constructs/files/cdk/app/static-websites/__websiteNameKebabCase__.ts.template +2 -2
  1127. package/src/utils/website-constructs/files/cdk/core/static-website.ts.template +203 -41
  1128. package/src/utils/website-constructs/files/terraform/app/static-websites/__websiteNameKebabCase__/__websiteNameKebabCase__.tf.template +1 -1
  1129. package/src/utils/website-constructs/files/terraform/core/static-website/static-website.tf.template +145 -93
  1130. package/src/utils/website-constructs/website-constructs.d.ts +2 -2
  1131. package/src/utils/website-constructs/website-constructs.js +38 -30
  1132. package/src/utils/website-constructs/website-constructs.js.map +1 -1
  1133. package/bin/aws-nx-mcp.d.ts +0 -2
  1134. package/bin/aws-nx-mcp.js +0 -17
  1135. package/bin/aws-nx-mcp.js.map +0 -1
  1136. package/sdk/connection.d.ts +0 -6
  1137. package/sdk/connection.js +0 -10
  1138. package/sdk/connection.js.map +0 -1
  1139. package/sdk/license.d.ts +0 -8
  1140. package/sdk/license.js +0 -13
  1141. package/sdk/license.js.map +0 -1
  1142. package/sdk/open-api.d.ts +0 -10
  1143. package/sdk/open-api.js +0 -15
  1144. package/sdk/open-api.js.map +0 -1
  1145. package/sdk/py.d.ts +0 -14
  1146. package/sdk/py.js +0 -18
  1147. package/sdk/py.js.map +0 -1
  1148. package/sdk/terraform.d.ts +0 -6
  1149. package/sdk/terraform.js +0 -11
  1150. package/sdk/terraform.js.map +0 -1
  1151. package/sdk/ts.d.ts +0 -29
  1152. package/sdk/ts.js +0 -47
  1153. package/sdk/ts.js.map +0 -1
  1154. package/sdk/utils/ast.js +0 -12
  1155. package/sdk/utils/ast.js.map +0 -1
  1156. package/sdk/utils/format.js +0 -10
  1157. package/sdk/utils/format.js.map +0 -1
  1158. package/sdk/utils/test.js +0 -10
  1159. package/sdk/utils/test.js.map +0 -1
  1160. package/src/connection/agent-serve-local.js +0 -48
  1161. package/src/connection/agent-serve-local.js.map +0 -1
  1162. package/src/connection/serve-local.d.ts +0 -15
  1163. package/src/connection/serve-local.js +0 -41
  1164. package/src/connection/serve-local.js.map +0 -1
  1165. package/src/py/agent/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client.py.template +0 -22
  1166. package/src/py/agent/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client.py.template +0 -22
  1167. package/src/py/agent/react-connection/serve-local.js +0 -30
  1168. package/src/py/agent/react-connection/serve-local.js.map +0 -1
  1169. package/src/py/agent/scripts/http/chat.ts.template +0 -38
  1170. package/src/ts/agent/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client.ts.template +0 -19
  1171. package/src/ts/agent/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client.ts.template +0 -19
  1172. package/src/ts/agent/react-connection/serve-local.d.ts +0 -13
  1173. package/src/ts/agent/react-connection/serve-local.js +0 -19
  1174. package/src/ts/agent/react-connection/serve-local.js.map +0 -1
  1175. package/src/ts/agent/scripts/http/chat.ts.template +0 -35
  1176. package/src/ts/dynamodb/files/scripts/pull-image.ts.template +0 -15
  1177. package/src/ts/dynamodb/files/scripts/start-container.ts.template +0 -81
  1178. package/src/ts/dynamodb/files/src/constants.ts.template +0 -9
  1179. package/src/ts/dynamodb/files/src/gsi.ts.template +0 -14
  1180. package/src/ts/lib/eslint.d.ts +0 -14
  1181. package/src/ts/lib/eslint.js +0 -90
  1182. package/src/ts/lib/eslint.js.map +0 -1
  1183. package/src/ts/lib/grit/eslint-dependency-checks-warn.grit +0 -1
  1184. package/src/ts/rdb/files/scripts/pull-image.ts.template +0 -15
  1185. package/src/ts/rdb/files/scripts/start-container.ts.template +0 -84
  1186. package/src/ts/rdb/files/scripts/wait-for-db.ts.template +0 -55
  1187. package/src/ts/rdb/files/src/constants.ts.template +0 -8
  1188. package/src/utils/agent-connection/files/core-a2a/agentcore-a2a-client.ts.template +0 -123
  1189. package/src/utils/agent-connection/files/core-mcp/agentcore-mcp-client.ts.template +0 -128
  1190. package/src/utils/agent-connection/files/py-core-a2a/agentcore_a2a_client.py.template +0 -120
  1191. package/src/utils/agent-connection/files/py-core-mcp/agentcore_mcp_client.py.template +0 -89
  1192. package/src/utils/files/common/scripts/src/infra-deploy.ts.template +0 -2
  1193. package/src/utils/files/common/scripts/src/infra-destroy.ts.template +0 -2
  1194. package/src/utils/files/terraform/scripts/reset-runtime-config.ts.template +0 -25
  1195. /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
  1196. /package/src/utils/files/common/scripts/src/{index.ts.template → infra/index.ts.template} +0 -0
  1197. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/credentials.ts.template +0 -0
  1198. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/stage-parser.ts.template +0 -0
@@ -1,27 +1,22 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addSharedConstructsOpenApiMetadataGenerateTarget = void 0;
4
1
  /**
5
2
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
6
3
  * SPDX-License-Identifier: Apache-2.0
7
- */
8
- const devkit_1 = require("@nx/devkit");
9
- const git_1 = require("../git");
10
- const nx_1 = require("../nx");
11
- const shared_constructs_constants_1 = require("../shared-constructs-constants");
4
+ */ import { joinPathFragments, updateJson } from "@nx/devkit";
5
+ import { updateGitIgnore } from "../git.js";
6
+ import { addDependencyToTargetIfNotPresent } from "../nx.js";
7
+ import { PACKAGES_DIR, SHARED_CONSTRUCTS_DIR } from "../shared-constructs-constants.js";
12
8
  /**
13
9
  * Adds a generate:<api-name>-metadata target to shared constructs (CDK only)
14
10
  * This allows for API CDK constructs to have type-safety for integrations based on an OpenAPI Specification
15
- */
16
- const addSharedConstructsOpenApiMetadataGenerateTarget = (tree, { iac, apiNameKebabCase, specPath, specBuildTargetName, }) => {
11
+ */ export const addSharedConstructsOpenApiMetadataGenerateTarget = (tree, { iac, apiNameKebabCase, specPath, specBuildTargetName })=>{
17
12
  if (iac !== 'cdk') {
18
13
  // For Terraform, we do not support type-safe integration builders, rather only the single lambda
19
14
  // router pattern, and therefore do not need to add depenencies on metadata generation.
20
15
  return;
21
16
  }
22
- const generatedMetadataDir = (0, devkit_1.joinPathFragments)('generated', apiNameKebabCase);
23
- const generatedMetadataDirFromRoot = (0, devkit_1.joinPathFragments)((0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_CONSTRUCTS_DIR), 'src', generatedMetadataDir);
24
- (0, devkit_1.updateJson)(tree, (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_CONSTRUCTS_DIR, 'project.json'), (config) => {
17
+ const generatedMetadataDir = joinPathFragments('generated', apiNameKebabCase);
18
+ const generatedMetadataDirFromRoot = joinPathFragments(joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR), 'src', generatedMetadataDir);
19
+ updateJson(tree, joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR, 'project.json'), (config)=>{
25
20
  if (!config.targets) {
26
21
  config.targets = {};
27
22
  }
@@ -37,26 +32,31 @@ const addSharedConstructsOpenApiMetadataGenerateTarget = (tree, { iac, apiNameKe
37
32
  executor: 'nx:run-commands',
38
33
  inputs: [
39
34
  {
40
- dependentTasksOutputFiles: '**/*.json',
41
- },
35
+ dependentTasksOutputFiles: '**/*.json'
36
+ }
42
37
  ],
43
38
  outputs: [
44
- (0, devkit_1.joinPathFragments)('{workspaceRoot}', generatedMetadataDirFromRoot),
39
+ joinPathFragments('{workspaceRoot}', generatedMetadataDirFromRoot)
45
40
  ],
46
41
  options: {
47
42
  commands: [
48
- `nx g @aws/nx-plugin:open-api#ts-metadata --openApiSpecPath="${specPath}" --outputPath="${generatedMetadataDirFromRoot}" --no-interactive`,
49
- ],
43
+ `nx g @aws/nx-plugin:open-api#ts-metadata --openApiSpecPath="${specPath}" --outputPath="${generatedMetadataDirFromRoot}" --no-interactive`
44
+ ]
50
45
  },
51
- dependsOn: [specBuildTargetName],
46
+ dependsOn: [
47
+ specBuildTargetName
48
+ ]
52
49
  };
53
50
  }
54
- (0, nx_1.addDependencyToTargetIfNotPresent)(config, 'compile', metadataTargetName);
51
+ addDependencyToTargetIfNotPresent(config, 'compile', metadataTargetName);
55
52
  return config;
56
53
  });
57
54
  // Ignore the generated metadata by default
58
55
  // Users can safely remove the entry from the .gitignore if they prefer to check it in
59
- (0, git_1.updateGitIgnore)(tree, (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_CONSTRUCTS_DIR), (patterns) => [...patterns, (0, devkit_1.joinPathFragments)('src', generatedMetadataDir)]);
56
+ updateGitIgnore(tree, joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR), (patterns)=>[
57
+ ...patterns,
58
+ joinPathFragments('src', generatedMetadataDir)
59
+ ]);
60
60
  };
61
- exports.addSharedConstructsOpenApiMetadataGenerateTarget = addSharedConstructsOpenApiMetadataGenerateTarget;
61
+
62
62
  //# sourceMappingURL=open-api-metadata.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"open-api-metadata.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/utils/api-constructs/open-api-metadata.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAKoB;AAEpB,gCAAyC;AACzC,8BAA0D;AAC1D,gFAGwC;AASxC;;;GAGG;AACI,MAAM,gDAAgD,GAAG,CAC9D,IAAU,EACV,EACE,GAAG,EACH,gBAAgB,EAChB,QAAQ,EACR,mBAAmB,GACqB,EAC1C,EAAE;IACF,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;QAClB,iGAAiG;QACjG,uFAAuF;QACvF,OAAO;IACT,CAAC;IAED,MAAM,oBAAoB,GAAG,IAAA,0BAAiB,EAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;IAC9E,MAAM,4BAA4B,GAAG,IAAA,0BAAiB,EACpD,IAAA,0BAAiB,EAAC,0CAAY,EAAE,mDAAqB,CAAC,EACtD,KAAK,EACL,oBAAoB,CACrB,CAAC;IAEF,IAAA,mBAAU,EACR,IAAI,EACJ,IAAA,0BAAiB,EAAC,0CAAY,EAAE,mDAAqB,EAAE,cAAc,CAAC,EACtE,CAAC,MAA4B,EAAE,EAAE;QAC/B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC1B,MAAM,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;QAC5B,CAAC;QACD,wFAAwF;QACxF,0CAA0C;QAC1C,MAAM,kBAAkB,GAAG,YAAY,gBAAgB,WAAW,CAAC;QACnE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACxC,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG;gBACnC,KAAK,EAAE,IAAI;gBACX,QAAQ,EAAE,iBAAiB;gBAC3B,MAAM,EAAE;oBACN;wBACE,yBAAyB,EAAE,WAAW;qBACvC;iBACF;gBACD,OAAO,EAAE;oBACP,IAAA,0BAAiB,EAAC,iBAAiB,EAAE,4BAA4B,CAAC;iBACnE;gBACD,OAAO,EAAE;oBACP,QAAQ,EAAE;wBACR,+DAA+D,QAAQ,mBAAmB,4BAA4B,oBAAoB;qBAC3I;iBACF;gBACD,SAAS,EAAE,CAAC,mBAAmB,CAAC;aACjC,CAAC;QACJ,CAAC;QACD,IAAA,sCAAiC,EAAC,MAAM,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;QACzE,OAAO,MAAM,CAAC;IAChB,CAAC,CACF,CAAC;IAEF,2CAA2C;IAC3C,sFAAsF;IACtF,IAAA,qBAAe,EACb,IAAI,EACJ,IAAA,0BAAiB,EAAC,0CAAY,EAAE,mDAAqB,CAAC,EACtD,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,GAAG,QAAQ,EAAE,IAAA,0BAAiB,EAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAC5E,CAAC;AACJ,CAAC,CAAC;AAnEW,QAAA,gDAAgD,oDAmE3D"}
1
+ {"version":3,"sources":["../../../../../../packages/nx-plugin/src/utils/api-constructs/open-api-metadata.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport {\n joinPathFragments,\n type ProjectConfiguration,\n type Tree,\n updateJson,\n} from '@nx/devkit';\nimport { updateGitIgnore } from '../git';\nimport type { Iac } from '../iac';\nimport { addDependencyToTargetIfNotPresent } from '../nx';\nimport {\n PACKAGES_DIR,\n SHARED_CONSTRUCTS_DIR,\n} from '../shared-constructs-constants';\n\nexport interface AddOpenApiMetadataGenerateTargetOptions {\n iac: Iac;\n apiNameKebabCase: string;\n specPath: string;\n specBuildTargetName: string;\n}\n\n/**\n * Adds a generate:<api-name>-metadata target to shared constructs (CDK only)\n * This allows for API CDK constructs to have type-safety for integrations based on an OpenAPI Specification\n */\nexport const addSharedConstructsOpenApiMetadataGenerateTarget = (\n tree: Tree,\n {\n iac,\n apiNameKebabCase,\n specPath,\n specBuildTargetName,\n }: AddOpenApiMetadataGenerateTargetOptions,\n) => {\n if (iac !== 'cdk') {\n // For Terraform, we do not support type-safe integration builders, rather only the single lambda\n // router pattern, and therefore do not need to add depenencies on metadata generation.\n return;\n }\n\n const generatedMetadataDir = joinPathFragments('generated', apiNameKebabCase);\n const generatedMetadataDirFromRoot = joinPathFragments(\n joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR),\n 'src',\n generatedMetadataDir,\n );\n\n updateJson(\n tree,\n joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR, 'project.json'),\n (config: ProjectConfiguration) => {\n if (!config.targets) {\n config.targets = {};\n }\n if (!config.targets.build) {\n config.targets.build = {};\n }\n // If not already defined, add a target to generate metadata from the OpenAPI spec, used\n // for providing a type-safe CDK construct\n const metadataTargetName = `generate:${apiNameKebabCase}-metadata`;\n if (!config.targets[metadataTargetName]) {\n config.targets[metadataTargetName] = {\n cache: true,\n executor: 'nx:run-commands',\n inputs: [\n {\n dependentTasksOutputFiles: '**/*.json',\n },\n ],\n outputs: [\n joinPathFragments('{workspaceRoot}', generatedMetadataDirFromRoot),\n ],\n options: {\n commands: [\n `nx g @aws/nx-plugin:open-api#ts-metadata --openApiSpecPath=\"${specPath}\" --outputPath=\"${generatedMetadataDirFromRoot}\" --no-interactive`,\n ],\n },\n dependsOn: [specBuildTargetName],\n };\n }\n addDependencyToTargetIfNotPresent(config, 'compile', metadataTargetName);\n return config;\n },\n );\n\n // Ignore the generated metadata by default\n // Users can safely remove the entry from the .gitignore if they prefer to check it in\n updateGitIgnore(\n tree,\n joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR),\n (patterns) => [...patterns, joinPathFragments('src', generatedMetadataDir)],\n );\n};\n"],"names":["joinPathFragments","updateJson","updateGitIgnore","addDependencyToTargetIfNotPresent","PACKAGES_DIR","SHARED_CONSTRUCTS_DIR","addSharedConstructsOpenApiMetadataGenerateTarget","tree","iac","apiNameKebabCase","specPath","specBuildTargetName","generatedMetadataDir","generatedMetadataDirFromRoot","config","targets","build","metadataTargetName","cache","executor","inputs","dependentTasksOutputFiles","outputs","options","commands","dependsOn","patterns"],"mappings":"AAAA;;;CAGC,GACD,SACEA,iBAAiB,EAGjBC,UAAU,QACL,aAAa;AACpB,SAASC,eAAe,QAAQ,YAAS;AAEzC,SAASC,iCAAiC,QAAQ,WAAQ;AAC1D,SACEC,YAAY,EACZC,qBAAqB,QAChB,oCAAiC;AASxC;;;CAGC,GACD,OAAO,MAAMC,mDAAmD,CAC9DC,MACA,EACEC,GAAG,EACHC,gBAAgB,EAChBC,QAAQ,EACRC,mBAAmB,EACqB;IAE1C,IAAIH,QAAQ,OAAO;QACjB,iGAAiG;QACjG,uFAAuF;QACvF;IACF;IAEA,MAAMI,uBAAuBZ,kBAAkB,aAAaS;IAC5D,MAAMI,+BAA+Bb,kBACnCA,kBAAkBI,cAAcC,wBAChC,OACAO;IAGFX,WACEM,MACAP,kBAAkBI,cAAcC,uBAAuB,iBACvD,CAACS;QACC,IAAI,CAACA,OAAOC,OAAO,EAAE;YACnBD,OAAOC,OAAO,GAAG,CAAC;QACpB;QACA,IAAI,CAACD,OAAOC,OAAO,CAACC,KAAK,EAAE;YACzBF,OAAOC,OAAO,CAACC,KAAK,GAAG,CAAC;QAC1B;QACA,wFAAwF;QACxF,0CAA0C;QAC1C,MAAMC,qBAAqB,CAAC,SAAS,EAAER,iBAAiB,SAAS,CAAC;QAClE,IAAI,CAACK,OAAOC,OAAO,CAACE,mBAAmB,EAAE;YACvCH,OAAOC,OAAO,CAACE,mBAAmB,GAAG;gBACnCC,OAAO;gBACPC,UAAU;gBACVC,QAAQ;oBACN;wBACEC,2BAA2B;oBAC7B;iBACD;gBACDC,SAAS;oBACPtB,kBAAkB,mBAAmBa;iBACtC;gBACDU,SAAS;oBACPC,UAAU;wBACR,CAAC,4DAA4D,EAAEd,SAAS,gBAAgB,EAAEG,6BAA6B,kBAAkB,CAAC;qBAC3I;gBACH;gBACAY,WAAW;oBAACd;iBAAoB;YAClC;QACF;QACAR,kCAAkCW,QAAQ,WAAWG;QACrD,OAAOH;IACT;IAGF,2CAA2C;IAC3C,sFAAsF;IACtFZ,gBACEK,MACAP,kBAAkBI,cAAcC,wBAChC,CAACqB,WAAa;eAAIA;YAAU1B,kBAAkB,OAAOY;SAAsB;AAE/E,EAAE"}
@@ -1,4 +1,8 @@
1
- import { Tree } from '@nx/devkit';
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import type { Tree } from '@nx/devkit';
2
6
  export interface AddHookResultToRouterProviderContextProps {
3
7
  hook: string;
4
8
  module: string;
@@ -1,27 +1,25 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addHookResultToRouterProviderContext = void 0;
4
1
  /**
5
2
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
6
3
  * SPDX-License-Identifier: Apache-2.0
7
- */
8
- const ast_1 = require("../ast");
9
- const addHookResultToRouterProviderContext = async (tree, mainTsxPath, { hook, module, contextProp }) => {
4
+ */ import { addDestructuredImport, applyGritQL, matchGritQL } from "../ast.js";
5
+ export const addHookResultToRouterProviderContext = async (tree, mainTsxPath, { hook, module, contextProp })=>{
10
6
  // All 4 patterns must exist for this transform to apply
11
7
  const checks = await Promise.all([
12
- (0, ast_1.matchGritQL)(tree, mainTsxPath, '`RouterProviderContext`'),
13
- (0, ast_1.matchGritQL)(tree, mainTsxPath, '`createRouter($_)`'),
14
- (0, ast_1.matchGritQL)(tree, mainTsxPath, '`const App = $_`'),
15
- (0, ast_1.matchGritQL)(tree, mainTsxPath, '`<RouterProvider $_ />`'),
8
+ matchGritQL(tree, mainTsxPath, '`RouterProviderContext`'),
9
+ matchGritQL(tree, mainTsxPath, '`createRouter($_)`'),
10
+ matchGritQL(tree, mainTsxPath, '`const App = $_`'),
11
+ matchGritQL(tree, mainTsxPath, '`<RouterProvider $_ />`')
16
12
  ]);
17
- if (checks.some((c) => !c)) {
13
+ if (checks.some((c)=>!c)) {
18
14
  return;
19
15
  }
20
- await (0, ast_1.addDestructuredImport)(tree, mainTsxPath, [hook], module);
16
+ await addDestructuredImport(tree, mainTsxPath, [
17
+ hook
18
+ ], module);
21
19
  // 1. Add property to RouterProviderContext type
22
20
  // 'some' checks direct members only (not nested), so a nested 'auth' won't block adding a top-level one.
23
21
  // Type members use ; as terminators, so += with leading \n handles separation.
24
- await (0, ast_1.applyGritQL)(tree, mainTsxPath, `or {
22
+ await applyGritQL(tree, mainTsxPath, `or {
25
23
  \`type RouterProviderContext = {}\` => \`type RouterProviderContext = {
26
24
  ${contextProp}?: ReturnType<typeof ${hook}>;
27
25
  }\`,
@@ -34,25 +32,25 @@ ${contextProp}?: ReturnType<typeof ${hook}>\`
34
32
  // 2. Add context property to createRouter config
35
33
  // 'some' checks direct properties of the createRouter argument object only.
36
34
  // Use += for multi-prop objects, => rewrite for single-prop.
37
- await (0, ast_1.applyGritQL)(tree, mainTsxPath, `\`createRouter({ $props })\` where {
35
+ await applyGritQL(tree, mainTsxPath, `\`createRouter({ $props })\` where {
38
36
  $props <: not some \`context: $_\`,
39
37
  $props += \`context: { ${contextProp}: undefined }\`
40
38
  }`);
41
39
  // If context already exists, add the new prop to it.
42
40
  // Handle empty context: {} via nested contains => rewrite, scoped to createRouter.
43
- await (0, ast_1.applyGritQL)(tree, mainTsxPath, `\`createRouter({ $props })\` where {
41
+ await applyGritQL(tree, mainTsxPath, `\`createRouter({ $props })\` where {
44
42
  $props <: contains \`context: {}\` => \`context: { ${contextProp}: undefined }\`
45
43
  }`);
46
44
  // Handle non-empty context via rewrite (the context object may be single-prop
47
45
  // from the first hook call, where += concatenates without comma)
48
- await (0, ast_1.applyGritQL)(tree, mainTsxPath, `\`context: { $cprops }\` => \`context: { $cprops, ${contextProp}: undefined }\` where {
46
+ await applyGritQL(tree, mainTsxPath, `\`context: { $cprops }\` => \`context: { $cprops, ${contextProp}: undefined }\` where {
49
47
  $cprops <: within \`createRouter($_)\`,
50
48
  $cprops <: not some \`${contextProp}: $_\`
51
49
  }`);
52
50
  // 3. Add hook call to App component body
53
51
  // Block body: 'some' checks direct statements.
54
52
  // Expression body: 'contains' to also prevent matching block bodies.
55
- await (0, ast_1.applyGritQL)(tree, mainTsxPath, `or {
53
+ await applyGritQL(tree, mainTsxPath, `or {
56
54
  \`const App = () => { $body }\` => raw\`const App = () => {
57
55
  const ${contextProp} = ${hook}();
58
56
  $body
@@ -64,15 +62,15 @@ ${contextProp}?: ReturnType<typeof ${hook}>\`
64
62
  }`);
65
63
  // 4. Add context prop to RouterProvider JSX element
66
64
  // 'some' checks direct JSX attributes only.
67
- await (0, ast_1.applyGritQL)(tree, mainTsxPath, `or {
65
+ await applyGritQL(tree, mainTsxPath, `or {
68
66
  \`<RouterProvider $attrs context={{}} />\` => \`<RouterProvider $attrs context={{ ${contextProp} }} />\`,
69
67
  \`<RouterProvider $attrs context={{ $cprops }} />\` => \`<RouterProvider $attrs context={{ $cprops, ${contextProp} }} />\` where {
70
68
  $cprops <: not some \`${contextProp}\`
71
69
  },
72
70
  \`<RouterProvider $attrs />\` => \`<RouterProvider $attrs context={{ ${contextProp} }} />\` where {
73
- $attrs <: not some \`context\`
71
+ $attrs <: not some \`context={$_}\`
74
72
  }
75
73
  }`);
76
74
  };
77
- exports.addHookResultToRouterProviderContext = addHookResultToRouterProviderContext;
75
+
78
76
  //# sourceMappingURL=website.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"website.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/utils/ast/website.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,gCAAyE;AASlE,MAAM,oCAAoC,GAAG,KAAK,EACvD,IAAU,EACV,WAAmB,EACnB,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAA6C,EACxE,EAAE;IACF,wDAAwD;IACxD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC/B,IAAA,iBAAW,EAAC,IAAI,EAAE,WAAW,EAAE,yBAAyB,CAAC;QACzD,IAAA,iBAAW,EAAC,IAAI,EAAE,WAAW,EAAE,oBAAoB,CAAC;QACpD,IAAA,iBAAW,EAAC,IAAI,EAAE,WAAW,EAAE,kBAAkB,CAAC;QAClD,IAAA,iBAAW,EAAC,IAAI,EAAE,WAAW,EAAE,yBAAyB,CAAC;KAC1D,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,OAAO;IACT,CAAC;IAED,MAAM,IAAA,2BAAqB,EAAC,IAAI,EAAE,WAAW,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAE/D,gDAAgD;IAChD,4GAA4G;IAC5G,kFAAkF;IAClF,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,WAAW,EACX;;IAEA,WAAW,wBAAwB,IAAI;;;iCAGV,WAAW;;EAE1C,WAAW,wBAAwB,IAAI;;MAEnC,CACH,CAAC;IAEF,iDAAiD;IACjD,+EAA+E;IAC/E,gEAAgE;IAChE,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,WAAW,EACX;;+BAE2B,WAAW;MACpC,CACH,CAAC;IAEF,qDAAqD;IACrD,mFAAmF;IACnF,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,WAAW,EACX;2DACuD,WAAW;MAChE,CACH,CAAC;IACF,8EAA8E;IAC9E,iEAAiE;IACjE,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,WAAW,EACX,qDAAqD,WAAW;;8BAEtC,WAAW;MACnC,CACH,CAAC;IAEF,yCAAyC;IACzC,kDAAkD;IAClD,wEAAwE;IACxE,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,WAAW,EACX;;UAEM,WAAW,MAAM,IAAI;;wCAES,WAAW,MAAM,IAAI;;UAEnD,WAAW,MAAM,IAAI;;sCAEO,IAAI;MACpC,CACH,CAAC;IAEF,oDAAoD;IACpD,+CAA+C;IAC/C,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,WAAW,EACX;0FACsF,WAAW;4GACO,WAAW;gCACvF,WAAW;;6EAEkC,WAAW;;;MAGlF,CACH,CAAC;AACJ,CAAC,CAAC;AAtGW,QAAA,oCAAoC,wCAsG/C"}
1
+ {"version":3,"sources":["../../../../../../packages/nx-plugin/src/utils/ast/website.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { Tree } from '@nx/devkit';\nimport { addDestructuredImport, applyGritQL, matchGritQL } from '../ast';\n\nexport interface AddHookResultToRouterProviderContextProps {\n hook: string; // eg useAuth\n module: string; // eg. react-oidc-context\n contextProp: string; // eg. auth\n}\n\nexport const addHookResultToRouterProviderContext = async (\n tree: Tree,\n mainTsxPath: string,\n { hook, module, contextProp }: AddHookResultToRouterProviderContextProps,\n) => {\n // All 4 patterns must exist for this transform to apply\n const checks = await Promise.all([\n matchGritQL(tree, mainTsxPath, '`RouterProviderContext`'),\n matchGritQL(tree, mainTsxPath, '`createRouter($_)`'),\n matchGritQL(tree, mainTsxPath, '`const App = $_`'),\n matchGritQL(tree, mainTsxPath, '`<RouterProvider $_ />`'),\n ]);\n\n if (checks.some((c) => !c)) {\n return;\n }\n\n await addDestructuredImport(tree, mainTsxPath, [hook], module);\n\n // 1. Add property to RouterProviderContext type\n // 'some' checks direct members only (not nested), so a nested 'auth' won't block adding a top-level one.\n // Type members use ; as terminators, so += with leading \\n handles separation.\n await applyGritQL(\n tree,\n mainTsxPath,\n `or {\n \\`type RouterProviderContext = {}\\` => \\`type RouterProviderContext = {\n ${contextProp}?: ReturnType<typeof ${hook}>;\n}\\`,\n \\`type RouterProviderContext = { $members }\\` where {\n $members <: not some \\`${contextProp}?: $_\\`,\n $members += \\`\n${contextProp}?: ReturnType<typeof ${hook}>\\`\n }\n }`,\n );\n\n // 2. Add context property to createRouter config\n // 'some' checks direct properties of the createRouter argument object only.\n // Use += for multi-prop objects, => rewrite for single-prop.\n await applyGritQL(\n tree,\n mainTsxPath,\n `\\`createRouter({ $props })\\` where {\n $props <: not some \\`context: $_\\`,\n $props += \\`context: { ${contextProp}: undefined }\\`\n }`,\n );\n\n // If context already exists, add the new prop to it.\n // Handle empty context: {} via nested contains => rewrite, scoped to createRouter.\n await applyGritQL(\n tree,\n mainTsxPath,\n `\\`createRouter({ $props })\\` where {\n $props <: contains \\`context: {}\\` => \\`context: { ${contextProp}: undefined }\\`\n }`,\n );\n // Handle non-empty context via rewrite (the context object may be single-prop\n // from the first hook call, where += concatenates without comma)\n await applyGritQL(\n tree,\n mainTsxPath,\n `\\`context: { $cprops }\\` => \\`context: { $cprops, ${contextProp}: undefined }\\` where {\n $cprops <: within \\`createRouter($_)\\`,\n $cprops <: not some \\`${contextProp}: $_\\`\n }`,\n );\n\n // 3. Add hook call to App component body\n // Block body: 'some' checks direct statements.\n // Expression body: 'contains' to also prevent matching block bodies.\n await applyGritQL(\n tree,\n mainTsxPath,\n `or {\n \\`const App = () => { $body }\\` => raw\\`const App = () => {\n const ${contextProp} = ${hook}();\n $body\n}\\` where { $body <: not some \\`const ${contextProp} = ${hook}()\\` },\n \\`const App = () => $expr\\` => raw\\`const App = () => {\n const ${contextProp} = ${hook}();\n return $expr;\n}\\` where { $expr <: not contains \\`${hook}()\\` }\n }`,\n );\n\n // 4. Add context prop to RouterProvider JSX element\n // 'some' checks direct JSX attributes only.\n await applyGritQL(\n tree,\n mainTsxPath,\n `or {\n \\`<RouterProvider $attrs context={{}} />\\` => \\`<RouterProvider $attrs context={{ ${contextProp} }} />\\`,\n \\`<RouterProvider $attrs context={{ $cprops }} />\\` => \\`<RouterProvider $attrs context={{ $cprops, ${contextProp} }} />\\` where {\n $cprops <: not some \\`${contextProp}\\`\n },\n \\`<RouterProvider $attrs />\\` => \\`<RouterProvider $attrs context={{ ${contextProp} }} />\\` where {\n $attrs <: not some \\`context={$_}\\`\n }\n }`,\n );\n};\n"],"names":["addDestructuredImport","applyGritQL","matchGritQL","addHookResultToRouterProviderContext","tree","mainTsxPath","hook","module","contextProp","checks","Promise","all","some","c"],"mappings":"AAAA;;;CAGC,GAGD,SAASA,qBAAqB,EAAEC,WAAW,EAAEC,WAAW,QAAQ,YAAS;AAQzE,OAAO,MAAMC,uCAAuC,OAClDC,MACAC,aACA,EAAEC,IAAI,EAAEC,MAAM,EAAEC,WAAW,EAA6C;IAExE,wDAAwD;IACxD,MAAMC,SAAS,MAAMC,QAAQC,GAAG,CAAC;QAC/BT,YAAYE,MAAMC,aAAa;QAC/BH,YAAYE,MAAMC,aAAa;QAC/BH,YAAYE,MAAMC,aAAa;QAC/BH,YAAYE,MAAMC,aAAa;KAChC;IAED,IAAII,OAAOG,IAAI,CAAC,CAACC,IAAM,CAACA,IAAI;QAC1B;IACF;IAEA,MAAMb,sBAAsBI,MAAMC,aAAa;QAACC;KAAK,EAAEC;IAEvD,gDAAgD;IAChD,4GAA4G;IAC5G,kFAAkF;IAClF,MAAMN,YACJG,MACAC,aACA,CAAC;;EAEH,EAAEG,YAAY,qBAAqB,EAAEF,KAAK;;;+BAGb,EAAEE,YAAY;;AAE7C,EAAEA,YAAY,qBAAqB,EAAEF,KAAK;;KAErC,CAAC;IAGJ,iDAAiD;IACjD,+EAA+E;IAC/E,gEAAgE;IAChE,MAAML,YACJG,MACAC,aACA,CAAC;;6BAEwB,EAAEG,YAAY;KACtC,CAAC;IAGJ,qDAAqD;IACrD,mFAAmF;IACnF,MAAMP,YACJG,MACAC,aACA,CAAC;yDACoD,EAAEG,YAAY;KAClE,CAAC;IAEJ,8EAA8E;IAC9E,iEAAiE;IACjE,MAAMP,YACJG,MACAC,aACA,CAAC,kDAAkD,EAAEG,YAAY;;4BAEzC,EAAEA,YAAY;KACrC,CAAC;IAGJ,yCAAyC;IACzC,kDAAkD;IAClD,wEAAwE;IACxE,MAAMP,YACJG,MACAC,aACA,CAAC;;QAEG,EAAEG,YAAY,GAAG,EAAEF,KAAK;;sCAEM,EAAEE,YAAY,GAAG,EAAEF,KAAK;;QAEtD,EAAEE,YAAY,GAAG,EAAEF,KAAK;;oCAEI,EAAEA,KAAK;KACtC,CAAC;IAGJ,oDAAoD;IACpD,+CAA+C;IAC/C,MAAML,YACJG,MACAC,aACA,CAAC;wFACmF,EAAEG,YAAY;0GACI,EAAEA,YAAY;8BAC1F,EAAEA,YAAY;;2EAE+B,EAAEA,YAAY;;;KAGpF,CAAC;AAEN,EAAE"}
@@ -2,7 +2,7 @@
2
2
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- import { Tree } from '@nx/devkit';
5
+ import type { Tree } from '@nx/devkit';
6
6
  export declare const addDestructuredImport: (tree: Tree, filePath: string, variableNames: string[], from: string) => Promise<void>;
7
7
  /**
8
8
  * Ensure a Python `from <module> import <name1>, <name2>, ...` statement
@@ -54,6 +54,10 @@ export declare const matchGritQL: (tree: Tree, filePath: string, pattern: string
54
54
  * matches. The file is not modified.
55
55
  */
56
56
  export declare const captureGritQL: (tree: Tree, filePath: string, pattern: string) => Promise<string | undefined>;
57
+ /**
58
+ * Return the text of every node matching the GritQL pattern, in document order.
59
+ */
60
+ export declare const captureAllGritQL: (tree: Tree, filePath: string, pattern: string) => Promise<string[]>;
57
61
  /**
58
62
  * A unique token that is a valid identifier, so it can stand in for an array
59
63
  * element or object property inside a GritQL rewrite.
package/src/utils/ast.js CHANGED
@@ -1,36 +1,49 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.insertViaGritQL = exports.GRIT_INSERT_PLACEHOLDER = exports.captureGritQL = exports.matchGritQL = exports.applyGritQL = exports.hasExportDeclaration = exports.addStarExport = exports.addSingleImport = exports.addPythonDestructuredImport = exports.addDestructuredImport = void 0;
4
- const tslib_1 = require("tslib");
5
- const gritql_1 = require("@getgrit/gritql");
6
- const path = tslib_1.__importStar(require("path"));
7
- const git_1 = require("./git");
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */ import { QueryBuilder } from "@getgrit/gritql";
5
+ import * as path from "path";
6
+ import { updateGitIgnore } from "./git.js";
7
+ import { isEsmWorkspace } from "./module-format.js";
8
8
  const GRIT_DIR = '.grit';
9
+ /**
10
+ * Normalize a relative module specifier for the workspace's module format.
11
+ * ESM (`nodenext`) requires an explicit `.js` extension on relative imports;
12
+ * CommonJS (`node16`) resolves them extensionless. Callers always pass the ESM
13
+ * form (with `.js`); this strips the extension for CommonJS workspaces.
14
+ */ const normalizeModuleSpecifier = (tree, from)=>{
15
+ if (isEsmWorkspace(tree)) {
16
+ return from;
17
+ }
18
+ const isRelative = from.startsWith('./') || from.startsWith('../');
19
+ return isRelative && from.endsWith('.js') ? from.slice(0, -'.js'.length) : from;
20
+ };
9
21
  // Pin the gritql native library's "global" stdlib directory to <workspace>/.grit so it doesn't try to write to /usr/local/.grit (or wherever node's grandparent resolves to).
10
- const ensureGritDir = (tree) => {
22
+ const ensureGritDir = (tree)=>{
11
23
  process.env.GRIT_GLOBAL_DIR ??= path.join(tree.root, GRIT_DIR);
12
- (0, git_1.updateGitIgnore)(tree, '.', (patterns) => [...patterns, GRIT_DIR]);
24
+ updateGitIgnore(tree, '.', (patterns)=>[
25
+ ...patterns,
26
+ GRIT_DIR
27
+ ]);
13
28
  };
14
- const assertFilePath = (tree, filePath) => {
29
+ const assertFilePath = (tree, filePath)=>{
15
30
  if (!tree.exists(filePath)) {
16
31
  throw new Error(`No file located at ${filePath}`);
17
32
  }
18
33
  };
19
- const addDestructuredImport = async (tree, filePath, variableNames, from) => {
34
+ export const addDestructuredImport = async (tree, filePath, variableNames, from)=>{
20
35
  assertFilePath(tree, filePath);
36
+ from = normalizeModuleSpecifier(tree, from);
21
37
  // Check if there's an existing import from this module
22
- const hasExistingImport = await (0, exports.matchGritQL)(tree, filePath, `\`import { $_ } from '${from}'\``);
38
+ const hasExistingImport = await matchGritQL(tree, filePath, `\`import { $_ } from '${from}'\``);
23
39
  if (hasExistingImport) {
24
40
  // For each new variable, use GritQL rewrite to add it if not already present
25
- for (const variableName of variableNames) {
26
- const localName = variableName.includes(' as ')
27
- ? variableName.split(' as ')[1]
28
- : variableName;
41
+ for (const variableName of variableNames){
42
+ const localName = variableName.includes(' as ') ? variableName.split(' as ')[1] : variableName;
29
43
  // Use rewrite (=>) which correctly handles comma-separated import specifier lists
30
- await (0, exports.applyGritQL)(tree, filePath, `\`import { $imports } from '${from}'\` => \`import { $imports, ${variableName} } from '${from}'\` where { $imports <: not contains \`${localName}\` }`);
44
+ await applyGritQL(tree, filePath, `\`import { $imports } from '${from}'\` => \`import { $imports, ${variableName} } from '${from}'\` where { $imports <: not contains \`${localName}\` }`);
31
45
  }
32
- }
33
- else {
46
+ } else {
34
47
  // No existing import — prepend a new one (after shebang if present)
35
48
  const specifiers = variableNames.join(', ');
36
49
  const contents = tree.read(filePath).toString();
@@ -38,13 +51,11 @@ const addDestructuredImport = async (tree, filePath, variableNames, from) => {
38
51
  if (contents.startsWith('#!')) {
39
52
  const newlineIndex = contents.indexOf('\n');
40
53
  tree.write(filePath, `${contents.substring(0, newlineIndex + 1)}${newImport}${contents.substring(newlineIndex + 1)}`);
41
- }
42
- else {
54
+ } else {
43
55
  tree.write(filePath, `${newImport}${contents}`);
44
56
  }
45
57
  }
46
58
  };
47
- exports.addDestructuredImport = addDestructuredImport;
48
59
  /**
49
60
  * Ensure a Python `from <module> import <name1>, <name2>, ...` statement
50
61
  * exists in the given file. If the module already has a `from <module> import`
@@ -57,17 +68,16 @@ exports.addDestructuredImport = addDestructuredImport;
57
68
  * was rewritten after trying every requested name, we fall back to checking
58
69
  * whether the module is imported at all; if not, we prepend a fresh
59
70
  * `from <module> import ...` line.
60
- */
61
- const addPythonDestructuredImport = async (tree, filePath, variableNames, from) => {
71
+ */ export const addPythonDestructuredImport = async (tree, filePath, variableNames, from)=>{
62
72
  assertFilePath(tree, filePath);
63
73
  // Determine whether there's any `from <module> import ...` line in the file.
64
74
  // We detect this by attempting a no-op transformation — the file is unchanged,
65
75
  // but a successful match tells us the line exists.
66
76
  const beforeContents = tree.read(filePath).toString();
67
77
  let moduleAlreadyImported = false;
68
- for (const variableName of variableNames) {
78
+ for (const variableName of variableNames){
69
79
  // Appends the name if the import-from exists and the name isn't already there.
70
- const appended = await (0, exports.applyGritQL)(tree, filePath, `language python\n\`from ${from} import $names\` where { $names <: not contains \`${variableName}\`, $names += \`, ${variableName}\` }`);
80
+ const appended = await applyGritQL(tree, filePath, `language python\n\`from ${from} import $names\` where { $names <: not contains \`${variableName}\`, $names += \`, ${variableName}\` }`);
71
81
  if (appended) {
72
82
  moduleAlreadyImported = true;
73
83
  }
@@ -79,9 +89,7 @@ const addPythonDestructuredImport = async (tree, filePath, variableNames, from)
79
89
  if (moduleAlreadyImported) {
80
90
  return;
81
91
  }
82
- const allAlreadyPresent = await (0, exports.matchGritQL)(tree, filePath, `language python\n\`from ${from} import $names\` where { ${variableNames
83
- .map((n) => `$names <: contains \`${n}\``)
84
- .join(', ')} }`);
92
+ const allAlreadyPresent = await matchGritQL(tree, filePath, `language python\n\`from ${from} import $names\` where { ${variableNames.map((n)=>`$names <: contains \`${n}\``).join(', ')} }`);
85
93
  if (allAlreadyPresent) {
86
94
  return;
87
95
  }
@@ -90,88 +98,81 @@ const addPythonDestructuredImport = async (tree, filePath, variableNames, from)
90
98
  const specifiers = variableNames.join(', ');
91
99
  tree.write(filePath, `from ${from} import ${specifiers}\n${beforeContents}`);
92
100
  };
93
- exports.addPythonDestructuredImport = addPythonDestructuredImport;
94
101
  /**
95
102
  * Adds an `import <variableName> from '<from>'; statement to the beginning of the file,
96
103
  * if it doesn't already exist
97
- */
98
- const addSingleImport = async (tree, filePath, variableName, from) => {
104
+ */ export const addSingleImport = async (tree, filePath, variableName, from)=>{
99
105
  assertFilePath(tree, filePath);
106
+ from = normalizeModuleSpecifier(tree, from);
100
107
  // Check if default import already exists using GritQL
101
- const alreadyImported = await (0, exports.matchGritQL)(tree, filePath, `\`import ${variableName} from '${from}'\``);
108
+ const alreadyImported = await matchGritQL(tree, filePath, `\`import ${variableName} from '${from}'\``);
102
109
  if (alreadyImported) {
103
110
  return;
104
111
  }
105
112
  // Prepend new import to file
106
113
  const contents = tree.read(filePath).toString();
107
- tree.write(filePath, `import ${variableName} from "${from}";\n${contents}`);
114
+ tree.write(filePath, `import ${variableName} from '${from}';\n${contents}`);
108
115
  };
109
- exports.addSingleImport = addSingleImport;
110
116
  /**
111
117
  * Adds an `export * from '<from>'; statement to the given TypeScript file.
112
118
  * Note that this will create the file if it does not exist in the tree.
113
- */
114
- const addStarExport = async (tree, filePath, from) => {
119
+ */ export const addStarExport = async (tree, filePath, from)=>{
120
+ from = normalizeModuleSpecifier(tree, from);
115
121
  const contents = tree.read(filePath)?.toString() ?? '';
116
122
  // For empty/non-existent files, just write the export
117
123
  if (!contents.trim()) {
118
- tree.write(filePath, `export * from "${from}";\n`);
124
+ tree.write(filePath, `export * from '${from}';\n`);
119
125
  return;
120
126
  }
121
127
  // Check if already exported using GritQL
122
- const alreadyExported = await (0, exports.matchGritQL)(tree, filePath, `\`export * from '${from}'\``);
128
+ const alreadyExported = await matchGritQL(tree, filePath, `\`export * from '${from}'\``);
123
129
  if (alreadyExported) {
124
130
  return;
125
131
  }
126
132
  // Prepend new export to file
127
- tree.write(filePath, `export * from "${from}";\n${contents}`);
133
+ tree.write(filePath, `export * from '${from}';\n${contents}`);
128
134
  };
129
- exports.addStarExport = addStarExport;
130
135
  /**
131
136
  * Return whether or not the given identifier is exported in the source file.
132
137
  * Checks for both `export { Identifier }` and `export type Identifier = ...`.
133
- */
134
- const hasExportDeclaration = async (tree, source, identifierName) => {
138
+ */ export const hasExportDeclaration = async (tree, source, identifierName)=>{
135
139
  ensureGritDir(tree);
136
140
  const patterns = [
137
141
  `\`export type ${identifierName} = $_\``,
138
142
  `\`export { ${identifierName} }\``,
139
- `\`export type { ${identifierName} } from $_\``,
143
+ `\`export type { ${identifierName} } from $_\``
140
144
  ];
141
- for (const pattern of patterns) {
145
+ for (const pattern of patterns){
142
146
  try {
143
- const q = new gritql_1.QueryBuilder(`$p => $p where { $p <: ${pattern} }`);
147
+ const q = new QueryBuilder(`$p => $p where { $p <: ${pattern} }`);
144
148
  const result = await q.applyToFile({
145
149
  path: 'check.ts',
146
- content: source,
150
+ content: source
147
151
  });
148
- if (result !== null)
149
- return true;
150
- }
151
- catch {
152
- // Pattern didn't match, try next
152
+ if (result !== null) return true;
153
+ } catch {
154
+ // Pattern didn't match, try next
153
155
  }
154
156
  }
155
157
  return false;
156
158
  };
157
- exports.hasExportDeclaration = hasExportDeclaration;
158
159
  /**
159
160
  * Apply a GritQL pattern to a file in the Nx tree.
160
- */
161
- const applyGritQL = async (tree, filePath, pattern) => {
162
- if (!tree.exists(filePath))
163
- throw new Error(`No file at ${filePath}`);
161
+ */ export const applyGritQL = async (tree, filePath, pattern)=>{
162
+ if (!tree.exists(filePath)) throw new Error(`No file at ${filePath}`);
164
163
  ensureGritDir(tree);
165
164
  const source = tree.read(filePath).toString();
166
- const query = new gritql_1.QueryBuilder(pattern);
167
- const result = await query.applyToFile({ path: filePath, content: source });
165
+ const query = new QueryBuilder(pattern);
166
+ const result = await query.applyToFile({
167
+ path: filePath,
168
+ content: source
169
+ });
168
170
  if (result && result.content !== source) {
169
171
  tree.write(filePath, result.content);
170
172
  return true;
171
173
  }
172
174
  return false;
173
175
  };
174
- exports.applyGritQL = applyGritQL;
175
176
  /**
176
177
  * Check whether a GritQL pattern matches anywhere in a file.
177
178
  * Returns true if the pattern matches at least once.
@@ -179,59 +180,78 @@ exports.applyGritQL = applyGritQL;
179
180
  * Accepts raw GritQL, including patterns that start with a `language <name>`
180
181
  * header (e.g. `language python\n\`print($_)\``) — the pattern is passed
181
182
  * straight through to QueryBuilder without any wrapping rewrite.
182
- */
183
- const matchGritQL = async (tree, filePath, pattern) => {
184
- if (!tree.exists(filePath))
185
- return false;
183
+ */ export const matchGritQL = async (tree, filePath, pattern)=>{
184
+ if (!tree.exists(filePath)) return false;
186
185
  ensureGritDir(tree);
187
186
  const source = tree.read(filePath).toString();
188
187
  let matched = false;
189
188
  try {
190
- const query = new gritql_1.QueryBuilder(pattern);
191
- query.filter(() => {
189
+ const query = new QueryBuilder(pattern);
190
+ query.filter(()=>{
192
191
  matched = true;
193
192
  return true;
194
193
  });
195
- await query.applyToFile({ path: filePath, content: source });
196
- }
197
- catch {
194
+ await query.applyToFile({
195
+ path: filePath,
196
+ content: source
197
+ });
198
+ } catch {
198
199
  return false;
199
200
  }
200
201
  return matched;
201
202
  };
202
- exports.matchGritQL = matchGritQL;
203
203
  /**
204
204
  * Capture the source text of the first match of a GritQL pattern.
205
205
  *
206
206
  * For example `` `dependencyCheck: $_` `` returns the whole
207
207
  * `dependencyCheck: { ... }` property text. Returns undefined if nothing
208
208
  * matches. The file is not modified.
209
- */
210
- const captureGritQL = async (tree, filePath, pattern) => {
211
- if (!tree.exists(filePath))
212
- return undefined;
209
+ */ export const captureGritQL = async (tree, filePath, pattern)=>{
210
+ if (!tree.exists(filePath)) return undefined;
213
211
  ensureGritDir(tree);
214
212
  const source = tree.read(filePath).toString();
215
213
  let captured;
216
214
  try {
217
- const query = new gritql_1.QueryBuilder(pattern);
218
- query.filter((node) => {
215
+ const query = new QueryBuilder(pattern);
216
+ query.filter((node)=>{
219
217
  captured ??= node.text();
220
218
  return true;
221
219
  });
222
- await query.applyToFile({ path: filePath, content: source });
223
- }
224
- catch {
220
+ await query.applyToFile({
221
+ path: filePath,
222
+ content: source
223
+ });
224
+ } catch {
225
225
  return undefined;
226
226
  }
227
227
  return captured;
228
228
  };
229
- exports.captureGritQL = captureGritQL;
229
+ /**
230
+ * Return the text of every node matching the GritQL pattern, in document order.
231
+ */ export const captureAllGritQL = async (tree, filePath, pattern)=>{
232
+ if (!tree.exists(filePath)) return [];
233
+ ensureGritDir(tree);
234
+ const source = tree.read(filePath).toString();
235
+ const captured = [];
236
+ try {
237
+ const query = new QueryBuilder(pattern);
238
+ query.filter((node)=>{
239
+ captured.push(node.text());
240
+ return true;
241
+ });
242
+ await query.applyToFile({
243
+ path: filePath,
244
+ content: source
245
+ });
246
+ } catch {
247
+ return [];
248
+ }
249
+ return captured;
250
+ };
230
251
  /**
231
252
  * A unique token that is a valid identifier, so it can stand in for an array
232
253
  * element or object property inside a GritQL rewrite.
233
- */
234
- exports.GRIT_INSERT_PLACEHOLDER = '__GRIT_INSERT_PLACEHOLDER__';
254
+ */ export const GRIT_INSERT_PLACEHOLDER = '__GRIT_INSERT_PLACEHOLDER__';
235
255
  /**
236
256
  * Apply a GritQL rewrite that inserts {@link GRIT_INSERT_PLACEHOLDER}, then
237
257
  * replace the placeholder with `text`. Routing user-provided text through a
@@ -245,17 +265,15 @@ exports.GRIT_INSERT_PLACEHOLDER = '__GRIT_INSERT_PLACEHOLDER__';
245
265
  *
246
266
  * The caller formats afterwards. Returns true if the pattern matched and the
247
267
  * file changed.
248
- */
249
- const insertViaGritQL = async (tree, filePath, pattern, text) => {
250
- if (!(await (0, exports.applyGritQL)(tree, filePath, pattern)))
251
- return false;
268
+ */ export const insertViaGritQL = async (tree, filePath, pattern, text)=>{
269
+ if (!await applyGritQL(tree, filePath, pattern)) return false;
252
270
  const content = tree.read(filePath).toString();
253
- const at = content.indexOf(exports.GRIT_INSERT_PLACEHOLDER);
271
+ const at = content.indexOf(GRIT_INSERT_PLACEHOLDER);
254
272
  const lineSoFar = content.slice(content.lastIndexOf('\n', at) + 1, at);
255
273
  const replacement = lineSoFar.includes('//') ? `\n${text}` : text;
256
274
  // Function replacer so `$` in `text` isn't treated as a replacement pattern.
257
- tree.write(filePath, content.replace(exports.GRIT_INSERT_PLACEHOLDER, () => replacement));
275
+ tree.write(filePath, content.replace(GRIT_INSERT_PLACEHOLDER, ()=>replacement));
258
276
  return true;
259
277
  };
260
- exports.insertViaGritQL = insertViaGritQL;
278
+
261
279
  //# sourceMappingURL=ast.js.map