@aws/nx-plugin 1.0.0-rc.23 → 1.0.0-rc.25

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 (774) hide show
  1. package/LICENSE-THIRD-PARTY +3643 -1208
  2. package/package.json +30 -15
  3. package/src/agentcore-gateway/attach-upstream.d.ts +7 -7
  4. package/src/agentcore-gateway/attach-upstream.js +19 -22
  5. package/src/agentcore-gateway/attach-upstream.js.map +1 -1
  6. package/src/agentcore-gateway/gateway-connection/generator.d.ts +4 -4
  7. package/src/agentcore-gateway/gateway-connection/generator.js +45 -46
  8. package/src/agentcore-gateway/gateway-connection/generator.js.map +1 -1
  9. package/src/agentcore-gateway/gateway-connection/schema.d.js +6 -0
  10. package/src/agentcore-gateway/gateway-connection/schema.d.js.map +1 -0
  11. package/src/agentcore-gateway/gateway-connection/schema.d.ts +1 -0
  12. package/src/agentcore-gateway/gateway-connection/schema.json +5 -0
  13. package/src/agentcore-gateway/generator.js +93 -73
  14. package/src/agentcore-gateway/generator.js.map +1 -1
  15. package/src/agentcore-gateway/mcp-connection/generator.d.ts +3 -3
  16. package/src/agentcore-gateway/mcp-connection/generator.js +27 -31
  17. package/src/agentcore-gateway/mcp-connection/generator.js.map +1 -1
  18. package/src/agentcore-gateway/mcp-connection/schema.d.js +6 -0
  19. package/src/agentcore-gateway/mcp-connection/schema.d.js.map +1 -0
  20. package/src/agentcore-gateway/mcp-connection/schema.d.ts +1 -0
  21. package/src/agentcore-gateway/mcp-connection/schema.json +5 -0
  22. package/src/agentcore-gateway/schema.d.js +6 -0
  23. package/src/agentcore-gateway/schema.d.js.map +1 -0
  24. package/src/agentcore-gateway/schema.d.ts +1 -0
  25. package/src/agentcore-gateway/schema.json +5 -0
  26. package/src/bin/aws-nx-mcp.js +14 -0
  27. package/src/bin/aws-nx-mcp.js.map +1 -0
  28. package/src/connection/{agent-serve-local.d.ts → agent-local-dev.d.ts} +5 -5
  29. package/src/connection/agent-local-dev.js +42 -0
  30. package/src/connection/agent-local-dev.js.map +1 -0
  31. package/src/connection/agent-runtime-config.js +9 -14
  32. package/src/connection/agent-runtime-config.js.map +1 -1
  33. package/src/connection/generator.d.ts +1 -0
  34. package/src/connection/generator.js +265 -206
  35. package/src/connection/generator.js.map +1 -1
  36. package/src/connection/{serve-local.d.ts → local-dev.d.ts} +3 -3
  37. package/src/connection/local-dev.js +37 -0
  38. package/src/connection/local-dev.js.map +1 -0
  39. package/src/connection/schema.d.js +6 -0
  40. package/src/connection/schema.d.js.map +1 -0
  41. package/src/connection/schema.d.ts +1 -0
  42. package/src/connection/schema.json +5 -0
  43. package/src/index.js +2 -5
  44. package/src/index.js.map +1 -1
  45. package/src/infra/app/__snapshots__/generator.spec.ts.snap +33 -47
  46. package/src/infra/app/generator.js +140 -124
  47. package/src/infra/app/generator.js.map +1 -1
  48. package/src/infra/app/schema.d.js +6 -0
  49. package/src/infra/app/schema.d.js.map +1 -0
  50. package/src/infra/app/schema.d.ts +1 -1
  51. package/src/infra/app/schema.json +5 -0
  52. package/src/license/config-types.js +5 -3
  53. package/src/license/config-types.js.map +1 -1
  54. package/src/license/config.d.ts +1 -1
  55. package/src/license/config.js +267 -242
  56. package/src/license/config.js.map +1 -1
  57. package/src/license/dependency-check/check.js +51 -46
  58. package/src/license/dependency-check/check.js.map +1 -1
  59. package/src/license/dependency-check/collectors/collector.js +41 -71
  60. package/src/license/dependency-check/collectors/collector.js.map +1 -1
  61. package/src/license/dependency-check/collectors/npm-collector.js +34 -41
  62. package/src/license/dependency-check/collectors/npm-collector.js.map +1 -1
  63. package/src/license/dependency-check/collectors/python-collector.js +55 -62
  64. package/src/license/dependency-check/collectors/python-collector.js.map +1 -1
  65. package/src/license/dependency-check/evaluator.js +40 -68
  66. package/src/license/dependency-check/evaluator.js.map +1 -1
  67. package/src/license/dependency-check/executor.js +30 -22
  68. package/src/license/dependency-check/executor.js.map +1 -1
  69. package/src/license/dependency-check/pre-approved.js +949 -336
  70. package/src/license/dependency-check/pre-approved.js.map +1 -1
  71. package/src/license/dependency-check/types.js +2 -3
  72. package/src/license/dependency-check/types.js.map +1 -1
  73. package/src/license/generator.js +55 -60
  74. package/src/license/generator.js.map +1 -1
  75. package/src/license/index.js +3 -9
  76. package/src/license/index.js.map +1 -1
  77. package/src/license/known-exceptions.js +14 -13
  78. package/src/license/known-exceptions.js.map +1 -1
  79. package/src/license/schema.d.js +6 -0
  80. package/src/license/schema.d.js.map +1 -0
  81. package/src/license/schema.d.ts +2 -0
  82. package/src/license/schema.json +5 -0
  83. package/src/license/sync/generator.js +94 -119
  84. package/src/license/sync/generator.js.map +1 -1
  85. package/src/license/sync/project-file-sync.js +28 -35
  86. package/src/license/sync/project-file-sync.js.map +1 -1
  87. package/src/mcp-server/generator-info.js +130 -160
  88. package/src/mcp-server/generator-info.js.map +1 -1
  89. package/src/mcp-server/guide-pipeline.js +184 -206
  90. package/src/mcp-server/guide-pipeline.js.map +1 -1
  91. package/src/mcp-server/guide-render.js +10 -25
  92. package/src/mcp-server/guide-render.js.map +1 -1
  93. package/src/mcp-server/index.js +6 -10
  94. package/src/mcp-server/index.js.map +1 -1
  95. package/src/mcp-server/mdx-ast.js +39 -57
  96. package/src/mcp-server/mdx-ast.js.map +1 -1
  97. package/src/mcp-server/option-filter.js +33 -47
  98. package/src/mcp-server/option-filter.js.map +1 -1
  99. package/src/mcp-server/schema-registry.js +27 -40
  100. package/src/mcp-server/schema-registry.js.map +1 -1
  101. package/src/mcp-server/schema.js +9 -7
  102. package/src/mcp-server/schema.js.map +1 -1
  103. package/src/mcp-server/server.js +20 -24
  104. package/src/mcp-server/server.js.map +1 -1
  105. package/src/mcp-server/tools/create-workspace-command.js +23 -24
  106. package/src/mcp-server/tools/create-workspace-command.js.map +1 -1
  107. package/src/mcp-server/tools/general-guidance.js +45 -25
  108. package/src/mcp-server/tools/general-guidance.js.map +1 -1
  109. package/src/mcp-server/tools/generator-guide.js +29 -37
  110. package/src/mcp-server/tools/generator-guide.js.map +1 -1
  111. package/src/mcp-server/tools/list-generators.js +19 -25
  112. package/src/mcp-server/tools/list-generators.js.map +1 -1
  113. package/src/open-api/ts-client/generator.js +16 -26
  114. package/src/open-api/ts-client/generator.js.map +1 -1
  115. package/src/open-api/ts-client/schema.d.js +6 -0
  116. package/src/open-api/ts-client/schema.d.js.map +1 -0
  117. package/src/open-api/ts-hooks/generator.js +13 -21
  118. package/src/open-api/ts-hooks/generator.js.map +1 -1
  119. package/src/open-api/ts-hooks/schema.d.js +6 -0
  120. package/src/open-api/ts-hooks/schema.d.js.map +1 -0
  121. package/src/open-api/ts-metadata/generator.js +12 -20
  122. package/src/open-api/ts-metadata/generator.js.map +1 -1
  123. package/src/open-api/ts-metadata/schema.d.js +6 -0
  124. package/src/open-api/ts-metadata/schema.d.js.map +1 -0
  125. package/src/open-api/utils/codegen-data/languages.js +42 -60
  126. package/src/open-api/utils/codegen-data/languages.js.map +1 -1
  127. package/src/open-api/utils/codegen-data/types.js +31 -30
  128. package/src/open-api/utils/codegen-data/types.js.map +1 -1
  129. package/src/open-api/utils/codegen-data.js +253 -269
  130. package/src/open-api/utils/codegen-data.js.map +1 -1
  131. package/src/open-api/utils/normalise.js +242 -241
  132. package/src/open-api/utils/normalise.js.map +1 -1
  133. package/src/open-api/utils/parse.js +8 -14
  134. package/src/open-api/utils/parse.js.map +1 -1
  135. package/src/open-api/utils/refs.js +12 -22
  136. package/src/open-api/utils/refs.js.map +1 -1
  137. package/src/open-api/utils/types.js +5 -2
  138. package/src/open-api/utils/types.js.map +1 -1
  139. package/src/preset/__snapshots__/generator.spec.ts.snap +32 -7
  140. package/src/preset/generator.d.ts +1 -1
  141. package/src/preset/generator.js +134 -113
  142. package/src/preset/generator.js.map +1 -1
  143. package/src/preset/schema.d.js +6 -0
  144. package/src/preset/schema.d.js.map +1 -0
  145. package/src/preset/schema.d.ts +1 -1
  146. package/src/preset/schema.json +5 -5
  147. package/src/py/agent/__snapshots__/generator.constructs.spec.ts.snap +304 -0
  148. package/src/py/agent/__snapshots__/{generator.spec.ts.snap → generator.frameworks.spec.ts.snap} +16 -853
  149. package/src/py/agent/__snapshots__/generator.protocols.spec.ts.snap +535 -0
  150. package/src/py/agent/a2a-connection/__snapshots__/generator.spec.ts.snap +1 -2
  151. package/src/py/agent/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client_strands.py.template +1 -1
  152. package/src/py/agent/a2a-connection/files/langchain/agent-connection/app/__targetAgentSnakeCase___client_langchain.py.template +1 -1
  153. package/src/py/agent/a2a-connection/generator.js +74 -75
  154. package/src/py/agent/a2a-connection/generator.js.map +1 -1
  155. package/src/py/agent/a2a-connection/schema.d.js +8 -0
  156. package/src/py/agent/a2a-connection/schema.d.js.map +1 -0
  157. package/src/py/agent/a2a-connection/schema.d.ts +1 -0
  158. package/src/py/agent/a2a-connection/schema.json +5 -0
  159. package/src/py/agent/gateway-connection/__snapshots__/generator.spec.ts.snap +6 -8
  160. package/src/py/agent/gateway-connection/files/agent-connection/app/__gatewaySnakeCase___client_strands.py.template +3 -3
  161. package/src/py/agent/gateway-connection/files/langchain/agent-connection/app/__gatewaySnakeCase___client_langchain.py.template +3 -3
  162. package/src/py/agent/gateway-connection/generator.js +65 -58
  163. package/src/py/agent/gateway-connection/generator.js.map +1 -1
  164. package/src/py/agent/gateway-connection/schema.d.js +6 -0
  165. package/src/py/agent/gateway-connection/schema.d.js.map +1 -0
  166. package/src/py/agent/gateway-connection/schema.d.ts +1 -0
  167. package/src/py/agent/gateway-connection/schema.json +5 -0
  168. package/src/py/agent/generator.js +230 -194
  169. package/src/py/agent/generator.js.map +1 -1
  170. package/src/py/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +5 -12
  171. package/src/py/agent/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client_strands.py.template +1 -1
  172. package/src/py/agent/mcp-connection/files/langchain/agent-connection/app/__mcpServerSnakeCase___client_langchain.py.template +1 -1
  173. package/src/py/agent/mcp-connection/generator.js +57 -52
  174. package/src/py/agent/mcp-connection/generator.js.map +1 -1
  175. package/src/py/agent/mcp-connection/schema.d.js +8 -0
  176. package/src/py/agent/mcp-connection/schema.d.js.map +1 -0
  177. package/src/py/agent/mcp-connection/schema.d.ts +1 -0
  178. package/src/py/agent/mcp-connection/schema.json +5 -0
  179. package/src/py/agent/react-connection/__snapshots__/generator.spec.ts.snap +3 -2
  180. package/src/py/agent/react-connection/generator.d.ts +1 -1
  181. package/src/py/agent/react-connection/generator.js +55 -59
  182. package/src/py/agent/react-connection/generator.js.map +1 -1
  183. package/src/py/agent/react-connection/{serve-local.d.ts → local-dev.d.ts} +4 -4
  184. package/src/py/agent/react-connection/local-dev.js +36 -0
  185. package/src/py/agent/react-connection/local-dev.js.map +1 -0
  186. package/src/py/agent/react-connection/schema.d.js +8 -0
  187. package/src/py/agent/react-connection/schema.d.js.map +1 -0
  188. package/src/py/agent/react-connection/schema.d.ts +1 -0
  189. package/src/py/agent/react-connection/schema.json +5 -0
  190. package/src/py/agent/schema.d.js +6 -0
  191. package/src/py/agent/schema.d.js.map +1 -0
  192. package/src/py/agent/schema.d.ts +1 -0
  193. package/src/py/agent/schema.json +5 -0
  194. package/src/py/api/generator.js +12 -11
  195. package/src/py/api/generator.js.map +1 -1
  196. package/src/py/api/schema.d.js +6 -0
  197. package/src/py/api/schema.d.js.map +1 -0
  198. package/src/py/api/schema.d.ts +1 -0
  199. package/src/py/api/schema.json +5 -0
  200. package/src/py/dynamodb/__snapshots__/generator.spec.ts.snap +68 -28
  201. package/src/py/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +5 -5
  202. package/src/py/dynamodb/agent-connection/generator.js +30 -30
  203. package/src/py/dynamodb/agent-connection/generator.js.map +1 -1
  204. package/src/py/dynamodb/agent-connection/schema.d.js +8 -0
  205. package/src/py/dynamodb/agent-connection/schema.d.js.map +1 -0
  206. package/src/py/dynamodb/agent-connection/schema.d.ts +1 -0
  207. package/src/py/dynamodb/agent-connection/schema.json +5 -0
  208. package/src/py/dynamodb/fast-api-connection/__snapshots__/generator.spec.ts.snap +3 -3
  209. package/src/py/dynamodb/fast-api-connection/generator.js +29 -29
  210. package/src/py/dynamodb/fast-api-connection/generator.js.map +1 -1
  211. package/src/py/dynamodb/fast-api-connection/schema.d.js +8 -0
  212. package/src/py/dynamodb/fast-api-connection/schema.d.js.map +1 -0
  213. package/src/py/dynamodb/fast-api-connection/schema.d.ts +1 -0
  214. package/src/py/dynamodb/fast-api-connection/schema.json +5 -0
  215. package/src/py/dynamodb/files/__name__/client.py.template +5 -5
  216. package/src/py/dynamodb/files/__name__/entities/base.py.template +2 -2
  217. package/src/py/dynamodb/files/config.json.template +1 -1
  218. package/src/py/dynamodb/generator.js +66 -62
  219. package/src/py/dynamodb/generator.js.map +1 -1
  220. package/src/py/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +5 -5
  221. package/src/py/dynamodb/mcp-server-connection/generator.js +30 -30
  222. package/src/py/dynamodb/mcp-server-connection/generator.js.map +1 -1
  223. package/src/py/dynamodb/mcp-server-connection/schema.d.js +8 -0
  224. package/src/py/dynamodb/mcp-server-connection/schema.d.js.map +1 -0
  225. package/src/py/dynamodb/mcp-server-connection/schema.d.ts +1 -0
  226. package/src/py/dynamodb/mcp-server-connection/schema.json +5 -0
  227. package/src/py/dynamodb/schema.d.js +6 -0
  228. package/src/py/dynamodb/schema.d.js.map +1 -0
  229. package/src/py/dynamodb/schema.d.ts +1 -0
  230. package/src/py/dynamodb/schema.json +5 -0
  231. package/src/py/fast-api/__snapshots__/generator.spec.ts.snap +45 -4632
  232. package/src/py/fast-api/__snapshots__/generator.terraform.spec.ts.snap +4833 -0
  233. package/src/py/fast-api/generator.js +82 -85
  234. package/src/py/fast-api/generator.js.map +1 -1
  235. package/src/py/fast-api/react/__snapshots__/generator.spec.ts.snap +3 -2
  236. package/src/py/fast-api/react/generator.d.ts +2 -2
  237. package/src/py/fast-api/react/generator.js +25 -25
  238. package/src/py/fast-api/react/generator.js.map +1 -1
  239. package/src/py/fast-api/react/open-api.js +28 -29
  240. package/src/py/fast-api/react/open-api.js.map +1 -1
  241. package/src/py/fast-api/react/schema.d.js +6 -0
  242. package/src/py/fast-api/react/schema.d.js.map +1 -0
  243. package/src/py/fast-api/react/schema.d.ts +1 -0
  244. package/src/py/fast-api/react/schema.json +5 -0
  245. package/src/py/fast-api/schema.d.js +6 -0
  246. package/src/py/fast-api/schema.d.js.map +1 -0
  247. package/src/py/fast-api/schema.d.ts +1 -0
  248. package/src/py/fast-api/schema.json +5 -0
  249. package/src/py/lambda-function/__snapshots__/generator.spec.ts.snap +4 -4
  250. package/src/py/lambda-function/generator.js +60 -59
  251. package/src/py/lambda-function/generator.js.map +1 -1
  252. package/src/py/lambda-function/schema.d.js +6 -0
  253. package/src/py/lambda-function/schema.d.js.map +1 -0
  254. package/src/py/lambda-function/schema.d.ts +1 -0
  255. package/src/py/lambda-function/schema.json +5 -0
  256. package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +8 -8
  257. package/src/py/mcp-server/generator.js +152 -132
  258. package/src/py/mcp-server/generator.js.map +1 -1
  259. package/src/py/mcp-server/schema.d.js +6 -0
  260. package/src/py/mcp-server/schema.d.js.map +1 -0
  261. package/src/py/mcp-server/schema.d.ts +1 -0
  262. package/src/py/mcp-server/schema.json +5 -0
  263. package/src/py/project/generator.js +132 -90
  264. package/src/py/project/generator.js.map +1 -1
  265. package/src/py/project/schema.d.js +6 -0
  266. package/src/py/project/schema.d.js.map +1 -0
  267. package/src/py/project/schema.d.ts +1 -0
  268. package/src/py/project/schema.json +5 -0
  269. package/src/sdk/agentcore-gateway.d.ts +6 -0
  270. package/src/sdk/agentcore-gateway.js +7 -0
  271. package/src/sdk/agentcore-gateway.js.map +1 -0
  272. package/src/sdk/connection.d.ts +6 -0
  273. package/src/sdk/connection.js +6 -0
  274. package/src/sdk/connection.js.map +1 -0
  275. package/{sdk → src/sdk}/license.d.ts +4 -4
  276. package/src/sdk/license.js +7 -0
  277. package/src/sdk/license.js.map +1 -0
  278. package/src/sdk/open-api.d.ts +10 -0
  279. package/src/sdk/open-api.js +8 -0
  280. package/src/sdk/open-api.js.map +1 -0
  281. package/src/sdk/py.d.ts +14 -0
  282. package/src/sdk/py.js +10 -0
  283. package/src/sdk/py.js.map +1 -0
  284. package/src/sdk/terraform.d.ts +6 -0
  285. package/src/sdk/terraform.js +7 -0
  286. package/src/sdk/terraform.js.map +1 -0
  287. package/src/sdk/ts.d.ts +33 -0
  288. package/src/sdk/ts.js +35 -0
  289. package/src/sdk/ts.js.map +1 -0
  290. package/{sdk → src/sdk}/utils/ast.d.ts +1 -2
  291. package/src/sdk/utils/ast.js +6 -0
  292. package/src/sdk/utils/ast.js.map +1 -0
  293. package/{sdk → src/sdk}/utils/format.d.ts +1 -1
  294. package/src/sdk/utils/format.js +6 -0
  295. package/src/sdk/utils/format.js.map +1 -0
  296. package/{sdk → src/sdk}/utils/test.d.ts +1 -1
  297. package/src/sdk/utils/test.js +6 -0
  298. package/src/sdk/utils/test.js.map +1 -0
  299. package/src/smithy/project/__snapshots__/generator.spec.ts.snap +2 -8
  300. package/src/smithy/project/files/build.Dockerfile.template +1 -4
  301. package/src/smithy/project/generator.js +48 -43
  302. package/src/smithy/project/generator.js.map +1 -1
  303. package/src/smithy/project/schema.d.js +6 -0
  304. package/src/smithy/project/schema.d.js.map +1 -0
  305. package/src/smithy/project/schema.d.ts +1 -0
  306. package/src/smithy/project/schema.json +5 -0
  307. package/src/smithy/react-connection/generator.js +39 -47
  308. package/src/smithy/react-connection/generator.js.map +1 -1
  309. package/src/smithy/react-connection/schema.d.js +6 -0
  310. package/src/smithy/react-connection/schema.d.js.map +1 -0
  311. package/src/smithy/react-connection/schema.d.ts +1 -0
  312. package/src/smithy/react-connection/schema.json +5 -0
  313. package/src/smithy/ts/api/__snapshots__/generator.spec.ts.snap +395 -72
  314. package/src/smithy/ts/api/generator.js +125 -110
  315. package/src/smithy/ts/api/generator.js.map +1 -1
  316. package/src/smithy/ts/api/schema.d.js +6 -0
  317. package/src/smithy/ts/api/schema.d.js.map +1 -0
  318. package/src/smithy/ts/api/schema.d.ts +1 -0
  319. package/src/smithy/ts/api/schema.json +5 -0
  320. package/src/terraform/project/files/application/src/providers.tf.template +1 -1
  321. package/src/terraform/project/generator.js +151 -104
  322. package/src/terraform/project/generator.js.map +1 -1
  323. package/src/terraform/project/schema.d.js +9 -0
  324. package/src/terraform/project/schema.d.js.map +1 -0
  325. package/src/terraform/project/schema.d.ts +1 -0
  326. package/src/terraform/project/schema.json +5 -0
  327. package/src/trpc/backend/__snapshots__/generator.spec.ts.snap +336 -92
  328. package/src/trpc/backend/generator.d.ts +1 -1
  329. package/src/trpc/backend/generator.js +97 -86
  330. package/src/trpc/backend/generator.js.map +1 -1
  331. package/src/trpc/backend/schema.d.js +6 -0
  332. package/src/trpc/backend/schema.d.js.map +1 -0
  333. package/src/trpc/backend/schema.d.ts +1 -0
  334. package/src/trpc/backend/schema.json +5 -0
  335. package/src/trpc/react/__snapshots__/generator.spec.ts.snap +1 -1
  336. package/src/trpc/react/generator.d.ts +1 -1
  337. package/src/trpc/react/generator.js +63 -58
  338. package/src/trpc/react/generator.js.map +1 -1
  339. package/src/trpc/react/schema.d.js +6 -0
  340. package/src/trpc/react/schema.d.js.map +1 -0
  341. package/src/trpc/react/schema.d.ts +1 -0
  342. package/src/trpc/react/schema.json +5 -0
  343. package/src/ts/agent/__snapshots__/generator.spec.ts.snap +11 -11
  344. package/src/ts/agent/a2a-connection/__snapshots__/generator.spec.ts.snap +1 -1
  345. package/src/ts/agent/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client-strands.ts.template +1 -1
  346. package/src/ts/agent/a2a-connection/generator.js +62 -55
  347. package/src/ts/agent/a2a-connection/generator.js.map +1 -1
  348. package/src/ts/agent/a2a-connection/schema.d.js +8 -0
  349. package/src/ts/agent/a2a-connection/schema.d.js.map +1 -0
  350. package/src/ts/agent/a2a-connection/schema.d.ts +1 -0
  351. package/src/ts/agent/a2a-connection/schema.json +5 -0
  352. package/src/ts/agent/gateway-connection/__snapshots__/generator.spec.ts.snap +5 -5
  353. package/src/ts/agent/gateway-connection/files/agent-connection/app/__gatewayKebabCase__-client-strands.ts.template +3 -3
  354. package/src/ts/agent/gateway-connection/generator.js +61 -53
  355. package/src/ts/agent/gateway-connection/generator.js.map +1 -1
  356. package/src/ts/agent/gateway-connection/schema.d.js +6 -0
  357. package/src/ts/agent/gateway-connection/schema.d.js.map +1 -0
  358. package/src/ts/agent/gateway-connection/schema.d.ts +1 -0
  359. package/src/ts/agent/gateway-connection/schema.json +5 -0
  360. package/src/ts/agent/generator.js +169 -137
  361. package/src/ts/agent/generator.js.map +1 -1
  362. package/src/ts/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +1 -1
  363. package/src/ts/agent/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client-strands.ts.template +1 -1
  364. package/src/ts/agent/mcp-connection/generator.js +52 -47
  365. package/src/ts/agent/mcp-connection/generator.js.map +1 -1
  366. package/src/ts/agent/mcp-connection/schema.d.js +8 -0
  367. package/src/ts/agent/mcp-connection/schema.d.js.map +1 -0
  368. package/src/ts/agent/mcp-connection/schema.d.ts +1 -0
  369. package/src/ts/agent/mcp-connection/schema.json +5 -0
  370. package/src/ts/agent/react-connection/generator.d.ts +1 -1
  371. package/src/ts/agent/react-connection/generator.js +86 -80
  372. package/src/ts/agent/react-connection/generator.js.map +1 -1
  373. package/src/ts/agent/react-connection/{serve-local.d.ts → local-dev.d.ts} +2 -2
  374. package/src/ts/agent/react-connection/local-dev.js +17 -0
  375. package/src/ts/agent/react-connection/local-dev.js.map +1 -0
  376. package/src/ts/agent/react-connection/schema.d.js +8 -0
  377. package/src/ts/agent/react-connection/schema.d.js.map +1 -0
  378. package/src/ts/agent/react-connection/schema.d.ts +1 -0
  379. package/src/ts/agent/react-connection/schema.json +5 -0
  380. package/src/ts/agent/schema.d.js +6 -0
  381. package/src/ts/agent/schema.d.js.map +1 -0
  382. package/src/ts/agent/schema.d.ts +1 -0
  383. package/src/ts/agent/schema.json +5 -0
  384. package/src/ts/api/generator.js +16 -16
  385. package/src/ts/api/generator.js.map +1 -1
  386. package/src/ts/api/schema.d.js +6 -0
  387. package/src/ts/api/schema.d.js.map +1 -0
  388. package/src/ts/api/schema.d.ts +1 -0
  389. package/src/ts/api/schema.json +5 -0
  390. package/src/ts/astro-docs/__snapshots__/generator.spec.ts.snap +8 -8
  391. package/src/ts/astro-docs/generator.js +63 -51
  392. package/src/ts/astro-docs/generator.js.map +1 -1
  393. package/src/ts/astro-docs/schema.d.js +6 -0
  394. package/src/ts/astro-docs/schema.d.js.map +1 -0
  395. package/src/ts/astro-docs/schema.d.ts +2 -2
  396. package/src/ts/astro-docs/schema.json +3 -3
  397. package/src/ts/docs/generator.js +10 -10
  398. package/src/ts/docs/generator.js.map +1 -1
  399. package/src/ts/docs/schema.d.js +6 -0
  400. package/src/ts/docs/schema.d.js.map +1 -0
  401. package/src/ts/docs/schema.d.ts +1 -4
  402. package/src/ts/docs/schema.json +3 -3
  403. package/src/ts/dynamodb/__snapshots__/generator.spec.ts.snap +68 -30
  404. package/src/ts/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +5 -5
  405. package/src/ts/dynamodb/agent-connection/generator.js +21 -23
  406. package/src/ts/dynamodb/agent-connection/generator.js.map +1 -1
  407. package/src/ts/dynamodb/agent-connection/schema.d.js +8 -0
  408. package/src/ts/dynamodb/agent-connection/schema.d.js.map +1 -0
  409. package/src/ts/dynamodb/agent-connection/schema.d.ts +1 -0
  410. package/src/ts/dynamodb/agent-connection/schema.json +5 -0
  411. package/src/ts/dynamodb/files/config.json.template +1 -1
  412. package/src/ts/dynamodb/files/src/client.ts.template +7 -7
  413. package/src/ts/dynamodb/generator.js +68 -63
  414. package/src/ts/dynamodb/generator.js.map +1 -1
  415. package/src/ts/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +5 -5
  416. package/src/ts/dynamodb/mcp-server-connection/generator.js +21 -23
  417. package/src/ts/dynamodb/mcp-server-connection/generator.js.map +1 -1
  418. package/src/ts/dynamodb/mcp-server-connection/schema.d.js +8 -0
  419. package/src/ts/dynamodb/mcp-server-connection/schema.d.js.map +1 -0
  420. package/src/ts/dynamodb/mcp-server-connection/schema.d.ts +1 -0
  421. package/src/ts/dynamodb/mcp-server-connection/schema.json +5 -0
  422. package/src/ts/dynamodb/schema.d.js +6 -0
  423. package/src/ts/dynamodb/schema.d.js.map +1 -0
  424. package/src/ts/dynamodb/schema.d.ts +1 -0
  425. package/src/ts/dynamodb/schema.json +5 -0
  426. package/src/ts/dynamodb/smithy-connection/__snapshots__/generator.spec.ts.snap +3 -3
  427. package/src/ts/dynamodb/smithy-connection/generator.js +20 -22
  428. package/src/ts/dynamodb/smithy-connection/generator.js.map +1 -1
  429. package/src/ts/dynamodb/smithy-connection/schema.d.js +8 -0
  430. package/src/ts/dynamodb/smithy-connection/schema.d.js.map +1 -0
  431. package/src/ts/dynamodb/smithy-connection/schema.d.ts +1 -0
  432. package/src/ts/dynamodb/smithy-connection/schema.json +5 -0
  433. package/src/ts/dynamodb/trpc-connection/__snapshots__/generator.spec.ts.snap +3 -3
  434. package/src/ts/dynamodb/trpc-connection/generator.js +20 -22
  435. package/src/ts/dynamodb/trpc-connection/generator.js.map +1 -1
  436. package/src/ts/dynamodb/trpc-connection/schema.d.js +8 -0
  437. package/src/ts/dynamodb/trpc-connection/schema.d.js.map +1 -0
  438. package/src/ts/dynamodb/trpc-connection/schema.d.ts +1 -0
  439. package/src/ts/dynamodb/trpc-connection/schema.json +5 -0
  440. package/src/ts/lambda-function/__snapshots__/generator.spec.ts.snap +4 -4
  441. package/src/ts/lambda-function/generator.js +59 -56
  442. package/src/ts/lambda-function/generator.js.map +1 -1
  443. package/src/ts/lambda-function/io.js +83 -52
  444. package/src/ts/lambda-function/io.js.map +1 -1
  445. package/src/ts/lambda-function/schema.d.js +6 -0
  446. package/src/ts/lambda-function/schema.d.js.map +1 -0
  447. package/src/ts/lambda-function/schema.d.ts +1 -0
  448. package/src/ts/lambda-function/schema.json +5 -0
  449. package/src/ts/lib/__snapshots__/generator.spec.ts.snap +23 -36
  450. package/src/ts/lib/biome.js +37 -37
  451. package/src/ts/lib/biome.js.map +1 -1
  452. package/src/ts/lib/generator.js +82 -80
  453. package/src/ts/lib/generator.js.map +1 -1
  454. package/src/ts/lib/schema.d.js +6 -0
  455. package/src/ts/lib/schema.d.js.map +1 -0
  456. package/src/ts/lib/schema.d.ts +1 -1
  457. package/src/ts/lib/schema.json +5 -0
  458. package/src/ts/lib/ts-project-utils.js +65 -70
  459. package/src/ts/lib/ts-project-utils.js.map +1 -1
  460. package/src/ts/lib/types.js +5 -2
  461. package/src/ts/lib/types.js.map +1 -1
  462. package/src/ts/lib/vitest.js +29 -26
  463. package/src/ts/lib/vitest.js.map +1 -1
  464. package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +5 -5
  465. package/src/ts/mcp-server/generator.js +161 -139
  466. package/src/ts/mcp-server/generator.js.map +1 -1
  467. package/src/ts/mcp-server/schema.d.js +6 -0
  468. package/src/ts/mcp-server/schema.d.js.map +1 -0
  469. package/src/ts/mcp-server/schema.d.ts +1 -0
  470. package/src/ts/mcp-server/schema.json +5 -0
  471. package/src/ts/nx-generator/__snapshots__/generator.spec.ts.snap +27 -12
  472. package/src/ts/nx-generator/files/common/schema.d.ts.template +1 -0
  473. package/src/ts/nx-generator/files/common/schema.json.template +5 -0
  474. package/src/ts/nx-generator/files/local/generator.ts.template +3 -3
  475. package/src/ts/nx-generator/files/nx-plugin-for-aws/generator/generator.ts.template +6 -7
  476. package/src/ts/nx-generator/generator.js +88 -84
  477. package/src/ts/nx-generator/generator.js.map +1 -1
  478. package/src/ts/nx-generator/schema.d.js +6 -0
  479. package/src/ts/nx-generator/schema.d.js.map +1 -0
  480. package/src/ts/nx-generator/schema.d.ts +1 -0
  481. package/src/ts/nx-generator/schema.json +5 -0
  482. package/src/ts/nx-plugin/__snapshots__/generator.spec.ts.snap +30 -18
  483. package/src/ts/nx-plugin/files/mcp-server/server.ts.template +5 -5
  484. package/src/ts/nx-plugin/files/mcp-server/tools/create-workspace-command.ts.template +2 -2
  485. package/src/ts/nx-plugin/files/mcp-server/tools/general-guidance.ts.template +1 -1
  486. package/src/ts/nx-plugin/files/mcp-server/tools/generator-guide.ts.template +2 -2
  487. package/src/ts/nx-plugin/files/mcp-server/tools/list-generators.ts.template +2 -2
  488. package/src/ts/nx-plugin/files/mcp-server/utils.ts.template +3 -3
  489. package/src/ts/nx-plugin/generator.js +57 -49
  490. package/src/ts/nx-plugin/generator.js.map +1 -1
  491. package/src/ts/nx-plugin/schema.d.js +9 -0
  492. package/src/ts/nx-plugin/schema.d.js.map +1 -0
  493. package/src/ts/nx-plugin/schema.json +5 -0
  494. package/src/ts/nx-plugin/utils.js +32 -44
  495. package/src/ts/nx-plugin/utils.js.map +1 -1
  496. package/src/ts/rdb/__snapshots__/generator.spec.ts.snap +30 -30
  497. package/src/ts/rdb/agent-connection/__snapshots__/generator.spec.ts.snap +6 -6
  498. package/src/ts/rdb/agent-connection/generator.js +38 -39
  499. package/src/ts/rdb/agent-connection/generator.js.map +1 -1
  500. package/src/ts/rdb/agent-connection/schema.d.js +8 -0
  501. package/src/ts/rdb/agent-connection/schema.d.js.map +1 -0
  502. package/src/ts/rdb/agent-connection/schema.d.ts +1 -0
  503. package/src/ts/rdb/agent-connection/schema.json +5 -0
  504. package/src/ts/rdb/files/config.json.template +1 -1
  505. package/src/ts/rdb/files/prisma.config.ts.template +2 -2
  506. package/src/ts/rdb/files/src/prisma.ts.template +7 -7
  507. package/src/ts/rdb/files/src/utils.ts.template +1 -0
  508. package/src/ts/rdb/generator.js +134 -117
  509. package/src/ts/rdb/generator.js.map +1 -1
  510. package/src/ts/rdb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +6 -6
  511. package/src/ts/rdb/mcp-server-connection/generator.js +36 -37
  512. package/src/ts/rdb/mcp-server-connection/generator.js.map +1 -1
  513. package/src/ts/rdb/mcp-server-connection/schema.d.js +8 -0
  514. package/src/ts/rdb/mcp-server-connection/schema.d.js.map +1 -0
  515. package/src/ts/rdb/mcp-server-connection/schema.d.ts +1 -0
  516. package/src/ts/rdb/mcp-server-connection/schema.json +5 -0
  517. package/src/ts/rdb/schema.d.js +6 -0
  518. package/src/ts/rdb/schema.d.js.map +1 -0
  519. package/src/ts/rdb/schema.d.ts +1 -0
  520. package/src/ts/rdb/schema.json +5 -0
  521. package/src/ts/rdb/smithy-connection/__snapshots__/generator.spec.ts.snap +3 -3
  522. package/src/ts/rdb/smithy-connection/generator.js +46 -43
  523. package/src/ts/rdb/smithy-connection/generator.js.map +1 -1
  524. package/src/ts/rdb/smithy-connection/schema.d.js +8 -0
  525. package/src/ts/rdb/smithy-connection/schema.d.js.map +1 -0
  526. package/src/ts/rdb/smithy-connection/schema.d.ts +1 -0
  527. package/src/ts/rdb/smithy-connection/schema.json +5 -0
  528. package/src/ts/rdb/trpc-connection/__snapshots__/generator.spec.ts.snap +3 -3
  529. package/src/ts/rdb/trpc-connection/generator.js +36 -31
  530. package/src/ts/rdb/trpc-connection/generator.js.map +1 -1
  531. package/src/ts/rdb/trpc-connection/schema.d.js +8 -0
  532. package/src/ts/rdb/trpc-connection/schema.d.js.map +1 -0
  533. package/src/ts/rdb/trpc-connection/schema.d.ts +1 -0
  534. package/src/ts/rdb/trpc-connection/schema.json +5 -0
  535. package/src/ts/rdb/utils.js +9 -11
  536. package/src/ts/rdb/utils.js.map +1 -1
  537. package/src/ts/react-website/agui/generator.js +69 -61
  538. package/src/ts/react-website/agui/generator.js.map +1 -1
  539. package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +178 -284
  540. package/src/ts/react-website/app/generator.d.ts +1 -1
  541. package/src/ts/react-website/app/generator.js +212 -191
  542. package/src/ts/react-website/app/generator.js.map +1 -1
  543. package/src/ts/react-website/app/schema.d.js +6 -0
  544. package/src/ts/react-website/app/schema.d.js.map +1 -0
  545. package/src/ts/react-website/app/schema.d.ts +1 -1
  546. package/src/ts/react-website/app/schema.json +11 -6
  547. package/src/ts/react-website/cognito-auth/__snapshots__/generator.spec.ts.snap +118 -4
  548. package/src/ts/react-website/cognito-auth/__snapshots__/generator.terraform.spec.ts.snap +10 -3
  549. package/src/ts/react-website/cognito-auth/files/app/components/CognitoAuth/index.tsx.template +2 -2
  550. package/src/ts/react-website/cognito-auth/generator.d.ts +1 -1
  551. package/src/ts/react-website/cognito-auth/generator.js +64 -60
  552. package/src/ts/react-website/cognito-auth/generator.js.map +1 -1
  553. package/src/ts/react-website/cognito-auth/schema.d.js +6 -0
  554. package/src/ts/react-website/cognito-auth/schema.d.js.map +1 -0
  555. package/src/ts/react-website/cognito-auth/schema.d.ts +1 -0
  556. package/src/ts/react-website/cognito-auth/schema.json +5 -0
  557. package/src/ts/react-website/cognito-auth/utils.js +34 -32
  558. package/src/ts/react-website/cognito-auth/utils.js.map +1 -1
  559. package/src/ts/react-website/runtime-config/__snapshots__/generator.spec.ts.snap +2 -2
  560. package/src/ts/react-website/runtime-config/files/app/components/RuntimeConfig/index.tsx.template +2 -2
  561. package/src/ts/react-website/runtime-config/generator.js +29 -31
  562. package/src/ts/react-website/runtime-config/generator.js.map +1 -1
  563. package/src/ts/react-website/runtime-config/schema.d.js +6 -0
  564. package/src/ts/react-website/runtime-config/schema.d.js.map +1 -0
  565. package/src/ts/react-website/runtime-config/schema.d.ts +1 -0
  566. package/src/ts/react-website/runtime-config/schema.json +5 -0
  567. package/src/ts/sync/generator.js +60 -59
  568. package/src/ts/sync/generator.js.map +1 -1
  569. package/src/ts/website/app/generator.js +10 -10
  570. package/src/ts/website/app/generator.js.map +1 -1
  571. package/src/ts/website/app/schema.d.js +6 -0
  572. package/src/ts/website/app/schema.d.js.map +1 -0
  573. package/src/ts/website/app/schema.d.ts +1 -1
  574. package/src/ts/website/app/schema.json +11 -6
  575. package/src/ts/website/auth/generator.d.ts +1 -1
  576. package/src/ts/website/auth/generator.js +11 -10
  577. package/src/ts/website/auth/generator.js.map +1 -1
  578. package/src/ts/website/auth/schema.d.js +6 -0
  579. package/src/ts/website/auth/schema.d.js.map +1 -0
  580. package/src/ts/website/auth/schema.d.ts +1 -0
  581. package/src/ts/website/auth/schema.json +5 -0
  582. package/src/utils/agent-chat/agent-chat.d.ts +1 -1
  583. package/src/utils/agent-chat/agent-chat.js +11 -12
  584. package/src/utils/agent-chat/agent-chat.js.map +1 -1
  585. package/src/utils/agent-chat/files/a2a/chat.ts.template +1 -1
  586. package/src/utils/agent-chat/files/ag-ui/chat.ts.template +1 -1
  587. package/src/utils/agent-chat/files/http-py/chat.ts.template +1 -1
  588. package/src/utils/agent-chat/files/http-ts/chat.ts.template +1 -1
  589. package/src/utils/agent-connection/agent-connection.js +129 -146
  590. package/src/utils/agent-connection/agent-connection.js.map +1 -1
  591. package/src/utils/agent-connection/files/core-gateway/agentcore-gateway-mcp-transport.ts.template +1 -1
  592. package/src/utils/agent-connection/files/core-strands/gateway/agentcore-gateway-mcp-client-strands.ts.template +1 -1
  593. package/src/utils/agent-connection/files/py-core-gateway/agentcore_gateway_mcp_transport.py.template +1 -1
  594. package/src/utils/agent-connection/files/py-core-langchain/gateway/agentcore_gateway_mcp_client_langchain.py.template +1 -1
  595. package/src/utils/agent-connection/files/py-core-strands/gateway/agentcore_gateway_mcp_client_strands.py.template +1 -1
  596. package/src/utils/agent-core-constructs/agent-core-constructs.js +53 -50
  597. package/src/utils/agent-core-constructs/agent-core-constructs.js.map +1 -1
  598. package/src/utils/agent-core-constructs/files/terraform/app/agentcore-gateway/__nameKebabCase__/__nameKebabCase__.tf.template +4 -4
  599. package/src/utils/agent-core-constructs/files/terraform/core/agent-core/runtime.tf.template +4 -4
  600. package/src/utils/agent-core-constructs/files/terraform/core/agentcore-gateway/gateway.tf.template +2 -2
  601. package/src/utils/api-constructs/api-constructs.js +30 -31
  602. package/src/utils/api-constructs/api-constructs.js.map +1 -1
  603. package/src/utils/api-constructs/files/cdk/core/api/http/http-api.ts.template +14 -6
  604. package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account/index.js.template +58 -0
  605. package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account.ts.template +82 -0
  606. package/src/utils/api-constructs/files/cdk/core/api/rest/rest-api.ts.template +28 -14
  607. package/src/utils/api-constructs/files/terraform/app/apis/http/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +1 -8
  608. package/src/utils/api-constructs/files/terraform/app/apis/rest/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +91 -4
  609. package/src/utils/api-constructs/files/terraform/core/api/http/http-api/http-api.tf.template +1 -1
  610. package/src/utils/api-constructs/files/terraform/core/api/rest/api-gateway-account/api-gateway-account.tf.template +83 -0
  611. package/src/utils/api-constructs/files/terraform/core/api/rest/rest-api/rest-api.tf.template +5 -11
  612. package/src/utils/api-constructs/open-api-metadata.js +22 -22
  613. package/src/utils/api-constructs/open-api-metadata.js.map +1 -1
  614. package/src/utils/ast/website.js +17 -19
  615. package/src/utils/ast/website.js.map +1 -1
  616. package/src/utils/ast.js +72 -97
  617. package/src/utils/ast.js.map +1 -1
  618. package/src/utils/bundle/bundle.js +50 -47
  619. package/src/utils/bundle/bundle.js.map +1 -1
  620. package/src/utils/commands.js +47 -26
  621. package/src/utils/commands.js.map +1 -1
  622. package/src/utils/config/index.d.ts +2 -2
  623. package/src/utils/config/index.js +5 -4
  624. package/src/utils/config/index.js.map +1 -1
  625. package/src/utils/config/utils.js +48 -58
  626. package/src/utils/config/utils.js.map +1 -1
  627. package/src/utils/connection/open-api/react.d.ts +5 -5
  628. package/src/utils/connection/open-api/react.js +81 -77
  629. package/src/utils/connection/open-api/react.js.map +1 -1
  630. package/src/utils/containers.js +22 -23
  631. package/src/utils/containers.js.map +1 -1
  632. package/src/utils/dynamodb-constructs/dynamodb-constructs.js +32 -33
  633. package/src/utils/dynamodb-constructs/dynamodb-constructs.js.map +1 -1
  634. package/src/utils/dynamodb-constructs/files/terraform/app/dynamodb/__nameKebabCase__/__nameKebabCase__.tf.template +12 -2
  635. package/src/utils/dynamodb-constructs/files/terraform/core/dynamodb/dynamodb.tf.template +1 -1
  636. package/src/utils/files/common/scripts/src/dynamodb/create-local-table.ts.template +2 -2
  637. package/src/utils/files/common/scripts/src/dynamodb/pull-image.ts.template +1 -1
  638. package/src/utils/files/common/scripts/src/dynamodb/start-container.ts.template +17 -2
  639. package/src/utils/files/common/scripts/src/infra/stage-credentials/cdk-command.ts.template +11 -3
  640. package/src/utils/files/common/scripts/src/rdb/mysql/wait-for-mysql-db.ts.template +32 -0
  641. package/src/utils/files/common/scripts/src/rdb/postgres/wait-for-postgres-db.ts.template +32 -0
  642. package/src/utils/files/common/scripts/src/rdb/{pull-image.ts.template → shared/pull-image.ts.template} +1 -1
  643. package/src/utils/files/common/scripts/src/rdb/{start-container.ts.template → shared/start-container.ts.template} +16 -1
  644. package/src/utils/files/terraform/src/core/asset-bucket/asset-bucket.tf.template +2 -2
  645. package/src/utils/files/terraform/src/core/runtime-config/appconfig/appconfig.tf.template +1 -1
  646. package/src/utils/files/terraform/src/core/runtime-config/appconfig-deployment/appconfig-deployment.tf.template +3 -3
  647. package/src/utils/files/terraform/src/core/runtime-config/entry/entry.tf.template +1 -1
  648. package/src/utils/files/terraform/src/core/runtime-config/read/read.tf.template +2 -2
  649. package/src/utils/files/website/hooks/sigv4/useSigV4.tsx.template +1 -1
  650. package/src/utils/format.js +153 -99
  651. package/src/utils/format.js.map +1 -1
  652. package/src/utils/fs.js +14 -13
  653. package/src/utils/fs.js.map +1 -1
  654. package/src/utils/function-constructs/files/terraform/app/lambda-functions/__nameKebabCase__/__nameKebabCase__.tf.template +2 -2
  655. package/src/utils/function-constructs/function-constructs.js +21 -26
  656. package/src/utils/function-constructs/function-constructs.js.map +1 -1
  657. package/src/utils/generators.js +18 -20
  658. package/src/utils/generators.js.map +1 -1
  659. package/src/utils/git.js +19 -34
  660. package/src/utils/git.js.map +1 -1
  661. package/src/utils/iac-providers.js +5 -5
  662. package/src/utils/iac-providers.js.map +1 -1
  663. package/src/utils/iac.js +12 -14
  664. package/src/utils/iac.js.map +1 -1
  665. package/src/utils/identity-constructs/files/cdk/core/user-identity.ts.template +112 -2
  666. package/src/utils/identity-constructs/files/terraform/core/user-identity/add-callback-url/add-callback-url.tf.template +2 -2
  667. package/src/utils/identity-constructs/files/terraform/core/user-identity/identity/identity.tf.template +104 -2
  668. package/src/utils/identity-constructs/files/terraform/core/user-identity/main.tf.template +7 -0
  669. package/src/utils/identity-constructs/identity-constructs.js +24 -28
  670. package/src/utils/identity-constructs/identity-constructs.js.map +1 -1
  671. package/src/utils/install.d.ts +32 -0
  672. package/src/utils/install.js +56 -0
  673. package/src/utils/install.js.map +1 -0
  674. package/src/utils/js.js +27 -20
  675. package/src/utils/js.js.map +1 -1
  676. package/src/utils/mcp.js +34 -41
  677. package/src/utils/mcp.js.map +1 -1
  678. package/src/utils/metrics.js +30 -45
  679. package/src/utils/metrics.js.map +1 -1
  680. package/src/utils/mock-project-graph.js +8 -12
  681. package/src/utils/mock-project-graph.js.map +1 -1
  682. package/src/utils/names.js +25 -51
  683. package/src/utils/names.js.map +1 -1
  684. package/src/utils/npm-scope.js +9 -17
  685. package/src/utils/npm-scope.js.map +1 -1
  686. package/src/utils/nx.d.ts +18 -2
  687. package/src/utils/nx.js +111 -74
  688. package/src/utils/nx.js.map +1 -1
  689. package/src/utils/nxlv-python.js +27 -15
  690. package/src/utils/nxlv-python.js.map +1 -1
  691. package/src/utils/object.js +5 -11
  692. package/src/utils/object.js.map +1 -1
  693. package/src/utils/paths.js +11 -15
  694. package/src/utils/paths.js.map +1 -1
  695. package/src/utils/pkg-manager.js +4 -9
  696. package/src/utils/pkg-manager.js.map +1 -1
  697. package/src/utils/pnpm-workspace.js +22 -22
  698. package/src/utils/pnpm-workspace.js.map +1 -1
  699. package/src/utils/port.js +26 -36
  700. package/src/utils/port.js.map +1 -1
  701. package/src/utils/py.js +43 -52
  702. package/src/utils/py.js.map +1 -1
  703. package/src/utils/rdb-constructs/files/terraform/app/dbs/__nameKebabCase__/__nameKebabCase__.tf.template +4 -4
  704. package/src/utils/rdb-constructs/files/terraform/core/rdb/aurora/aurora.tf.template +3 -3
  705. package/src/utils/rdb-constructs/rdb-constructs.js +31 -33
  706. package/src/utils/rdb-constructs/rdb-constructs.js.map +1 -1
  707. package/src/utils/shared-constructs-constants.js +16 -16
  708. package/src/utils/shared-constructs-constants.js.map +1 -1
  709. package/src/utils/shared-constructs.js +57 -54
  710. package/src/utils/shared-constructs.js.map +1 -1
  711. package/src/utils/shared-dynamodb-scripts.js +16 -14
  712. package/src/utils/shared-dynamodb-scripts.js.map +1 -1
  713. package/src/utils/shared-infra-config.js +30 -31
  714. package/src/utils/shared-infra-config.js.map +1 -1
  715. package/src/utils/shared-infra-scripts.js +30 -25
  716. package/src/utils/shared-infra-scripts.js.map +1 -1
  717. package/src/utils/shared-rdb-scripts.d.ts +8 -3
  718. package/src/utils/shared-rdb-scripts.js +21 -13
  719. package/src/utils/shared-rdb-scripts.js.map +1 -1
  720. package/src/utils/shared-scripts.js +12 -17
  721. package/src/utils/shared-scripts.js.map +1 -1
  722. package/src/utils/shared-shadcn.js +64 -60
  723. package/src/utils/shared-shadcn.js.map +1 -1
  724. package/src/utils/test.d.ts +8 -0
  725. package/src/utils/test.js +33 -25
  726. package/src/utils/test.js.map +1 -1
  727. package/src/utils/toml.js +7 -15
  728. package/src/utils/toml.js.map +1 -1
  729. package/src/utils/versions.d.ts +93 -66
  730. package/src/utils/versions.js +102 -85
  731. package/src/utils/versions.js.map +1 -1
  732. package/src/utils/website-constructs/files/terraform/app/static-websites/__websiteNameKebabCase__/__websiteNameKebabCase__.tf.template +1 -1
  733. package/src/utils/website-constructs/files/terraform/core/static-website/static-website.tf.template +4 -4
  734. package/src/utils/website-constructs/website-constructs.js +31 -30
  735. package/src/utils/website-constructs/website-constructs.js.map +1 -1
  736. package/bin/aws-nx-mcp.js +0 -17
  737. package/bin/aws-nx-mcp.js.map +0 -1
  738. package/sdk/agentcore-gateway.d.ts +0 -6
  739. package/sdk/agentcore-gateway.js +0 -11
  740. package/sdk/agentcore-gateway.js.map +0 -1
  741. package/sdk/connection.d.ts +0 -6
  742. package/sdk/connection.js +0 -10
  743. package/sdk/connection.js.map +0 -1
  744. package/sdk/license.js +0 -14
  745. package/sdk/license.js.map +0 -1
  746. package/sdk/open-api.d.ts +0 -10
  747. package/sdk/open-api.js +0 -15
  748. package/sdk/open-api.js.map +0 -1
  749. package/sdk/py.d.ts +0 -14
  750. package/sdk/py.js +0 -18
  751. package/sdk/py.js.map +0 -1
  752. package/sdk/terraform.d.ts +0 -6
  753. package/sdk/terraform.js +0 -11
  754. package/sdk/terraform.js.map +0 -1
  755. package/sdk/ts.d.ts +0 -33
  756. package/sdk/ts.js +0 -53
  757. package/sdk/ts.js.map +0 -1
  758. package/sdk/utils/ast.js +0 -12
  759. package/sdk/utils/ast.js.map +0 -1
  760. package/sdk/utils/format.js +0 -10
  761. package/sdk/utils/format.js.map +0 -1
  762. package/sdk/utils/test.js +0 -10
  763. package/sdk/utils/test.js.map +0 -1
  764. package/src/connection/agent-serve-local.js +0 -48
  765. package/src/connection/agent-serve-local.js.map +0 -1
  766. package/src/connection/serve-local.js +0 -41
  767. package/src/connection/serve-local.js.map +0 -1
  768. package/src/py/agent/react-connection/serve-local.js +0 -38
  769. package/src/py/agent/react-connection/serve-local.js.map +0 -1
  770. package/src/ts/agent/react-connection/serve-local.js +0 -19
  771. package/src/ts/agent/react-connection/serve-local.js.map +0 -1
  772. package/src/utils/files/common/scripts/src/rdb/wait-for-db.ts.template +0 -59
  773. /package/src/agentcore-gateway/files/project/{serve-local.ts.template → local-dev.ts.template} +0 -0
  774. /package/{bin → src/bin}/aws-nx-mcp.d.ts +0 -0
