@aws/nx-plugin 1.0.0-rc.0 → 1.0.0-rc.10

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 (537) hide show
  1. package/LICENSE-THIRD-PARTY +3399 -4104
  2. package/README.md +8 -8
  3. package/executors.json +9 -0
  4. package/generators.json +44 -5
  5. package/package.json +16 -12
  6. package/sdk/license.d.ts +8 -0
  7. package/sdk/license.js +13 -0
  8. package/sdk/license.js.map +1 -0
  9. package/src/connection/agent-runtime-config.d.ts +1 -1
  10. package/src/connection/agent-runtime-config.js.map +1 -1
  11. package/src/connection/agent-serve-local.d.ts +2 -2
  12. package/src/connection/agent-serve-local.js +1 -1
  13. package/src/connection/agent-serve-local.js.map +1 -1
  14. package/src/connection/generator.d.ts +5 -5
  15. package/src/connection/generator.js +58 -39
  16. package/src/connection/generator.js.map +1 -1
  17. package/src/connection/serve-local.d.ts +1 -1
  18. package/src/connection/serve-local.js +1 -1
  19. package/src/connection/serve-local.js.map +1 -1
  20. package/src/infra/app/__snapshots__/generator.spec.ts.snap +49 -60
  21. package/src/infra/app/files/app/src/main.ts.template +2 -2
  22. package/src/infra/app/generator.d.ts +3 -3
  23. package/src/infra/app/generator.js +25 -23
  24. package/src/infra/app/generator.js.map +1 -1
  25. package/src/infra/app/schema.d.ts +1 -1
  26. package/src/infra/app/schema.json +1 -1
  27. package/src/license/__snapshots__/config.spec.ts.snap +23 -0
  28. package/src/license/config-types.d.ts +18 -1
  29. package/src/license/config-types.js +4 -0
  30. package/src/license/config-types.js.map +1 -1
  31. package/src/license/config.d.ts +65 -7
  32. package/src/license/config.js +315 -7
  33. package/src/license/config.js.map +1 -1
  34. package/src/license/dependency-check/check.d.ts +16 -0
  35. package/src/license/dependency-check/check.js +111 -0
  36. package/src/license/dependency-check/check.js.map +1 -0
  37. package/src/license/dependency-check/collectors/collector.d.ts +21 -0
  38. package/src/license/dependency-check/collectors/collector.js +76 -0
  39. package/src/license/dependency-check/collectors/collector.js.map +1 -0
  40. package/src/license/dependency-check/collectors/npm-collector.d.ts +10 -0
  41. package/src/license/dependency-check/collectors/npm-collector.js +75 -0
  42. package/src/license/dependency-check/collectors/npm-collector.js.map +1 -0
  43. package/src/license/dependency-check/collectors/python-collector.d.ts +23 -0
  44. package/src/license/dependency-check/collectors/python-collector.js +121 -0
  45. package/src/license/dependency-check/collectors/python-collector.js.map +1 -0
  46. package/src/license/dependency-check/evaluator.d.ts +9 -0
  47. package/src/license/dependency-check/evaluator.js +122 -0
  48. package/src/license/dependency-check/evaluator.js.map +1 -0
  49. package/src/license/dependency-check/executor-schema.json +6 -0
  50. package/src/license/dependency-check/executor.d.ts +9 -0
  51. package/src/license/dependency-check/executor.js +43 -0
  52. package/src/license/dependency-check/executor.js.map +1 -0
  53. package/src/license/dependency-check/pre-approved.d.ts +6 -0
  54. package/src/license/dependency-check/pre-approved.js +1280 -0
  55. package/src/license/dependency-check/pre-approved.js.map +1 -0
  56. package/src/license/dependency-check/types.d.ts +45 -0
  57. package/src/license/dependency-check/types.js +7 -0
  58. package/src/license/dependency-check/types.js.map +1 -0
  59. package/src/license/generator.d.ts +3 -3
  60. package/src/license/generator.js +113 -14
  61. package/src/license/generator.js.map +1 -1
  62. package/src/license/index.d.ts +8 -0
  63. package/src/license/index.js +13 -0
  64. package/src/license/index.js.map +1 -0
  65. package/src/license/known-exceptions.d.ts +7 -0
  66. package/src/license/known-exceptions.js +33 -0
  67. package/src/license/known-exceptions.js.map +1 -0
  68. package/src/license/schema.d.ts +5 -0
  69. package/src/license/schema.json +6 -0
  70. package/src/license/sync/generator.d.ts +2 -2
  71. package/src/license/sync/generator.js +15 -15
  72. package/src/license/sync/generator.js.map +1 -1
  73. package/src/license/sync/project-file-sync.d.ts +3 -3
  74. package/src/license/sync/project-file-sync.js.map +1 -1
  75. package/src/mcp-server/generator-info.d.ts +5 -1
  76. package/src/mcp-server/generator-info.js +7 -7
  77. package/src/mcp-server/generator-info.js.map +1 -1
  78. package/src/mcp-server/guide-pipeline.d.ts +1 -1
  79. package/src/mcp-server/guide-pipeline.js +10 -12
  80. package/src/mcp-server/guide-pipeline.js.map +1 -1
  81. package/src/mcp-server/mdx-ast.js +4 -0
  82. package/src/mcp-server/mdx-ast.js.map +1 -1
  83. package/src/mcp-server/server.js +3 -3
  84. package/src/mcp-server/server.js.map +1 -1
  85. package/src/mcp-server/tools/create-workspace-command.d.ts +1 -1
  86. package/src/mcp-server/tools/create-workspace-command.js +5 -5
  87. package/src/mcp-server/tools/create-workspace-command.js.map +1 -1
  88. package/src/mcp-server/tools/general-guidance.d.ts +2 -2
  89. package/src/mcp-server/tools/general-guidance.js +2 -2
  90. package/src/mcp-server/tools/general-guidance.js.map +1 -1
  91. package/src/mcp-server/tools/generator-guide.d.ts +2 -2
  92. package/src/mcp-server/tools/generator-guide.js +2 -2
  93. package/src/mcp-server/tools/generator-guide.js.map +1 -1
  94. package/src/mcp-server/tools/list-generators.d.ts +2 -2
  95. package/src/mcp-server/tools/list-generators.js +1 -1
  96. package/src/mcp-server/tools/list-generators.js.map +1 -1
  97. package/src/open-api/ts-client/__snapshots__/generator.reserved-keywords.spec.ts.snap +1 -1
  98. package/src/open-api/ts-client/generator.d.ts +3 -3
  99. package/src/open-api/ts-client/generator.js +2 -2
  100. package/src/open-api/ts-client/generator.js.map +1 -1
  101. package/src/open-api/ts-hooks/generator.d.ts +3 -3
  102. package/src/open-api/ts-hooks/generator.js +2 -2
  103. package/src/open-api/ts-hooks/generator.js.map +1 -1
  104. package/src/open-api/ts-hooks/generator.spec.tsx +14 -14
  105. package/src/open-api/ts-metadata/generator.d.ts +3 -3
  106. package/src/open-api/ts-metadata/generator.js +1 -1
  107. package/src/open-api/ts-metadata/generator.js.map +1 -1
  108. package/src/open-api/utils/codegen-data/languages.d.ts +5 -1
  109. package/src/open-api/utils/codegen-data/languages.js +4 -4
  110. package/src/open-api/utils/codegen-data/languages.js.map +1 -1
  111. package/src/open-api/utils/codegen-data.d.ts +6 -2
  112. package/src/open-api/utils/codegen-data.js +6 -6
  113. package/src/open-api/utils/codegen-data.js.map +1 -1
  114. package/src/open-api/utils/normalise.d.ts +5 -1
  115. package/src/open-api/utils/normalise.js +5 -5
  116. package/src/open-api/utils/normalise.js.map +1 -1
  117. package/src/open-api/utils/parse.d.ts +2 -2
  118. package/src/open-api/utils/parse.js +4 -0
  119. package/src/open-api/utils/parse.js.map +1 -1
  120. package/src/open-api/utils/refs.d.ts +1 -1
  121. package/src/preset/__snapshots__/generator.spec.ts.snap +128 -14
  122. package/src/preset/generator.d.ts +4 -4
  123. package/src/preset/generator.js +24 -19
  124. package/src/preset/generator.js.map +1 -1
  125. package/src/preset/schema.d.ts +7 -5
  126. package/src/preset/schema.json +9 -4
  127. package/src/py/agent/__snapshots__/generator.spec.ts.snap +10 -9
  128. package/src/py/agent/a2a-connection/generator.d.ts +3 -3
  129. package/src/py/agent/a2a-connection/generator.js +8 -7
  130. package/src/py/agent/a2a-connection/generator.js.map +1 -1
  131. package/src/py/agent/files/common/agent.py.template +2 -0
  132. package/src/py/agent/files/deploy/Dockerfile.template +3 -3
  133. package/src/py/agent/files/http/init.py.template +2 -2
  134. package/src/py/agent/files/http/main.py.template +0 -1
  135. package/src/py/agent/generator.d.ts +3 -3
  136. package/src/py/agent/generator.js +45 -39
  137. package/src/py/agent/generator.js.map +1 -1
  138. package/src/py/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +4 -0
  139. package/src/py/agent/mcp-connection/generator.d.ts +3 -3
  140. package/src/py/agent/mcp-connection/generator.js +5 -5
  141. package/src/py/agent/mcp-connection/generator.js.map +1 -1
  142. package/src/py/agent/react-connection/__snapshots__/generator.spec.ts.snap +3 -3
  143. package/src/py/agent/react-connection/generator.d.ts +3 -3
  144. package/src/py/agent/react-connection/generator.js +8 -8
  145. package/src/py/agent/react-connection/generator.js.map +1 -1
  146. package/src/py/agent/react-connection/serve-local.d.ts +2 -2
  147. package/src/py/agent/react-connection/serve-local.js.map +1 -1
  148. package/src/py/agent/schema.d.ts +8 -8
  149. package/src/py/agent/schema.json +18 -18
  150. package/src/py/api/generator.d.ts +3 -3
  151. package/src/py/api/generator.js +2 -2
  152. package/src/py/api/generator.js.map +1 -1
  153. package/src/py/api/schema.d.ts +4 -6
  154. package/src/py/api/schema.json +15 -15
  155. package/src/py/fast-api/__snapshots__/generator.spec.ts.snap +6 -6
  156. package/src/py/fast-api/generator.d.ts +3 -3
  157. package/src/py/fast-api/generator.js +73 -55
  158. package/src/py/fast-api/generator.js.map +1 -1
  159. package/src/py/fast-api/react/generator.d.ts +3 -3
  160. package/src/py/fast-api/react/generator.js +3 -3
  161. package/src/py/fast-api/react/generator.js.map +1 -1
  162. package/src/py/fast-api/react/open-api.d.ts +1 -1
  163. package/src/py/fast-api/react/open-api.js +5 -2
  164. package/src/py/fast-api/react/open-api.js.map +1 -1
  165. package/src/py/fast-api/schema.d.ts +4 -6
  166. package/src/py/fast-api/schema.json +15 -15
  167. package/src/py/lambda-function/__snapshots__/generator.spec.ts.snap +2 -2
  168. package/src/py/lambda-function/files/handler/__lambdaFunctionSnakeCase__.py.template +6 -6
  169. package/src/py/lambda-function/generator.d.ts +3 -3
  170. package/src/py/lambda-function/generator.js +34 -31
  171. package/src/py/lambda-function/generator.js.map +1 -1
  172. package/src/py/lambda-function/schema.d.ts +7 -4
  173. package/src/py/lambda-function/schema.json +15 -7
  174. package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +5 -5
  175. package/src/py/mcp-server/generator.d.ts +3 -3
  176. package/src/py/mcp-server/generator.js +44 -37
  177. package/src/py/mcp-server/generator.js.map +1 -1
  178. package/src/py/mcp-server/schema.d.ts +5 -9
  179. package/src/py/mcp-server/schema.json +15 -15
  180. package/src/py/project/generator.d.ts +3 -3
  181. package/src/py/project/generator.js +88 -69
  182. package/src/py/project/generator.js.map +1 -1
  183. package/src/py/project/schema.d.ts +1 -1
  184. package/src/py/project/schema.json +2 -2
  185. package/src/smithy/project/__snapshots__/generator.spec.ts.snap +18 -16
  186. package/src/smithy/project/files/build.Dockerfile.template +1 -0
  187. package/src/smithy/project/generator.d.ts +3 -3
  188. package/src/smithy/project/generator.js +31 -29
  189. package/src/smithy/project/generator.js.map +1 -1
  190. package/src/smithy/react-connection/generator.d.ts +3 -3
  191. package/src/smithy/react-connection/generator.js +4 -4
  192. package/src/smithy/react-connection/generator.js.map +1 -1
  193. package/src/smithy/ts/api/__snapshots__/generator.spec.ts.snap +12 -38
  194. package/src/smithy/ts/api/generator.d.ts +3 -3
  195. package/src/smithy/ts/api/generator.js +89 -66
  196. package/src/smithy/ts/api/generator.js.map +1 -1
  197. package/src/smithy/ts/api/schema.d.ts +4 -6
  198. package/src/smithy/ts/api/schema.json +15 -15
  199. package/src/terraform/project/generator.d.ts +3 -3
  200. package/src/terraform/project/generator.js +14 -9
  201. package/src/terraform/project/generator.js.map +1 -1
  202. package/src/trpc/backend/__snapshots__/generator.spec.ts.snap +6 -6
  203. package/src/trpc/backend/files/src/client/index.ts.template +5 -5
  204. package/src/trpc/backend/files/src/handler.ts.template +2 -2
  205. package/src/trpc/backend/generator.d.ts +3 -3
  206. package/src/trpc/backend/generator.js +80 -61
  207. package/src/trpc/backend/generator.js.map +1 -1
  208. package/src/trpc/backend/schema.d.ts +5 -5
  209. package/src/trpc/backend/schema.json +15 -15
  210. package/src/trpc/react/__snapshots__/generator.spec.ts.snap +3 -3
  211. package/src/trpc/react/files/src/components/__apiNameClassName__ClientProvider.tsx.template +14 -14
  212. package/src/trpc/react/generator.d.ts +3 -3
  213. package/src/trpc/react/generator.js +11 -10
  214. package/src/trpc/react/generator.js.map +1 -1
  215. package/src/ts/agent/__snapshots__/generator.spec.ts.snap +11 -5
  216. package/src/ts/agent/a2a-connection/generator.d.ts +3 -3
  217. package/src/ts/agent/a2a-connection/generator.js +9 -8
  218. package/src/ts/agent/a2a-connection/generator.js.map +1 -1
  219. package/src/ts/agent/files/common/agent.ts.template +6 -2
  220. package/src/ts/agent/files/deploy/Dockerfile.template +1 -1
  221. package/src/ts/agent/generator.d.ts +3 -3
  222. package/src/ts/agent/generator.js +40 -35
  223. package/src/ts/agent/generator.js.map +1 -1
  224. package/src/ts/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +5 -2
  225. package/src/ts/agent/mcp-connection/generator.d.ts +3 -3
  226. package/src/ts/agent/mcp-connection/generator.js +6 -6
  227. package/src/ts/agent/mcp-connection/generator.js.map +1 -1
  228. package/src/ts/agent/react-connection/files/src/components/__agentNameClassName__AgentClientProvider.tsx.template +8 -8
  229. package/src/ts/agent/react-connection/generator.d.ts +3 -3
  230. package/src/ts/agent/react-connection/generator.js +15 -15
  231. package/src/ts/agent/react-connection/generator.js.map +1 -1
  232. package/src/ts/agent/react-connection/serve-local.d.ts +2 -2
  233. package/src/ts/agent/react-connection/serve-local.js +2 -2
  234. package/src/ts/agent/schema.d.ts +8 -8
  235. package/src/ts/agent/schema.json +18 -18
  236. package/src/ts/api/generator.d.ts +3 -3
  237. package/src/ts/api/generator.js +10 -8
  238. package/src/ts/api/generator.js.map +1 -1
  239. package/src/ts/api/schema.d.ts +5 -4
  240. package/src/ts/api/schema.json +15 -15
  241. package/src/ts/astro-docs/__snapshots__/generator.spec.ts.snap +7 -8
  242. package/src/ts/astro-docs/generator.d.ts +3 -3
  243. package/src/ts/astro-docs/generator.js +14 -11
  244. package/src/ts/astro-docs/generator.js.map +1 -1
  245. package/src/ts/docs/generator.d.ts +3 -3
  246. package/src/ts/docs/generator.js.map +1 -1
  247. package/src/ts/dynamodb/__snapshots__/generator.spec.ts.snap +1502 -0
  248. package/src/ts/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +45 -0
  249. package/src/ts/dynamodb/agent-connection/generator.d.ts +10 -0
  250. package/src/ts/dynamodb/agent-connection/generator.js +32 -0
  251. package/src/ts/dynamodb/agent-connection/generator.js.map +1 -0
  252. package/src/ts/dynamodb/agent-connection/schema.d.ts +14 -0
  253. package/src/ts/dynamodb/agent-connection/schema.json +22 -0
  254. package/src/ts/dynamodb/files/scripts/create-local-table.ts.template +161 -0
  255. package/src/ts/dynamodb/files/scripts/start-container.ts.template +81 -0
  256. package/src/ts/dynamodb/files/src/client.ts.template +45 -0
  257. package/src/ts/dynamodb/files/src/constants.ts.template +9 -0
  258. package/src/ts/dynamodb/files/src/entities/example.ts.template +47 -0
  259. package/src/ts/dynamodb/files/src/entities/index.ts.template +1 -0
  260. package/src/ts/dynamodb/files/src/gsi.ts.template +14 -0
  261. package/src/ts/dynamodb/files/src/index.ts.template +11 -0
  262. package/src/ts/dynamodb/generator.d.ts +10 -0
  263. package/src/ts/dynamodb/generator.js +106 -0
  264. package/src/ts/dynamodb/generator.js.map +1 -0
  265. package/src/ts/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +45 -0
  266. package/src/ts/dynamodb/mcp-server-connection/generator.d.ts +10 -0
  267. package/src/ts/dynamodb/mcp-server-connection/generator.js +32 -0
  268. package/src/ts/dynamodb/mcp-server-connection/generator.js.map +1 -0
  269. package/src/ts/dynamodb/mcp-server-connection/schema.d.ts +14 -0
  270. package/src/ts/dynamodb/mcp-server-connection/schema.json +22 -0
  271. package/src/ts/dynamodb/schema.d.ts +14 -0
  272. package/src/ts/dynamodb/schema.json +52 -0
  273. package/src/ts/dynamodb/smithy-connection/__snapshots__/generator.spec.ts.snap +23 -0
  274. package/src/ts/dynamodb/smithy-connection/generator.d.ts +10 -0
  275. package/src/ts/dynamodb/smithy-connection/generator.js +30 -0
  276. package/src/ts/dynamodb/smithy-connection/generator.js.map +1 -0
  277. package/src/ts/dynamodb/smithy-connection/schema.d.ts +12 -0
  278. package/src/ts/dynamodb/smithy-connection/schema.json +18 -0
  279. package/src/ts/dynamodb/trpc-connection/__snapshots__/generator.spec.ts.snap +23 -0
  280. package/src/ts/dynamodb/trpc-connection/generator.d.ts +10 -0
  281. package/src/ts/dynamodb/trpc-connection/generator.js +30 -0
  282. package/src/ts/dynamodb/trpc-connection/generator.js.map +1 -0
  283. package/src/ts/dynamodb/trpc-connection/schema.d.ts +12 -0
  284. package/src/ts/dynamodb/trpc-connection/schema.json +18 -0
  285. package/src/ts/lambda-function/__snapshots__/generator.spec.ts.snap +2 -2
  286. package/src/ts/lambda-function/files/handler/__lambdaFunctionKebabCase__.ts.template +10 -10
  287. package/src/ts/lambda-function/generator.d.ts +3 -3
  288. package/src/ts/lambda-function/generator.js +41 -36
  289. package/src/ts/lambda-function/generator.js.map +1 -1
  290. package/src/ts/lambda-function/schema.d.ts +7 -4
  291. package/src/ts/lambda-function/schema.json +15 -7
  292. package/src/ts/lib/__snapshots__/generator.spec.ts.snap +32 -65
  293. package/src/ts/lib/__snapshots__/vitest.spec.ts.snap +24 -0
  294. package/src/ts/lib/biome.d.ts +7 -0
  295. package/src/ts/lib/biome.js +58 -0
  296. package/src/ts/lib/biome.js.map +1 -0
  297. package/src/ts/lib/generator.d.ts +3 -3
  298. package/src/ts/lib/generator.js +27 -29
  299. package/src/ts/lib/generator.js.map +1 -1
  300. package/src/ts/lib/grit/vitest-pass-with-no-tests.grit +1 -1
  301. package/src/ts/lib/ts-project-utils.d.ts +12 -2
  302. package/src/ts/lib/ts-project-utils.js +30 -10
  303. package/src/ts/lib/ts-project-utils.js.map +1 -1
  304. package/src/ts/lib/vitest.d.ts +2 -2
  305. package/src/ts/lib/vitest.js +1 -1
  306. package/src/ts/lib/vitest.js.map +1 -1
  307. package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +4 -4
  308. package/src/ts/mcp-server/generator.d.ts +3 -3
  309. package/src/ts/mcp-server/generator.js +46 -24
  310. package/src/ts/mcp-server/generator.js.map +1 -1
  311. package/src/ts/mcp-server/schema.d.ts +5 -9
  312. package/src/ts/mcp-server/schema.json +15 -15
  313. package/src/ts/nx-generator/__snapshots__/generator.spec.ts.snap +20 -15
  314. package/src/ts/nx-generator/files/nx-plugin-for-aws/generator/generator.spec.ts.template +1 -1
  315. package/src/ts/nx-generator/generator.d.ts +2 -2
  316. package/src/ts/nx-generator/generator.js +23 -19
  317. package/src/ts/nx-generator/generator.js.map +1 -1
  318. package/src/ts/nx-plugin/generator.d.ts +3 -3
  319. package/src/ts/nx-plugin/generator.js +12 -11
  320. package/src/ts/nx-plugin/generator.js.map +1 -1
  321. package/src/ts/nx-plugin/utils.d.ts +1 -1
  322. package/src/ts/nx-plugin/utils.js +10 -4
  323. package/src/ts/nx-plugin/utils.js.map +1 -1
  324. package/src/ts/rdb/__snapshots__/generator.spec.ts.snap +120 -60
  325. package/src/ts/rdb/agent-connection/generator.d.ts +3 -3
  326. package/src/ts/rdb/agent-connection/generator.js +4 -4
  327. package/src/ts/rdb/agent-connection/generator.js.map +1 -1
  328. package/src/ts/rdb/files/prisma.config.ts.template +1 -1
  329. package/src/ts/rdb/files/scripts/pull-image.ts.template +15 -0
  330. package/src/ts/rdb/files/scripts/{docker-start.ts.template → start-container.ts.template} +24 -24
  331. package/src/ts/rdb/files/scripts/wait-for-db.ts.template +3 -3
  332. package/src/ts/rdb/files/src/create-db-user-handler.ts.template +2 -2
  333. package/src/ts/rdb/files/src/migration-handler.ts.template +2 -2
  334. package/src/ts/rdb/files/src/prisma.ts.template +2 -2
  335. package/src/ts/rdb/generator.d.ts +3 -3
  336. package/src/ts/rdb/generator.js +103 -82
  337. package/src/ts/rdb/generator.js.map +1 -1
  338. package/src/ts/rdb/mcp-server-connection/generator.d.ts +3 -3
  339. package/src/ts/rdb/mcp-server-connection/generator.js +4 -4
  340. package/src/ts/rdb/mcp-server-connection/generator.js.map +1 -1
  341. package/src/ts/rdb/schema.d.ts +5 -5
  342. package/src/ts/rdb/schema.json +13 -13
  343. package/src/ts/rdb/smithy-connection/generator.d.ts +3 -3
  344. package/src/ts/rdb/smithy-connection/generator.js +4 -4
  345. package/src/ts/rdb/smithy-connection/generator.js.map +1 -1
  346. package/src/ts/rdb/trpc-connection/files/src/middleware/__rdbNameKebab__.ts.template +1 -1
  347. package/src/ts/rdb/trpc-connection/generator.d.ts +3 -3
  348. package/src/ts/rdb/trpc-connection/generator.js +3 -3
  349. package/src/ts/rdb/trpc-connection/generator.js.map +1 -1
  350. package/src/ts/rdb/utils.d.ts +1 -1
  351. package/src/ts/react-website/agui/files/common/src/hooks/useAgui__agentNameClassName__.tsx.template +9 -9
  352. package/src/ts/react-website/agui/generator.d.ts +3 -3
  353. package/src/ts/react-website/agui/generator.js +13 -13
  354. package/src/ts/react-website/agui/generator.js.map +1 -1
  355. package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +423 -386
  356. package/src/ts/react-website/app/files/app/cloudscape/src/components/AppLayout/index.tsx.template +5 -5
  357. package/src/ts/react-website/app/files/app/cloudscape/src/main.tsx.template +1 -1
  358. package/src/ts/react-website/app/files/app/cloudscape/src/styles.css.template +1 -1
  359. package/src/ts/react-website/app/files/app/none/src/components/AppLayout/index.tsx.template +5 -5
  360. package/src/ts/react-website/app/files/app/none/src/main.tsx.template +1 -1
  361. package/src/ts/react-website/app/files/app/none/src/styles.css.template +2 -2
  362. package/src/ts/react-website/app/files/app/shadcn/src/components/AppLayout/index.tsx.template +6 -6
  363. package/src/ts/react-website/app/files/app/shadcn/src/main.tsx.template +1 -1
  364. package/src/ts/react-website/app/generator.d.ts +6 -6
  365. package/src/ts/react-website/app/generator.js +124 -114
  366. package/src/ts/react-website/app/generator.js.map +1 -1
  367. package/src/ts/react-website/app/schema.d.ts +9 -6
  368. package/src/ts/react-website/app/schema.json +13 -13
  369. package/src/ts/react-website/cognito-auth/__snapshots__/generator.spec.ts.snap +1 -7
  370. package/src/ts/react-website/cognito-auth/__snapshots__/generator.terraform.spec.ts.snap +3 -3
  371. package/src/ts/react-website/cognito-auth/__snapshots__/generator.ux-provider.spec.ts.snap +3 -23
  372. package/src/ts/react-website/cognito-auth/generator.d.ts +3 -3
  373. package/src/ts/react-website/cognito-auth/generator.js +19 -22
  374. package/src/ts/react-website/cognito-auth/generator.js.map +1 -1
  375. package/src/ts/react-website/cognito-auth/grit/cloudscape-auth-menu.grit +8 -6
  376. package/src/ts/react-website/cognito-auth/grit/cognito-auth-wrapper.grit +1 -1
  377. package/src/ts/react-website/cognito-auth/grit/none-auth-menu.grit +1 -0
  378. package/src/ts/react-website/cognito-auth/grit/shadcn-auth-menu.grit +3 -1
  379. package/src/ts/react-website/cognito-auth/grit/shadcn-state-declarations.grit +3 -1
  380. package/src/ts/react-website/cognito-auth/schema.d.ts +2 -2
  381. package/src/ts/react-website/cognito-auth/schema.json +4 -4
  382. package/src/ts/react-website/cognito-auth/utils.d.ts +1 -1
  383. package/src/ts/react-website/cognito-auth/utils.js +1 -1
  384. package/src/ts/react-website/cognito-auth/utils.js.map +1 -1
  385. package/src/ts/react-website/runtime-config/generator.d.ts +3 -3
  386. package/src/ts/react-website/runtime-config/generator.js +4 -4
  387. package/src/ts/react-website/runtime-config/generator.js.map +1 -1
  388. package/src/ts/sync/generator.d.ts +3 -3
  389. package/src/ts/sync/generator.js +2 -2
  390. package/src/ts/sync/generator.js.map +1 -1
  391. package/src/ts/website/app/generator.d.ts +3 -3
  392. package/src/ts/website/app/generator.js +1 -1
  393. package/src/ts/website/app/generator.js.map +1 -1
  394. package/src/ts/website/app/schema.d.ts +8 -6
  395. package/src/ts/website/app/schema.json +21 -13
  396. package/src/ts/website/auth/generator.d.ts +3 -3
  397. package/src/ts/website/auth/generator.js +2 -2
  398. package/src/ts/website/auth/generator.js.map +1 -1
  399. package/src/ts/website/auth/schema.d.ts +2 -2
  400. package/src/ts/website/auth/schema.json +4 -4
  401. package/src/utils/agent-connection/agent-connection.d.ts +1 -1
  402. package/src/utils/agent-connection/agent-connection.js +17 -11
  403. package/src/utils/agent-connection/agent-connection.js.map +1 -1
  404. package/src/utils/agent-connection/files/core-runtime-config/model-errors.ts.template +36 -0
  405. package/src/utils/agent-connection/files/py-core-runtime-config/model_errors.py.template +40 -0
  406. package/src/utils/agent-core-constructs/agent-core-constructs.d.ts +10 -10
  407. package/src/utils/agent-core-constructs/agent-core-constructs.js +14 -24
  408. package/src/utils/agent-core-constructs/agent-core-constructs.js.map +1 -1
  409. package/src/utils/agent-core-constructs/files/cdk/app/agent-core/__nameKebabCase__/__nameKebabCase__.ts.template +13 -13
  410. package/src/utils/agent-core-constructs/files/terraform/app/agent-core/__nameKebabCase__/__nameKebabCase__.tf.template +4 -4
  411. package/src/utils/agent-core-constructs/files/terraform/core/agent-core/runtime.tf.template +5 -5
  412. package/src/utils/api-constructs/api-constructs.d.ts +4 -4
  413. package/src/utils/api-constructs/api-constructs.js +5 -7
  414. package/src/utils/api-constructs/api-constructs.js.map +1 -1
  415. package/src/utils/api-constructs/files/cdk/app/apis/http/__apiNameKebabCase__.ts.template +12 -12
  416. package/src/utils/api-constructs/files/cdk/app/apis/rest/__apiNameKebabCase__.ts.template +12 -12
  417. package/src/utils/api-constructs/files/terraform/app/apis/http/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +7 -7
  418. package/src/utils/api-constructs/files/terraform/app/apis/rest/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +10 -10
  419. package/src/utils/api-constructs/open-api-metadata.d.ts +4 -4
  420. package/src/utils/api-constructs/open-api-metadata.js +2 -2
  421. package/src/utils/api-constructs/open-api-metadata.js.map +1 -1
  422. package/src/utils/ast/website.d.ts +5 -1
  423. package/src/utils/ast/website.js +3 -3
  424. package/src/utils/ast/website.js.map +1 -1
  425. package/src/utils/ast.d.ts +33 -1
  426. package/src/utils/ast.js +89 -4
  427. package/src/utils/ast.js.map +1 -1
  428. package/src/utils/bundle/bundle.d.ts +1 -1
  429. package/src/utils/bundle/bundle.js +2 -2
  430. package/src/utils/bundle/bundle.js.map +1 -1
  431. package/src/utils/commands.d.ts +1 -1
  432. package/src/utils/commands.js +2 -2
  433. package/src/utils/commands.js.map +1 -1
  434. package/src/utils/config/__snapshots__/utils.spec.ts.snap +6 -6
  435. package/src/utils/config/index.d.ts +5 -5
  436. package/src/utils/config/utils.d.ts +13 -3
  437. package/src/utils/config/utils.js +37 -5
  438. package/src/utils/config/utils.js.map +1 -1
  439. package/src/utils/connection/open-api/files/components/__apiNameClassName__Provider.tsx.template +7 -7
  440. package/src/utils/connection/open-api/react.d.ts +2 -2
  441. package/src/utils/connection/open-api/react.js +7 -7
  442. package/src/utils/connection/open-api/react.js.map +1 -1
  443. package/src/utils/containers.d.ts +6 -6
  444. package/src/utils/containers.js +6 -6
  445. package/src/utils/containers.js.map +1 -1
  446. package/src/utils/dynamodb-constructs/dynamodb-constructs.d.ts +18 -0
  447. package/src/utils/dynamodb-constructs/dynamodb-constructs.js +49 -0
  448. package/src/utils/dynamodb-constructs/dynamodb-constructs.js.map +1 -0
  449. package/src/utils/dynamodb-constructs/files/cdk/app/dynamodb/__nameKebabCase__.ts.template +30 -0
  450. package/src/utils/dynamodb-constructs/files/cdk/core/dynamodb.ts.template +105 -0
  451. package/src/utils/dynamodb-constructs/files/terraform/app/dynamodb/__nameKebabCase__/__nameKebabCase__.tf.template +65 -0
  452. package/src/utils/dynamodb-constructs/files/terraform/core/dynamodb/dynamodb.tf.template +155 -0
  453. package/src/utils/format.d.ts +45 -2
  454. package/src/utils/format.js +167 -46
  455. package/src/utils/format.js.map +1 -1
  456. package/src/utils/fs.d.ts +1 -1
  457. package/src/utils/fs.js.map +1 -1
  458. package/src/utils/function-constructs/files/cdk/app/lambda-functions/{__functionNameKebabCase__.ts.template → __nameKebabCase__.ts.template} +1 -1
  459. package/src/utils/function-constructs/files/terraform/app/lambda-functions/{__functionNameKebabCase__/__functionNameKebabCase__.tf.template → __nameKebabCase__/__nameKebabCase__.tf.template} +7 -7
  460. package/src/utils/function-constructs/function-constructs.d.ts +5 -5
  461. package/src/utils/function-constructs/function-constructs.js +6 -8
  462. package/src/utils/function-constructs/function-constructs.js.map +1 -1
  463. package/src/utils/generators.d.ts +4 -0
  464. package/src/utils/generators.js +4 -4
  465. package/src/utils/generators.js.map +1 -1
  466. package/src/utils/git.d.ts +1 -1
  467. package/src/utils/git.js.map +1 -1
  468. package/src/utils/iac-providers.d.ts +3 -3
  469. package/src/utils/iac-providers.js +1 -1
  470. package/src/utils/iac.d.ts +3 -3
  471. package/src/utils/iac.js +6 -6
  472. package/src/utils/iac.js.map +1 -1
  473. package/src/utils/identity-constructs/files/cdk/core/user-identity.ts.template +1 -5
  474. package/src/utils/identity-constructs/files/terraform/core/user-identity/identity/identity.tf.template +2 -4
  475. package/src/utils/identity-constructs/identity-constructs.d.ts +3 -3
  476. package/src/utils/identity-constructs/identity-constructs.js +4 -4
  477. package/src/utils/identity-constructs/identity-constructs.js.map +1 -1
  478. package/src/utils/js.d.ts +4 -0
  479. package/src/utils/js.js +4 -4
  480. package/src/utils/js.js.map +1 -1
  481. package/src/utils/mcp.d.ts +25 -0
  482. package/src/utils/mcp.js +81 -0
  483. package/src/utils/mcp.js.map +1 -0
  484. package/src/utils/metrics.d.ts +9 -3
  485. package/src/utils/metrics.js +58 -28
  486. package/src/utils/metrics.js.map +1 -1
  487. package/src/utils/npm-scope.d.ts +1 -1
  488. package/src/utils/npm-scope.js.map +1 -1
  489. package/src/utils/nx.d.ts +7 -2
  490. package/src/utils/nx.js +46 -14
  491. package/src/utils/nx.js.map +1 -1
  492. package/src/utils/nxlv-python.d.ts +1 -1
  493. package/src/utils/paths.d.ts +1 -1
  494. package/src/utils/pnpm-workspace.d.ts +1 -1
  495. package/src/utils/pnpm-workspace.js.map +1 -1
  496. package/src/utils/port.d.ts +30 -3
  497. package/src/utils/port.js +72 -4
  498. package/src/utils/port.js.map +1 -1
  499. package/src/utils/py.d.ts +2 -2
  500. package/src/utils/py.js +13 -6
  501. package/src/utils/py.js.map +1 -1
  502. package/src/utils/rdb-constructs/files/cdk/core/rdb/aurora.ts.template +30 -1
  503. package/src/utils/rdb-constructs/files/terraform/core/rdb/aurora/aurora.tf.template +18 -9
  504. package/src/utils/rdb-constructs/rdb-constructs.d.ts +5 -5
  505. package/src/utils/rdb-constructs/rdb-constructs.js +7 -17
  506. package/src/utils/rdb-constructs/rdb-constructs.js.map +1 -1
  507. package/src/utils/shared-constructs.d.ts +3 -3
  508. package/src/utils/shared-constructs.js +10 -10
  509. package/src/utils/shared-constructs.js.map +1 -1
  510. package/src/utils/shared-infra-config.d.ts +1 -1
  511. package/src/utils/shared-infra-config.js +1 -1
  512. package/src/utils/shared-infra-config.js.map +1 -1
  513. package/src/utils/shared-scripts.d.ts +1 -1
  514. package/src/utils/shared-scripts.js +2 -2
  515. package/src/utils/shared-scripts.js.map +1 -1
  516. package/src/utils/shared-shadcn.d.ts +1 -1
  517. package/src/utils/shared-shadcn.js +1 -13
  518. package/src/utils/shared-shadcn.js.map +1 -1
  519. package/src/utils/test.d.ts +5 -1
  520. package/src/utils/test.js +9 -5
  521. package/src/utils/test.js.map +1 -1
  522. package/src/utils/toml.d.ts +1 -1
  523. package/src/utils/toml.js +4 -0
  524. package/src/utils/toml.js.map +1 -1
  525. package/src/utils/versions.d.ts +68 -72
  526. package/src/utils/versions.js +67 -71
  527. package/src/utils/versions.js.map +1 -1
  528. package/src/utils/website-constructs/files/cdk/core/static-website.ts.template +52 -5
  529. package/src/utils/website-constructs/files/terraform/core/static-website/static-website.tf.template +38 -11
  530. package/src/utils/website-constructs/website-constructs.d.ts +3 -3
  531. package/src/utils/website-constructs/website-constructs.js +5 -7
  532. package/src/utils/website-constructs/website-constructs.js.map +1 -1
  533. package/src/ts/lib/eslint.d.ts +0 -14
  534. package/src/ts/lib/eslint.js +0 -90
  535. package/src/ts/lib/eslint.js.map +0 -1
  536. package/src/ts/lib/grit/eslint-dependency-checks-warn.grit +0 -1
  537. /package/src/ts/{rdb/files/scripts/docker-pull.ts.template → dynamodb/files/scripts/pull-image.ts.template} +0 -0
