@aws/nx-plugin 1.0.0-rc.23 → 1.0.0-rc.24
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.
- package/LICENSE-THIRD-PARTY +2088 -971
- package/package.json +25 -10
- package/src/agentcore-gateway/attach-upstream.d.ts +7 -7
- package/src/agentcore-gateway/attach-upstream.js +19 -22
- package/src/agentcore-gateway/attach-upstream.js.map +1 -1
- package/src/agentcore-gateway/gateway-connection/generator.d.ts +3 -3
- package/src/agentcore-gateway/gateway-connection/generator.js +42 -45
- package/src/agentcore-gateway/gateway-connection/generator.js.map +1 -1
- package/src/agentcore-gateway/gateway-connection/schema.d.js +6 -0
- package/src/agentcore-gateway/gateway-connection/schema.d.js.map +1 -0
- package/src/agentcore-gateway/generator.js +89 -72
- package/src/agentcore-gateway/generator.js.map +1 -1
- package/src/agentcore-gateway/mcp-connection/generator.d.ts +2 -2
- package/src/agentcore-gateway/mcp-connection/generator.js +24 -30
- package/src/agentcore-gateway/mcp-connection/generator.js.map +1 -1
- package/src/agentcore-gateway/mcp-connection/schema.d.js +6 -0
- package/src/agentcore-gateway/mcp-connection/schema.d.js.map +1 -0
- package/src/agentcore-gateway/schema.d.js +6 -0
- package/src/agentcore-gateway/schema.d.js.map +1 -0
- package/src/bin/aws-nx-mcp.js +14 -0
- package/src/bin/aws-nx-mcp.js.map +1 -0
- package/src/connection/{agent-serve-local.d.ts → agent-local-dev.d.ts} +5 -5
- package/src/connection/agent-local-dev.js +42 -0
- package/src/connection/agent-local-dev.js.map +1 -0
- package/src/connection/agent-runtime-config.js +9 -14
- package/src/connection/agent-runtime-config.js.map +1 -1
- package/src/connection/generator.js +262 -207
- package/src/connection/generator.js.map +1 -1
- package/src/connection/{serve-local.d.ts → local-dev.d.ts} +3 -3
- package/src/connection/local-dev.js +37 -0
- package/src/connection/local-dev.js.map +1 -0
- package/src/connection/schema.d.js +6 -0
- package/src/connection/schema.d.js.map +1 -0
- package/src/index.js +2 -5
- package/src/index.js.map +1 -1
- package/src/infra/app/__snapshots__/generator.spec.ts.snap +4 -26
- package/src/infra/app/generator.js +133 -123
- package/src/infra/app/generator.js.map +1 -1
- package/src/infra/app/schema.d.js +6 -0
- package/src/infra/app/schema.d.js.map +1 -0
- package/src/license/config-types.js +5 -3
- package/src/license/config-types.js.map +1 -1
- package/src/license/config.d.ts +1 -1
- package/src/license/config.js +267 -242
- package/src/license/config.js.map +1 -1
- package/src/license/dependency-check/check.js +51 -46
- package/src/license/dependency-check/check.js.map +1 -1
- package/src/license/dependency-check/collectors/collector.js +41 -71
- package/src/license/dependency-check/collectors/collector.js.map +1 -1
- package/src/license/dependency-check/collectors/npm-collector.js +34 -41
- package/src/license/dependency-check/collectors/npm-collector.js.map +1 -1
- package/src/license/dependency-check/collectors/python-collector.js +55 -62
- package/src/license/dependency-check/collectors/python-collector.js.map +1 -1
- package/src/license/dependency-check/evaluator.js +40 -68
- package/src/license/dependency-check/evaluator.js.map +1 -1
- package/src/license/dependency-check/executor.js +30 -22
- package/src/license/dependency-check/executor.js.map +1 -1
- package/src/license/dependency-check/pre-approved.js +949 -336
- package/src/license/dependency-check/pre-approved.js.map +1 -1
- package/src/license/dependency-check/types.js +2 -3
- package/src/license/dependency-check/types.js.map +1 -1
- package/src/license/generator.js +55 -60
- package/src/license/generator.js.map +1 -1
- package/src/license/index.js +3 -9
- package/src/license/index.js.map +1 -1
- package/src/license/known-exceptions.js +14 -13
- package/src/license/known-exceptions.js.map +1 -1
- package/src/license/schema.d.js +6 -0
- package/src/license/schema.d.js.map +1 -0
- package/src/license/sync/generator.js +94 -119
- package/src/license/sync/generator.js.map +1 -1
- package/src/license/sync/project-file-sync.js +28 -35
- package/src/license/sync/project-file-sync.js.map +1 -1
- package/src/mcp-server/generator-info.js +130 -160
- package/src/mcp-server/generator-info.js.map +1 -1
- package/src/mcp-server/guide-pipeline.js +184 -206
- package/src/mcp-server/guide-pipeline.js.map +1 -1
- package/src/mcp-server/guide-render.js +10 -25
- package/src/mcp-server/guide-render.js.map +1 -1
- package/src/mcp-server/index.js +6 -10
- package/src/mcp-server/index.js.map +1 -1
- package/src/mcp-server/mdx-ast.js +39 -57
- package/src/mcp-server/mdx-ast.js.map +1 -1
- package/src/mcp-server/option-filter.js +33 -47
- package/src/mcp-server/option-filter.js.map +1 -1
- package/src/mcp-server/schema-registry.js +27 -40
- package/src/mcp-server/schema-registry.js.map +1 -1
- package/src/mcp-server/schema.js +9 -7
- package/src/mcp-server/schema.js.map +1 -1
- package/src/mcp-server/server.js +20 -24
- package/src/mcp-server/server.js.map +1 -1
- package/src/mcp-server/tools/create-workspace-command.js +23 -24
- package/src/mcp-server/tools/create-workspace-command.js.map +1 -1
- package/src/mcp-server/tools/general-guidance.js +28 -25
- package/src/mcp-server/tools/general-guidance.js.map +1 -1
- package/src/mcp-server/tools/generator-guide.js +29 -37
- package/src/mcp-server/tools/generator-guide.js.map +1 -1
- package/src/mcp-server/tools/list-generators.js +19 -25
- package/src/mcp-server/tools/list-generators.js.map +1 -1
- package/src/open-api/ts-client/generator.js +16 -26
- package/src/open-api/ts-client/generator.js.map +1 -1
- package/src/open-api/ts-client/schema.d.js +6 -0
- package/src/open-api/ts-client/schema.d.js.map +1 -0
- package/src/open-api/ts-hooks/generator.js +13 -21
- package/src/open-api/ts-hooks/generator.js.map +1 -1
- package/src/open-api/ts-hooks/schema.d.js +6 -0
- package/src/open-api/ts-hooks/schema.d.js.map +1 -0
- package/src/open-api/ts-metadata/generator.js +12 -20
- package/src/open-api/ts-metadata/generator.js.map +1 -1
- package/src/open-api/ts-metadata/schema.d.js +6 -0
- package/src/open-api/ts-metadata/schema.d.js.map +1 -0
- package/src/open-api/utils/codegen-data/languages.js +42 -60
- package/src/open-api/utils/codegen-data/languages.js.map +1 -1
- package/src/open-api/utils/codegen-data/types.js +31 -30
- package/src/open-api/utils/codegen-data/types.js.map +1 -1
- package/src/open-api/utils/codegen-data.js +253 -269
- package/src/open-api/utils/codegen-data.js.map +1 -1
- package/src/open-api/utils/normalise.js +242 -241
- package/src/open-api/utils/normalise.js.map +1 -1
- package/src/open-api/utils/parse.js +8 -14
- package/src/open-api/utils/parse.js.map +1 -1
- package/src/open-api/utils/refs.js +12 -22
- package/src/open-api/utils/refs.js.map +1 -1
- package/src/open-api/utils/types.js +5 -2
- package/src/open-api/utils/types.js.map +1 -1
- package/src/preset/__snapshots__/generator.spec.ts.snap +31 -6
- package/src/preset/generator.d.ts +1 -1
- package/src/preset/generator.js +130 -112
- package/src/preset/generator.js.map +1 -1
- package/src/preset/schema.d.js +6 -0
- package/src/preset/schema.d.js.map +1 -0
- package/src/preset/schema.d.ts +0 -1
- package/src/preset/schema.json +0 -5
- package/src/py/agent/__snapshots__/generator.constructs.spec.ts.snap +304 -0
- package/src/py/agent/__snapshots__/{generator.spec.ts.snap → generator.frameworks.spec.ts.snap} +6 -843
- package/src/py/agent/__snapshots__/generator.protocols.spec.ts.snap +535 -0
- package/src/py/agent/a2a-connection/__snapshots__/generator.spec.ts.snap +1 -2
- package/src/py/agent/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client_strands.py.template +1 -1
- package/src/py/agent/a2a-connection/files/langchain/agent-connection/app/__targetAgentSnakeCase___client_langchain.py.template +1 -1
- package/src/py/agent/a2a-connection/generator.js +70 -74
- package/src/py/agent/a2a-connection/generator.js.map +1 -1
- package/src/py/agent/a2a-connection/schema.d.js +8 -0
- package/src/py/agent/a2a-connection/schema.d.js.map +1 -0
- package/src/py/agent/gateway-connection/__snapshots__/generator.spec.ts.snap +6 -8
- package/src/py/agent/gateway-connection/files/agent-connection/app/__gatewaySnakeCase___client_strands.py.template +3 -3
- package/src/py/agent/gateway-connection/files/langchain/agent-connection/app/__gatewaySnakeCase___client_langchain.py.template +3 -3
- package/src/py/agent/gateway-connection/generator.js +61 -57
- package/src/py/agent/gateway-connection/generator.js.map +1 -1
- package/src/py/agent/gateway-connection/schema.d.js +6 -0
- package/src/py/agent/gateway-connection/schema.d.js.map +1 -0
- package/src/py/agent/generator.js +227 -193
- package/src/py/agent/generator.js.map +1 -1
- package/src/py/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +5 -12
- package/src/py/agent/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client_strands.py.template +1 -1
- package/src/py/agent/mcp-connection/files/langchain/agent-connection/app/__mcpServerSnakeCase___client_langchain.py.template +1 -1
- package/src/py/agent/mcp-connection/generator.js +53 -51
- package/src/py/agent/mcp-connection/generator.js.map +1 -1
- package/src/py/agent/mcp-connection/schema.d.js +8 -0
- package/src/py/agent/mcp-connection/schema.d.js.map +1 -0
- package/src/py/agent/react-connection/__snapshots__/generator.spec.ts.snap +3 -2
- package/src/py/agent/react-connection/generator.js +51 -58
- package/src/py/agent/react-connection/generator.js.map +1 -1
- package/src/py/agent/react-connection/{serve-local.d.ts → local-dev.d.ts} +4 -4
- package/src/py/agent/react-connection/local-dev.js +36 -0
- package/src/py/agent/react-connection/local-dev.js.map +1 -0
- package/src/py/agent/react-connection/schema.d.js +8 -0
- package/src/py/agent/react-connection/schema.d.js.map +1 -0
- package/src/py/agent/schema.d.js +6 -0
- package/src/py/agent/schema.d.js.map +1 -0
- package/src/py/api/generator.js +12 -12
- package/src/py/api/generator.js.map +1 -1
- package/src/py/api/schema.d.js +6 -0
- package/src/py/api/schema.d.js.map +1 -0
- package/src/py/dynamodb/__snapshots__/generator.spec.ts.snap +68 -28
- package/src/py/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +5 -5
- package/src/py/dynamodb/agent-connection/generator.js +27 -29
- package/src/py/dynamodb/agent-connection/generator.js.map +1 -1
- package/src/py/dynamodb/agent-connection/schema.d.js +8 -0
- package/src/py/dynamodb/agent-connection/schema.d.js.map +1 -0
- package/src/py/dynamodb/fast-api-connection/__snapshots__/generator.spec.ts.snap +3 -3
- package/src/py/dynamodb/fast-api-connection/generator.js +26 -28
- package/src/py/dynamodb/fast-api-connection/generator.js.map +1 -1
- package/src/py/dynamodb/fast-api-connection/schema.d.js +8 -0
- package/src/py/dynamodb/fast-api-connection/schema.d.js.map +1 -0
- package/src/py/dynamodb/files/__name__/client.py.template +5 -5
- package/src/py/dynamodb/files/__name__/entities/base.py.template +2 -2
- package/src/py/dynamodb/files/config.json.template +1 -1
- package/src/py/dynamodb/generator.js +63 -62
- package/src/py/dynamodb/generator.js.map +1 -1
- package/src/py/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +5 -5
- package/src/py/dynamodb/mcp-server-connection/generator.js +27 -29
- package/src/py/dynamodb/mcp-server-connection/generator.js.map +1 -1
- package/src/py/dynamodb/mcp-server-connection/schema.d.js +8 -0
- package/src/py/dynamodb/mcp-server-connection/schema.d.js.map +1 -0
- package/src/py/dynamodb/schema.d.js +6 -0
- package/src/py/dynamodb/schema.d.js.map +1 -0
- package/src/py/fast-api/__snapshots__/generator.spec.ts.snap +45 -4632
- package/src/py/fast-api/__snapshots__/generator.terraform.spec.ts.snap +4833 -0
- package/src/py/fast-api/generator.js +79 -85
- package/src/py/fast-api/generator.js.map +1 -1
- package/src/py/fast-api/react/__snapshots__/generator.spec.ts.snap +3 -2
- package/src/py/fast-api/react/generator.js +22 -24
- package/src/py/fast-api/react/generator.js.map +1 -1
- package/src/py/fast-api/react/open-api.js +28 -29
- package/src/py/fast-api/react/open-api.js.map +1 -1
- package/src/py/fast-api/react/schema.d.js +6 -0
- package/src/py/fast-api/react/schema.d.js.map +1 -0
- package/src/py/fast-api/schema.d.js +6 -0
- package/src/py/fast-api/schema.d.js.map +1 -0
- package/src/py/lambda-function/__snapshots__/generator.spec.ts.snap +4 -4
- package/src/py/lambda-function/generator.js +57 -58
- package/src/py/lambda-function/generator.js.map +1 -1
- package/src/py/lambda-function/schema.d.js +6 -0
- package/src/py/lambda-function/schema.d.js.map +1 -0
- package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +4 -4
- package/src/py/mcp-server/generator.js +149 -131
- package/src/py/mcp-server/generator.js.map +1 -1
- package/src/py/mcp-server/schema.d.js +6 -0
- package/src/py/mcp-server/schema.d.js.map +1 -0
- package/src/py/project/generator.js +128 -89
- package/src/py/project/generator.js.map +1 -1
- package/src/py/project/schema.d.js +6 -0
- package/src/py/project/schema.d.js.map +1 -0
- package/src/sdk/agentcore-gateway.d.ts +6 -0
- package/src/sdk/agentcore-gateway.js +7 -0
- package/src/sdk/agentcore-gateway.js.map +1 -0
- package/src/sdk/connection.d.ts +6 -0
- package/src/sdk/connection.js +6 -0
- package/src/sdk/connection.js.map +1 -0
- package/{sdk → src/sdk}/license.d.ts +4 -4
- package/src/sdk/license.js +7 -0
- package/src/sdk/license.js.map +1 -0
- package/src/sdk/open-api.d.ts +10 -0
- package/src/sdk/open-api.js +8 -0
- package/src/sdk/open-api.js.map +1 -0
- package/src/sdk/py.d.ts +14 -0
- package/src/sdk/py.js +10 -0
- package/src/sdk/py.js.map +1 -0
- package/src/sdk/terraform.d.ts +6 -0
- package/src/sdk/terraform.js +7 -0
- package/src/sdk/terraform.js.map +1 -0
- package/src/sdk/ts.d.ts +33 -0
- package/src/sdk/ts.js +35 -0
- package/src/sdk/ts.js.map +1 -0
- package/{sdk → src/sdk}/utils/ast.d.ts +2 -2
- package/src/sdk/utils/ast.js +7 -0
- package/src/sdk/utils/ast.js.map +1 -0
- package/{sdk → src/sdk}/utils/format.d.ts +1 -1
- package/src/sdk/utils/format.js +6 -0
- package/src/sdk/utils/format.js.map +1 -0
- package/{sdk → src/sdk}/utils/test.d.ts +1 -1
- package/src/sdk/utils/test.js +6 -0
- package/src/sdk/utils/test.js.map +1 -0
- package/src/smithy/project/__snapshots__/generator.spec.ts.snap +2 -8
- package/src/smithy/project/files/build.Dockerfile.template +1 -4
- package/src/smithy/project/generator.js +44 -42
- package/src/smithy/project/generator.js.map +1 -1
- package/src/smithy/project/schema.d.js +6 -0
- package/src/smithy/project/schema.d.js.map +1 -0
- package/src/smithy/react-connection/generator.js +35 -46
- package/src/smithy/react-connection/generator.js.map +1 -1
- package/src/smithy/react-connection/schema.d.js +6 -0
- package/src/smithy/react-connection/schema.d.js.map +1 -0
- package/src/smithy/ts/api/__snapshots__/generator.spec.ts.snap +395 -72
- package/src/smithy/ts/api/generator.js +121 -111
- package/src/smithy/ts/api/generator.js.map +1 -1
- package/src/smithy/ts/api/schema.d.js +6 -0
- package/src/smithy/ts/api/schema.d.js.map +1 -0
- package/src/terraform/project/files/application/src/providers.tf.template +1 -1
- package/src/terraform/project/generator.js +141 -103
- package/src/terraform/project/generator.js.map +1 -1
- package/src/terraform/project/schema.d.js +9 -0
- package/src/terraform/project/schema.d.js.map +1 -0
- package/src/trpc/backend/__snapshots__/generator.spec.ts.snap +336 -92
- package/src/trpc/backend/generator.js +93 -86
- package/src/trpc/backend/generator.js.map +1 -1
- package/src/trpc/backend/schema.d.js +6 -0
- package/src/trpc/backend/schema.d.js.map +1 -0
- package/src/trpc/react/__snapshots__/generator.spec.ts.snap +1 -1
- package/src/trpc/react/generator.js +59 -58
- package/src/trpc/react/generator.js.map +1 -1
- package/src/trpc/react/schema.d.js +6 -0
- package/src/trpc/react/schema.d.js.map +1 -0
- package/src/ts/agent/__snapshots__/generator.spec.ts.snap +10 -10
- package/src/ts/agent/a2a-connection/__snapshots__/generator.spec.ts.snap +1 -1
- package/src/ts/agent/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client-strands.ts.template +1 -1
- package/src/ts/agent/a2a-connection/generator.js +58 -54
- package/src/ts/agent/a2a-connection/generator.js.map +1 -1
- package/src/ts/agent/a2a-connection/schema.d.js +8 -0
- package/src/ts/agent/a2a-connection/schema.d.js.map +1 -0
- package/src/ts/agent/gateway-connection/__snapshots__/generator.spec.ts.snap +5 -5
- package/src/ts/agent/gateway-connection/files/agent-connection/app/__gatewayKebabCase__-client-strands.ts.template +3 -3
- package/src/ts/agent/gateway-connection/generator.js +57 -52
- package/src/ts/agent/gateway-connection/generator.js.map +1 -1
- package/src/ts/agent/gateway-connection/schema.d.js +6 -0
- package/src/ts/agent/gateway-connection/schema.d.js.map +1 -0
- package/src/ts/agent/generator.js +165 -136
- package/src/ts/agent/generator.js.map +1 -1
- package/src/ts/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +1 -1
- package/src/ts/agent/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client-strands.ts.template +1 -1
- package/src/ts/agent/mcp-connection/generator.js +48 -46
- package/src/ts/agent/mcp-connection/generator.js.map +1 -1
- package/src/ts/agent/mcp-connection/schema.d.js +8 -0
- package/src/ts/agent/mcp-connection/schema.d.js.map +1 -0
- package/src/ts/agent/react-connection/generator.js +79 -79
- package/src/ts/agent/react-connection/generator.js.map +1 -1
- package/src/ts/agent/react-connection/{serve-local.d.ts → local-dev.d.ts} +2 -2
- package/src/ts/agent/react-connection/local-dev.js +17 -0
- package/src/ts/agent/react-connection/local-dev.js.map +1 -0
- package/src/ts/agent/react-connection/schema.d.js +8 -0
- package/src/ts/agent/react-connection/schema.d.js.map +1 -0
- package/src/ts/agent/schema.d.js +6 -0
- package/src/ts/agent/schema.d.js.map +1 -0
- package/src/ts/api/generator.js +16 -18
- package/src/ts/api/generator.js.map +1 -1
- package/src/ts/api/schema.d.js +6 -0
- package/src/ts/api/schema.d.js.map +1 -0
- package/src/ts/astro-docs/__snapshots__/generator.spec.ts.snap +8 -8
- package/src/ts/astro-docs/generator.js +59 -48
- package/src/ts/astro-docs/generator.js.map +1 -1
- package/src/ts/astro-docs/schema.d.js +6 -0
- package/src/ts/astro-docs/schema.d.js.map +1 -0
- package/src/ts/docs/generator.js +10 -10
- package/src/ts/docs/generator.js.map +1 -1
- package/src/ts/docs/schema.d.js +6 -0
- package/src/ts/docs/schema.d.js.map +1 -0
- package/src/ts/dynamodb/__snapshots__/generator.spec.ts.snap +68 -30
- package/src/ts/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +5 -5
- package/src/ts/dynamodb/agent-connection/generator.js +21 -23
- package/src/ts/dynamodb/agent-connection/generator.js.map +1 -1
- package/src/ts/dynamodb/agent-connection/schema.d.js +8 -0
- package/src/ts/dynamodb/agent-connection/schema.d.js.map +1 -0
- package/src/ts/dynamodb/files/config.json.template +1 -1
- package/src/ts/dynamodb/files/src/client.ts.template +7 -7
- package/src/ts/dynamodb/generator.js +64 -63
- package/src/ts/dynamodb/generator.js.map +1 -1
- package/src/ts/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +5 -5
- package/src/ts/dynamodb/mcp-server-connection/generator.js +21 -23
- package/src/ts/dynamodb/mcp-server-connection/generator.js.map +1 -1
- package/src/ts/dynamodb/mcp-server-connection/schema.d.js +8 -0
- package/src/ts/dynamodb/mcp-server-connection/schema.d.js.map +1 -0
- package/src/ts/dynamodb/schema.d.js +6 -0
- package/src/ts/dynamodb/schema.d.js.map +1 -0
- package/src/ts/dynamodb/smithy-connection/__snapshots__/generator.spec.ts.snap +3 -3
- package/src/ts/dynamodb/smithy-connection/generator.js +20 -22
- package/src/ts/dynamodb/smithy-connection/generator.js.map +1 -1
- package/src/ts/dynamodb/smithy-connection/schema.d.js +8 -0
- package/src/ts/dynamodb/smithy-connection/schema.d.js.map +1 -0
- package/src/ts/dynamodb/trpc-connection/__snapshots__/generator.spec.ts.snap +3 -3
- package/src/ts/dynamodb/trpc-connection/generator.js +20 -22
- package/src/ts/dynamodb/trpc-connection/generator.js.map +1 -1
- package/src/ts/dynamodb/trpc-connection/schema.d.js +8 -0
- package/src/ts/dynamodb/trpc-connection/schema.d.js.map +1 -0
- package/src/ts/lambda-function/__snapshots__/generator.spec.ts.snap +4 -4
- package/src/ts/lambda-function/generator.js +55 -55
- package/src/ts/lambda-function/generator.js.map +1 -1
- package/src/ts/lambda-function/io.js +83 -52
- package/src/ts/lambda-function/io.js.map +1 -1
- package/src/ts/lambda-function/schema.d.js +6 -0
- package/src/ts/lambda-function/schema.d.js.map +1 -0
- package/src/ts/lib/__snapshots__/generator.spec.ts.snap +23 -36
- package/src/ts/lib/biome.js +37 -37
- package/src/ts/lib/biome.js.map +1 -1
- package/src/ts/lib/generator.js +75 -77
- package/src/ts/lib/generator.js.map +1 -1
- package/src/ts/lib/schema.d.js +6 -0
- package/src/ts/lib/schema.d.js.map +1 -0
- package/src/ts/lib/ts-project-utils.js +65 -70
- package/src/ts/lib/ts-project-utils.js.map +1 -1
- package/src/ts/lib/types.js +5 -2
- package/src/ts/lib/types.js.map +1 -1
- package/src/ts/lib/vitest.js +29 -26
- package/src/ts/lib/vitest.js.map +1 -1
- package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +4 -4
- package/src/ts/mcp-server/generator.js +157 -138
- package/src/ts/mcp-server/generator.js.map +1 -1
- package/src/ts/mcp-server/schema.d.js +6 -0
- package/src/ts/mcp-server/schema.d.js.map +1 -0
- package/src/ts/nx-generator/__snapshots__/generator.spec.ts.snap +14 -9
- package/src/ts/nx-generator/files/local/generator.ts.template +3 -3
- package/src/ts/nx-generator/files/nx-plugin-for-aws/generator/generator.ts.template +4 -4
- package/src/ts/nx-generator/generator.js +84 -83
- package/src/ts/nx-generator/generator.js.map +1 -1
- package/src/ts/nx-generator/schema.d.js +6 -0
- package/src/ts/nx-generator/schema.d.js.map +1 -0
- package/src/ts/nx-plugin/__snapshots__/generator.spec.ts.snap +30 -18
- package/src/ts/nx-plugin/files/mcp-server/server.ts.template +5 -5
- package/src/ts/nx-plugin/files/mcp-server/tools/create-workspace-command.ts.template +2 -2
- package/src/ts/nx-plugin/files/mcp-server/tools/general-guidance.ts.template +1 -1
- package/src/ts/nx-plugin/files/mcp-server/tools/generator-guide.ts.template +2 -2
- package/src/ts/nx-plugin/files/mcp-server/tools/list-generators.ts.template +2 -2
- package/src/ts/nx-plugin/files/mcp-server/utils.ts.template +3 -3
- package/src/ts/nx-plugin/generator.js +49 -48
- package/src/ts/nx-plugin/generator.js.map +1 -1
- package/src/ts/nx-plugin/schema.d.js +9 -0
- package/src/ts/nx-plugin/schema.d.js.map +1 -0
- package/src/ts/nx-plugin/utils.js +32 -44
- package/src/ts/nx-plugin/utils.js.map +1 -1
- package/src/ts/rdb/__snapshots__/generator.spec.ts.snap +30 -30
- package/src/ts/rdb/agent-connection/__snapshots__/generator.spec.ts.snap +6 -6
- package/src/ts/rdb/agent-connection/generator.js +38 -39
- package/src/ts/rdb/agent-connection/generator.js.map +1 -1
- package/src/ts/rdb/agent-connection/schema.d.js +8 -0
- package/src/ts/rdb/agent-connection/schema.d.js.map +1 -0
- package/src/ts/rdb/files/config.json.template +1 -1
- package/src/ts/rdb/files/prisma.config.ts.template +2 -2
- package/src/ts/rdb/files/src/prisma.ts.template +7 -7
- package/src/ts/rdb/files/src/utils.ts.template +1 -0
- package/src/ts/rdb/generator.js +130 -117
- package/src/ts/rdb/generator.js.map +1 -1
- package/src/ts/rdb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +6 -6
- package/src/ts/rdb/mcp-server-connection/generator.js +36 -37
- package/src/ts/rdb/mcp-server-connection/generator.js.map +1 -1
- package/src/ts/rdb/mcp-server-connection/schema.d.js +8 -0
- package/src/ts/rdb/mcp-server-connection/schema.d.js.map +1 -0
- package/src/ts/rdb/schema.d.js +6 -0
- package/src/ts/rdb/schema.d.js.map +1 -0
- package/src/ts/rdb/smithy-connection/__snapshots__/generator.spec.ts.snap +3 -3
- package/src/ts/rdb/smithy-connection/generator.js +46 -43
- package/src/ts/rdb/smithy-connection/generator.js.map +1 -1
- package/src/ts/rdb/smithy-connection/schema.d.js +8 -0
- package/src/ts/rdb/smithy-connection/schema.d.js.map +1 -0
- package/src/ts/rdb/trpc-connection/__snapshots__/generator.spec.ts.snap +3 -3
- package/src/ts/rdb/trpc-connection/generator.js +36 -31
- package/src/ts/rdb/trpc-connection/generator.js.map +1 -1
- package/src/ts/rdb/trpc-connection/schema.d.js +8 -0
- package/src/ts/rdb/trpc-connection/schema.d.js.map +1 -0
- package/src/ts/rdb/utils.js +9 -11
- package/src/ts/rdb/utils.js.map +1 -1
- package/src/ts/react-website/agui/generator.js +69 -61
- package/src/ts/react-website/agui/generator.js.map +1 -1
- package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +154 -260
- package/src/ts/react-website/app/generator.js +197 -188
- package/src/ts/react-website/app/generator.js.map +1 -1
- package/src/ts/react-website/app/schema.d.js +6 -0
- package/src/ts/react-website/app/schema.d.js.map +1 -0
- package/src/ts/react-website/app/schema.json +6 -6
- package/src/ts/react-website/cognito-auth/__snapshots__/generator.spec.ts.snap +118 -4
- package/src/ts/react-website/cognito-auth/__snapshots__/generator.terraform.spec.ts.snap +10 -3
- package/src/ts/react-website/cognito-auth/files/app/components/CognitoAuth/index.tsx.template +2 -2
- package/src/ts/react-website/cognito-auth/generator.js +60 -60
- package/src/ts/react-website/cognito-auth/generator.js.map +1 -1
- package/src/ts/react-website/cognito-auth/schema.d.js +6 -0
- package/src/ts/react-website/cognito-auth/schema.d.js.map +1 -0
- package/src/ts/react-website/cognito-auth/utils.js +34 -32
- package/src/ts/react-website/cognito-auth/utils.js.map +1 -1
- package/src/ts/react-website/runtime-config/__snapshots__/generator.spec.ts.snap +2 -2
- package/src/ts/react-website/runtime-config/files/app/components/RuntimeConfig/index.tsx.template +2 -2
- package/src/ts/react-website/runtime-config/generator.js +29 -31
- package/src/ts/react-website/runtime-config/generator.js.map +1 -1
- package/src/ts/react-website/runtime-config/schema.d.js +6 -0
- package/src/ts/react-website/runtime-config/schema.d.js.map +1 -0
- package/src/ts/sync/generator.js +60 -59
- package/src/ts/sync/generator.js.map +1 -1
- package/src/ts/website/app/generator.js +10 -10
- package/src/ts/website/app/generator.js.map +1 -1
- package/src/ts/website/app/schema.d.js +6 -0
- package/src/ts/website/app/schema.d.js.map +1 -0
- package/src/ts/website/app/schema.json +6 -6
- package/src/ts/website/auth/generator.js +11 -11
- package/src/ts/website/auth/generator.js.map +1 -1
- package/src/ts/website/auth/schema.d.js +6 -0
- package/src/ts/website/auth/schema.d.js.map +1 -0
- package/src/utils/agent-chat/agent-chat.d.ts +1 -1
- package/src/utils/agent-chat/agent-chat.js +11 -12
- package/src/utils/agent-chat/agent-chat.js.map +1 -1
- package/src/utils/agent-chat/files/a2a/chat.ts.template +1 -1
- package/src/utils/agent-chat/files/ag-ui/chat.ts.template +1 -1
- package/src/utils/agent-chat/files/http-py/chat.ts.template +1 -1
- package/src/utils/agent-chat/files/http-ts/chat.ts.template +1 -1
- package/src/utils/agent-connection/agent-connection.js +129 -146
- package/src/utils/agent-connection/agent-connection.js.map +1 -1
- package/src/utils/agent-connection/files/core-gateway/agentcore-gateway-mcp-transport.ts.template +1 -1
- package/src/utils/agent-connection/files/core-strands/gateway/agentcore-gateway-mcp-client-strands.ts.template +1 -1
- package/src/utils/agent-connection/files/py-core-gateway/agentcore_gateway_mcp_transport.py.template +1 -1
- package/src/utils/agent-connection/files/py-core-langchain/gateway/agentcore_gateway_mcp_client_langchain.py.template +1 -1
- package/src/utils/agent-connection/files/py-core-strands/gateway/agentcore_gateway_mcp_client_strands.py.template +1 -1
- package/src/utils/agent-core-constructs/agent-core-constructs.js +53 -50
- package/src/utils/agent-core-constructs/agent-core-constructs.js.map +1 -1
- package/src/utils/agent-core-constructs/files/terraform/app/agentcore-gateway/__nameKebabCase__/__nameKebabCase__.tf.template +4 -4
- package/src/utils/agent-core-constructs/files/terraform/core/agent-core/runtime.tf.template +4 -4
- package/src/utils/agent-core-constructs/files/terraform/core/agentcore-gateway/gateway.tf.template +2 -2
- package/src/utils/api-constructs/api-constructs.js +30 -31
- package/src/utils/api-constructs/api-constructs.js.map +1 -1
- package/src/utils/api-constructs/files/cdk/core/api/http/http-api.ts.template +14 -6
- package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account/index.js.template +58 -0
- package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account.ts.template +82 -0
- package/src/utils/api-constructs/files/cdk/core/api/rest/rest-api.ts.template +28 -14
- package/src/utils/api-constructs/files/terraform/app/apis/http/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +1 -8
- package/src/utils/api-constructs/files/terraform/app/apis/rest/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +91 -4
- package/src/utils/api-constructs/files/terraform/core/api/http/http-api/http-api.tf.template +1 -1
- package/src/utils/api-constructs/files/terraform/core/api/rest/api-gateway-account/api-gateway-account.tf.template +83 -0
- package/src/utils/api-constructs/files/terraform/core/api/rest/rest-api/rest-api.tf.template +5 -11
- package/src/utils/api-constructs/open-api-metadata.js +22 -22
- package/src/utils/api-constructs/open-api-metadata.js.map +1 -1
- package/src/utils/ast/website.js +17 -19
- package/src/utils/ast/website.js.map +1 -1
- package/src/utils/ast.js +72 -97
- package/src/utils/ast.js.map +1 -1
- package/src/utils/bundle/bundle.js +50 -47
- package/src/utils/bundle/bundle.js.map +1 -1
- package/src/utils/commands.js +47 -26
- package/src/utils/commands.js.map +1 -1
- package/src/utils/config/index.d.ts +2 -2
- package/src/utils/config/index.js +5 -4
- package/src/utils/config/index.js.map +1 -1
- package/src/utils/config/utils.js +48 -58
- package/src/utils/config/utils.js.map +1 -1
- package/src/utils/connection/open-api/react.d.ts +5 -5
- package/src/utils/connection/open-api/react.js +81 -77
- package/src/utils/connection/open-api/react.js.map +1 -1
- package/src/utils/containers.js +22 -23
- package/src/utils/containers.js.map +1 -1
- package/src/utils/dynamodb-constructs/dynamodb-constructs.js +32 -33
- package/src/utils/dynamodb-constructs/dynamodb-constructs.js.map +1 -1
- package/src/utils/dynamodb-constructs/files/terraform/app/dynamodb/__nameKebabCase__/__nameKebabCase__.tf.template +12 -2
- package/src/utils/dynamodb-constructs/files/terraform/core/dynamodb/dynamodb.tf.template +1 -1
- package/src/utils/files/common/scripts/src/dynamodb/create-local-table.ts.template +2 -2
- package/src/utils/files/common/scripts/src/dynamodb/pull-image.ts.template +1 -1
- package/src/utils/files/common/scripts/src/dynamodb/start-container.ts.template +17 -2
- package/src/utils/files/common/scripts/src/rdb/mysql/wait-for-mysql-db.ts.template +32 -0
- package/src/utils/files/common/scripts/src/rdb/postgres/wait-for-postgres-db.ts.template +32 -0
- package/src/utils/files/common/scripts/src/rdb/{pull-image.ts.template → shared/pull-image.ts.template} +1 -1
- package/src/utils/files/common/scripts/src/rdb/{start-container.ts.template → shared/start-container.ts.template} +16 -1
- package/src/utils/files/terraform/src/core/asset-bucket/asset-bucket.tf.template +2 -2
- package/src/utils/files/terraform/src/core/runtime-config/appconfig/appconfig.tf.template +1 -1
- package/src/utils/files/terraform/src/core/runtime-config/appconfig-deployment/appconfig-deployment.tf.template +3 -3
- package/src/utils/files/terraform/src/core/runtime-config/entry/entry.tf.template +1 -1
- package/src/utils/files/terraform/src/core/runtime-config/read/read.tf.template +2 -2
- package/src/utils/files/website/hooks/sigv4/useSigV4.tsx.template +1 -1
- package/src/utils/format.js +153 -99
- package/src/utils/format.js.map +1 -1
- package/src/utils/fs.js +14 -13
- package/src/utils/fs.js.map +1 -1
- package/src/utils/function-constructs/files/terraform/app/lambda-functions/__nameKebabCase__/__nameKebabCase__.tf.template +2 -2
- package/src/utils/function-constructs/function-constructs.js +21 -26
- package/src/utils/function-constructs/function-constructs.js.map +1 -1
- package/src/utils/generators.js +18 -20
- package/src/utils/generators.js.map +1 -1
- package/src/utils/git.js +19 -34
- package/src/utils/git.js.map +1 -1
- package/src/utils/iac-providers.js +5 -5
- package/src/utils/iac-providers.js.map +1 -1
- package/src/utils/iac.js +12 -14
- package/src/utils/iac.js.map +1 -1
- package/src/utils/identity-constructs/files/cdk/core/user-identity.ts.template +112 -2
- package/src/utils/identity-constructs/files/terraform/core/user-identity/add-callback-url/add-callback-url.tf.template +2 -2
- package/src/utils/identity-constructs/files/terraform/core/user-identity/identity/identity.tf.template +104 -2
- package/src/utils/identity-constructs/files/terraform/core/user-identity/main.tf.template +7 -0
- package/src/utils/identity-constructs/identity-constructs.js +24 -28
- package/src/utils/identity-constructs/identity-constructs.js.map +1 -1
- package/src/utils/js.js +27 -20
- package/src/utils/js.js.map +1 -1
- package/src/utils/mcp.js +34 -41
- package/src/utils/mcp.js.map +1 -1
- package/src/utils/metrics.js +30 -45
- package/src/utils/metrics.js.map +1 -1
- package/src/utils/mock-project-graph.js +8 -12
- package/src/utils/mock-project-graph.js.map +1 -1
- package/src/utils/names.js +25 -51
- package/src/utils/names.js.map +1 -1
- package/src/utils/npm-scope.js +9 -17
- package/src/utils/npm-scope.js.map +1 -1
- package/src/utils/nx.d.ts +18 -2
- package/src/utils/nx.js +111 -74
- package/src/utils/nx.js.map +1 -1
- package/src/utils/nxlv-python.js +27 -15
- package/src/utils/nxlv-python.js.map +1 -1
- package/src/utils/object.js +5 -11
- package/src/utils/object.js.map +1 -1
- package/src/utils/paths.js +11 -15
- package/src/utils/paths.js.map +1 -1
- package/src/utils/pkg-manager.js +4 -9
- package/src/utils/pkg-manager.js.map +1 -1
- package/src/utils/pnpm-workspace.js +22 -22
- package/src/utils/pnpm-workspace.js.map +1 -1
- package/src/utils/port.js +26 -36
- package/src/utils/port.js.map +1 -1
- package/src/utils/py.js +43 -52
- package/src/utils/py.js.map +1 -1
- package/src/utils/rdb-constructs/files/terraform/app/dbs/__nameKebabCase__/__nameKebabCase__.tf.template +4 -4
- package/src/utils/rdb-constructs/files/terraform/core/rdb/aurora/aurora.tf.template +3 -3
- package/src/utils/rdb-constructs/rdb-constructs.js +31 -33
- package/src/utils/rdb-constructs/rdb-constructs.js.map +1 -1
- package/src/utils/shared-constructs-constants.js +16 -16
- package/src/utils/shared-constructs-constants.js.map +1 -1
- package/src/utils/shared-constructs.js +57 -54
- package/src/utils/shared-constructs.js.map +1 -1
- package/src/utils/shared-dynamodb-scripts.js +16 -14
- package/src/utils/shared-dynamodb-scripts.js.map +1 -1
- package/src/utils/shared-infra-config.js +30 -31
- package/src/utils/shared-infra-config.js.map +1 -1
- package/src/utils/shared-infra-scripts.js +30 -25
- package/src/utils/shared-infra-scripts.js.map +1 -1
- package/src/utils/shared-rdb-scripts.d.ts +8 -3
- package/src/utils/shared-rdb-scripts.js +21 -13
- package/src/utils/shared-rdb-scripts.js.map +1 -1
- package/src/utils/shared-scripts.js +12 -17
- package/src/utils/shared-scripts.js.map +1 -1
- package/src/utils/shared-shadcn.js +64 -60
- package/src/utils/shared-shadcn.js.map +1 -1
- package/src/utils/test.d.ts +8 -0
- package/src/utils/test.js +33 -25
- package/src/utils/test.js.map +1 -1
- package/src/utils/toml.js +7 -15
- package/src/utils/toml.js.map +1 -1
- package/src/utils/versions.d.ts +31 -4
- package/src/utils/versions.js +40 -23
- package/src/utils/versions.js.map +1 -1
- package/src/utils/website-constructs/files/terraform/app/static-websites/__websiteNameKebabCase__/__websiteNameKebabCase__.tf.template +1 -1
- package/src/utils/website-constructs/files/terraform/core/static-website/static-website.tf.template +4 -4
- package/src/utils/website-constructs/website-constructs.js +31 -30
- package/src/utils/website-constructs/website-constructs.js.map +1 -1
- package/bin/aws-nx-mcp.js +0 -17
- package/bin/aws-nx-mcp.js.map +0 -1
- package/sdk/agentcore-gateway.d.ts +0 -6
- package/sdk/agentcore-gateway.js +0 -11
- package/sdk/agentcore-gateway.js.map +0 -1
- package/sdk/connection.d.ts +0 -6
- package/sdk/connection.js +0 -10
- package/sdk/connection.js.map +0 -1
- package/sdk/license.js +0 -14
- package/sdk/license.js.map +0 -1
- package/sdk/open-api.d.ts +0 -10
- package/sdk/open-api.js +0 -15
- package/sdk/open-api.js.map +0 -1
- package/sdk/py.d.ts +0 -14
- package/sdk/py.js +0 -18
- package/sdk/py.js.map +0 -1
- package/sdk/terraform.d.ts +0 -6
- package/sdk/terraform.js +0 -11
- package/sdk/terraform.js.map +0 -1
- package/sdk/ts.d.ts +0 -33
- package/sdk/ts.js +0 -53
- package/sdk/ts.js.map +0 -1
- package/sdk/utils/ast.js +0 -12
- package/sdk/utils/ast.js.map +0 -1
- package/sdk/utils/format.js +0 -10
- package/sdk/utils/format.js.map +0 -1
- package/sdk/utils/test.js +0 -10
- package/sdk/utils/test.js.map +0 -1
- package/src/connection/agent-serve-local.js +0 -48
- package/src/connection/agent-serve-local.js.map +0 -1
- package/src/connection/serve-local.js +0 -41
- package/src/connection/serve-local.js.map +0 -1
- package/src/py/agent/react-connection/serve-local.js +0 -38
- package/src/py/agent/react-connection/serve-local.js.map +0 -1
- package/src/ts/agent/react-connection/serve-local.js +0 -19
- package/src/ts/agent/react-connection/serve-local.js.map +0 -1
- package/src/utils/files/common/scripts/src/rdb/wait-for-db.ts.template +0 -59
- /package/src/agentcore-gateway/files/project/{serve-local.ts.template → local-dev.ts.template} +0 -0
- /package/{bin → src/bin}/aws-nx-mcp.d.ts +0 -0
|
@@ -1,33 +1,30 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.tsNxPluginGenerator = exports.TS_NX_PLUGIN_GENERATOR_INFO = 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
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
const tsNxPluginGenerator = async (tree, options) => {
|
|
4
|
+
*/ import { generateFiles, installPackagesTask, joinPathFragments, OverwriteStrategy, updateProjectConfiguration } from "@nx/devkit";
|
|
5
|
+
import { formatFilesInSubtree } from "../../utils/format.js";
|
|
6
|
+
import { addGeneratorMetricsIfApplicable } from "../../utils/metrics.js";
|
|
7
|
+
import { addDependencyToTargetIfNotPresent, addGeneratorMetadata, getGeneratorInfo, readProjectConfigurationUnqualified } from "../../utils/nx.js";
|
|
8
|
+
import { sortObjectKeys } from "../../utils/object.js";
|
|
9
|
+
import tsProjectGenerator, { getTsLibDetails } from "../lib/generator.js";
|
|
10
|
+
import tsMcpServerGenerator from "../mcp-server/generator.js";
|
|
11
|
+
import { configureTsProjectAsNxPlugin } from "./utils.js";
|
|
12
|
+
export const TS_NX_PLUGIN_GENERATOR_INFO = getGeneratorInfo(import.meta.filename);
|
|
13
|
+
export const tsNxPluginGenerator = async (tree, options)=>{
|
|
19
14
|
// Generate a TypeScript project as the base
|
|
20
|
-
const { fullyQualifiedName, dir } =
|
|
21
|
-
await (
|
|
15
|
+
const { fullyQualifiedName, dir } = getTsLibDetails(tree, options);
|
|
16
|
+
await tsProjectGenerator(tree, options);
|
|
22
17
|
// Configure the typescript project as an Nx Plugin
|
|
23
|
-
|
|
18
|
+
configureTsProjectAsNxPlugin(tree, fullyQualifiedName);
|
|
24
19
|
// Add a "package" target which creates a package which can be published to NPM
|
|
25
|
-
const project =
|
|
20
|
+
const project = readProjectConfigurationUnqualified(tree, fullyQualifiedName);
|
|
26
21
|
project.targets = {
|
|
27
22
|
...project.targets,
|
|
28
23
|
package: {
|
|
29
24
|
executor: '@nx/js:tsc',
|
|
30
|
-
outputs: [
|
|
25
|
+
outputs: [
|
|
26
|
+
'{options.outputPath}'
|
|
27
|
+
],
|
|
31
28
|
options: {
|
|
32
29
|
outputPath: `dist/{projectRoot}/package`,
|
|
33
30
|
main: `{projectRoot}/src/index.ts`,
|
|
@@ -39,59 +36,63 @@ const tsNxPluginGenerator = async (tree, options) => {
|
|
|
39
36
|
{
|
|
40
37
|
input: './{projectRoot}/src',
|
|
41
38
|
glob: '**/!(*.ts)',
|
|
42
|
-
output: './src'
|
|
39
|
+
output: './src'
|
|
43
40
|
},
|
|
44
41
|
{
|
|
45
42
|
input: './{projectRoot}/src',
|
|
46
43
|
glob: '**/*.d.ts',
|
|
47
|
-
output: './src'
|
|
44
|
+
output: './src'
|
|
48
45
|
},
|
|
49
46
|
{
|
|
50
47
|
input: './{projectRoot}',
|
|
51
48
|
glob: 'generators.json',
|
|
52
|
-
output: '.'
|
|
49
|
+
output: '.'
|
|
53
50
|
},
|
|
54
51
|
{
|
|
55
52
|
input: './{projectRoot}',
|
|
56
53
|
glob: 'executors.json',
|
|
57
|
-
output: '.'
|
|
58
|
-
}
|
|
59
|
-
]
|
|
60
|
-
}
|
|
54
|
+
output: '.'
|
|
55
|
+
}
|
|
56
|
+
]
|
|
57
|
+
}
|
|
61
58
|
},
|
|
62
59
|
build: {
|
|
63
|
-
...project.targets?.build
|
|
64
|
-
}
|
|
60
|
+
...project.targets?.build
|
|
61
|
+
}
|
|
65
62
|
};
|
|
66
63
|
// Append the package dependency without moving an existing entry, so re-runs
|
|
67
64
|
// do not reorder the build dependencies.
|
|
68
|
-
|
|
65
|
+
addDependencyToTargetIfNotPresent(project, 'build', 'package');
|
|
69
66
|
// Sort targets so their order is stable regardless of insertion order.
|
|
70
|
-
project.targets =
|
|
71
|
-
|
|
67
|
+
project.targets = sortObjectKeys(project.targets);
|
|
68
|
+
updateProjectConfiguration(tree, fullyQualifiedName, project);
|
|
72
69
|
// Add an MCP Server
|
|
73
|
-
await (
|
|
70
|
+
await tsMcpServerGenerator(tree, {
|
|
74
71
|
project: fullyQualifiedName,
|
|
75
72
|
infra: 'none',
|
|
76
|
-
iac: 'cdk'
|
|
73
|
+
iac: 'cdk'
|
|
77
74
|
});
|
|
78
|
-
const mcpPath =
|
|
79
|
-
const mcpServerPath =
|
|
75
|
+
const mcpPath = joinPathFragments(project.sourceRoot, 'mcp-server');
|
|
76
|
+
const mcpServerPath = joinPathFragments(mcpPath, 'server.ts');
|
|
80
77
|
// Remove the sample server and tools
|
|
81
78
|
tree.delete(mcpServerPath);
|
|
82
|
-
tree.delete(
|
|
83
|
-
tree.delete(
|
|
79
|
+
tree.delete(joinPathFragments(mcpPath, 'tools', 'add.ts'));
|
|
80
|
+
tree.delete(joinPathFragments(mcpPath, 'resources', 'sample-guidance.ts'));
|
|
84
81
|
// Add generator MCP server
|
|
85
|
-
|
|
86
|
-
name: fullyQualifiedName
|
|
87
|
-
}, {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
82
|
+
generateFiles(tree, joinPathFragments(import.meta.dirname, 'files', 'mcp-server'), mcpPath, {
|
|
83
|
+
name: fullyQualifiedName
|
|
84
|
+
}, {
|
|
85
|
+
overwriteStrategy: OverwriteStrategy.KeepExisting
|
|
86
|
+
});
|
|
87
|
+
addGeneratorMetadata(tree, project.name, TS_NX_PLUGIN_GENERATOR_INFO);
|
|
88
|
+
await addGeneratorMetricsIfApplicable(tree, [
|
|
89
|
+
TS_NX_PLUGIN_GENERATOR_INFO
|
|
90
|
+
]);
|
|
91
|
+
await formatFilesInSubtree(tree);
|
|
92
|
+
return ()=>{
|
|
93
|
+
installPackagesTask(tree);
|
|
93
94
|
};
|
|
94
95
|
};
|
|
95
|
-
|
|
96
|
-
|
|
96
|
+
export default tsNxPluginGenerator;
|
|
97
|
+
|
|
97
98
|
//# sourceMappingURL=generator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../../../../../packages/nx-plugin/src/ts/nx-plugin/generator.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport {\n type GeneratorCallback,\n generateFiles,\n installPackagesTask,\n joinPathFragments,\n OverwriteStrategy,\n type Tree,\n updateJson,\n updateProjectConfiguration,\n} from '@nx/devkit';\nimport { formatFilesInSubtree } from '../../utils/format';\nimport { addGeneratorMetricsIfApplicable } from '../../utils/metrics';\nimport {\n addDependencyToTargetIfNotPresent,\n addGeneratorMetadata,\n getGeneratorInfo,\n type NxGeneratorInfo,\n readProjectConfigurationUnqualified,\n} from '../../utils/nx';\nimport { sortObjectKeys } from '../../utils/object';\nimport tsProjectGenerator, { getTsLibDetails } from '../lib/generator';\nimport tsMcpServerGenerator from '../mcp-server/generator';\nimport type { TsNxPluginGeneratorSchema } from './schema';\nimport { configureTsProjectAsNxPlugin } from './utils';\n\nexport const TS_NX_PLUGIN_GENERATOR_INFO: NxGeneratorInfo = getGeneratorInfo(\n import.meta.filename,\n);\n\nexport const tsNxPluginGenerator = async (\n tree: Tree,\n options: TsNxPluginGeneratorSchema,\n): Promise<GeneratorCallback> => {\n // Generate a TypeScript project as the base\n const { fullyQualifiedName, dir } = getTsLibDetails(tree, options);\n await tsProjectGenerator(tree, options);\n\n // Configure the typescript project as an Nx Plugin\n configureTsProjectAsNxPlugin(tree, fullyQualifiedName);\n\n // Add a \"package\" target which creates a package which can be published to NPM\n const project = readProjectConfigurationUnqualified(tree, fullyQualifiedName);\n project.targets = {\n ...project.targets,\n package: {\n executor: '@nx/js:tsc',\n outputs: ['{options.outputPath}'],\n options: {\n outputPath: `dist/{projectRoot}/package`,\n main: `{projectRoot}/src/index.ts`,\n tsConfig: `{projectRoot}/tsconfig.lib.json`,\n assets: [\n `{projectRoot}/*.md`,\n `{projectRoot}/LICENSE*`,\n `{projectRoot}/NOTICE`,\n {\n input: './{projectRoot}/src',\n glob: '**/!(*.ts)',\n output: './src',\n },\n {\n input: './{projectRoot}/src',\n glob: '**/*.d.ts',\n output: './src',\n },\n {\n input: './{projectRoot}',\n glob: 'generators.json',\n output: '.',\n },\n {\n input: './{projectRoot}',\n glob: 'executors.json',\n output: '.',\n },\n ],\n },\n },\n build: {\n ...project.targets?.build,\n },\n };\n // Append the package dependency without moving an existing entry, so re-runs\n // do not reorder the build dependencies.\n addDependencyToTargetIfNotPresent(project, 'build', 'package');\n // Sort targets so their order is stable regardless of insertion order.\n project.targets = sortObjectKeys(project.targets);\n updateProjectConfiguration(tree, fullyQualifiedName, project);\n\n // Add an MCP Server\n await tsMcpServerGenerator(tree, {\n project: fullyQualifiedName,\n infra: 'none',\n iac: 'cdk', // not used\n });\n\n const mcpPath = joinPathFragments(project.sourceRoot, 'mcp-server');\n const mcpServerPath = joinPathFragments(mcpPath, 'server.ts');\n\n // Remove the sample server and tools\n tree.delete(mcpServerPath);\n tree.delete(joinPathFragments(mcpPath, 'tools', 'add.ts'));\n tree.delete(joinPathFragments(mcpPath, 'resources', 'sample-guidance.ts'));\n\n // Add generator MCP server\n generateFiles(\n tree,\n joinPathFragments(import.meta.dirname, 'files', 'mcp-server'),\n mcpPath,\n {\n name: fullyQualifiedName,\n },\n { overwriteStrategy: OverwriteStrategy.KeepExisting },\n );\n\n addGeneratorMetadata(tree, project.name, TS_NX_PLUGIN_GENERATOR_INFO);\n\n await addGeneratorMetricsIfApplicable(tree, [TS_NX_PLUGIN_GENERATOR_INFO]);\n\n await formatFilesInSubtree(tree);\n return () => {\n installPackagesTask(tree);\n };\n};\n\nexport default tsNxPluginGenerator;\n"],"names":["generateFiles","installPackagesTask","joinPathFragments","OverwriteStrategy","updateProjectConfiguration","formatFilesInSubtree","addGeneratorMetricsIfApplicable","addDependencyToTargetIfNotPresent","addGeneratorMetadata","getGeneratorInfo","readProjectConfigurationUnqualified","sortObjectKeys","tsProjectGenerator","getTsLibDetails","tsMcpServerGenerator","configureTsProjectAsNxPlugin","TS_NX_PLUGIN_GENERATOR_INFO","filename","tsNxPluginGenerator","tree","options","fullyQualifiedName","dir","project","targets","package","executor","outputs","outputPath","main","tsConfig","assets","input","glob","output","build","infra","iac","mcpPath","sourceRoot","mcpServerPath","delete","dirname","name","overwriteStrategy","KeepExisting"],"mappings":"AAAA;;;CAGC,GACD,SAEEA,aAAa,EACbC,mBAAmB,EACnBC,iBAAiB,EACjBC,iBAAiB,EAGjBC,0BAA0B,QACrB,aAAa;AACpB,SAASC,oBAAoB,QAAQ,wBAAqB;AAC1D,SAASC,+BAA+B,QAAQ,yBAAsB;AACtE,SACEC,iCAAiC,EACjCC,oBAAoB,EACpBC,gBAAgB,EAEhBC,mCAAmC,QAC9B,oBAAiB;AACxB,SAASC,cAAc,QAAQ,wBAAqB;AACpD,OAAOC,sBAAsBC,eAAe,QAAQ,sBAAmB;AACvE,OAAOC,0BAA0B,6BAA0B;AAE3D,SAASC,4BAA4B,QAAQ,aAAU;AAEvD,OAAO,MAAMC,8BAA+CP,iBAC1D,YAAYQ,QAAQ,EACpB;AAEF,OAAO,MAAMC,sBAAsB,OACjCC,MACAC;IAEA,4CAA4C;IAC5C,MAAM,EAAEC,kBAAkB,EAAEC,GAAG,EAAE,GAAGT,gBAAgBM,MAAMC;IAC1D,MAAMR,mBAAmBO,MAAMC;IAE/B,mDAAmD;IACnDL,6BAA6BI,MAAME;IAEnC,+EAA+E;IAC/E,MAAME,UAAUb,oCAAoCS,MAAME;IAC1DE,QAAQC,OAAO,GAAG;QAChB,GAAGD,QAAQC,OAAO;QAClBC,SAAS;YACPC,UAAU;YACVC,SAAS;gBAAC;aAAuB;YACjCP,SAAS;gBACPQ,YAAY,CAAC,0BAA0B,CAAC;gBACxCC,MAAM,CAAC,0BAA0B,CAAC;gBAClCC,UAAU,CAAC,+BAA+B,CAAC;gBAC3CC,QAAQ;oBACN,CAAC,kBAAkB,CAAC;oBACpB,CAAC,sBAAsB,CAAC;oBACxB,CAAC,oBAAoB,CAAC;oBACtB;wBACEC,OAAO;wBACPC,MAAM;wBACNC,QAAQ;oBACV;oBACA;wBACEF,OAAO;wBACPC,MAAM;wBACNC,QAAQ;oBACV;oBACA;wBACEF,OAAO;wBACPC,MAAM;wBACNC,QAAQ;oBACV;oBACA;wBACEF,OAAO;wBACPC,MAAM;wBACNC,QAAQ;oBACV;iBACD;YACH;QACF;QACAC,OAAO;YACL,GAAGZ,QAAQC,OAAO,EAAEW,KAAK;QAC3B;IACF;IACA,6EAA6E;IAC7E,yCAAyC;IACzC5B,kCAAkCgB,SAAS,SAAS;IACpD,uEAAuE;IACvEA,QAAQC,OAAO,GAAGb,eAAeY,QAAQC,OAAO;IAChDpB,2BAA2Be,MAAME,oBAAoBE;IAErD,oBAAoB;IACpB,MAAMT,qBAAqBK,MAAM;QAC/BI,SAASF;QACTe,OAAO;QACPC,KAAK;IACP;IAEA,MAAMC,UAAUpC,kBAAkBqB,QAAQgB,UAAU,EAAE;IACtD,MAAMC,gBAAgBtC,kBAAkBoC,SAAS;IAEjD,qCAAqC;IACrCnB,KAAKsB,MAAM,CAACD;IACZrB,KAAKsB,MAAM,CAACvC,kBAAkBoC,SAAS,SAAS;IAChDnB,KAAKsB,MAAM,CAACvC,kBAAkBoC,SAAS,aAAa;IAEpD,2BAA2B;IAC3BtC,cACEmB,MACAjB,kBAAkB,YAAYwC,OAAO,EAAE,SAAS,eAChDJ,SACA;QACEK,MAAMtB;IACR,GACA;QAAEuB,mBAAmBzC,kBAAkB0C,YAAY;IAAC;IAGtDrC,qBAAqBW,MAAMI,QAAQoB,IAAI,EAAE3B;IAEzC,MAAMV,gCAAgCa,MAAM;QAACH;KAA4B;IAEzE,MAAMX,qBAAqBc;IAC3B,OAAO;QACLlB,oBAAoBkB;IACtB;AACF,EAAE;AAEF,eAAeD,oBAAoB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/ /**
|
|
5
|
+
* TypeScript types for options defined in schema.json
|
|
6
|
+
* Update this to match schema.json if you make changes.
|
|
7
|
+
*/ export { };
|
|
8
|
+
|
|
9
|
+
//# sourceMappingURL=schema.d.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../packages/nx-plugin/src/ts/nx-plugin/schema.d.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { TsProjectGeneratorSchema } from '../lib/schema';\n\n/**\n * TypeScript types for options defined in schema.json\n * Update this to match schema.json if you make changes.\n */\nexport type TsNxPluginGeneratorSchema = TsProjectGeneratorSchema;\n"],"names":[],"mappings":"AAAA;;;CAGC,GAGD;;;CAGC,GACD,WAAiE"}
|
|
@@ -1,72 +1,60 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.configureTsProjectAsNxPlugin = 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
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
4
|
+
*/ import { addDependenciesToPackageJson, joinPathFragments, readJson, updateJson, writeJson } from "@nx/devkit";
|
|
5
|
+
import PackageJson from "../../../package.json" with {
|
|
6
|
+
type: 'json'
|
|
7
|
+
};
|
|
8
|
+
import { readProjectConfigurationUnqualified } from "../../utils/nx.js";
|
|
9
|
+
import { withVersions } from "../../utils/versions.js";
|
|
13
10
|
/**
|
|
14
11
|
* Configures a TypeScript project as an Nx Plugin
|
|
15
|
-
*/
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const tsConfigPath = (0, devkit_1.joinPathFragments)(project.root, 'tsconfig.json');
|
|
12
|
+
*/ export const configureTsProjectAsNxPlugin = (tree, projectName)=>{
|
|
13
|
+
const project = readProjectConfigurationUnqualified(tree, projectName);
|
|
14
|
+
const tsConfigPath = joinPathFragments(project.root, 'tsconfig.json');
|
|
19
15
|
if (!tree.exists(tsConfigPath)) {
|
|
20
16
|
throw new Error(`Selected plugin project ${projectName} is not a TypeScript project`);
|
|
21
17
|
}
|
|
22
|
-
// Nx Plugins must use commonjs as a limitation of nx
|
|
23
|
-
// https://github.com/nrwl/nx/issues/15682
|
|
24
|
-
(0, devkit_1.updateJson)(tree, tsConfigPath, (tsConfig) => {
|
|
25
|
-
const { module, moduleResolution, ...rest } = tsConfig.compilerOptions ?? {};
|
|
26
|
-
// Reassign module/moduleResolution last in a fixed order so re-running
|
|
27
|
-
// produces a stable key order regardless of whether a prior step removed
|
|
28
|
-
// `module` (eg configureTsProject drops a conflicting commonjs module).
|
|
29
|
-
// TypeScript 6 allows bundler + commonjs together, avoiding deprecated node/node10
|
|
30
|
-
tsConfig.compilerOptions = {
|
|
31
|
-
...rest,
|
|
32
|
-
module: module ?? 'commonjs',
|
|
33
|
-
moduleResolution: moduleResolution ?? 'bundler',
|
|
34
|
-
};
|
|
35
|
-
return tsConfig;
|
|
36
|
-
});
|
|
37
18
|
// Create an empty generators.json if one dosn't exist
|
|
38
|
-
const generatorsJsonPath =
|
|
19
|
+
const generatorsJsonPath = joinPathFragments(project.root, 'generators.json');
|
|
39
20
|
if (!tree.exists(generatorsJsonPath)) {
|
|
40
|
-
|
|
41
|
-
generators: {}
|
|
21
|
+
writeJson(tree, generatorsJsonPath, {
|
|
22
|
+
generators: {}
|
|
42
23
|
});
|
|
43
24
|
}
|
|
44
|
-
// Create a package.json if one doesn't exist, and configure "
|
|
45
|
-
|
|
25
|
+
// Create a package.json if one doesn't exist, and configure "type", "main"
|
|
26
|
+
// and "generators"
|
|
27
|
+
const pluginPackageJsonPath = joinPathFragments(project.root, 'package.json');
|
|
46
28
|
if (!tree.exists(pluginPackageJsonPath)) {
|
|
47
|
-
|
|
48
|
-
name: project.name
|
|
29
|
+
writeJson(tree, pluginPackageJsonPath, {
|
|
30
|
+
name: project.name
|
|
49
31
|
});
|
|
50
32
|
}
|
|
51
|
-
|
|
33
|
+
updateJson(tree, pluginPackageJsonPath, (pkg)=>{
|
|
34
|
+
// Mark the plugin as ESM so Nx loads its `.ts` generators as ES modules via
|
|
35
|
+
// Node's native type stripping (the workspace root is also `type: module`).
|
|
36
|
+
pkg.type ??= 'module';
|
|
52
37
|
pkg.main ??= './src/index.js';
|
|
53
38
|
pkg.generators ??= './generators.json';
|
|
54
39
|
return pkg;
|
|
55
40
|
});
|
|
56
|
-
const rootPackageJson = tree.exists('package.json')
|
|
57
|
-
? (0, devkit_1.readJson)(tree, 'package.json')
|
|
58
|
-
: undefined;
|
|
41
|
+
const rootPackageJson = tree.exists('package.json') ? readJson(tree, 'package.json') : undefined;
|
|
59
42
|
const isNxPluginForAws = rootPackageJson?.name === '@aws/nx-plugin-source';
|
|
60
43
|
if (!isNxPluginForAws) {
|
|
61
44
|
// Add the required dependencies to the root package.json, and project's package.json
|
|
62
45
|
const deps = {
|
|
63
|
-
...
|
|
46
|
+
...withVersions([
|
|
47
|
+
'@nx/devkit'
|
|
48
|
+
]),
|
|
64
49
|
// Include dependency on @aws/nx-plugin
|
|
65
|
-
[
|
|
50
|
+
[PackageJson.name]: `^${PackageJson.version}`
|
|
66
51
|
};
|
|
67
|
-
|
|
68
|
-
|
|
52
|
+
// Generated workspaces are `"type": "module"`, so Nx loads the plugin's
|
|
53
|
+
// `.ts` generators as ESM via Node's native type stripping — no swc/ts-node
|
|
54
|
+
// transpiler is required.
|
|
55
|
+
addDependenciesToPackageJson(tree, {}, deps);
|
|
56
|
+
addDependenciesToPackageJson(tree, deps, {}, pluginPackageJsonPath);
|
|
69
57
|
}
|
|
70
58
|
};
|
|
71
|
-
|
|
59
|
+
|
|
72
60
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../../../../../packages/nx-plugin/src/ts/nx-plugin/utils.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport {\n addDependenciesToPackageJson,\n joinPathFragments,\n readJson,\n type Tree,\n updateJson,\n writeJson,\n} from '@nx/devkit';\nimport PackageJson from '../../../package.json' with { type: 'json' };\nimport { readProjectConfigurationUnqualified } from '../../utils/nx';\nimport { withVersions } from '../../utils/versions';\n\n/**\n * Configures a TypeScript project as an Nx Plugin\n */\nexport const configureTsProjectAsNxPlugin = (\n tree: Tree,\n projectName: string,\n) => {\n const project = readProjectConfigurationUnqualified(tree, projectName);\n\n const tsConfigPath = joinPathFragments(project.root, 'tsconfig.json');\n if (!tree.exists(tsConfigPath)) {\n throw new Error(\n `Selected plugin project ${projectName} is not a TypeScript project`,\n );\n }\n\n // Create an empty generators.json if one dosn't exist\n const generatorsJsonPath = joinPathFragments(project.root, 'generators.json');\n if (!tree.exists(generatorsJsonPath)) {\n writeJson(tree, generatorsJsonPath, {\n generators: {},\n });\n }\n\n // Create a package.json if one doesn't exist, and configure \"type\", \"main\"\n // and \"generators\"\n const pluginPackageJsonPath = joinPathFragments(project.root, 'package.json');\n if (!tree.exists(pluginPackageJsonPath)) {\n writeJson(tree, pluginPackageJsonPath, {\n name: project.name,\n });\n }\n updateJson(tree, pluginPackageJsonPath, (pkg) => {\n // Mark the plugin as ESM so Nx loads its `.ts` generators as ES modules via\n // Node's native type stripping (the workspace root is also `type: module`).\n pkg.type ??= 'module';\n pkg.main ??= './src/index.js';\n pkg.generators ??= './generators.json';\n return pkg;\n });\n\n const rootPackageJson = tree.exists('package.json')\n ? readJson(tree, 'package.json')\n : undefined;\n const isNxPluginForAws = rootPackageJson?.name === '@aws/nx-plugin-source';\n\n if (!isNxPluginForAws) {\n // Add the required dependencies to the root package.json, and project's package.json\n const deps = {\n ...withVersions(['@nx/devkit']),\n // Include dependency on @aws/nx-plugin\n [PackageJson.name]: `^${PackageJson.version}`,\n };\n // Generated workspaces are `\"type\": \"module\"`, so Nx loads the plugin's\n // `.ts` generators as ESM via Node's native type stripping — no swc/ts-node\n // transpiler is required.\n addDependenciesToPackageJson(tree, {}, deps);\n addDependenciesToPackageJson(tree, deps, {}, pluginPackageJsonPath);\n }\n};\n"],"names":["addDependenciesToPackageJson","joinPathFragments","readJson","updateJson","writeJson","PackageJson","type","readProjectConfigurationUnqualified","withVersions","configureTsProjectAsNxPlugin","tree","projectName","project","tsConfigPath","root","exists","Error","generatorsJsonPath","generators","pluginPackageJsonPath","name","pkg","main","rootPackageJson","undefined","isNxPluginForAws","deps","version"],"mappings":"AAAA;;;CAGC,GACD,SACEA,4BAA4B,EAC5BC,iBAAiB,EACjBC,QAAQ,EAERC,UAAU,EACVC,SAAS,QACJ,aAAa;AACpB,OAAOC,iBAAiB,6BAA6B;IAAEC,MAAM;AAAO,EAAE;AACtE,SAASC,mCAAmC,QAAQ,oBAAiB;AACrE,SAASC,YAAY,QAAQ,0BAAuB;AAEpD;;CAEC,GACD,OAAO,MAAMC,+BAA+B,CAC1CC,MACAC;IAEA,MAAMC,UAAUL,oCAAoCG,MAAMC;IAE1D,MAAME,eAAeZ,kBAAkBW,QAAQE,IAAI,EAAE;IACrD,IAAI,CAACJ,KAAKK,MAAM,CAACF,eAAe;QAC9B,MAAM,IAAIG,MACR,CAAC,wBAAwB,EAAEL,YAAY,4BAA4B,CAAC;IAExE;IAEA,sDAAsD;IACtD,MAAMM,qBAAqBhB,kBAAkBW,QAAQE,IAAI,EAAE;IAC3D,IAAI,CAACJ,KAAKK,MAAM,CAACE,qBAAqB;QACpCb,UAAUM,MAAMO,oBAAoB;YAClCC,YAAY,CAAC;QACf;IACF;IAEA,2EAA2E;IAC3E,mBAAmB;IACnB,MAAMC,wBAAwBlB,kBAAkBW,QAAQE,IAAI,EAAE;IAC9D,IAAI,CAACJ,KAAKK,MAAM,CAACI,wBAAwB;QACvCf,UAAUM,MAAMS,uBAAuB;YACrCC,MAAMR,QAAQQ,IAAI;QACpB;IACF;IACAjB,WAAWO,MAAMS,uBAAuB,CAACE;QACvC,4EAA4E;QAC5E,4EAA4E;QAC5EA,IAAIf,IAAI,KAAK;QACbe,IAAIC,IAAI,KAAK;QACbD,IAAIH,UAAU,KAAK;QACnB,OAAOG;IACT;IAEA,MAAME,kBAAkBb,KAAKK,MAAM,CAAC,kBAChCb,SAASQ,MAAM,kBACfc;IACJ,MAAMC,mBAAmBF,iBAAiBH,SAAS;IAEnD,IAAI,CAACK,kBAAkB;QACrB,qFAAqF;QACrF,MAAMC,OAAO;YACX,GAAGlB,aAAa;gBAAC;aAAa,CAAC;YAC/B,uCAAuC;YACvC,CAACH,YAAYe,IAAI,CAAC,EAAE,CAAC,CAAC,EAAEf,YAAYsB,OAAO,EAAE;QAC/C;QACA,wEAAwE;QACxE,4EAA4E;QAC5E,0BAA0B;QAC1B3B,6BAA6BU,MAAM,CAAC,GAAGgB;QACvC1B,6BAA6BU,MAAMgB,MAAM,CAAC,GAAGP;IAC/C;AACF,EAAE"}
|
|
@@ -147,16 +147,15 @@ import { getDatabaseConfig } from './utils.js';
|
|
|
147
147
|
const runtimeConfigKey = 'Db';
|
|
148
148
|
|
|
149
149
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
150
|
-
// config.json is only present in local dev (not included in the deployed bundle); guard with
|
|
151
|
-
const
|
|
152
|
-
JSON.parse(readFileSync(join(__dirname, '../config.json'), 'utf-8'))
|
|
153
|
-
.serveLocal;
|
|
150
|
+
// config.json is only present in local dev (not included in the deployed bundle); guard with LOCAL_DEV check
|
|
151
|
+
const localDev = () =>
|
|
152
|
+
JSON.parse(readFileSync(join(__dirname, '../config.json'), 'utf-8')).localDev;
|
|
154
153
|
|
|
155
154
|
export const getPrisma = async <LogOpts extends Prisma.LogLevel>(
|
|
156
155
|
log: LogOpts[] = ['warn', 'error'] as LogOpts[],
|
|
157
156
|
): Promise<PrismaClient<LogOpts>> => {
|
|
158
|
-
if (process.env.
|
|
159
|
-
const { host, port, dbName, dbUser, dbPassword } =
|
|
157
|
+
if (process.env.LOCAL_DEV === 'true') {
|
|
158
|
+
const { host, port, dbName, dbUser, dbPassword } = localDev();
|
|
160
159
|
const adapter = new PrismaMariaDb({
|
|
161
160
|
host,
|
|
162
161
|
port,
|
|
@@ -299,6 +298,7 @@ const transientErrorPatterns = [
|
|
|
299
298
|
'P1000', // Prisma: authentication failed
|
|
300
299
|
'P1001', // Prisma: can't reach database server
|
|
301
300
|
'P1002', // Prisma: database server reached but timed out
|
|
301
|
+
'P1010', // Prisma: user denied access (IAM auth grant not yet propagated)
|
|
302
302
|
'ER_ACCESS_DENIED_ERROR', // MySQL: access denied
|
|
303
303
|
];
|
|
304
304
|
|
|
@@ -774,10 +774,10 @@ exports[`ts#rdb generator > should add mysql prisma dependencies when engine is
|
|
|
774
774
|
import { readFileSync } from 'fs';
|
|
775
775
|
|
|
776
776
|
const getDatabaseUrl = async () => {
|
|
777
|
-
if (process.env.
|
|
777
|
+
if (process.env.LOCAL_DEV === 'true') {
|
|
778
778
|
const { host, port, dbName, dbUser, dbPassword } = JSON.parse(
|
|
779
779
|
readFileSync('config.json', 'utf-8'),
|
|
780
|
-
).
|
|
780
|
+
).localDev;
|
|
781
781
|
return \`mysql://\${dbUser}:\${dbPassword}@\${host}:\${port}/\${dbName}\`;
|
|
782
782
|
}
|
|
783
783
|
return process.env.DATABASE_URL;
|
|
@@ -805,15 +805,15 @@ terraform {
|
|
|
805
805
|
required_providers {
|
|
806
806
|
aws = {
|
|
807
807
|
source = "hashicorp/aws"
|
|
808
|
-
version = "
|
|
808
|
+
version = "6.52.0"
|
|
809
809
|
}
|
|
810
810
|
null = {
|
|
811
811
|
source = "hashicorp/null"
|
|
812
|
-
version = "
|
|
812
|
+
version = "3.3.0"
|
|
813
813
|
}
|
|
814
814
|
random = {
|
|
815
815
|
source = "hashicorp/random"
|
|
816
|
-
version = "
|
|
816
|
+
version = "3.9.0"
|
|
817
817
|
}
|
|
818
818
|
}
|
|
819
819
|
}
|
|
@@ -1563,19 +1563,19 @@ exports[`ts#rdb generator > should generate terraform modules when iac is Terraf
|
|
|
1563
1563
|
required_providers {
|
|
1564
1564
|
archive = {
|
|
1565
1565
|
source = "hashicorp/archive"
|
|
1566
|
-
version = "
|
|
1566
|
+
version = "2.8.0"
|
|
1567
1567
|
}
|
|
1568
1568
|
aws = {
|
|
1569
1569
|
source = "hashicorp/aws"
|
|
1570
|
-
version = "
|
|
1570
|
+
version = "6.52.0"
|
|
1571
1571
|
}
|
|
1572
1572
|
null = {
|
|
1573
1573
|
source = "hashicorp/null"
|
|
1574
|
-
version = "
|
|
1574
|
+
version = "3.3.0"
|
|
1575
1575
|
}
|
|
1576
1576
|
random = {
|
|
1577
1577
|
source = "hashicorp/random"
|
|
1578
|
-
version = "
|
|
1578
|
+
version = "3.9.0"
|
|
1579
1579
|
}
|
|
1580
1580
|
}
|
|
1581
1581
|
}
|
|
@@ -2292,15 +2292,15 @@ terraform {
|
|
|
2292
2292
|
required_providers {
|
|
2293
2293
|
aws = {
|
|
2294
2294
|
source = "hashicorp/aws"
|
|
2295
|
-
version = "
|
|
2295
|
+
version = "6.52.0"
|
|
2296
2296
|
}
|
|
2297
2297
|
null = {
|
|
2298
2298
|
source = "hashicorp/null"
|
|
2299
|
-
version = "
|
|
2299
|
+
version = "3.3.0"
|
|
2300
2300
|
}
|
|
2301
2301
|
random = {
|
|
2302
2302
|
source = "hashicorp/random"
|
|
2303
|
-
version = "
|
|
2303
|
+
version = "3.9.0"
|
|
2304
2304
|
}
|
|
2305
2305
|
}
|
|
2306
2306
|
}
|
|
@@ -3050,19 +3050,19 @@ exports[`ts#rdb generator > should generate terraform modules with MySQL engine
|
|
|
3050
3050
|
required_providers {
|
|
3051
3051
|
archive = {
|
|
3052
3052
|
source = "hashicorp/archive"
|
|
3053
|
-
version = "
|
|
3053
|
+
version = "2.8.0"
|
|
3054
3054
|
}
|
|
3055
3055
|
aws = {
|
|
3056
3056
|
source = "hashicorp/aws"
|
|
3057
|
-
version = "
|
|
3057
|
+
version = "6.52.0"
|
|
3058
3058
|
}
|
|
3059
3059
|
null = {
|
|
3060
3060
|
source = "hashicorp/null"
|
|
3061
|
-
version = "
|
|
3061
|
+
version = "3.3.0"
|
|
3062
3062
|
}
|
|
3063
3063
|
random = {
|
|
3064
3064
|
source = "hashicorp/random"
|
|
3065
|
-
version = "
|
|
3065
|
+
version = "3.9.0"
|
|
3066
3066
|
}
|
|
3067
3067
|
}
|
|
3068
3068
|
}
|
|
@@ -3944,10 +3944,9 @@ import { getDatabaseConfig } from './utils.js';
|
|
|
3944
3944
|
const runtimeConfigKey = 'Db';
|
|
3945
3945
|
|
|
3946
3946
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
3947
|
-
// config.json is only present in local dev (not included in the deployed bundle); guard with
|
|
3948
|
-
const
|
|
3949
|
-
JSON.parse(readFileSync(join(__dirname, '../config.json'), 'utf-8'))
|
|
3950
|
-
.serveLocal;
|
|
3947
|
+
// config.json is only present in local dev (not included in the deployed bundle); guard with LOCAL_DEV check
|
|
3948
|
+
const localDev = () =>
|
|
3949
|
+
JSON.parse(readFileSync(join(__dirname, '../config.json'), 'utf-8')).localDev;
|
|
3951
3950
|
|
|
3952
3951
|
let prismaClient: PrismaClient<Prisma.LogLevel> | undefined;
|
|
3953
3952
|
|
|
@@ -3956,8 +3955,8 @@ export const getPrisma = async <LogOpts extends Prisma.LogLevel>(
|
|
|
3956
3955
|
): Promise<PrismaClient<LogOpts>> => {
|
|
3957
3956
|
if (prismaClient) return prismaClient;
|
|
3958
3957
|
|
|
3959
|
-
if (process.env.
|
|
3960
|
-
const { host, port, dbName, dbUser, dbPassword } =
|
|
3958
|
+
if (process.env.LOCAL_DEV === 'true') {
|
|
3959
|
+
const { host, port, dbName, dbUser, dbPassword } = localDev();
|
|
3961
3960
|
const adapter = new PrismaPg(
|
|
3962
3961
|
new Pool({
|
|
3963
3962
|
host,
|
|
@@ -4108,6 +4107,7 @@ const transientErrorPatterns = [
|
|
|
4108
4107
|
'P1000', // Prisma: authentication failed
|
|
4109
4108
|
'P1001', // Prisma: can't reach database server
|
|
4110
4109
|
'P1002', // Prisma: database server reached but timed out
|
|
4110
|
+
'P1010', // Prisma: user denied access (IAM auth grant not yet propagated)
|
|
4111
4111
|
'ER_ACCESS_DENIED_ERROR', // MySQL: access denied
|
|
4112
4112
|
];
|
|
4113
4113
|
|
|
@@ -4640,10 +4640,10 @@ exports[`ts#rdb generator > should generate the aurora shared construct 3`] = `
|
|
|
4640
4640
|
import { readFileSync } from 'fs';
|
|
4641
4641
|
|
|
4642
4642
|
const getDatabaseUrl = async () => {
|
|
4643
|
-
if (process.env.
|
|
4643
|
+
if (process.env.LOCAL_DEV === 'true') {
|
|
4644
4644
|
const { host, port, dbName, dbUser, dbPassword } = JSON.parse(
|
|
4645
4645
|
readFileSync('config.json', 'utf-8'),
|
|
4646
|
-
).
|
|
4646
|
+
).localDev;
|
|
4647
4647
|
return \`postgresql://\${dbUser}:\${dbPassword}@\${host}:\${port}/\${dbName}\`;
|
|
4648
4648
|
}
|
|
4649
4649
|
return process.env.DATABASE_URL;
|
|
@@ -42,7 +42,7 @@ CMD [ "node", "--require", "@aws/aws-distro-opentelemetry-node-autoinstrumentati
|
|
|
42
42
|
"
|
|
43
43
|
`;
|
|
44
44
|
|
|
45
|
-
exports[`ts#rdb agent-connection generator > should add rdb
|
|
45
|
+
exports[`ts#rdb agent-connection generator > should add rdb dev dependency to the agent prefixed dev 1`] = `
|
|
46
46
|
{
|
|
47
47
|
"$schema": "../../node_modules/nx/schemas/project-schema.json",
|
|
48
48
|
"metadata": {
|
|
@@ -58,14 +58,14 @@ exports[`ts#rdb agent-connection generator > should add rdb serve-local dependen
|
|
|
58
58
|
"name": "my-service",
|
|
59
59
|
"root": "packages/my-service",
|
|
60
60
|
"targets": {
|
|
61
|
-
"my-agent-
|
|
61
|
+
"my-agent-dev": {
|
|
62
62
|
"continuous": true,
|
|
63
63
|
"dependsOn": [
|
|
64
64
|
{
|
|
65
65
|
"projects": [
|
|
66
66
|
"db",
|
|
67
67
|
],
|
|
68
|
-
"target": "
|
|
68
|
+
"target": "dev",
|
|
69
69
|
},
|
|
70
70
|
],
|
|
71
71
|
"executor": "nx:run-commands",
|
|
@@ -141,7 +141,7 @@ export const getAgent = async () => {
|
|
|
141
141
|
"
|
|
142
142
|
`;
|
|
143
143
|
|
|
144
|
-
exports[`ts#rdb agent-connection generator > should fall back to agent-
|
|
144
|
+
exports[`ts#rdb agent-connection generator > should fall back to agent-dev when no component name 1`] = `
|
|
145
145
|
{
|
|
146
146
|
"$schema": "../../node_modules/nx/schemas/project-schema.json",
|
|
147
147
|
"metadata": {
|
|
@@ -157,14 +157,14 @@ exports[`ts#rdb agent-connection generator > should fall back to agent-serve-loc
|
|
|
157
157
|
"name": "my-service",
|
|
158
158
|
"root": "packages/my-service",
|
|
159
159
|
"targets": {
|
|
160
|
-
"agent-
|
|
160
|
+
"agent-dev": {
|
|
161
161
|
"continuous": true,
|
|
162
162
|
"dependsOn": [
|
|
163
163
|
{
|
|
164
164
|
"projects": [
|
|
165
165
|
"db",
|
|
166
166
|
],
|
|
167
|
-
"target": "
|
|
167
|
+
"target": "dev",
|
|
168
168
|
},
|
|
169
169
|
],
|
|
170
170
|
"executor": "nx:run-commands",
|