@@ -3,7 +3,7 @@
3
3
  exports[`ts#dynamodb generator > should generate scripts for finch engine 1`] = `
4
4
  "{
5
5
  "runtimeConfigKey": "MyTable",
6
- "serveLocal": {
6
+ "localDev": {
7
7
  "port": 8000,
8
8
  "tableName": "proj-my-table",
9
9
  "image": "public.ecr.aws/aws-dynamodb-local/aws-dynamodb-local:latest",
@@ -35,7 +35,7 @@ exports[`ts#dynamodb generator > should generate terraform modules when iac is t
35
35
  required_providers {
36
36
  aws = {
37
37
  source = "hashicorp/aws"
38
- version = "~> 6.0"
38
+ version = "6.52.0"
39
39
  }
40
40
  }
41
41
  }
@@ -192,7 +192,11 @@ exports[`ts#dynamodb generator > should generate terraform modules when iac is t
192
192
  required_providers {
193
193
  aws = {
194
194
  source = "hashicorp/aws"
195
- version = "~> 6.0"
195
+ version = "6.52.0"
196
+ }
197
+ random = {
198
+ source = "hashicorp/random"
199
+ version = "3.9.0"
196
200
  }
197
201
  }
198
202
  }
@@ -221,6 +225,12 @@ variable "enable_key_rotation" {
221
225
  default = true
222
226
  }
223
227
 
228
+ resource "random_string" "suffix" {
229
+ length = 8
230
+ special = false
231
+ upper = false
232
+ }
233
+
224
234
  locals {
225
235
  dynamodb_config = jsondecode(file("\${path.module}/../../../../../../../packages/my-table/config.json"))
226
236
  global_secondary_indexes = [for gsi in local.dynamodb_config.tableConfig.globalSecondaryIndexes : {
@@ -233,7 +243,7 @@ locals {
233
243
 
234
244
  module "dynamodb_table" {
235
245
  source = "../../../core/dynamodb"
236
- name = "proj-my-table"
246
+ name = "proj-my-table-\${random_string.suffix.result}"
237
247
  billing_mode = var.billing_mode
238
248
  point_in_time_recovery_enabled = var.point_in_time_recovery_enabled
239
249
  deletion_protection_enabled = var.deletion_protection_enabled
@@ -271,10 +281,10 @@ exports[`ts#dynamodb generator > should generate the dynamodb project > packages
271
281
  import { readFileSync } from 'fs';
272
282
 
273
283
  const {
274
- serveLocal: { port, tableName },
284
+ localDev: { port, tableName },
275
285
  tableConfig: { globalSecondaryIndexes },
276
286
  } = JSON.parse(readFileSync('config.json', 'utf-8')) as {
277
- serveLocal: { port: number; tableName: string };
287
+ localDev: { port: number; tableName: string };
278
288
  tableConfig: {
279
289
  globalSecondaryIndexes: {
280
290
  indexName: string;
@@ -462,7 +472,7 @@ import { readFileSync } from 'fs';
462
472
 
463
473
  const { containerEngine, image } = JSON.parse(
464
474
  readFileSync('config.json', 'utf-8'),
465
- ).serveLocal;
475
+ ).localDev;
466
476
 
467
477
  const inspect = spawnSync(containerEngine, ['image', 'inspect', image], {
468
478
  stdio: 'ignore',
@@ -484,7 +494,7 @@ import { readFileSync } from 'fs';
484
494
 
485
495
  const { containerEngine, containerName, image, port } = JSON.parse(
486
496
  readFileSync('config.json', 'utf-8'),
487
- ).serveLocal;
497
+ ).localDev;
488
498
 
489
499
  const containerExists = (): boolean =>
490
500
  spawnSync(containerEngine, ['container', 'inspect', containerName], {
@@ -500,12 +510,27 @@ const isRunning = (): boolean => {
500
510
  return result.status === 0 && result.stdout.trim() === 'true';
501
511
  };
502
512
 
503
- // Multiple dynamo table packages run serve-local in parallel sharing the same
513
+ // Ensure the image is available locally before starting the container.
514
+ const ensureImage = (): void => {
515
+ const inspect = spawnSync(containerEngine, ['image', 'inspect', image], {
516
+ stdio: 'ignore',
517
+ });
518
+ if (inspect.status !== 0) {
519
+ const pull = spawnSync(containerEngine, ['pull', image], {
520
+ stdio: 'inherit',
521
+ });
522
+ if (pull.status !== 0) process.exit(pull.status ?? 1);
523
+ }
524
+ };
525
+
526
+ // Multiple dynamo table packages run dev in parallel sharing the same
504
527
  // container. All processes stream logs, but only the one that created the
505
528
  // container stops it on exit — others just detach.
506
529
  let created = false;
507
530
  let runRetries = 0;
508
531
 
532
+ ensureImage();
533
+
509
534
  for (;;) {
510
535
  if (containerExists()) {
511
536
  if (!isRunning()) {
@@ -596,17 +621,16 @@ import { fileURLToPath } from 'url';
596
621
  const runtimeConfigKey = 'MyTable';
597
622
 
598
623
  const __dirname = dirname(fileURLToPath(import.meta.url));
599
- // config.json is only present in local dev (not included in the deployed bundle); guard with SERVE_LOCAL check
600
- const serveLocal = () =>
601
- JSON.parse(readFileSync(join(__dirname, '../config.json'), 'utf-8'))
602
- .serveLocal;
624
+ // config.json is only present in local dev (not included in the deployed bundle); guard with LOCAL_DEV check
625
+ const localDev = () =>
626
+ JSON.parse(readFileSync(join(__dirname, '../config.json'), 'utf-8')).localDev;
603
627
 
604
628
  let _client: DynamoDBClient | undefined;
605
629
 
606
630
  export const getDynamoDBClient = (): DynamoDBClient => {
607
631
  if (!_client) {
608
- if (process.env.SERVE_LOCAL === 'true') {
609
- const { port } = serveLocal();
632
+ if (process.env.LOCAL_DEV === 'true') {
633
+ const { port } = localDev();
610
634
  _client = new DynamoDBClient({
611
635
  endpoint: \`http://localhost:\${port}\`,
612
636
  region: 'us-east-1',
@@ -626,8 +650,8 @@ type DynamoDBConfig = {
626
650
  let _tableName: string | undefined;
627
651
 
628
652
  export const resolveTableName = async (): Promise<string> => {
629
- if (process.env.SERVE_LOCAL === 'true') {
630
- const { tableName } = serveLocal();
653
+ if (process.env.LOCAL_DEV === 'true') {
654
+ const { tableName } = localDev();
631
655
  return tableName;
632
656
  }
633
657
  if (_tableName === undefined) {
@@ -907,10 +931,10 @@ exports[`ts#dynamodb generator > should generate with infra=none then upgrade to
907
931
  import { readFileSync } from 'fs';
908
932
 
909
933
  const {
910
- serveLocal: { port, tableName },
934
+ localDev: { port, tableName },
911
935
  tableConfig: { globalSecondaryIndexes },
912
936
  } = JSON.parse(readFileSync('config.json', 'utf-8')) as {
913
- serveLocal: { port: number; tableName: string };
937
+ localDev: { port: number; tableName: string };
914
938
  tableConfig: {
915
939
  globalSecondaryIndexes: {
916
940
  indexName: string;
@@ -1098,7 +1122,7 @@ import { readFileSync } from 'fs';
1098
1122
 
1099
1123
  const { containerEngine, image } = JSON.parse(
1100
1124
  readFileSync('config.json', 'utf-8'),
1101
- ).serveLocal;
1125
+ ).localDev;
1102
1126
 
1103
1127
  const inspect = spawnSync(containerEngine, ['image', 'inspect', image], {
1104
1128
  stdio: 'ignore',
@@ -1120,7 +1144,7 @@ import { readFileSync } from 'fs';
1120
1144
 
1121
1145
  const { containerEngine, containerName, image, port } = JSON.parse(
1122
1146
  readFileSync('config.json', 'utf-8'),
1123
- ).serveLocal;
1147
+ ).localDev;
1124
1148
 
1125
1149
  const containerExists = (): boolean =>
1126
1150
  spawnSync(containerEngine, ['container', 'inspect', containerName], {
@@ -1136,12 +1160,27 @@ const isRunning = (): boolean => {
1136
1160
  return result.status === 0 && result.stdout.trim() === 'true';
1137
1161
  };
1138
1162
 
1139
- // Multiple dynamo table packages run serve-local in parallel sharing the same
1163
+ // Ensure the image is available locally before starting the container.
1164
+ const ensureImage = (): void => {
1165
+ const inspect = spawnSync(containerEngine, ['image', 'inspect', image], {
1166
+ stdio: 'ignore',
1167
+ });
1168
+ if (inspect.status !== 0) {
1169
+ const pull = spawnSync(containerEngine, ['pull', image], {
1170
+ stdio: 'inherit',
1171
+ });
1172
+ if (pull.status !== 0) process.exit(pull.status ?? 1);
1173
+ }
1174
+ };
1175
+
1176
+ // Multiple dynamo table packages run dev in parallel sharing the same
1140
1177
  // container. All processes stream logs, but only the one that created the
1141
1178
  // container stops it on exit — others just detach.
1142
1179
  let created = false;
1143
1180
  let runRetries = 0;
1144
1181
 
1182
+ ensureImage();
1183
+
1145
1184
  for (;;) {
1146
1185
  if (containerExists()) {
1147
1186
  if (!isRunning()) {
@@ -1232,17 +1271,16 @@ import { fileURLToPath } from 'url';
1232
1271
  const runtimeConfigKey = 'MyTable';
1233
1272
 
1234
1273
  const __dirname = dirname(fileURLToPath(import.meta.url));
1235
- // config.json is only present in local dev (not included in the deployed bundle); guard with SERVE_LOCAL check
1236
- const serveLocal = () =>
1237
- JSON.parse(readFileSync(join(__dirname, '../config.json'), 'utf-8'))
1238
- .serveLocal;
1274
+ // config.json is only present in local dev (not included in the deployed bundle); guard with LOCAL_DEV check
1275
+ const localDev = () =>
1276
+ JSON.parse(readFileSync(join(__dirname, '../config.json'), 'utf-8')).localDev;
1239
1277
 
1240
1278
  let _client: DynamoDBClient | undefined;
1241
1279
 
1242
1280
  export const getDynamoDBClient = (): DynamoDBClient => {
1243
1281
  if (!_client) {
1244
- if (process.env.SERVE_LOCAL === 'true') {
1245
- const { port } = serveLocal();
1282
+ if (process.env.LOCAL_DEV === 'true') {
1283
+ const { port } = localDev();
1246
1284
  _client = new DynamoDBClient({
1247
1285
  endpoint: \`http://localhost:\${port}\`,
1248
1286
  region: 'us-east-1',
@@ -1262,8 +1300,8 @@ type DynamoDBConfig = {
1262
1300
  let _tableName: string | undefined;
1263
1301
 
1264
1302
  export const resolveTableName = async (): Promise<string> => {
1265
- if (process.env.SERVE_LOCAL === 'true') {
1266
- const { tableName } = serveLocal();
1303
+ if (process.env.LOCAL_DEV === 'true') {
1304
+ const { tableName } = localDev();
1267
1305
  return tableName;
1268
1306
  }
1269
1307
  if (_tableName === undefined) {
@@ -1,19 +1,19 @@
1
1
  // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2
2
 
3
- exports[`ts#dynamodb agent-connection generator > should add dynamodb serve-local dependency to agent serve-local 1`] = `
3
+ exports[`ts#dynamodb agent-connection generator > should add dynamodb dev dependency to agent dev 1`] = `
4
4
  {
5
5
  "$schema": "../../node_modules/nx/schemas/project-schema.json",
6
6
  "name": "my-agent",
7
7
  "root": "packages/my-agent",
8
8
  "targets": {
9
- "agent-serve-local": {
9
+ "agent-dev": {
10
10
  "continuous": true,
11
11
  "dependsOn": [
12
12
  {
13
13
  "projects": [
14
14
  "db",
15
15
  ],
16
- "target": "serve-local",
16
+ "target": "dev",
17
17
  },
18
18
  ],
19
19
  "executor": "nx:run-commands",
@@ -28,14 +28,14 @@ exports[`ts#dynamodb agent-connection generator > should use sourceComponent nam
28
28
  "name": "my-agent",
29
29
  "root": "packages/my-agent",
30
30
  "targets": {
31
- "custom-agent-serve-local": {
31
+ "custom-agent-dev": {
32
32
  "continuous": true,
33
33
  "dependsOn": [
34
34
  {
35
35
  "projects": [
36
36
  "db",
37
37
  ],
38
- "target": "serve-local",
38
+ "target": "dev",
39
39
  },
40
40
  ],
41
41
  "executor": "nx:run-commands",
@@ -1,32 +1,30 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.tsDynamoDBAgentConnectionGenerator = exports.TS_DYNAMODB_AGENT_CONNECTION_GENERATOR_INFO = 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 format_1 = require("../../../utils/format");
10
- const metrics_1 = require("../../../utils/metrics");
11
- const nx_1 = require("../../../utils/nx");
12
- exports.TS_DYNAMODB_AGENT_CONNECTION_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
13
- const tsDynamoDBAgentConnectionGenerator = async (tree, options) => {
14
- const sourceProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.sourceProject);
15
- const targetProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.targetProject);
4
+ */ import { updateProjectConfiguration } from "@nx/devkit";
5
+ import { formatFilesInSubtree } from "../../../utils/format.js";
6
+ import { addGeneratorMetricsIfApplicable } from "../../../utils/metrics.js";
7
+ import { addDependencyToTargetIfNotPresent, getGeneratorInfo, readProjectConfigurationUnqualified } from "../../../utils/nx.js";
8
+ export const TS_DYNAMODB_AGENT_CONNECTION_GENERATOR_INFO = getGeneratorInfo(import.meta.filename);
9
+ export const tsDynamoDBAgentConnectionGenerator = async (tree, options)=>{
10
+ const sourceProject = readProjectConfigurationUnqualified(tree, options.sourceProject);
11
+ const targetProject = readProjectConfigurationUnqualified(tree, options.targetProject);
16
12
  const agentName = options.sourceComponent?.name ?? 'agent';
17
- const serveLocalTarget = `${agentName}-serve-local`;
18
- if (sourceProject.targets?.[serveLocalTarget]) {
19
- (0, nx_1.addDependencyToTargetIfNotPresent)(sourceProject, serveLocalTarget, {
20
- projects: [targetProject.name],
21
- target: 'serve-local',
13
+ const devTarget = `${agentName}-dev`;
14
+ if (sourceProject.targets?.[devTarget]) {
15
+ addDependencyToTargetIfNotPresent(sourceProject, devTarget, {
16
+ projects: [
17
+ targetProject.name
18
+ ],
19
+ target: 'dev'
22
20
  });
23
- (0, devkit_1.updateProjectConfiguration)(tree, sourceProject.name, sourceProject);
21
+ updateProjectConfiguration(tree, sourceProject.name, sourceProject);
24
22
  }
25
- await (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [
26
- exports.TS_DYNAMODB_AGENT_CONNECTION_GENERATOR_INFO,
23
+ await addGeneratorMetricsIfApplicable(tree, [
24
+ TS_DYNAMODB_AGENT_CONNECTION_GENERATOR_INFO
27
25
  ]);
28
- await (0, format_1.formatFilesInSubtree)(tree);
26
+ await formatFilesInSubtree(tree);
29
27
  };
30
- exports.tsDynamoDBAgentConnectionGenerator = tsDynamoDBAgentConnectionGenerator;
31
- exports.default = exports.tsDynamoDBAgentConnectionGenerator;
28
+ export default tsDynamoDBAgentConnectionGenerator;
29
+
32
30
  //# sourceMappingURL=generator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/ts/dynamodb/agent-connection/generator.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAAmE;AACnE,kDAA6D;AAC7D,oDAAyE;AACzE,0CAK2B;AAGd,QAAA,2CAA2C,GACtD,IAAA,qBAAgB,EAAC,UAAU,CAAC,CAAC;AAExB,MAAM,kCAAkC,GAAG,KAAK,EACrD,IAAU,EACV,OAAiD,EAClC,EAAE;IACjB,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IACF,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IAEF,MAAM,SAAS,GAAG,OAAO,CAAC,eAAe,EAAE,IAAI,IAAI,OAAO,CAAC;IAC3D,MAAM,gBAAgB,GAAG,GAAG,SAAS,cAAc,CAAC;IAEpD,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC9C,IAAA,sCAAiC,EAAC,aAAa,EAAE,gBAAgB,EAAE;YACjE,QAAQ,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC;YAC9B,MAAM,EAAE,aAAa;SACtB,CAAC,CAAC;QACH,IAAA,mCAA0B,EAAC,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,IAAA,yCAA+B,EAAC,IAAI,EAAE;QAC1C,mDAA2C;KAC5C,CAAC,CAAC;IACH,MAAM,IAAA,6BAAoB,EAAC,IAAI,CAAC,CAAC;AACnC,CAAC,CAAC;AA5BW,QAAA,kCAAkC,sCA4B7C;AAEF,kBAAe,0CAAkC,CAAC"}
1
+ {"version":3,"sources":["../../../../../../../packages/nx-plugin/src/ts/dynamodb/agent-connection/generator.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { type Tree, updateProjectConfiguration } from '@nx/devkit';\nimport { formatFilesInSubtree } from '../../../utils/format';\nimport { addGeneratorMetricsIfApplicable } from '../../../utils/metrics';\nimport {\n addDependencyToTargetIfNotPresent,\n getGeneratorInfo,\n type NxGeneratorInfo,\n readProjectConfigurationUnqualified,\n} from '../../../utils/nx';\nimport type { TsDynamoDBAgentConnectionGeneratorSchema } from './schema';\n\nexport const TS_DYNAMODB_AGENT_CONNECTION_GENERATOR_INFO: NxGeneratorInfo =\n getGeneratorInfo(import.meta.filename);\n\nexport const tsDynamoDBAgentConnectionGenerator = async (\n tree: Tree,\n options: TsDynamoDBAgentConnectionGeneratorSchema,\n): Promise<void> => {\n const sourceProject = readProjectConfigurationUnqualified(\n tree,\n options.sourceProject,\n );\n const targetProject = readProjectConfigurationUnqualified(\n tree,\n options.targetProject,\n );\n\n const agentName = options.sourceComponent?.name ?? 'agent';\n const devTarget = `${agentName}-dev`;\n\n if (sourceProject.targets?.[devTarget]) {\n addDependencyToTargetIfNotPresent(sourceProject, devTarget, {\n projects: [targetProject.name],\n target: 'dev',\n });\n updateProjectConfiguration(tree, sourceProject.name, sourceProject);\n }\n\n await addGeneratorMetricsIfApplicable(tree, [\n TS_DYNAMODB_AGENT_CONNECTION_GENERATOR_INFO,\n ]);\n await formatFilesInSubtree(tree);\n};\n\nexport default tsDynamoDBAgentConnectionGenerator;\n"],"names":["updateProjectConfiguration","formatFilesInSubtree","addGeneratorMetricsIfApplicable","addDependencyToTargetIfNotPresent","getGeneratorInfo","readProjectConfigurationUnqualified","TS_DYNAMODB_AGENT_CONNECTION_GENERATOR_INFO","filename","tsDynamoDBAgentConnectionGenerator","tree","options","sourceProject","targetProject","agentName","sourceComponent","name","devTarget","targets","projects","target"],"mappings":"AAAA;;;CAGC,GACD,SAAoBA,0BAA0B,QAAQ,aAAa;AACnE,SAASC,oBAAoB,QAAQ,2BAAwB;AAC7D,SAASC,+BAA+B,QAAQ,4BAAyB;AACzE,SACEC,iCAAiC,EACjCC,gBAAgB,EAEhBC,mCAAmC,QAC9B,uBAAoB;AAG3B,OAAO,MAAMC,8CACXF,iBAAiB,YAAYG,QAAQ,EAAE;AAEzC,OAAO,MAAMC,qCAAqC,OAChDC,MACAC;IAEA,MAAMC,gBAAgBN,oCACpBI,MACAC,QAAQC,aAAa;IAEvB,MAAMC,gBAAgBP,oCACpBI,MACAC,QAAQE,aAAa;IAGvB,MAAMC,YAAYH,QAAQI,eAAe,EAAEC,QAAQ;IACnD,MAAMC,YAAY,GAAGH,UAAU,IAAI,CAAC;IAEpC,IAAIF,cAAcM,OAAO,EAAE,CAACD,UAAU,EAAE;QACtCb,kCAAkCQ,eAAeK,WAAW;YAC1DE,UAAU;gBAACN,cAAcG,IAAI;aAAC;YAC9BI,QAAQ;QACV;QACAnB,2BAA2BS,MAAME,cAAcI,IAAI,EAAEJ;IACvD;IAEA,MAAMT,gCAAgCO,MAAM;QAC1CH;KACD;IACD,MAAML,qBAAqBQ;AAC7B,EAAE;AAEF,eAAeD,mCAAmC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */ /**
5
+ * TypeScript types for options defined in schema.json
6
+ */ export { };
7
+
8
+ //# sourceMappingURL=schema.d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../packages/nx-plugin/src/ts/dynamodb/agent-connection/schema.d.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { ComponentMetadata } from '../../../utils/nx';\n\n/**\n * TypeScript types for options defined in schema.json\n */\nexport interface TsDynamoDBAgentConnectionGeneratorSchema {\n sourceProject: string;\n targetProject: string;\n sourceComponent?: ComponentMetadata;\n preferInstallDependencies?: boolean;\n}\n"],"names":[],"mappings":"AAAA;;;CAGC,GAGD;;CAEC,GACD,WAKC"}
@@ -11,4 +11,5 @@ export interface TsDynamoDBAgentConnectionGeneratorSchema {
11
11
  sourceProject: string;
12
12
  targetProject: string;
13
13
  sourceComponent?: ComponentMetadata;
14
+ preferInstallDependencies?: boolean;
14
15
  }
@@ -16,6 +16,11 @@
16
16
  "sourceComponent": {
17
17
  "type": "string",
18
18
  "description": "The agent component name"
19
+ },
20
+ "preferInstallDependencies": {
21
+ "type": "boolean",
22
+ "description": "Whether to prefer installing dependencies after the generator runs. Set to false to defer installing when batching multiple generators (an install still runs if needed so subsequent generators can compute the Nx project graph); install once at the end.",
23
+ "default": true
19
24
  }
20
25
  },
21
26
  "required": ["sourceProject", "targetProject"]
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "runtimeConfigKey": "<%= runtimeConfigKey %>",
3
- "serveLocal": {
3
+ "localDev": {
4
4
  "port": <%= localDynamoDBPort %>,
5
5
  "tableName": "<%= localTableName %>",
6
6
  "image": "public.ecr.aws/aws-dynamodb-local/aws-dynamodb-local:latest",
@@ -8,16 +8,16 @@ import { fileURLToPath } from 'url';
8
8
  const runtimeConfigKey = '<%= runtimeConfigKey %>';
9
9
 
10
10
  const __dirname = dirname(fileURLToPath(import.meta.url));
11
- // config.json is only present in local dev (not included in the deployed bundle); guard with SERVE_LOCAL check
12
- const serveLocal = () =>
13
- JSON.parse(readFileSync(join(__dirname, '../config.json'), 'utf-8')).serveLocal;
11
+ // config.json is only present in local dev (not included in the deployed bundle); guard with LOCAL_DEV check
12
+ const localDev = () =>
13
+ JSON.parse(readFileSync(join(__dirname, '../config.json'), 'utf-8')).localDev;
14
14
 
15
15
  let _client: DynamoDBClient | undefined;
16
16
 
17
17
  export const getDynamoDBClient = (): DynamoDBClient => {
18
18
  if (!_client) {
19
- if (process.env.SERVE_LOCAL === 'true') {
20
- const { port } = serveLocal();
19
+ if (process.env.LOCAL_DEV === 'true') {
20
+ const { port } = localDev();
21
21
  _client = new DynamoDBClient({
22
22
  endpoint: `http://localhost:${port}`,
23
23
  region: 'us-east-1',
@@ -37,8 +37,8 @@ type DynamoDBConfig = {
37
37
  let _tableName: string | undefined;
38
38
 
39
39
  export const resolveTableName = async (): Promise<string> => {
40
- if (process.env.SERVE_LOCAL === 'true') {
41
- const { tableName } = serveLocal();
40
+ if (process.env.LOCAL_DEV === 'true') {
41
+ const { tableName } = localDev();
42
42
  return tableName;
43
43
  }
44
44
  if (_tableName === undefined) {
@@ -1,111 +1,116 @@
1
- "use strict";
2
1
  /**
3
2
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
3
  * SPDX-License-Identifier: Apache-2.0
5
- */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.tsDynamoDBGenerator = exports.TS_DYNAMODB_GENERATOR_INFO = void 0;
8
- const tslib_1 = require("tslib");
9
- const node_path_1 = require("node:path");
10
- const devkit_1 = require("@nx/devkit");
11
- const containers_1 = require("../../utils/containers");
12
- const dynamodb_constructs_1 = require("../../utils/dynamodb-constructs/dynamodb-constructs");
13
- const format_1 = require("../../utils/format");
14
- const iac_1 = require("../../utils/iac");
15
- const metrics_1 = require("../../utils/metrics");
16
- const names_1 = require("../../utils/names");
17
- const npm_scope_1 = require("../../utils/npm-scope");
18
- const nx_1 = require("../../utils/nx");
19
- const port_1 = require("../../utils/port");
20
- const shared_constructs_1 = require("../../utils/shared-constructs");
21
- const shared_constructs_constants_1 = require("../../utils/shared-constructs-constants");
22
- const shared_dynamodb_scripts_1 = require("../../utils/shared-dynamodb-scripts");
23
- const versions_1 = require("../../utils/versions");
24
- const generator_1 = tslib_1.__importStar(require("../lib/generator"));
25
- exports.TS_DYNAMODB_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
26
- const tsDynamoDBGenerator = async (tree, options) => {
27
- const nameKebabCase = (0, names_1.kebabCase)(options.name);
28
- const nameClassName = (0, names_1.toClassName)(options.name);
29
- const localTableName = `${(0, npm_scope_1.getNpmScope)(tree)}-${(0, names_1.kebabCase)(options.tableName ?? options.name)}`;
30
- const containerEngine = await (0, containers_1.resolveContainers)(tree, 'inherit');
31
- const { fullyQualifiedName, dir } = (0, generator_1.getTsLibDetails)(tree, {
4
+ */ import { relative } from "node:path";
5
+ import { addDependenciesToPackageJson, generateFiles, joinPathFragments, readProjectConfiguration, updateProjectConfiguration } from "@nx/devkit";
6
+ import { resolveContainers } from "../../utils/containers.js";
7
+ import { addDynamoDBInfra } from "../../utils/dynamodb-constructs/dynamodb-constructs.js";
8
+ import { formatFilesInSubtree } from "../../utils/format.js";
9
+ import { resolveIac } from "../../utils/iac.js";
10
+ import { installDependencies } from "../../utils/install.js";
11
+ import { addGeneratorMetricsIfApplicable } from "../../utils/metrics.js";
12
+ import { kebabCase, toClassName } from "../../utils/names.js";
13
+ import { getNpmScope } from "../../utils/npm-scope.js";
14
+ import { addGeneratorMetadata, getGeneratorInfo } from "../../utils/nx.js";
15
+ import { assignSharedPort } from "../../utils/port.js";
16
+ import { sharedConstructsGenerator } from "../../utils/shared-constructs.js";
17
+ import { DYNAMODB_GENERATOR_IDS, PACKAGES_DIR, SHARED_SCRIPTS_DIR } from "../../utils/shared-constructs-constants.js";
18
+ import { sharedDynamoDBScriptsGenerator } from "../../utils/shared-dynamodb-scripts.js";
19
+ import { withVersions } from "../../utils/versions.js";
20
+ import tsProjectGenerator, { getTsLibDetails } from "../lib/generator.js";
21
+ export const TS_DYNAMODB_GENERATOR_INFO = getGeneratorInfo(import.meta.filename);
22
+ export const tsDynamoDBGenerator = async (tree, options)=>{
23
+ const nameKebabCase = kebabCase(options.name);
24
+ const nameClassName = toClassName(options.name);
25
+ const localTableName = `${getNpmScope(tree)}-${kebabCase(options.tableName ?? options.name)}`;
26
+ const containerEngine = await resolveContainers(tree, 'inherit');
27
+ const { fullyQualifiedName, dir } = getTsLibDetails(tree, {
32
28
  name: options.name,
33
29
  directory: options.directory,
34
- subDirectory: options.subDirectory,
30
+ subDirectory: options.subDirectory
35
31
  });
36
32
  let projectExists;
37
33
  try {
38
- (0, devkit_1.readProjectConfiguration)(tree, fullyQualifiedName);
34
+ readProjectConfiguration(tree, fullyQualifiedName);
39
35
  projectExists = true;
40
- }
41
- catch {
36
+ } catch {
42
37
  projectExists = false;
43
38
  }
44
39
  if (!projectExists) {
45
- await (0, generator_1.default)(tree, {
40
+ await tsProjectGenerator(tree, {
46
41
  name: options.name,
47
42
  directory: options.directory,
43
+ preferInstallDependencies: false
48
44
  });
49
45
  }
50
- const projectConfig = (0, devkit_1.readProjectConfiguration)(tree, fullyQualifiedName);
51
- const localDynamoDBPort = (0, port_1.assignSharedPort)(tree, projectConfig, shared_constructs_constants_1.DYNAMODB_GENERATOR_IDS, 8000);
52
- const containerName = `${(0, npm_scope_1.getNpmScope)(tree)}-dynamodb`;
46
+ const projectConfig = readProjectConfiguration(tree, fullyQualifiedName);
47
+ const localDynamoDBPort = assignSharedPort(tree, projectConfig, DYNAMODB_GENERATOR_IDS, 8000);
48
+ const containerName = `${getNpmScope(tree)}-dynamodb`;
53
49
  const templateOptions = {
54
50
  runtimeConfigKey: nameClassName,
55
51
  localDynamoDBPort,
56
52
  localTableName,
57
53
  containerName,
58
- containerEngine,
54
+ containerEngine
59
55
  };
60
- (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files'), dir, templateOptions);
61
- await (0, shared_dynamodb_scripts_1.sharedDynamoDBScriptsGenerator)(tree);
62
- const scriptsDir = (0, node_path_1.relative)(dir, (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_SCRIPTS_DIR, 'src', 'dynamodb'));
56
+ generateFiles(tree, joinPathFragments(import.meta.dirname, 'files'), dir, templateOptions);
57
+ await sharedDynamoDBScriptsGenerator(tree);
58
+ const scriptsDir = relative(dir, joinPathFragments(PACKAGES_DIR, SHARED_SCRIPTS_DIR, 'src', 'dynamodb'));
63
59
  projectConfig.targets['pull-image'] = {
64
60
  executor: 'nx:run-commands',
65
61
  options: {
66
62
  command: `tsx ${scriptsDir}/pull-image.ts`,
67
- cwd: '{projectRoot}',
68
- },
63
+ cwd: '{projectRoot}'
64
+ }
69
65
  };
70
- projectConfig.targets['serve-local'] = {
66
+ projectConfig.targets['dev'] = {
71
67
  executor: 'nx:run-commands',
72
68
  continuous: true,
73
- dependsOn: ['pull-image'],
74
69
  options: {
75
70
  commands: [
76
71
  `tsx ${scriptsDir}/start-container.ts`,
77
- `tsx ${scriptsDir}/create-local-table.ts`,
72
+ `tsx ${scriptsDir}/create-local-table.ts`
78
73
  ],
79
74
  parallel: true,
80
- cwd: '{projectRoot}',
81
- },
75
+ cwd: '{projectRoot}'
76
+ }
82
77
  };
83
- (0, devkit_1.updateProjectConfiguration)(tree, fullyQualifiedName, projectConfig);
84
- (0, nx_1.addGeneratorMetadata)(tree, fullyQualifiedName, exports.TS_DYNAMODB_GENERATOR_INFO);
78
+ updateProjectConfiguration(tree, fullyQualifiedName, projectConfig);
79
+ addGeneratorMetadata(tree, fullyQualifiedName, TS_DYNAMODB_GENERATOR_INFO);
85
80
  if (options.infra !== 'none') {
86
- const iac = await (0, iac_1.resolveIac)(tree, options.iac);
87
- await (0, shared_constructs_1.sharedConstructsGenerator)(tree, { iac });
88
- await (0, dynamodb_constructs_1.addDynamoDBInfra)(tree, {
81
+ const iac = await resolveIac(tree, options.iac);
82
+ await sharedConstructsGenerator(tree, {
83
+ iac
84
+ });
85
+ await addDynamoDBInfra(tree, {
89
86
  iac,
90
87
  projectName: fullyQualifiedName,
91
88
  nameClassName,
92
89
  nameKebabCase,
93
90
  tableName: localTableName,
94
- projectRoot: dir,
91
+ projectRoot: dir
95
92
  });
96
93
  }
97
- (0, devkit_1.addDependenciesToPackageJson)(tree, (0, versions_1.withVersions)([
94
+ addDependenciesToPackageJson(tree, withVersions([
98
95
  '@aws-sdk/client-dynamodb',
99
96
  'electrodb',
100
97
  '@aws-lambda-powertools/parameters',
101
- '@aws-sdk/client-appconfigdata',
102
- ]), (0, versions_1.withVersions)(['tsx', '@types/aws-lambda', '@types/node']));
103
- await (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [exports.TS_DYNAMODB_GENERATOR_INFO]);
104
- await (0, format_1.formatFilesInSubtree)(tree);
105
- return () => {
106
- (0, devkit_1.installPackagesTask)(tree);
107
- };
98
+ '@aws-sdk/client-appconfigdata'
99
+ ]), withVersions([
100
+ 'tsx',
101
+ '@types/aws-lambda',
102
+ '@types/node'
103
+ ]));
104
+ await addGeneratorMetricsIfApplicable(tree, [
105
+ TS_DYNAMODB_GENERATOR_INFO
106
+ ]);
107
+ await formatFilesInSubtree(tree);
108
+ return ()=>installDependencies(tree, options.preferInstallDependencies, {
109
+ languages: [
110
+ 'typescript'
111
+ ]
112
+ });
108
113
  };
109
- exports.tsDynamoDBGenerator = tsDynamoDBGenerator;
110
- exports.default = exports.tsDynamoDBGenerator;
114
+ export default tsDynamoDBGenerator;
115
+
111
116
  //# sourceMappingURL=generator.js.map