@@ -6,20 +6,20 @@ exports.addIdentityInfra = void 0;
6
6
  * SPDX-License-Identifier: Apache-2.0
7
7
  */
8
8
  const devkit_1 = require("@nx/devkit");
9
- const shared_constructs_constants_1 = require("../shared-constructs-constants");
10
9
  const ast_1 = require("../ast");
10
+ const shared_constructs_constants_1 = require("../shared-constructs-constants");
11
11
  /**
12
12
  * Add infrastructure for a static website
13
13
  */
14
14
  const addIdentityInfra = async (tree, options) => {
15
- if (options.iacProvider === 'CDK') {
15
+ if (options.iac === 'cdk') {
16
16
  await addIdentityCdkConstructs(tree, options);
17
17
  }
18
- else if (options.iacProvider === 'Terraform') {
18
+ else if (options.iac === 'terraform') {
19
19
  addIdentityTerraformModules(tree, options);
20
20
  }
21
21
  else {
22
- throw new Error(`Unsupported iacProvider ${options.iacProvider}`);
22
+ throw new Error(`Unsupported iac ${options.iac}`);
23
23
  }
24
24
  };
25
25
  exports.addIdentityInfra = addIdentityInfra;
@@ -1 +1 @@
1
- {"version":3,"file":"identity-constructs.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/utils/identity-constructs/identity-constructs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity-constructs.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/utils/identity-constructs/identity-constructs.ts"],"names":[],"mappings":"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"}
package/src/utils/js.d.ts CHANGED
@@ -1,3 +1,7 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
1
5
  /**
2
6
  * Imports a javascript module from a string of js code
3
7
  */
package/src/utils/js.js CHANGED
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.importTypeScriptModule = exports.importJavaScriptModule = void 0;
4
- const tslib_1 = require("tslib");
5
2
  /**
6
3
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
7
4
  * SPDX-License-Identifier: Apache-2.0
8
5
  */
9
- const typescript_1 = tslib_1.__importDefault(require("typescript"));
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.importTypeScriptModule = exports.importJavaScriptModule = void 0;
8
+ const tslib_1 = require("tslib");
10
9
  const config_utils_1 = require("@nx/devkit/src/utils/config-utils");
10
+ const typescript_1 = tslib_1.__importDefault(require("typescript"));
11
11
  /**
12
12
  * Imports a javascript module from a string of js code
13
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"js.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/js.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,oEAA4B;AAC5B,oEAAkE;AAElE;;GAEG;AACI,MAAM,sBAAsB,GAAG,KAAK,EAAK,MAAc,EAAc,EAAE;IAC5E,mHAAmH;IACnH,mEAAmE;IACnE,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAa,EAChC,wBAAwB,kBAAkB,CAAC,MAAM,CAAC,EAAE,CACrD,CAAC;IAEF,oEAAoE;IACpE,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAM,CAAC;AACzC,CAAC,CAAC;AATW,QAAA,sBAAsB,0BASjC;AAEF;;GAEG;AACI,MAAM,sBAAsB,GAAG,KAAK,EAAK,MAAc,EAAc,EAAE;IAC5E,iDAAiD;IACjD,MAAM,MAAM,GAAG,oBAAE,CAAC,eAAe,CAAC,MAAM,EAAE;QACxC,eAAe,EAAE,EAAE,MAAM,EAAE,oBAAE,CAAC,UAAU,CAAC,MAAM,EAAE;KAClD,CAAC,CAAC,UAAU,CAAC;IACd,OAAO,MAAM,IAAA,8BAAsB,EAAI,MAAM,CAAC,CAAC;AACjD,CAAC,CAAC;AANW,QAAA,sBAAsB,0BAMjC"}
1
+ {"version":3,"file":"js.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/js.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;AAEH,oEAAkE;AAClE,oEAA4B;AAE5B;;GAEG;AACI,MAAM,sBAAsB,GAAG,KAAK,EAAK,MAAc,EAAc,EAAE;IAC5E,mHAAmH;IACnH,mEAAmE;IACnE,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAa,EAChC,wBAAwB,kBAAkB,CAAC,MAAM,CAAC,EAAE,CACrD,CAAC;IAEF,oEAAoE;IACpE,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAM,CAAC;AACzC,CAAC,CAAC;AATW,QAAA,sBAAsB,0BASjC;AAEF;;GAEG;AACI,MAAM,sBAAsB,GAAG,KAAK,EAAK,MAAc,EAAc,EAAE;IAC5E,iDAAiD;IACjD,MAAM,MAAM,GAAG,oBAAE,CAAC,eAAe,CAAC,MAAM,EAAE;QACxC,eAAe,EAAE,EAAE,MAAM,EAAE,oBAAE,CAAC,UAAU,CAAC,MAAM,EAAE;KAClD,CAAC,CAAC,UAAU,CAAC;IACd,OAAO,MAAM,IAAA,8BAAsB,EAAI,MAAM,CAAC,CAAC;AACjD,CAAC,CAAC;AANW,QAAA,sBAAsB,0BAMjC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import { type Tree } from '@nx/devkit';
6
+ /**
7
+ * Name of the Nx Plugin for AWS MCP server, used as the key in each agent's config.
8
+ */
9
+ export declare const NX_PLUGIN_MCP_SERVER_NAME = "nx-plugin-for-aws";
10
+ /**
11
+ * Command used to launch the Nx Plugin for AWS MCP server.
12
+ */
13
+ export declare const NX_PLUGIN_MCP_SERVER_COMMAND = "npx";
14
+ /**
15
+ * Arguments used to launch the Nx Plugin for AWS MCP server.
16
+ */
17
+ export declare const NX_PLUGIN_MCP_SERVER_ARGS: string[];
18
+ /**
19
+ * Configure the Nx Plugin for AWS MCP server across the project-level config locations
20
+ * used by common coding agents, so agents working in the workspace can use it to scaffold
21
+ * AWS projects with the Nx Plugin for AWS.
22
+ *
23
+ * Existing servers and unrelated config in each file are preserved.
24
+ */
25
+ export declare const configureMcpServers: (tree: Tree) => void;
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.configureMcpServers = exports.NX_PLUGIN_MCP_SERVER_ARGS = exports.NX_PLUGIN_MCP_SERVER_COMMAND = exports.NX_PLUGIN_MCP_SERVER_NAME = void 0;
4
+ /**
5
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
6
+ * SPDX-License-Identifier: Apache-2.0
7
+ */
8
+ const devkit_1 = require("@nx/devkit");
9
+ const toml_1 = require("./toml");
10
+ /**
11
+ * Name of the Nx Plugin for AWS MCP server, used as the key in each agent's config.
12
+ */
13
+ exports.NX_PLUGIN_MCP_SERVER_NAME = 'nx-plugin-for-aws';
14
+ /**
15
+ * Command used to launch the Nx Plugin for AWS MCP server.
16
+ */
17
+ exports.NX_PLUGIN_MCP_SERVER_COMMAND = 'npx';
18
+ /**
19
+ * Arguments used to launch the Nx Plugin for AWS MCP server.
20
+ */
21
+ exports.NX_PLUGIN_MCP_SERVER_ARGS = ['-y', '@aws/nx-plugin-mcp@next'];
22
+ /**
23
+ * A single stdio MCP server entry, shared by agents that use the `mcpServers` config shape.
24
+ */
25
+ const stdioServerEntry = () => ({
26
+ command: exports.NX_PLUGIN_MCP_SERVER_COMMAND,
27
+ args: exports.NX_PLUGIN_MCP_SERVER_ARGS,
28
+ });
29
+ /**
30
+ * Merge the Nx Plugin for AWS MCP server into a JSON config file under the given key,
31
+ * preserving any other servers already configured. Creates the file if it does not exist.
32
+ */
33
+ const mergeJsonMcpConfig = (tree, filePath, key, entry) => {
34
+ const config = tree.exists(filePath) ? (0, devkit_1.readJson)(tree, filePath) : {};
35
+ config[key] = {
36
+ ...config[key],
37
+ [exports.NX_PLUGIN_MCP_SERVER_NAME]: entry,
38
+ };
39
+ (0, devkit_1.writeJson)(tree, filePath, config);
40
+ };
41
+ /**
42
+ * Configure the Nx Plugin for AWS MCP server across the project-level config locations
43
+ * used by common coding agents, so agents working in the workspace can use it to scaffold
44
+ * AWS projects with the Nx Plugin for AWS.
45
+ *
46
+ * Existing servers and unrelated config in each file are preserved.
47
+ */
48
+ const configureMcpServers = (tree) => {
49
+ // Agents using the `mcpServers` config shape (Claude Code, Cursor, Kiro, Gemini CLI)
50
+ const mcpServersFiles = [
51
+ '.mcp.json', // Claude Code
52
+ '.cursor/mcp.json', // Cursor
53
+ '.kiro/settings/mcp.json', // Kiro
54
+ '.gemini/settings.json', // Gemini CLI
55
+ ];
56
+ for (const filePath of mcpServersFiles) {
57
+ mergeJsonMcpConfig(tree, filePath, 'mcpServers', stdioServerEntry());
58
+ }
59
+ // GitHub Copilot uses the `servers` key with an explicit `type`
60
+ mergeJsonMcpConfig(tree, '.vscode/mcp.json', 'servers', {
61
+ type: 'stdio',
62
+ ...stdioServerEntry(),
63
+ });
64
+ // OpenAI Codex CLI uses TOML under the `mcp_servers` table
65
+ const codexConfig = '.codex/config.toml';
66
+ if (!tree.exists(codexConfig)) {
67
+ tree.write(codexConfig, '');
68
+ }
69
+ (0, toml_1.updateToml)(tree, codexConfig, (prev) => ({
70
+ ...prev,
71
+ mcp_servers: {
72
+ ...prev.mcp_servers,
73
+ [exports.NX_PLUGIN_MCP_SERVER_NAME]: {
74
+ command: exports.NX_PLUGIN_MCP_SERVER_COMMAND,
75
+ args: exports.NX_PLUGIN_MCP_SERVER_ARGS,
76
+ },
77
+ },
78
+ }));
79
+ };
80
+ exports.configureMcpServers = configureMcpServers;
81
+ //# sourceMappingURL=mcp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/mcp.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAA4D;AAC5D,iCAAoC;AAEpC;;GAEG;AACU,QAAA,yBAAyB,GAAG,mBAAmB,CAAC;AAE7D;;GAEG;AACU,QAAA,4BAA4B,GAAG,KAAK,CAAC;AAElD;;GAEG;AACU,QAAA,yBAAyB,GAAG,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC;AAE3E;;GAEG;AACH,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,CAAC;IAC9B,OAAO,EAAE,oCAA4B;IACrC,IAAI,EAAE,iCAAyB;CAChC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,kBAAkB,GAAG,CACzB,IAAU,EACV,QAAgB,EAChB,GAA6B,EAC7B,KAA8B,EAC9B,EAAE;IACF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAQ,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,MAAM,CAAC,GAAG,CAAC,GAAG;QACZ,GAAG,MAAM,CAAC,GAAG,CAAC;QACd,CAAC,iCAAyB,CAAC,EAAE,KAAK;KACnC,CAAC;IACF,IAAA,kBAAS,EAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF;;;;;;GAMG;AACI,MAAM,mBAAmB,GAAG,CAAC,IAAU,EAAE,EAAE;IAChD,qFAAqF;IACrF,MAAM,eAAe,GAAG;QACtB,WAAW,EAAE,cAAc;QAC3B,kBAAkB,EAAE,SAAS;QAC7B,yBAAyB,EAAE,OAAO;QAClC,uBAAuB,EAAE,aAAa;KACvC,CAAC;IACF,KAAK,MAAM,QAAQ,IAAI,eAAe,EAAE,CAAC;QACvC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,gEAAgE;IAChE,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE;QACtD,IAAI,EAAE,OAAO;QACb,GAAG,gBAAgB,EAAE;KACtB,CAAC,CAAC;IAEH,2DAA2D;IAC3D,MAAM,WAAW,GAAG,oBAAoB,CAAC;IACzC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC9B,CAAC;IACD,IAAA,iBAAU,EAAC,IAAI,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACvC,GAAG,IAAI;QACP,WAAW,EAAE;YACX,GAAI,IAAI,CAAC,WAAsB;YAC/B,CAAC,iCAAyB,CAAC,EAAE;gBAC3B,OAAO,EAAE,oCAA4B;gBACrC,IAAI,EAAE,iCAAyB;aAChC;SACF;KACF,CAAC,CAAC,CAAC;AACN,CAAC,CAAC;AAjCW,QAAA,mBAAmB,uBAiC9B"}
@@ -2,13 +2,19 @@
2
2
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- import { Tree } from '@nx/devkit';
6
- import { NxGeneratorInfo } from './nx';
5
+ import { type Tree } from '@nx/devkit';
6
+ import { type NxGeneratorInfo } from './nx';
7
7
  export declare const METRIC_ID = "uksb-4wk0bqpg5s";
8
8
  export declare const METRICS_ASPECT_FILE_PATH: string;
9
9
  export declare const TERRAFORM_METRICS_FILE_PATH: string;
10
10
  /**
11
11
  * Instruments metrics by updating the MetricsAspect in common/constructs/src/core/app.ts if the file exists,
12
- * or updating the Terraform metrics CloudFormation stack if it exists
12
+ * and/or updating the Terraform metrics CloudFormation stack if it exists.
13
+ *
14
+ * Both files are converged to the same tag set (the union of tags already
15
+ * present in either file plus the incoming generators). This keeps the tag set
16
+ * deterministic regardless of the order in which metrics files are created
17
+ * across a multi-generator run, so re-running the same set of generators does
18
+ * not grow the tags.
13
19
  */
14
20
  export declare const addGeneratorMetricsIfApplicable: (tree: Tree, generatorInfo: NxGeneratorInfo[]) => Promise<void>;
@@ -18,48 +18,78 @@ exports.METRICS_ASPECT_FILE_PATH = (0, devkit_1.joinPathFragments)(shared_constr
18
18
  exports.TERRAFORM_METRICS_FILE_PATH = (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_TERRAFORM_DIR, 'src', 'metrics', 'metrics.tf');
19
19
  // GritQL `within` clause to scope matches to the MetricsAspect class body
20
20
  const WITHIN_METRICS_ASPECT = '$old <: within `class MetricsAspect implements $_ { $_ }`';
21
+ // Strip the surrounding quotes from a captured string literal (eg 'g1' or "g1")
22
+ const unquote = (literal) => literal.slice(1, -1);
23
+ // Extracts the existing metric tags from the CDK MetricsAspect tags array
24
+ const readCdkMetricTags = async (tree) => (await (0, ast_1.captureAllGritQL)(tree, exports.METRICS_ASPECT_FILE_PATH, `\`$tag\` where { $tag <: string(), $tag <: within \`const tags: string[] = $_\` }`)).map(unquote);
25
+ // Extracts the existing metric tags from the Terraform metric_tags array
26
+ const readTerraformMetricTags = async (tree) => (await (0, ast_1.captureAllGritQL)(tree, exports.TERRAFORM_METRICS_FILE_PATH, '`"$tag"` where { $tag <: within `metric_tags = $_` }')).map(unquote);
21
27
  /**
22
28
  * Instruments metrics by updating the MetricsAspect in common/constructs/src/core/app.ts if the file exists,
23
- * or updating the Terraform metrics CloudFormation stack if it exists
29
+ * and/or updating the Terraform metrics CloudFormation stack if it exists.
30
+ *
31
+ * Both files are converged to the same tag set (the union of tags already
32
+ * present in either file plus the incoming generators). This keeps the tag set
33
+ * deterministic regardless of the order in which metrics files are created
34
+ * across a multi-generator run, so re-running the same set of generators does
35
+ * not grow the tags.
24
36
  */
25
37
  const addGeneratorMetricsIfApplicable = async (tree, generatorInfo) => {
26
- // Handle CDK metrics
27
- if (tree.exists(exports.METRICS_ASPECT_FILE_PATH)) {
28
- // Update the id
29
- await (0, ast_1.applyGritQL)(tree, exports.METRICS_ASPECT_FILE_PATH, `\`const id = $old\` => \`const id = '${exports.METRIC_ID}'\`` +
30
- ` where { ${WITHIN_METRICS_ASPECT} }`);
31
- // Update the version
32
- await (0, ast_1.applyGritQL)(tree, exports.METRICS_ASPECT_FILE_PATH, `\`const version = $old\` => \`const version = '${(0, nx_1.getPackageVersion)()}'\`` +
33
- ` where { ${WITHIN_METRICS_ASPECT} }`);
34
- // Add each generator as a tag
35
- for (const info of generatorInfo) {
36
- await (0, ast_1.applyGritQL)(tree, exports.METRICS_ASPECT_FILE_PATH, `\`const tags: string[] = $old\`` +
37
- ` where { ${WITHIN_METRICS_ASPECT},` +
38
- ` if ($old <: \`[]\`) { $old => \`['${info.metric}']\` }` +
39
- ` else { $old <: \`[$items]\` where { $items += \`, '${info.metric}'\` } },` +
40
- ` $old <: not contains \`'${info.metric}'\` }`);
41
- }
42
- await (0, format_1.formatFilesInSubtree)(tree, exports.METRICS_ASPECT_FILE_PATH);
38
+ const cdkExists = tree.exists(exports.METRICS_ASPECT_FILE_PATH);
39
+ const terraformExists = tree.exists(exports.TERRAFORM_METRICS_FILE_PATH);
40
+ if (!cdkExists && !terraformExists) {
41
+ return;
43
42
  }
44
- // Handle Terraform metrics
45
- if (tree.exists(exports.TERRAFORM_METRICS_FILE_PATH)) {
46
- await updateTerraformMetrics(tree, generatorInfo);
43
+ // Converge both files to the union of all known tags so the set is stable
44
+ // regardless of when each metrics file was created.
45
+ const tags = [
46
+ ...new Set([
47
+ ...(await readCdkMetricTags(tree)),
48
+ ...(await readTerraformMetricTags(tree)),
49
+ ...generatorInfo.map((info) => info.metric),
50
+ ]),
51
+ ];
52
+ if (cdkExists) {
53
+ await updateCdkMetrics(tree, tags);
54
+ }
55
+ if (terraformExists) {
56
+ await updateTerraformMetrics(tree, tags);
47
57
  }
48
58
  };
49
59
  exports.addGeneratorMetricsIfApplicable = addGeneratorMetricsIfApplicable;
50
60
  /**
51
- * Updates the Terraform metrics CloudFormation stack with generator information
61
+ * Updates the CDK MetricsAspect with the metric id, version and tags
62
+ */
63
+ const updateCdkMetrics = async (tree, tags) => {
64
+ // Update the id
65
+ await (0, ast_1.applyGritQL)(tree, exports.METRICS_ASPECT_FILE_PATH, `\`const id = $old\` => \`const id = '${exports.METRIC_ID}'\`` +
66
+ ` where { ${WITHIN_METRICS_ASPECT} }`);
67
+ // Update the version
68
+ await (0, ast_1.applyGritQL)(tree, exports.METRICS_ASPECT_FILE_PATH, `\`const version = $old\` => \`const version = '${(0, nx_1.getPackageVersion)()}'\`` +
69
+ ` where { ${WITHIN_METRICS_ASPECT} }`);
70
+ // Add each tag, leaving existing tags in place to keep re-runs stable
71
+ for (const tag of tags) {
72
+ await (0, ast_1.applyGritQL)(tree, exports.METRICS_ASPECT_FILE_PATH, `\`const tags: string[] = $old\`` +
73
+ ` where { ${WITHIN_METRICS_ASPECT},` +
74
+ ` if ($old <: \`[]\`) { $old => \`['${tag}']\` }` +
75
+ ` else { $old <: \`[$items]\` where { $items += \`, '${tag}'\` } },` +
76
+ ` $old <: not contains \`'${tag}'\` }`);
77
+ }
78
+ await (0, format_1.formatFilesInSubtree)(tree, exports.METRICS_ASPECT_FILE_PATH);
79
+ };
80
+ /**
81
+ * Updates the Terraform metrics CloudFormation stack with the metric id, version and tags
52
82
  */
53
- const updateTerraformMetrics = async (tree, generatorInfo) => {
83
+ const updateTerraformMetrics = async (tree, tags) => {
54
84
  // Update metric_id
55
85
  await (0, ast_1.applyGritQL)(tree, exports.TERRAFORM_METRICS_FILE_PATH, `\`metric_id = $old\` => \`metric_id = "${exports.METRIC_ID}"\``);
56
86
  // Update metric_version
57
87
  await (0, ast_1.applyGritQL)(tree, exports.TERRAFORM_METRICS_FILE_PATH, `\`metric_version = $old\` => \`metric_version = "${(0, nx_1.getPackageVersion)()}"\``);
58
- // Update metric_tags
59
- for (const info of generatorInfo) {
60
- await (0, ast_1.applyGritQL)(tree, exports.TERRAFORM_METRICS_FILE_PATH, `or { \`metric_tags = []\` => \`metric_tags = ["${info.metric}"]\`,` +
61
- ` \`metric_tags = [$items]\` where { $items += \`, "${info.metric}"\` }` +
62
- ` where { $items <: not contains \`"${info.metric}"\` } }`);
88
+ // Add each tag, leaving existing tags in place to keep re-runs stable
89
+ for (const tag of tags) {
90
+ await (0, ast_1.applyGritQL)(tree, exports.TERRAFORM_METRICS_FILE_PATH, `or { \`metric_tags = []\` => \`metric_tags = ["${tag}"]\`,` +
91
+ ` \`metric_tags = [$items]\` where { $items += \`, "${tag}"\` }` +
92
+ ` where { $items <: not contains \`"${tag}"\` } }`);
63
93
  }
64
94
  };
65
95
  //# sourceMappingURL=metrics.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/metrics.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAAqD;AACrD,+BAAoC;AACpC,qCAAgD;AAChD,6BAA0D;AAC1D,+EAIuC;AAEvC,iDAAiD;AACpC,QAAA,SAAS,GAAG,iBAAiB,CAAC;AAE3C,kDAAkD;AACrC,QAAA,wBAAwB,GAAG,IAAA,0BAAiB,EACvD,0CAAY,EACZ,mDAAqB,EACrB,KAAK,EACL,MAAM,EACN,QAAQ,CACT,CAAC;AAEF,qEAAqE;AACxD,QAAA,2BAA2B,GAAG,IAAA,0BAAiB,EAC1D,0CAAY,EACZ,kDAAoB,EACpB,KAAK,EACL,SAAS,EACT,YAAY,CACb,CAAC;AAEF,0EAA0E;AAC1E,MAAM,qBAAqB,GACzB,2DAA2D,CAAC;AAE9D;;;GAGG;AACI,MAAM,+BAA+B,GAAG,KAAK,EAClD,IAAU,EACV,aAAgC,EAChC,EAAE;IACF,qBAAqB;IACrB,IAAI,IAAI,CAAC,MAAM,CAAC,gCAAwB,CAAC,EAAE,CAAC;QAC1C,gBAAgB;QAChB,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,gCAAwB,EACxB,wCAAwC,iBAAS,KAAK;YACpD,YAAY,qBAAqB,IAAI,CACxC,CAAC;QAEF,qBAAqB;QACrB,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,gCAAwB,EACxB,kDAAkD,IAAA,sBAAiB,GAAE,KAAK;YACxE,YAAY,qBAAqB,IAAI,CACxC,CAAC;QAEF,8BAA8B;QAC9B,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YACjC,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,gCAAwB,EACxB,iCAAiC;gBAC/B,YAAY,qBAAqB,GAAG;gBACpC,sCAAsC,IAAI,CAAC,MAAM,QAAQ;gBACzD,uDAAuD,IAAI,CAAC,MAAM,UAAU;gBAC5E,4BAA4B,IAAI,CAAC,MAAM,OAAO,CACjD,CAAC;QACJ,CAAC;QAED,MAAM,IAAA,6BAAoB,EAAC,IAAI,EAAE,gCAAwB,CAAC,CAAC;IAC7D,CAAC;IAED,2BAA2B;IAC3B,IAAI,IAAI,CAAC,MAAM,CAAC,mCAA2B,CAAC,EAAE,CAAC;QAC7C,MAAM,sBAAsB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACpD,CAAC;AACH,CAAC,CAAC;AA1CW,QAAA,+BAA+B,mCA0C1C;AAEF;;GAEG;AACH,MAAM,sBAAsB,GAAG,KAAK,EAClC,IAAU,EACV,aAAgC,EAChC,EAAE;IACF,mBAAmB;IACnB,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,mCAA2B,EAC3B,0CAA0C,iBAAS,KAAK,CACzD,CAAC;IAEF,wBAAwB;IACxB,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,mCAA2B,EAC3B,oDAAoD,IAAA,sBAAiB,GAAE,KAAK,CAC7E,CAAC;IAEF,qBAAqB;IACrB,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;QACjC,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,mCAA2B,EAC3B,kDAAkD,IAAI,CAAC,MAAM,OAAO;YAClE,sDAAsD,IAAI,CAAC,MAAM,OAAO;YACxE,sCAAsC,IAAI,CAAC,MAAM,SAAS,CAC7D,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/metrics.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAA0D;AAC1D,+BAAsD;AACtD,qCAAgD;AAChD,6BAA+D;AAC/D,+EAIuC;AAEvC,iDAAiD;AACpC,QAAA,SAAS,GAAG,iBAAiB,CAAC;AAE3C,kDAAkD;AACrC,QAAA,wBAAwB,GAAG,IAAA,0BAAiB,EACvD,0CAAY,EACZ,mDAAqB,EACrB,KAAK,EACL,MAAM,EACN,QAAQ,CACT,CAAC;AAEF,qEAAqE;AACxD,QAAA,2BAA2B,GAAG,IAAA,0BAAiB,EAC1D,0CAAY,EACZ,kDAAoB,EACpB,KAAK,EACL,SAAS,EACT,YAAY,CACb,CAAC;AAEF,0EAA0E;AAC1E,MAAM,qBAAqB,GACzB,2DAA2D,CAAC;AAE9D,gFAAgF;AAChF,MAAM,OAAO,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAElE,0EAA0E;AAC1E,MAAM,iBAAiB,GAAG,KAAK,EAAE,IAAU,EAAqB,EAAE,CAChE,CACE,MAAM,IAAA,sBAAgB,EACpB,IAAI,EACJ,gCAAwB,EACxB,mFAAmF,CACpF,CACF,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAEjB,yEAAyE;AACzE,MAAM,uBAAuB,GAAG,KAAK,EAAE,IAAU,EAAqB,EAAE,CACtE,CACE,MAAM,IAAA,sBAAgB,EACpB,IAAI,EACJ,mCAA2B,EAC3B,sDAAsD,CACvD,CACF,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAEjB;;;;;;;;;GASG;AACI,MAAM,+BAA+B,GAAG,KAAK,EAClD,IAAU,EACV,aAAgC,EAChC,EAAE;IACF,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,gCAAwB,CAAC,CAAC;IACxD,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,mCAA2B,CAAC,CAAC;IAEjE,IAAI,CAAC,SAAS,IAAI,CAAC,eAAe,EAAE,CAAC;QACnC,OAAO;IACT,CAAC;IAED,0EAA0E;IAC1E,oDAAoD;IACpD,MAAM,IAAI,GAAG;QACX,GAAG,IAAI,GAAG,CAAC;YACT,GAAG,CAAC,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAClC,GAAG,CAAC,MAAM,uBAAuB,CAAC,IAAI,CAAC,CAAC;YACxC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;SAC5C,CAAC;KACH,CAAC;IAEF,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC,CAAC;AA5BW,QAAA,+BAA+B,mCA4B1C;AAEF;;GAEG;AACH,MAAM,gBAAgB,GAAG,KAAK,EAAE,IAAU,EAAE,IAAc,EAAE,EAAE;IAC5D,gBAAgB;IAChB,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,gCAAwB,EACxB,wCAAwC,iBAAS,KAAK;QACpD,YAAY,qBAAqB,IAAI,CACxC,CAAC;IAEF,qBAAqB;IACrB,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,gCAAwB,EACxB,kDAAkD,IAAA,sBAAiB,GAAE,KAAK;QACxE,YAAY,qBAAqB,IAAI,CACxC,CAAC;IAEF,sEAAsE;IACtE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,gCAAwB,EACxB,iCAAiC;YAC/B,YAAY,qBAAqB,GAAG;YACpC,sCAAsC,GAAG,QAAQ;YACjD,uDAAuD,GAAG,UAAU;YACpE,4BAA4B,GAAG,OAAO,CACzC,CAAC;IACJ,CAAC;IAED,MAAM,IAAA,6BAAoB,EAAC,IAAI,EAAE,gCAAwB,CAAC,CAAC;AAC7D,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,sBAAsB,GAAG,KAAK,EAAE,IAAU,EAAE,IAAc,EAAE,EAAE;IAClE,mBAAmB;IACnB,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,mCAA2B,EAC3B,0CAA0C,iBAAS,KAAK,CACzD,CAAC;IAEF,wBAAwB;IACxB,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,mCAA2B,EAC3B,oDAAoD,IAAA,sBAAiB,GAAE,KAAK,CAC7E,CAAC;IAEF,sEAAsE;IACtE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,mCAA2B,EAC3B,kDAAkD,GAAG,OAAO;YAC1D,sDAAsD,GAAG,OAAO;YAChE,sCAAsC,GAAG,SAAS,CACrD,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
@@ -2,7 +2,7 @@
2
2
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- import { Tree } from '@nx/devkit';
5
+ import { type Tree } from '@nx/devkit';
6
6
  export declare function getNpmScope(tree: Tree): string | undefined;
7
7
  export declare function getNpmScopePrefix(tree: Tree): string | undefined;
8
8
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"npm-scope.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/npm-scope.ts"],"names":[],"mappings":";;AAKA,kCAOC;AACD,8CAGC;AAID,oCAIC;AAxBD;;;GAGG;AACH,uCAA4C;AAC5C,SAAgB,WAAW,CAAC,IAAU;IACpC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;QAC1C,CAAC,CAAC,IAAA,iBAAQ,EAEL,IAAI,EAAE,cAAc,CAAC;QAC1B,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACnB,OAAO,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;AAC9E,CAAC;AACD,SAAgB,iBAAiB,CAAC,IAAU;IAC1C,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IACnC,OAAO,IAAI,QAAQ,GAAG,CAAC;AACzB,CAAC;AACD;;GAEG;AACH,SAAgB,YAAY,CAAC,qBAA6B;IACxD,OAAO,qBAAqB,CAAC,UAAU,CAAC,GAAG,CAAC;QAC1C,CAAC,CAAC,IAAI,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QACtC,CAAC,CAAC,qBAAqB,CAAC;AAC5B,CAAC"}
1
+ {"version":3,"file":"npm-scope.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/npm-scope.ts"],"names":[],"mappings":";;AAKA,kCAOC;AACD,8CAGC;AAID,oCAIC;AAxBD;;;GAGG;AACH,uCAAiD;AACjD,SAAgB,WAAW,CAAC,IAAU;IACpC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;QAC1C,CAAC,CAAC,IAAA,iBAAQ,EAEL,IAAI,EAAE,cAAc,CAAC;QAC1B,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACnB,OAAO,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;AAC9E,CAAC;AACD,SAAgB,iBAAiB,CAAC,IAAU;IAC1C,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IACnC,OAAO,IAAI,QAAQ,GAAG,CAAC;AACzB,CAAC;AACD;;GAEG;AACH,SAAgB,YAAY,CAAC,qBAA6B;IACxD,OAAO,qBAAqB,CAAC,UAAU,CAAC,GAAG,CAAC;QAC1C,CAAC,CAAC,IAAI,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QACtC,CAAC,CAAC,qBAAqB,CAAC;AAC5B,CAAC"}
package/src/utils/nx.d.ts CHANGED
@@ -2,8 +2,8 @@
2
2
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- import { ProjectConfiguration, Tree } from '@nx/devkit';
6
- export type { NxGeneratorInfo, GeneratorInfo } from './generators';
5
+ import { type ProjectConfiguration, type Tree } from '@nx/devkit';
6
+ export type { GeneratorInfo, NxGeneratorInfo } from './generators';
7
7
  export { buildGeneratorInfoList } from './generators';
8
8
  import { type GeneratorInfo } from './generators';
9
9
  /**
@@ -20,6 +20,11 @@ export declare const getPackageVersion: () => string;
20
20
  * Read a project configuration where the project name may not be fully qualified (ie may omit the scope prefix)
21
21
  */
22
22
  export declare const readProjectConfigurationUnqualified: (tree: Tree, projectName: string) => ProjectConfiguration;
23
+ /**
24
+ * Returns whether a project with the given name already exists in the workspace.
25
+ * The project name may be unqualified (ie may omit the scope prefix).
26
+ */
27
+ export declare const projectExists: (tree: Tree, projectName: string) => boolean;
23
28
  /**
24
29
  * Add metadata about the generator that generated the project to the project.json
25
30
  */
package/src/utils/nx.js CHANGED
@@ -1,16 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addDependencyToTargetIfNotPresent = exports.addComponentGeneratorMetadata = exports.addGeneratorMetadata = exports.readProjectConfigurationUnqualified = exports.getPackageVersion = exports.getGeneratorInfo = exports.listGenerators = exports.buildGeneratorInfoList = void 0;
3
+ exports.addDependencyToTargetIfNotPresent = exports.addComponentGeneratorMetadata = exports.addGeneratorMetadata = exports.projectExists = exports.readProjectConfigurationUnqualified = exports.getPackageVersion = exports.getGeneratorInfo = exports.listGenerators = exports.buildGeneratorInfoList = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  /**
6
6
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
7
7
  * SPDX-License-Identifier: Apache-2.0
8
8
  */
9
9
  const devkit_1 = require("@nx/devkit");
10
- const package_json_1 = tslib_1.__importDefault(require("../../package.json"));
11
10
  const path = tslib_1.__importStar(require("path"));
12
- const npm_scope_1 = require("./npm-scope");
11
+ const package_json_1 = tslib_1.__importDefault(require("../../package.json"));
13
12
  const names_1 = require("./names");
13
+ const npm_scope_1 = require("./npm-scope");
14
14
  var generators_1 = require("./generators");
15
15
  Object.defineProperty(exports, "buildGeneratorInfoList", { enumerable: true, get: function () { return generators_1.buildGeneratorInfoList; } });
16
16
  const generators_2 = require("./generators");
@@ -53,18 +53,44 @@ const readProjectConfigurationUnqualified = (tree, projectName) => {
53
53
  }
54
54
  };
55
55
  exports.readProjectConfigurationUnqualified = readProjectConfigurationUnqualified;
56
+ /**
57
+ * Returns whether a project with the given name already exists in the workspace.
58
+ * The project name may be unqualified (ie may omit the scope prefix).
59
+ */
60
+ const projectExists = (tree, projectName) => {
61
+ try {
62
+ (0, exports.readProjectConfigurationUnqualified)(tree, projectName);
63
+ return true;
64
+ }
65
+ catch {
66
+ return false;
67
+ }
68
+ };
69
+ exports.projectExists = projectExists;
56
70
  /**
57
71
  * Add metadata about the generator that generated the project to the project.json
58
72
  */
59
73
  const addGeneratorMetadata = (tree, projectName, info, additionalMetadata) => {
60
74
  const config = (0, exports.readProjectConfigurationUnqualified)(tree, projectName);
75
+ const metadata = {
76
+ ...config?.metadata,
77
+ generator: info.id,
78
+ ...additionalMetadata,
79
+ };
80
+ // Skip the write when nothing changed so re-running doesn't reserialize
81
+ // project.json. metadata is plain JSON built in a fixed key order, so a
82
+ // stringify comparison is exact here.
83
+ if (JSON.stringify(config?.metadata) === JSON.stringify(metadata)) {
84
+ return;
85
+ }
86
+ // Place metadata immediately before targets so the serialized key order is
87
+ // identical whether or not metadata already existed (matching the order Nx
88
+ // normalizes a read config to), keeping the change a pure metadata insert.
89
+ const { targets, ...rest } = config;
61
90
  (0, devkit_1.updateProjectConfiguration)(tree, config.name, {
62
- ...config,
63
- metadata: {
64
- ...config?.metadata,
65
- generator: info.id,
66
- ...additionalMetadata,
67
- },
91
+ ...rest,
92
+ metadata: metadata,
93
+ ...(targets ? { targets } : {}),
68
94
  });
69
95
  };
70
96
  exports.addGeneratorMetadata = addGeneratorMetadata;
@@ -82,12 +108,15 @@ const addComponentGeneratorMetadata = (tree, projectName, info, componentPath, c
82
108
  ...(componentName ? { name: componentName } : {}),
83
109
  ...additionalMetadata,
84
110
  };
111
+ // Place metadata before targets for a stable serialized key order.
112
+ const { targets, ...rest } = config;
85
113
  (0, devkit_1.updateProjectConfiguration)(tree, config.name, {
86
- ...config,
114
+ ...rest,
87
115
  metadata: {
88
116
  ...config?.metadata,
89
117
  components: [...existingComponents, componentMetadata],
90
118
  },
119
+ ...(targets ? { targets } : {}),
91
120
  });
92
121
  }
93
122
  };
