@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
package/src/utils/nx.js CHANGED
@@ -1,81 +1,66 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addDependencyToTargetIfNotPresent = exports.addComponentGeneratorMetadata = exports.addGeneratorMetadata = exports.projectExists = exports.readProjectConfigurationUnqualified = exports.getPackageVersion = exports.getGeneratorInfo = exports.listGenerators = exports.buildGeneratorInfoList = void 0;
4
- const tslib_1 = require("tslib");
5
1
  /**
6
2
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
7
3
  * SPDX-License-Identifier: Apache-2.0
8
- */
9
- const devkit_1 = require("@nx/devkit");
10
- const path = tslib_1.__importStar(require("path"));
11
- const package_json_1 = tslib_1.__importDefault(require("../../package.json"));
12
- const names_1 = require("./names");
13
- const npm_scope_1 = require("./npm-scope");
14
- var generators_1 = require("./generators");
15
- Object.defineProperty(exports, "buildGeneratorInfoList", { enumerable: true, get: function () { return generators_1.buildGeneratorInfoList; } });
16
- const generators_2 = require("./generators");
17
- const GENERATORS = (0, generators_2.buildGeneratorInfoList)(path.resolve(__dirname, '..', '..'));
4
+ */ import { getProjects, readProjectConfiguration, updateProjectConfiguration } from "@nx/devkit";
5
+ import * as path from "path";
6
+ import PackageJson from "../../package.json" with {
7
+ type: 'json'
8
+ };
9
+ import { toSnakeCase } from "./names.js";
10
+ import { getNpmScope, getNpmScopePrefix } from "./npm-scope.js";
11
+ export { buildGeneratorInfoList } from "./generators.js";
12
+ import { buildGeneratorInfoList } from "./generators.js";
13
+ const GENERATORS = buildGeneratorInfoList(path.resolve(import.meta.dirname, '..', '..'));
18
14
  /**
19
15
  * List Nx Plugin for AWS generators
20
16
  * @param includeHidden include hidden generators (default false)
21
- */
22
- const listGenerators = (includeHidden = false) => GENERATORS.filter((g) => includeHidden || !g.hidden);
23
- exports.listGenerators = listGenerators;
17
+ */ export const listGenerators = (includeHidden = false)=>GENERATORS.filter((g)=>includeHidden || !g.hidden);
24
18
  /**
25
- * Return generator information. Call this from a generator method with __filename
26
- */
27
- const getGeneratorInfo = (generatorFileName) => {
19
+ * Return generator information. Call this from a generator method with import.meta.filename
20
+ */ export const getGeneratorInfo = (generatorFileName)=>{
28
21
  const { dir, name } = path.parse(path.resolve(generatorFileName));
29
22
  const resolvedFactoryPath = path.join(dir, name);
30
- return GENERATORS.find((generatorInfo) => generatorInfo.resolvedFactoryPath === resolvedFactoryPath);
23
+ return GENERATORS.find((generatorInfo)=>generatorInfo.resolvedFactoryPath === resolvedFactoryPath);
31
24
  };
32
- exports.getGeneratorInfo = getGeneratorInfo;
33
- const getPackageVersion = () => {
34
- return package_json_1.default.version;
25
+ export const getPackageVersion = ()=>{
26
+ return PackageJson.version;
35
27
  };
36
- exports.getPackageVersion = getPackageVersion;
37
28
  /**
38
29
  * Read a project configuration where the project name may not be fully qualified (ie may omit the scope prefix)
39
- */
40
- const readProjectConfigurationUnqualified = (tree, projectName) => {
30
+ */ export const readProjectConfigurationUnqualified = (tree, projectName)=>{
41
31
  try {
42
- return (0, devkit_1.readProjectConfiguration)(tree, projectName);
43
- }
44
- catch (e) {
32
+ return readProjectConfiguration(tree, projectName);
33
+ } catch (e) {
45
34
  // Attempt to find the project without the scope
46
- const project = [...(0, devkit_1.getProjects)(tree).values()].find((p) => p.name &&
47
- (p.name === `${(0, npm_scope_1.getNpmScopePrefix)(tree)}${projectName}` || // TypeScript fully-qualified name
48
- p.name === `${(0, names_1.toSnakeCase)((0, npm_scope_1.getNpmScope)(tree))}.${projectName}`));
35
+ const project = [
36
+ ...getProjects(tree).values()
37
+ ].find((p)=>p.name && (p.name === `${getNpmScopePrefix(tree)}${projectName}` || // TypeScript fully-qualified name
38
+ p.name === `${toSnakeCase(getNpmScope(tree))}.${projectName}`));
49
39
  if (project) {
50
40
  return project;
51
41
  }
52
42
  throw e;
53
43
  }
54
44
  };
55
- exports.readProjectConfigurationUnqualified = readProjectConfigurationUnqualified;
56
45
  /**
57
46
  * Returns whether a project with the given name already exists in the workspace.
58
47
  * The project name may be unqualified (ie may omit the scope prefix).
59
- */
60
- const projectExists = (tree, projectName) => {
48
+ */ export const projectExists = (tree, projectName)=>{
61
49
  try {
62
- (0, exports.readProjectConfigurationUnqualified)(tree, projectName);
50
+ readProjectConfigurationUnqualified(tree, projectName);
63
51
  return true;
64
- }
65
- catch {
52
+ } catch {
66
53
  return false;
67
54
  }
68
55
  };
69
- exports.projectExists = projectExists;
70
56
  /**
71
57
  * Add metadata about the generator that generated the project to the project.json
72
- */
73
- const addGeneratorMetadata = (tree, projectName, info, additionalMetadata) => {
74
- const config = (0, exports.readProjectConfigurationUnqualified)(tree, projectName);
58
+ */ export const addGeneratorMetadata = (tree, projectName, info, additionalMetadata)=>{
59
+ const config = readProjectConfigurationUnqualified(tree, projectName);
75
60
  const metadata = {
76
61
  ...config?.metadata,
77
62
  generator: info.id,
78
- ...additionalMetadata,
63
+ ...additionalMetadata
79
64
  };
80
65
  // Skip the write when nothing changed so re-running doesn't reserialize
81
66
  // project.json. metadata is plain JSON built in a fixed key order, so a
@@ -87,80 +72,132 @@ const addGeneratorMetadata = (tree, projectName, info, additionalMetadata) => {
87
72
  // identical whether or not metadata already existed (matching the order Nx
88
73
  // normalizes a read config to), keeping the change a pure metadata insert.
89
74
  const { targets, ...rest } = config;
90
- (0, devkit_1.updateProjectConfiguration)(tree, config.name, {
75
+ updateProjectConfiguration(tree, config.name, {
91
76
  ...rest,
92
77
  metadata: metadata,
93
- ...(targets ? { targets } : {}),
78
+ ...targets ? {
79
+ targets
80
+ } : {}
94
81
  });
95
82
  };
96
- exports.addGeneratorMetadata = addGeneratorMetadata;
97
83
  /**
98
84
  * Add metadata about the generator that generated the component to the project.json
99
- */
100
- const addComponentGeneratorMetadata = (tree, projectName, info, componentPath, componentName, additionalMetadata) => {
101
- const config = (0, exports.readProjectConfigurationUnqualified)(tree, projectName);
85
+ */ export const addComponentGeneratorMetadata = (tree, projectName, info, componentPath, componentName, additionalMetadata)=>{
86
+ const config = readProjectConfigurationUnqualified(tree, projectName);
102
87
  const existingComponents = config?.metadata?.components ?? [];
103
- const alreadyAdded = existingComponents.filter((c) => c.generator === info.id && c.name === componentName);
88
+ const alreadyAdded = existingComponents.filter((c)=>c.generator === info.id && c.name === componentName);
104
89
  if (alreadyAdded.length === 0) {
105
90
  const componentMetadata = {
106
91
  generator: info.id,
107
92
  path: componentPath,
108
- ...(componentName ? { name: componentName } : {}),
109
- ...additionalMetadata,
93
+ ...componentName ? {
94
+ name: componentName
95
+ } : {},
96
+ ...additionalMetadata
110
97
  };
111
98
  // Place metadata before targets for a stable serialized key order.
112
99
  const { targets, ...rest } = config;
113
- (0, devkit_1.updateProjectConfiguration)(tree, config.name, {
100
+ updateProjectConfiguration(tree, config.name, {
114
101
  ...rest,
115
102
  metadata: {
116
103
  ...config?.metadata,
117
- components: [...existingComponents, componentMetadata],
104
+ components: [
105
+ ...existingComponents,
106
+ componentMetadata
107
+ ]
118
108
  },
119
- ...(targets ? { targets } : {}),
109
+ ...targets ? {
110
+ targets
111
+ } : {}
120
112
  });
121
113
  }
122
114
  };
123
- exports.addComponentGeneratorMetadata = addComponentGeneratorMetadata;
124
- const targetDependencyEquals = (a, b) => {
115
+ const targetDependencyEquals = (a, b)=>{
125
116
  if (typeof a === 'string' || typeof b === 'string') {
126
117
  return a === b;
127
118
  }
128
119
  if (a.target !== b.target || a.params !== b.params) {
129
120
  return false;
130
121
  }
131
- const aProjects = Array.isArray(a.projects)
132
- ? a.projects
133
- : a.projects !== undefined
134
- ? [a.projects]
135
- : [];
136
- const bProjects = Array.isArray(b.projects)
137
- ? b.projects
138
- : b.projects !== undefined
139
- ? [b.projects]
140
- : [];
122
+ const aProjects = Array.isArray(a.projects) ? a.projects : a.projects !== undefined ? [
123
+ a.projects
124
+ ] : [];
125
+ const bProjects = Array.isArray(b.projects) ? b.projects : b.projects !== undefined ? [
126
+ b.projects
127
+ ] : [];
141
128
  if (aProjects.length !== bProjects.length) {
142
129
  return false;
143
130
  }
144
- return aProjects.every((p, i) => p === bProjects[i]);
131
+ return aProjects.every((p, i)=>p === bProjects[i]);
145
132
  };
133
+ // The order target properties are authored in. Nx preserves a target's
134
+ // authored key order when it reads then rewrites an existing project.json,
135
+ // except `options` and `configurations`, which it always moves to the end (in
136
+ // that order). Keeping `options`/`configurations` last here therefore makes a
137
+ // generator's first-run output byte-identical to subsequent runs (idempotency);
138
+ // the remaining keys are ordered to read intuitively.
139
+ const NX_TARGET_KEY_ORDER = [
140
+ 'executor',
141
+ 'dependsOn',
142
+ 'continuous',
143
+ 'cache',
144
+ 'inputs',
145
+ 'outputs',
146
+ 'metadata',
147
+ 'defaultConfiguration',
148
+ 'options',
149
+ 'configurations'
150
+ ];
151
+ /**
152
+ * Reorder a target's keys to match Nx's own serialization order. Nx reorders
153
+ * target properties when it rewrites an existing project.json, so applying the
154
+ * same order when first authoring a target keeps generators idempotent.
155
+ */ export const normalizeTargetKeyOrder = (target)=>Object.fromEntries(Object.entries(target).sort(([a], [b])=>{
156
+ const ai = NX_TARGET_KEY_ORDER.indexOf(a);
157
+ const bi = NX_TARGET_KEY_ORDER.indexOf(b);
158
+ return (ai === -1 ? NX_TARGET_KEY_ORDER.length : ai) - (bi === -1 ? NX_TARGET_KEY_ORDER.length : bi);
159
+ }));
146
160
  /**
147
161
  * Mutate the project to add the dependency to the target if not already present
148
162
  * Adds the target if not present.
149
163
  *
150
164
  * Accepts either a string target name (e.g. `'build'`) or a dependency config
151
- * object (e.g. `{ projects: ['foo'], target: 'serve-local' }`). Deduplicates
165
+ * object (e.g. `{ projects: ['foo'], target: 'dev' }`). Deduplicates
152
166
  * using deep equality so re-running a generator does not grow `dependsOn`.
153
- */
154
- const addDependencyToTargetIfNotPresent = (project, target, dependency) => {
167
+ */ export const addDependencyToTargetIfNotPresent = (project, target, dependency)=>{
155
168
  project.targets ??= {};
156
169
  project.targets[target] ??= {};
157
170
  project.targets[target].dependsOn ??= [];
158
171
  const dependsOn = project.targets[target].dependsOn;
159
172
  // Leave existing dependencies in place so re-running does not reorder them;
160
173
  // only append when the dependency is genuinely absent.
161
- if (!dependsOn.some((d) => targetDependencyEquals(d, dependency))) {
174
+ if (!dependsOn.some((d)=>targetDependencyEquals(d, dependency))) {
162
175
  dependsOn.push(dependency);
163
176
  }
177
+ // Keep key order aligned with Nx's so first run matches subsequent runs.
178
+ project.targets[target] = normalizeTargetKeyOrder(project.targets[target]);
179
+ };
180
+ /**
181
+ * Register a component's `<name>-dev` target under the project-level `dev`
182
+ * target, so `nx run <project>:dev` starts every component in the project.
183
+ *
184
+ * Component generators author their own continuous `<name>-dev` runner and call
185
+ * this to aggregate it. Every component added to the project accumulates its
186
+ * `<name>-dev` under `dev`. Nx keys tasks by `project:target`, so any
187
+ * dependencies shared between components run exactly once.
188
+ */ export const addComponentDevTarget = (targets, componentDevTargetName)=>{
189
+ targets['dev'] ??= {
190
+ continuous: true,
191
+ dependsOn: []
192
+ };
193
+ const projectDev = targets['dev'];
194
+ projectDev.continuous = true;
195
+ projectDev.dependsOn ??= [];
196
+ // Append in component-creation order; dedupe keeps re-runs idempotent.
197
+ if (!projectDev.dependsOn.includes(componentDevTargetName)) {
198
+ projectDev.dependsOn.push(componentDevTargetName);
199
+ }
200
+ targets['dev'] = normalizeTargetKeyOrder(projectDev);
164
201
  };
165
- exports.addDependencyToTargetIfNotPresent = addDependencyToTargetIfNotPresent;
202
+
166
203
  //# sourceMappingURL=nx.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nx.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/nx.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../packages/nx-plugin/src/utils/nx.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport {\n getProjects,\n type ProjectConfiguration,\n readProjectConfiguration,\n type Tree,\n updateProjectConfiguration,\n} from '@nx/devkit';\nimport * as path from 'path';\nimport PackageJson from '../../package.json' with { type: 'json' };\nimport { toSnakeCase } from './names';\nimport { getNpmScope, getNpmScopePrefix } from './npm-scope';\n\nexport type { GeneratorInfo, NxGeneratorInfo } from './generators';\nexport { buildGeneratorInfoList } from './generators';\n\nimport { buildGeneratorInfoList, type GeneratorInfo } from './generators';\n\nconst GENERATORS = buildGeneratorInfoList(\n path.resolve(import.meta.dirname, '..', '..'),\n);\n\n/**\n * List Nx Plugin for AWS generators\n * @param includeHidden include hidden generators (default false)\n */\nexport const listGenerators = (includeHidden = false) =>\n GENERATORS.filter((g) => includeHidden || !g.hidden);\n\n/**\n * Return generator information. Call this from a generator method with import.meta.filename\n */\nexport const getGeneratorInfo = (generatorFileName: string): GeneratorInfo => {\n const { dir, name } = path.parse(path.resolve(generatorFileName));\n const resolvedFactoryPath = path.join(dir, name);\n return GENERATORS.find(\n (generatorInfo) =>\n generatorInfo.resolvedFactoryPath === resolvedFactoryPath,\n );\n};\n\nexport const getPackageVersion = () => {\n return PackageJson.version;\n};\n\n/**\n * Read a project configuration where the project name may not be fully qualified (ie may omit the scope prefix)\n */\nexport const readProjectConfigurationUnqualified = (\n tree: Tree,\n projectName: string,\n) => {\n try {\n return readProjectConfiguration(tree, projectName);\n } catch (e) {\n // Attempt to find the project without the scope\n const project = [...getProjects(tree).values()].find(\n (p) =>\n p.name &&\n (p.name === `${getNpmScopePrefix(tree)}${projectName}` || // TypeScript fully-qualified name\n p.name === `${toSnakeCase(getNpmScope(tree))}.${projectName}`), // Python fully-qualified name\n );\n if (project) {\n return project;\n }\n throw e;\n }\n};\n\n/**\n * Returns whether a project with the given name already exists in the workspace.\n * The project name may be unqualified (ie may omit the scope prefix).\n */\nexport const projectExists = (tree: Tree, projectName: string): boolean => {\n try {\n readProjectConfigurationUnqualified(tree, projectName);\n return true;\n } catch {\n return false;\n }\n};\n\n/**\n * Add metadata about the generator that generated the project to the project.json\n */\nexport const addGeneratorMetadata = (\n tree: Tree,\n projectName: string,\n info: { id: string },\n additionalMetadata?: { [key: string]: any },\n) => {\n const config = readProjectConfigurationUnqualified(tree, projectName);\n const metadata = {\n ...config?.metadata,\n generator: info.id,\n ...additionalMetadata,\n };\n // Skip the write when nothing changed so re-running doesn't reserialize\n // project.json. metadata is plain JSON built in a fixed key order, so a\n // stringify comparison is exact here.\n if (JSON.stringify(config?.metadata) === JSON.stringify(metadata)) {\n return;\n }\n // Place metadata immediately before targets so the serialized key order is\n // identical whether or not metadata already existed (matching the order Nx\n // normalizes a read config to), keeping the change a pure metadata insert.\n const { targets, ...rest } = config;\n updateProjectConfiguration(tree, config.name, {\n ...rest,\n metadata: metadata as any,\n ...(targets ? { targets } : {}),\n });\n};\n\n/**\n * Represents a component entry in project metadata\n */\nexport interface ComponentMetadata {\n readonly generator: string;\n readonly name?: string;\n readonly path?: string;\n [key: string]: any;\n}\n\n/**\n * Add metadata about the generator that generated the component to the project.json\n */\nexport const addComponentGeneratorMetadata = (\n tree: Tree,\n projectName: string,\n info: { id: string },\n componentPath: string,\n componentName?: string,\n additionalMetadata?: { [key: string]: any },\n) => {\n const config = readProjectConfigurationUnqualified(tree, projectName);\n\n const existingComponents = (config?.metadata as any)?.components ?? [];\n const alreadyAdded = existingComponents.filter(\n (c: any) => c.generator === info.id && c.name === componentName,\n );\n\n if (alreadyAdded.length === 0) {\n const componentMetadata: ComponentMetadata = {\n generator: info.id,\n path: componentPath,\n ...(componentName ? { name: componentName } : {}),\n ...additionalMetadata,\n };\n // Place metadata before targets for a stable serialized key order.\n const { targets, ...rest } = config;\n updateProjectConfiguration(tree, config.name, {\n ...rest,\n metadata: {\n ...config?.metadata,\n components: [...existingComponents, componentMetadata],\n } as any,\n ...(targets ? { targets } : {}),\n });\n }\n};\n\n/**\n * A single entry in an Nx `dependsOn` array.\n * Matches the shape accepted by Nx without requiring a devkit type import.\n */\nexport type TargetDependency =\n | string\n | {\n projects?: string | string[];\n target: string;\n params?: 'ignore' | 'forward';\n };\n\nconst targetDependencyEquals = (a: TargetDependency, b: TargetDependency) => {\n if (typeof a === 'string' || typeof b === 'string') {\n return a === b;\n }\n if (a.target !== b.target || a.params !== b.params) {\n return false;\n }\n const aProjects = Array.isArray(a.projects)\n ? a.projects\n : a.projects !== undefined\n ? [a.projects]\n : [];\n const bProjects = Array.isArray(b.projects)\n ? b.projects\n : b.projects !== undefined\n ? [b.projects]\n : [];\n if (aProjects.length !== bProjects.length) {\n return false;\n }\n return aProjects.every((p, i) => p === bProjects[i]);\n};\n\n// The order target properties are authored in. Nx preserves a target's\n// authored key order when it reads then rewrites an existing project.json,\n// except `options` and `configurations`, which it always moves to the end (in\n// that order). Keeping `options`/`configurations` last here therefore makes a\n// generator's first-run output byte-identical to subsequent runs (idempotency);\n// the remaining keys are ordered to read intuitively.\nconst NX_TARGET_KEY_ORDER = [\n 'executor',\n 'dependsOn',\n 'continuous',\n 'cache',\n 'inputs',\n 'outputs',\n 'metadata',\n 'defaultConfiguration',\n 'options',\n 'configurations',\n];\n\n/**\n * Reorder a target's keys to match Nx's own serialization order. Nx reorders\n * target properties when it rewrites an existing project.json, so applying the\n * same order when first authoring a target keeps generators idempotent.\n */\nexport const normalizeTargetKeyOrder = <T extends object>(target: T): T =>\n Object.fromEntries(\n Object.entries(target as Record<string, unknown>).sort(([a], [b]) => {\n const ai = NX_TARGET_KEY_ORDER.indexOf(a);\n const bi = NX_TARGET_KEY_ORDER.indexOf(b);\n return (\n (ai === -1 ? NX_TARGET_KEY_ORDER.length : ai) -\n (bi === -1 ? NX_TARGET_KEY_ORDER.length : bi)\n );\n }),\n ) as T;\n\n/**\n * Mutate the project to add the dependency to the target if not already present\n * Adds the target if not present.\n *\n * Accepts either a string target name (e.g. `'build'`) or a dependency config\n * object (e.g. `{ projects: ['foo'], target: 'dev' }`). Deduplicates\n * using deep equality so re-running a generator does not grow `dependsOn`.\n */\nexport const addDependencyToTargetIfNotPresent = (\n project: ProjectConfiguration,\n target: string,\n dependency: TargetDependency,\n) => {\n project.targets ??= {};\n project.targets[target] ??= {};\n project.targets[target].dependsOn ??= [];\n const dependsOn = project.targets[target].dependsOn;\n // Leave existing dependencies in place so re-running does not reorder them;\n // only append when the dependency is genuinely absent.\n if (!dependsOn.some((d) => targetDependencyEquals(d, dependency))) {\n dependsOn.push(dependency);\n }\n // Keep key order aligned with Nx's so first run matches subsequent runs.\n project.targets[target] = normalizeTargetKeyOrder(project.targets[target]);\n};\n\n/**\n * Register a component's `<name>-dev` target under the project-level `dev`\n * target, so `nx run <project>:dev` starts every component in the project.\n *\n * Component generators author their own continuous `<name>-dev` runner and call\n * this to aggregate it. Every component added to the project accumulates its\n * `<name>-dev` under `dev`. Nx keys tasks by `project:target`, so any\n * dependencies shared between components run exactly once.\n */\nexport const addComponentDevTarget = (\n targets: Record<string, ProjectConfiguration['targets'][string]>,\n componentDevTargetName: string,\n) => {\n targets['dev'] ??= { continuous: true, dependsOn: [] };\n const projectDev = targets['dev'];\n projectDev.continuous = true;\n projectDev.dependsOn ??= [];\n // Append in component-creation order; dedupe keeps re-runs idempotent.\n if (!projectDev.dependsOn.includes(componentDevTargetName)) {\n projectDev.dependsOn.push(componentDevTargetName);\n }\n targets['dev'] = normalizeTargetKeyOrder(projectDev);\n};\n"],"names":["getProjects","readProjectConfiguration","updateProjectConfiguration","path","PackageJson","type","toSnakeCase","getNpmScope","getNpmScopePrefix","buildGeneratorInfoList","GENERATORS","resolve","dirname","listGenerators","includeHidden","filter","g","hidden","getGeneratorInfo","generatorFileName","dir","name","parse","resolvedFactoryPath","join","find","generatorInfo","getPackageVersion","version","readProjectConfigurationUnqualified","tree","projectName","e","project","values","p","projectExists","addGeneratorMetadata","info","additionalMetadata","config","metadata","generator","id","JSON","stringify","targets","rest","addComponentGeneratorMetadata","componentPath","componentName","existingComponents","components","alreadyAdded","c","length","componentMetadata","targetDependencyEquals","a","b","target","params","aProjects","Array","isArray","projects","undefined","bProjects","every","i","NX_TARGET_KEY_ORDER","normalizeTargetKeyOrder","Object","fromEntries","entries","sort","ai","indexOf","bi","addDependencyToTargetIfNotPresent","dependency","dependsOn","some","d","push","addComponentDevTarget","componentDevTargetName","continuous","projectDev","includes"],"mappings":"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"}
@@ -1,29 +1,41 @@
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.uvProjectGenerator = exports.migrateToSharedVenvGenerator = exports.Logger = exports.UVProvider = void 0;
8
- const tslib_1 = require("tslib");
9
- const path_1 = tslib_1.__importDefault(require("path"));
4
+ */ /**
5
+ * Re-exports internal modules from @nxlv/python that are not exposed
6
+ * via the package's "exports" field.
7
+ *
8
+ * Newer versions of Node.js and Vite strictly enforce the "exports" map
9
+ * in package.json, which prevents deep imports like:
10
+ * import { UVProvider } from '@nxlv/python/dist/provider/uv/provider'
11
+ *
12
+ * This module resolves the package location and loads the internal modules
13
+ * directly by filesystem path, bypassing the exports restriction.
14
+ *
15
+ * Type definitions are inlined from the @nxlv/python .d.ts files because
16
+ * moduleResolution: "bundler" does not allow deep path type imports for
17
+ * packages without proper exports.
18
+ */ import { createRequire } from "module";
19
+ import path from "path";
20
+ const require = createRequire(import.meta.url);
10
21
  // ---------------------------------------------------------------------------
11
22
  // Runtime module loading via filesystem paths
12
23
  // ---------------------------------------------------------------------------
13
24
  // Resolve the @nxlv/python package root by finding its package.json
14
25
  // (which IS listed in the exports map as "./package.json")
15
26
  const nxlvPythonPkgJson = require.resolve('@nxlv/python/package.json');
16
- const nxlvPythonRoot = path_1.default.dirname(nxlvPythonPkgJson);
27
+ const nxlvPythonRoot = path.dirname(nxlvPythonPkgJson);
17
28
  // eslint-disable-next-line @typescript-eslint/no-require-imports
18
- const uvProviderModule = require(path_1.default.join(nxlvPythonRoot, 'dist/provider/uv/provider'));
29
+ const uvProviderModule = require(path.join(nxlvPythonRoot, 'dist/provider/uv/provider'));
19
30
  // eslint-disable-next-line @typescript-eslint/no-require-imports
20
- const loggerModule = require(path_1.default.join(nxlvPythonRoot, 'dist/executors/utils/logger'));
31
+ const loggerModule = require(path.join(nxlvPythonRoot, 'dist/executors/utils/logger'));
21
32
  // eslint-disable-next-line @typescript-eslint/no-require-imports
22
- const migrateToSharedVenvModule = require(path_1.default.join(nxlvPythonRoot, 'dist/generators/migrate-to-shared-venv/generator'));
33
+ const migrateToSharedVenvModule = require(path.join(nxlvPythonRoot, 'dist/generators/migrate-to-shared-venv/generator'));
23
34
  // eslint-disable-next-line @typescript-eslint/no-require-imports
24
- const uvProjectModule = require(path_1.default.join(nxlvPythonRoot, 'dist/generators/uv-project/generator'));
25
- exports.UVProvider = uvProviderModule.UVProvider;
26
- exports.Logger = loggerModule.Logger;
27
- exports.migrateToSharedVenvGenerator = migrateToSharedVenvModule.default ?? migrateToSharedVenvModule;
28
- exports.uvProjectGenerator = uvProjectModule.default ?? uvProjectModule;
35
+ const uvProjectModule = require(path.join(nxlvPythonRoot, 'dist/generators/uv-project/generator'));
36
+ export const UVProvider = uvProviderModule.UVProvider;
37
+ export const Logger = loggerModule.Logger;
38
+ export const migrateToSharedVenvGenerator = migrateToSharedVenvModule.default ?? migrateToSharedVenvModule;
39
+ export const uvProjectGenerator = uvProjectModule.default ?? uvProjectModule;
40
+
29
41
  //# sourceMappingURL=nxlv-python.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nxlv-python.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/nxlv-python.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;AAkBH,wDAAwB;AAmHxB,8EAA8E;AAC9E,8CAA8C;AAC9C,8EAA8E;AAE9E,oEAAoE;AACpE,2DAA2D;AAC3D,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;AACvE,MAAM,cAAc,GAAG,cAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAEvD,iEAAiE;AACjE,MAAM,gBAAgB,GAAG,OAAO,CAC9B,cAAI,CAAC,IAAI,CAAC,cAAc,EAAE,2BAA2B,CAAC,CACvD,CAAC;AACF,iEAAiE;AACjE,MAAM,YAAY,GAAG,OAAO,CAC1B,cAAI,CAAC,IAAI,CAAC,cAAc,EAAE,6BAA6B,CAAC,CACzD,CAAC;AACF,iEAAiE;AACjE,MAAM,yBAAyB,GAAG,OAAO,CACvC,cAAI,CAAC,IAAI,CAAC,cAAc,EAAE,kDAAkD,CAAC,CAC9E,CAAC;AACF,iEAAiE;AACjE,MAAM,eAAe,GAAG,OAAO,CAC7B,cAAI,CAAC,IAAI,CAAC,cAAc,EAAE,sCAAsC,CAAC,CAClE,CAAC;AAEW,QAAA,UAAU,GAA2B,gBAAgB,CAAC,UAAU,CAAC;AAEjE,QAAA,MAAM,GAAuB,YAAY,CAAC,MAAM,CAAC;AAEjD,QAAA,4BAA4B,GAIvC,yBAAyB,CAAC,OAAO,IAAI,yBAAyB,CAAC;AAEpD,QAAA,kBAAkB,GAGK,eAAe,CAAC,OAAO,IAAI,eAAe,CAAC"}
1
+ {"version":3,"sources":["../../../../../packages/nx-plugin/src/utils/nxlv-python.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * Re-exports internal modules from @nxlv/python that are not exposed\n * via the package's \"exports\" field.\n *\n * Newer versions of Node.js and Vite strictly enforce the \"exports\" map\n * in package.json, which prevents deep imports like:\n * import { UVProvider } from '@nxlv/python/dist/provider/uv/provider'\n *\n * This module resolves the package location and loads the internal modules\n * directly by filesystem path, bypassing the exports restriction.\n *\n * Type definitions are inlined from the @nxlv/python .d.ts files because\n * moduleResolution: \"bundler\" does not allow deep path type imports for\n * packages without proper exports.\n */\nimport type { Tree } from '@nx/devkit';\nimport { createRequire } from 'module';\nimport path from 'path';\n\nconst require = createRequire(import.meta.url);\n\n// ---------------------------------------------------------------------------\n// Inlined types from @nxlv/python (sourced from dist/**\\/*.d.ts)\n// ---------------------------------------------------------------------------\n\nexport type UVPyprojectTomlIndex = {\n name: string;\n url: string;\n};\n\nexport type UVPyprojectToml = {\n project?: {\n name: string;\n version: string;\n dependencies: string[];\n 'optional-dependencies': {\n [key: string]: string[];\n };\n };\n 'dependency-groups': {\n [key: string]: string[];\n };\n 'build-system'?: {\n requires?: string[];\n 'build-backend'?: string;\n };\n tool?: {\n hatch?: {\n build?: {\n targets?: {\n wheel?: {\n packages: string[];\n };\n };\n };\n metadata?: {\n 'allow-direct-references'?: boolean;\n };\n };\n uv?: {\n sources?: {\n [key: string]: {\n path?: string;\n workspace?: boolean;\n index?: string;\n };\n };\n index?: UVPyprojectTomlIndex[];\n workspace?: {\n members: string[];\n };\n 'build-backend'?: {\n 'module-name'?: string[];\n namespace?: boolean;\n };\n };\n };\n};\n\ninterface ILogger {\n setOptions(options: { silent: boolean }): void;\n info(message: unknown): void;\n}\n\ninterface IUVProvider {\n install(): Promise<void>;\n}\n\ninterface IUVProviderConstructor {\n new (workspaceRoot: string, logger: ILogger, tree?: Tree): IUVProvider;\n}\n\ninterface ILoggerConstructor {\n new (): ILogger;\n}\n\ninterface MigrateToSharedVenvSchema {\n moveDevDependencies: boolean;\n pyprojectPythonDependency: string;\n pyenvPythonVersion: string | number;\n autoActivate: boolean;\n packageManager: 'poetry' | 'uv';\n}\n\ninterface UVProjectGeneratorSchema {\n name: string;\n publishable: boolean;\n buildLockedVersions: boolean;\n buildBundleLocalDependencies: boolean;\n linter: 'flake8' | 'ruff' | 'none';\n devDependenciesProject?: string;\n rootPyprojectDependencyGroup: string;\n templateDir?: string;\n pyprojectPythonDependency: string;\n projectType: 'application' | 'library';\n projectNameAndRootFormat: 'as-provided' | 'derived';\n packageName?: string;\n description?: string;\n moduleName?: string;\n pyenvPythonVersion?: string | number;\n tags?: string;\n directory?: string;\n useSyncGenerators?: boolean;\n unitTestRunner: 'pytest' | 'none';\n codeCoverage: boolean;\n codeCoverageHtmlReport: boolean;\n codeCoverageXmlReport: boolean;\n codeCoverageThreshold?: number;\n unitTestHtmlReport: boolean;\n unitTestJUnitReport: boolean;\n buildSystem: 'hatch' | 'uv';\n srcDir: boolean;\n}\n\n// ---------------------------------------------------------------------------\n// Runtime module loading via filesystem paths\n// ---------------------------------------------------------------------------\n\n// Resolve the @nxlv/python package root by finding its package.json\n// (which IS listed in the exports map as \"./package.json\")\nconst nxlvPythonPkgJson = require.resolve('@nxlv/python/package.json');\nconst nxlvPythonRoot = path.dirname(nxlvPythonPkgJson);\n\n// eslint-disable-next-line @typescript-eslint/no-require-imports\nconst uvProviderModule = require(\n path.join(nxlvPythonRoot, 'dist/provider/uv/provider'),\n);\n// eslint-disable-next-line @typescript-eslint/no-require-imports\nconst loggerModule = require(\n path.join(nxlvPythonRoot, 'dist/executors/utils/logger'),\n);\n// eslint-disable-next-line @typescript-eslint/no-require-imports\nconst migrateToSharedVenvModule = require(\n path.join(nxlvPythonRoot, 'dist/generators/migrate-to-shared-venv/generator'),\n);\n// eslint-disable-next-line @typescript-eslint/no-require-imports\nconst uvProjectModule = require(\n path.join(nxlvPythonRoot, 'dist/generators/uv-project/generator'),\n);\n\nexport const UVProvider: IUVProviderConstructor = uvProviderModule.UVProvider;\n\nexport const Logger: ILoggerConstructor = loggerModule.Logger;\n\nexport const migrateToSharedVenvGenerator: (\n tree: Tree,\n options: MigrateToSharedVenvSchema,\n) => Promise<() => Promise<void>> =\n migrateToSharedVenvModule.default ?? migrateToSharedVenvModule;\n\nexport const uvProjectGenerator: (\n tree: Tree,\n options: UVProjectGeneratorSchema,\n) => Promise<() => Promise<void>> = uvProjectModule.default ?? uvProjectModule;\n"],"names":["createRequire","path","require","url","nxlvPythonPkgJson","resolve","nxlvPythonRoot","dirname","uvProviderModule","join","loggerModule","migrateToSharedVenvModule","uvProjectModule","UVProvider","Logger","migrateToSharedVenvGenerator","default","uvProjectGenerator"],"mappings":"AAAA;;;CAGC,GAED;;;;;;;;;;;;;;CAcC,GAED,SAASA,aAAa,QAAQ,SAAS;AACvC,OAAOC,UAAU,OAAO;AAExB,MAAMC,UAAUF,cAAc,YAAYG,GAAG;AAmH7C,8EAA8E;AAC9E,8CAA8C;AAC9C,8EAA8E;AAE9E,oEAAoE;AACpE,2DAA2D;AAC3D,MAAMC,oBAAoBF,QAAQG,OAAO,CAAC;AAC1C,MAAMC,iBAAiBL,KAAKM,OAAO,CAACH;AAEpC,iEAAiE;AACjE,MAAMI,mBAAmBN,QACvBD,KAAKQ,IAAI,CAACH,gBAAgB;AAE5B,iEAAiE;AACjE,MAAMI,eAAeR,QACnBD,KAAKQ,IAAI,CAACH,gBAAgB;AAE5B,iEAAiE;AACjE,MAAMK,4BAA4BT,QAChCD,KAAKQ,IAAI,CAACH,gBAAgB;AAE5B,iEAAiE;AACjE,MAAMM,kBAAkBV,QACtBD,KAAKQ,IAAI,CAACH,gBAAgB;AAG5B,OAAO,MAAMO,aAAqCL,iBAAiBK,UAAU,CAAC;AAE9E,OAAO,MAAMC,SAA6BJ,aAAaI,MAAM,CAAC;AAE9D,OAAO,MAAMC,+BAIXJ,0BAA0BK,OAAO,IAAIL,0BAA0B;AAEjE,OAAO,MAAMM,qBAGuBL,gBAAgBI,OAAO,IAAIJ,gBAAgB"}
@@ -1,15 +1,9 @@
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.sortObjectKeys = void 0;
8
- const sortObjectKeys = (object) => Object.keys(object)
9
- .sort()
10
- .reduce((obj, key) => {
11
- obj[key] = object[key];
12
- return obj;
13
- }, {});
14
- exports.sortObjectKeys = sortObjectKeys;
4
+ */ export const sortObjectKeys = (object)=>Object.keys(object).sort().reduce((obj, key)=>{
5
+ obj[key] = object[key];
6
+ return obj;
7
+ }, {});
8
+
15
9
  //# sourceMappingURL=object.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"object.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/object.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEI,MAAM,cAAc,GAAG,CAAI,MAEjC,EAAwB,EAAE,CACzB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;KAChB,IAAI,EAAE;KACN,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACnB,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACvB,OAAO,GAAG,CAAC;AACb,CAAC,EAAE,EAAE,CAAC,CAAC;AARE,QAAA,cAAc,kBAQhB"}
1
+ {"version":3,"sources":["../../../../../packages/nx-plugin/src/utils/object.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const sortObjectKeys = <T>(object: {\n [key: string]: T;\n}): { [key: string]: T } =>\n Object.keys(object)\n .sort()\n .reduce((obj, key) => {\n obj[key] = object[key];\n return obj;\n }, {});\n"],"names":["sortObjectKeys","object","Object","keys","sort","reduce","obj","key"],"mappings":"AAAA;;;CAGC,GAED,OAAO,MAAMA,iBAAiB,CAAIC,SAGhCC,OAAOC,IAAI,CAACF,QACTG,IAAI,GACJC,MAAM,CAAC,CAACC,KAAKC;QACZD,GAAG,CAACC,IAAI,GAAGN,MAAM,CAACM,IAAI;QACtB,OAAOD;IACT,GAAG,CAAC,GAAG"}
@@ -1,27 +1,23 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.toProjectRelativePath = exports.getRelativePathToRootByDirectory = exports.getRelativePathToRoot = void 0;
4
- const tslib_1 = require("tslib");
5
- const path = tslib_1.__importStar(require("path"));
6
- const nx_1 = require("./nx");
7
- const getRelativePathToRoot = (tree, projectName) => {
8
- const projectConfig = (0, nx_1.readProjectConfigurationUnqualified)(tree, projectName);
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */ import * as path from "path";
5
+ import { readProjectConfigurationUnqualified } from "./nx.js";
6
+ export const getRelativePathToRoot = (tree, projectName)=>{
7
+ const projectConfig = readProjectConfigurationUnqualified(tree, projectName);
9
8
  const projectRoot = projectConfig.root;
10
- return (0, exports.getRelativePathToRootByDirectory)(projectRoot);
9
+ return getRelativePathToRootByDirectory(projectRoot);
11
10
  };
12
- exports.getRelativePathToRoot = getRelativePathToRoot;
13
- const getRelativePathToRootByDirectory = (directory) => {
11
+ export const getRelativePathToRootByDirectory = (directory)=>{
14
12
  // Count the number of path segments to determine how many '../' we need
15
13
  const levels = directory.split('/').filter(Boolean).length;
16
14
  // Create the relative path back to root
17
15
  return '../'.repeat(levels);
18
16
  };
19
- exports.getRelativePathToRootByDirectory = getRelativePathToRootByDirectory;
20
17
  /**
21
18
  * Convert an absolute path within a project to a path relative to the project root.
22
- */
23
- const toProjectRelativePath = (projectConfiguration, absolutePath) => {
19
+ */ export const toProjectRelativePath = (projectConfiguration, absolutePath)=>{
24
20
  return path.relative(projectConfiguration.root, absolutePath);
25
21
  };
26
- exports.toProjectRelativePath = toProjectRelativePath;
22
+
27
23
  //# sourceMappingURL=paths.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/paths.ts"],"names":[],"mappings":";;;;AAKA,mDAA6B;AAC7B,6BAA2D;AAEpD,MAAM,qBAAqB,GAAG,CACnC,IAAU,EACV,WAAmB,EACX,EAAE;IACV,MAAM,aAAa,GAAG,IAAA,wCAAmC,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC7E,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC;IACvC,OAAO,IAAA,wCAAgC,EAAC,WAAW,CAAC,CAAC;AACvD,CAAC,CAAC;AAPW,QAAA,qBAAqB,yBAOhC;AAEK,MAAM,gCAAgC,GAAG,CAAC,SAAiB,EAAU,EAAE;IAC5E,wEAAwE;IACxE,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IAC3D,wCAAwC;IACxC,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC,CAAC;AALW,QAAA,gCAAgC,oCAK3C;AAEF;;GAEG;AACI,MAAM,qBAAqB,GAAG,CACnC,oBAA0C,EAC1C,YAAoB,EACZ,EAAE;IACV,OAAO,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AAChE,CAAC,CAAC;AALW,QAAA,qBAAqB,yBAKhC"}
1
+ {"version":3,"sources":["../../../../../packages/nx-plugin/src/utils/paths.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport type { ProjectConfiguration, Tree } from '@nx/devkit';\nimport * as path from 'path';\nimport { readProjectConfigurationUnqualified } from './nx';\n\nexport const getRelativePathToRoot = (\n tree: Tree,\n projectName: string,\n): string => {\n const projectConfig = readProjectConfigurationUnqualified(tree, projectName);\n const projectRoot = projectConfig.root;\n return getRelativePathToRootByDirectory(projectRoot);\n};\n\nexport const getRelativePathToRootByDirectory = (directory: string): string => {\n // Count the number of path segments to determine how many '../' we need\n const levels = directory.split('/').filter(Boolean).length;\n // Create the relative path back to root\n return '../'.repeat(levels);\n};\n\n/**\n * Convert an absolute path within a project to a path relative to the project root.\n */\nexport const toProjectRelativePath = (\n projectConfiguration: ProjectConfiguration,\n absolutePath: string,\n): string => {\n return path.relative(projectConfiguration.root, absolutePath);\n};\n"],"names":["path","readProjectConfigurationUnqualified","getRelativePathToRoot","tree","projectName","projectConfig","projectRoot","root","getRelativePathToRootByDirectory","directory","levels","split","filter","Boolean","length","repeat","toProjectRelativePath","projectConfiguration","absolutePath","relative"],"mappings":"AAAA;;;CAGC,GAED,YAAYA,UAAU,OAAO;AAC7B,SAASC,mCAAmC,QAAQ,UAAO;AAE3D,OAAO,MAAMC,wBAAwB,CACnCC,MACAC;IAEA,MAAMC,gBAAgBJ,oCAAoCE,MAAMC;IAChE,MAAME,cAAcD,cAAcE,IAAI;IACtC,OAAOC,iCAAiCF;AAC1C,EAAE;AAEF,OAAO,MAAME,mCAAmC,CAACC;IAC/C,wEAAwE;IACxE,MAAMC,SAASD,UAAUE,KAAK,CAAC,KAAKC,MAAM,CAACC,SAASC,MAAM;IAC1D,wCAAwC;IACxC,OAAO,MAAMC,MAAM,CAACL;AACtB,EAAE;AAEF;;CAEC,GACD,OAAO,MAAMM,wBAAwB,CACnCC,sBACAC;IAEA,OAAOlB,KAAKmB,QAAQ,CAACF,qBAAqBV,IAAI,EAAEW;AAClD,EAAE"}
@@ -1,15 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getPackageManagerDisplayCommands = 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 commands_1 = require("./commands");
4
+ */ import { detectPackageManager } from "@nx/devkit";
5
+ import { PACKAGE_MANAGER_COMMANDS } from "./commands.js";
10
6
  /**
11
7
  * Returns display-friendly command prefixes for the detected package manager.
12
- */
13
- const getPackageManagerDisplayCommands = (pm = (0, devkit_1.detectPackageManager)()) => commands_1.PACKAGE_MANAGER_COMMANDS[pm] ?? commands_1.PACKAGE_MANAGER_COMMANDS['npm'];
14
- exports.getPackageManagerDisplayCommands = getPackageManagerDisplayCommands;
8
+ */ export const getPackageManagerDisplayCommands = (pm = detectPackageManager())=>PACKAGE_MANAGER_COMMANDS[pm] ?? PACKAGE_MANAGER_COMMANDS['npm'];
9
+
15
10
  //# sourceMappingURL=pkg-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pkg-manager.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/pkg-manager.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAAkD;AAClD,yCAGoB;AAIpB;;GAEG;AACI,MAAM,gCAAgC,GAAG,CAC9C,EAAE,GAAG,IAAA,6BAAoB,GAAE,EACI,EAAE,CACjC,mCAAwB,CAAC,EAAE,CAAC,IAAI,mCAAwB,CAAC,KAAK,CAAC,CAAC;AAHrD,QAAA,gCAAgC,oCAGqB"}
1
+ {"version":3,"sources":["../../../../../packages/nx-plugin/src/utils/pkg-manager.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { detectPackageManager } from '@nx/devkit';\nimport {\n PACKAGE_MANAGER_COMMANDS,\n type PackageManagerDisplayCommands,\n} from './commands';\n\nexport type { PackageManagerDisplayCommands };\n\n/**\n * Returns display-friendly command prefixes for the detected package manager.\n */\nexport const getPackageManagerDisplayCommands = (\n pm = detectPackageManager(),\n): PackageManagerDisplayCommands =>\n PACKAGE_MANAGER_COMMANDS[pm] ?? PACKAGE_MANAGER_COMMANDS['npm'];\n"],"names":["detectPackageManager","PACKAGE_MANAGER_COMMANDS","getPackageManagerDisplayCommands","pm"],"mappings":"AAAA;;;CAGC,GACD,SAASA,oBAAoB,QAAQ,aAAa;AAClD,SACEC,wBAAwB,QAEnB,gBAAa;AAIpB;;CAEC,GACD,OAAO,MAAMC,mCAAmC,CAC9CC,KAAKH,sBAAsB,GAE3BC,wBAAwB,CAACE,GAAG,IAAIF,wBAAwB,CAAC,MAAM,CAAC"}
@@ -1,13 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ensurePnpmIgnoresWorkspaceRootCheck = exports.registerPnpmBuiltDependencies = void 0;
4
- const tslib_1 = require("tslib");
5
1
  /**
6
2
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
7
3
  * SPDX-License-Identifier: Apache-2.0
8
- */
9
- const devkit_1 = require("@nx/devkit");
10
- const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
4
+ */ import { detectPackageManager } from "@nx/devkit";
5
+ import yaml from "js-yaml";
11
6
  const WORKSPACE_FILE = 'pnpm-workspace.yaml';
12
7
  /**
13
8
  * Merge `allowBuilds` (pnpm 11) / `onlyBuiltDependencies` (pnpm 10) entries
@@ -24,20 +19,21 @@ const WORKSPACE_FILE = 'pnpm-workspace.yaml';
24
19
  *
25
20
  * Only `true` entries are also added to `onlyBuiltDependencies` (pnpm 10's
26
21
  * allowlist has no equivalent of the `false` decision).
27
- */
28
- const registerPnpmBuiltDependencies = (tree, entries) => {
29
- if ((0, devkit_1.detectPackageManager)(tree.root) !== 'pnpm') {
22
+ */ export const registerPnpmBuiltDependencies = (tree, entries)=>{
23
+ if (detectPackageManager(tree.root) !== 'pnpm') {
30
24
  return;
31
25
  }
32
26
  if (!tree.exists(WORKSPACE_FILE)) {
33
27
  return;
34
28
  }
35
29
  const original = tree.read(WORKSPACE_FILE, 'utf-8') ?? '';
36
- const parsed = js_yaml_1.default.load(original) ?? {};
37
- const allowBuilds = { ...(parsed.allowBuilds ?? {}) };
30
+ const parsed = yaml.load(original) ?? {};
31
+ const allowBuilds = {
32
+ ...parsed.allowBuilds ?? {}
33
+ };
38
34
  const onlyBuiltDependencies = new Set(parsed.onlyBuiltDependencies ?? []);
39
35
  let changed = false;
40
- for (const [pkg, decision] of Object.entries(entries)) {
36
+ for (const [pkg, decision] of Object.entries(entries)){
41
37
  if (allowBuilds[pkg] !== decision) {
42
38
  allowBuilds[pkg] = decision;
43
39
  changed = true;
@@ -51,10 +47,13 @@ const registerPnpmBuiltDependencies = (tree, entries) => {
51
47
  return;
52
48
  }
53
49
  parsed.allowBuilds = allowBuilds;
54
- parsed.onlyBuiltDependencies = [...onlyBuiltDependencies];
55
- tree.write(WORKSPACE_FILE, js_yaml_1.default.dump(parsed, { quotingType: "'" }));
50
+ parsed.onlyBuiltDependencies = [
51
+ ...onlyBuiltDependencies
52
+ ];
53
+ tree.write(WORKSPACE_FILE, yaml.dump(parsed, {
54
+ quotingType: "'"
55
+ }));
56
56
  };
57
- exports.registerPnpmBuiltDependencies = registerPnpmBuiltDependencies;
58
57
  /**
59
58
  * Set `ignoreWorkspaceRootCheck: true` in `pnpm-workspace.yaml` so `pnpm add`
60
59
  * from the workspace root does not error with `ERR_PNPM_ADDING_TO_ROOT`.
@@ -64,22 +63,23 @@ exports.registerPnpmBuiltDependencies = registerPnpmBuiltDependencies;
64
63
  * accepts the yaml form, so writing it here works for both majors.
65
64
  *
66
65
  * No-op for non-pnpm workspaces or when `pnpm-workspace.yaml` is absent.
67
- */
68
- const ensurePnpmIgnoresWorkspaceRootCheck = (tree) => {
69
- if ((0, devkit_1.detectPackageManager)(tree.root) !== 'pnpm') {
66
+ */ export const ensurePnpmIgnoresWorkspaceRootCheck = (tree)=>{
67
+ if (detectPackageManager(tree.root) !== 'pnpm') {
70
68
  return false;
71
69
  }
72
70
  if (!tree.exists(WORKSPACE_FILE)) {
73
71
  return false;
74
72
  }
75
73
  const original = tree.read(WORKSPACE_FILE, 'utf-8') ?? '';
76
- const parsed = js_yaml_1.default.load(original) ?? {};
74
+ const parsed = yaml.load(original) ?? {};
77
75
  if (parsed.ignoreWorkspaceRootCheck === true) {
78
76
  return false;
79
77
  }
80
78
  parsed.ignoreWorkspaceRootCheck = true;
81
- tree.write(WORKSPACE_FILE, js_yaml_1.default.dump(parsed, { quotingType: "'" }));
79
+ tree.write(WORKSPACE_FILE, yaml.dump(parsed, {
80
+ quotingType: "'"
81
+ }));
82
82
  return true;
83
83
  };
84
- exports.ensurePnpmIgnoresWorkspaceRootCheck = ensurePnpmIgnoresWorkspaceRootCheck;
84
+
85
85
  //# sourceMappingURL=pnpm-workspace.js.map