@@ -125,10 +154,13 @@ const targetDependencyEquals = (a, b) => {
125
154
  const addDependencyToTargetIfNotPresent = (project, target, dependency) => {
126
155
  project.targets ??= {};
127
156
  project.targets[target] ??= {};
128
- project.targets[target].dependsOn = [
129
- ...(project.targets[target].dependsOn ?? []).filter((d) => !targetDependencyEquals(d, dependency)),
130
- dependency,
131
- ];
157
+ project.targets[target].dependsOn ??= [];
158
+ const dependsOn = project.targets[target].dependsOn;
159
+ // Leave existing dependencies in place so re-running does not reorder them;
160
+ // only append when the dependency is genuinely absent.
161
+ if (!dependsOn.some((d) => targetDependencyEquals(d, dependency))) {
162
+ dependsOn.push(dependency);
163
+ }
132
164
  };
133
165
  exports.addDependencyToTargetIfNotPresent = addDependencyToTargetIfNotPresent;
134
166
  //# 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,"file":"nx.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/nx.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,uCAMoB;AACpB,mDAA6B;AAC7B,8EAA6C;AAC7C,mCAAsC;AACtC,2CAA6D;AAG7D,2CAAsD;AAA7C,oHAAA,sBAAsB,OAAA;AAE/B,6CAA0E;AAE1E,MAAM,UAAU,GAAG,IAAA,mCAAsB,EAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AAE/E;;;GAGG;AACI,MAAM,cAAc,GAAG,CAAC,aAAa,GAAG,KAAK,EAAE,EAAE,CACtD,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAD1C,QAAA,cAAc,kBAC4B;AAEvD;;GAEG;AACI,MAAM,gBAAgB,GAAG,CAAC,iBAAyB,EAAiB,EAAE;IAC3E,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAClE,MAAM,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACjD,OAAO,UAAU,CAAC,IAAI,CACpB,CAAC,aAAa,EAAE,EAAE,CAChB,aAAa,CAAC,mBAAmB,KAAK,mBAAmB,CAC5D,CAAC;AACJ,CAAC,CAAC;AAPW,QAAA,gBAAgB,oBAO3B;AAEK,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACpC,OAAO,sBAAW,CAAC,OAAO,CAAC;AAC7B,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B;AAEF;;GAEG;AACI,MAAM,mCAAmC,GAAG,CACjD,IAAU,EACV,WAAmB,EACnB,EAAE;IACF,IAAI,CAAC;QACH,OAAO,IAAA,iCAAwB,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACrD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,gDAAgD;QAChD,MAAM,OAAO,GAAG,CAAC,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAClD,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,IAAA,6BAAiB,EAAC,IAAI,CAAC,GAAG,WAAW,EAAE,IAAI,kCAAkC;gBAC1F,CAAC,CAAC,IAAI,KAAK,GAAG,IAAA,mBAAW,EAAC,IAAA,uBAAW,EAAC,IAAI,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,CACnE,CAAC;QACF,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC,CAAC;AAnBW,QAAA,mCAAmC,uCAmB9C;AAEF;;;GAGG;AACI,MAAM,aAAa,GAAG,CAAC,IAAU,EAAE,WAAmB,EAAW,EAAE;IACxE,IAAI,CAAC;QACH,IAAA,2CAAmC,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAPW,QAAA,aAAa,iBAOxB;AAEF;;GAEG;AACI,MAAM,oBAAoB,GAAG,CAClC,IAAU,EACV,WAAmB,EACnB,IAAoB,EACpB,kBAA2C,EAC3C,EAAE;IACF,MAAM,MAAM,GAAG,IAAA,2CAAmC,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACtE,MAAM,QAAQ,GAAG;QACf,GAAG,MAAM,EAAE,QAAQ;QACnB,SAAS,EAAE,IAAI,CAAC,EAAE;QAClB,GAAG,kBAAkB;KACtB,CAAC;IACF,wEAAwE;IACxE,wEAAwE;IACxE,sCAAsC;IACtC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClE,OAAO;IACT,CAAC;IACD,2EAA2E;IAC3E,2EAA2E;IAC3E,2EAA2E;IAC3E,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;IACpC,IAAA,mCAA0B,EAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;QAC5C,GAAG,IAAI;QACP,QAAQ,EAAE,QAAe;QACzB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChC,CAAC,CAAC;AACL,CAAC,CAAC;AA3BW,QAAA,oBAAoB,wBA2B/B;AAYF;;GAEG;AACI,MAAM,6BAA6B,GAAG,CAC3C,IAAU,EACV,WAAmB,EACnB,IAAoB,EACpB,aAAqB,EACrB,aAAsB,EACtB,kBAA2C,EAC3C,EAAE;IACF,MAAM,MAAM,GAAG,IAAA,2CAAmC,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAEtE,MAAM,kBAAkB,GAAI,MAAM,EAAE,QAAgB,EAAE,UAAU,IAAI,EAAE,CAAC;IACvE,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAC5C,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,KAAK,aAAa,CAChE,CAAC;IAEF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,iBAAiB,GAAsB;YAC3C,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,IAAI,EAAE,aAAa;YACnB,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,GAAG,kBAAkB;SACtB,CAAC;QACF,mEAAmE;QACnE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;QACpC,IAAA,mCAA0B,EAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;YAC5C,GAAG,IAAI;YACP,QAAQ,EAAE;gBACR,GAAG,MAAM,EAAE,QAAQ;gBACnB,UAAU,EAAE,CAAC,GAAG,kBAAkB,EAAE,iBAAiB,CAAC;aAChD;YACR,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChC,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC;AAjCW,QAAA,6BAA6B,iCAiCxC;AAcF,MAAM,sBAAsB,GAAG,CAAC,CAAmB,EAAE,CAAmB,EAAE,EAAE;IAC1E,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QACnD,OAAO,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QACnD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;QACzC,CAAC,CAAC,CAAC,CAAC,QAAQ;QACZ,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS;YACxB,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACd,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;QACzC,CAAC,CAAC,CAAC,CAAC,QAAQ;QACZ,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS;YACxB,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACd,CAAC,CAAC,EAAE,CAAC;IACT,IAAI,SAAS,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM,EAAE,CAAC;QAC1C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC,CAAC;AAEF;;;;;;;GAOG;AACI,MAAM,iCAAiC,GAAG,CAC/C,OAA6B,EAC7B,MAAc,EACd,UAA4B,EAC5B,EAAE;IACF,OAAO,CAAC,OAAO,KAAK,EAAE,CAAC;IACvB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC/B,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,KAAK,EAAE,CAAC;IACzC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC;IACpD,4EAA4E;IAC5E,uDAAuD;IACvD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,sBAAsB,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC;QAClE,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC,CAAC;AAdW,QAAA,iCAAiC,qCAc5C"}
@@ -17,7 +17,7 @@
17
17
  * moduleResolution: "bundler" does not allow deep path type imports for
18
18
  * packages without proper exports.
19
19
  */
20
- import { Tree } from '@nx/devkit';
20
+ import type { Tree } from '@nx/devkit';
21
21
  export type UVPyprojectTomlIndex = {
22
22
  name: string;
23
23
  url: string;
@@ -2,7 +2,7 @@
2
2
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- import { ProjectConfiguration, Tree } from '@nx/devkit';
5
+ import type { ProjectConfiguration, Tree } from '@nx/devkit';
6
6
  export declare const getRelativePathToRoot: (tree: Tree, projectName: string) => string;
7
7
  export declare const getRelativePathToRootByDirectory: (directory: string) => string;
8
8
  /**
@@ -2,7 +2,7 @@
2
2
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- import { Tree } from '@nx/devkit';
5
+ import { type Tree } from '@nx/devkit';
6
6
  /**
7
7
  * Merge `allowBuilds` (pnpm 11) / `onlyBuiltDependencies` (pnpm 10) entries
8
8
  * into the generated workspace's `pnpm-workspace.yaml`. No-op for non-pnpm
@@ -1 +1 @@
1
- {"version":3,"file":"pnpm-workspace.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/pnpm-workspace.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,uCAAwD;AACxD,8DAA2B;AAE3B,MAAM,cAAc,GAAG,qBAAqB,CAAC;AAS7C;;;;;;;;;;;;;;;GAeG;AACI,MAAM,6BAA6B,GAAG,CAC3C,IAAU,EACV,OAAgC,EAC1B,EAAE;IACR,IAAI,IAAA,6BAAoB,EAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;QAC/C,OAAO;IACT,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;QACjC,OAAO;IACT,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;IAC1D,MAAM,MAAM,GAAI,iBAAI,CAAC,IAAI,CAAC,QAAQ,CAA8B,IAAI,EAAE,CAAC;IAEvE,MAAM,WAAW,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,CAAC;IACtD,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;IAC1E,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACtD,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;YAClC,WAAW,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;YAC5B,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;QACD,IAAI,QAAQ,KAAK,IAAI,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACzD,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC/B,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;IACT,CAAC;IAED,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,MAAM,CAAC,qBAAqB,GAAG,CAAC,GAAG,qBAAqB,CAAC,CAAC;IAE1D,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,iBAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;AACtE,CAAC,CAAC;AArCW,QAAA,6BAA6B,iCAqCxC;AAEF;;;;;;;;;GASG;AACI,MAAM,mCAAmC,GAAG,CAAC,IAAU,EAAW,EAAE;IACzE,IAAI,IAAA,6BAAoB,EAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;IAC1D,MAAM,MAAM,GAAI,iBAAI,CAAC,IAAI,CAAC,QAAQ,CAA8B,IAAI,EAAE,CAAC;IAEvE,IAAI,MAAM,CAAC,wBAAwB,KAAK,IAAI,EAAE,CAAC;QAC7C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,wBAAwB,GAAG,IAAI,CAAC;IACvC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,iBAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IACpE,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAlBW,QAAA,mCAAmC,uCAkB9C"}
1
+ {"version":3,"file":"pnpm-workspace.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/pnpm-workspace.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,uCAA6D;AAC7D,8DAA2B;AAE3B,MAAM,cAAc,GAAG,qBAAqB,CAAC;AAS7C;;;;;;;;;;;;;;;GAeG;AACI,MAAM,6BAA6B,GAAG,CAC3C,IAAU,EACV,OAAgC,EAC1B,EAAE;IACR,IAAI,IAAA,6BAAoB,EAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;QAC/C,OAAO;IACT,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;QACjC,OAAO;IACT,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;IAC1D,MAAM,MAAM,GAAI,iBAAI,CAAC,IAAI,CAAC,QAAQ,CAA8B,IAAI,EAAE,CAAC;IAEvE,MAAM,WAAW,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,CAAC;IACtD,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;IAC1E,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACtD,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;YAClC,WAAW,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;YAC5B,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;QACD,IAAI,QAAQ,KAAK,IAAI,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACzD,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC/B,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;IACT,CAAC;IAED,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,MAAM,CAAC,qBAAqB,GAAG,CAAC,GAAG,qBAAqB,CAAC,CAAC;IAE1D,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,iBAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;AACtE,CAAC,CAAC;AArCW,QAAA,6BAA6B,iCAqCxC;AAEF;;;;;;;;;GASG;AACI,MAAM,mCAAmC,GAAG,CAAC,IAAU,EAAW,EAAE;IACzE,IAAI,IAAA,6BAAoB,EAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;IAC1D,MAAM,MAAM,GAAI,iBAAI,CAAC,IAAI,CAAC,QAAQ,CAA8B,IAAI,EAAE,CAAC;IAEvE,IAAI,MAAM,CAAC,wBAAwB,KAAK,IAAI,EAAE,CAAC;QAC7C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,wBAAwB,GAAG,IAAI,CAAC;IACvC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,iBAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IACpE,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAlBW,QAAA,mCAAmC,uCAkB9C"}
@@ -2,9 +2,36 @@
2
2
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- import { ProjectConfiguration, Tree } from '@nx/devkit';
5
+ import { type ProjectConfiguration, type Tree } from '@nx/devkit';
6
+ /**
7
+ * Options for assigning a port to a target within a project.
8
+ */
9
+ export interface AssignPortOptions {
10
+ /**
11
+ * Identifies the component the port is being assigned for. When provided, a
12
+ * port already assigned to this component is reused so re-runs are
13
+ * idempotent. Use this for projects which host a port per component.
14
+ */
15
+ component?: {
16
+ info: {
17
+ id: string;
18
+ };
19
+ name?: string;
20
+ };
21
+ }
22
+ /**
23
+ * Assign a port shared across all projects created by the same generator.
24
+ * If this project already has a port, or a sibling project created by the same
25
+ * generator has one, reuse it; otherwise assign a fresh one. Mutates the
26
+ * project to register the port in its metadata.ports.
27
+ */
28
+ export declare const assignSharedPort: (tree: Tree, project: ProjectConfiguration, generatorId: string, startPort: number) => number;
6
29
  /**
7
30
  * Assign a port for a particular target within a project.
8
- * Mutates the project to add/update its metadata.ports with the newly assigned port
31
+ * Mutates the project to add/update its metadata.ports with the newly assigned port.
32
+ *
33
+ * Re-runs are idempotent: a port previously assigned to this project (or, when
34
+ * `options.component` is provided, to this component) is returned as-is without
35
+ * registering a duplicate.
9
36
  */
10
- export declare const assignPort: (tree: Tree, project: ProjectConfiguration, startPort: number) => number;
37
+ export declare const assignPort: (tree: Tree, project: ProjectConfiguration, startPort: number, options?: AssignPortOptions) => number;