@aws/nx-plugin 0.115.1 → 0.117.0
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 +557 -327
- package/README.md +3 -3
- package/generators.json +43 -43
- package/package.json +9 -9
- package/sdk/py.d.ts +2 -2
- package/sdk/py.js +3 -3
- package/sdk/py.js.map +1 -1
- package/sdk/ts.d.ts +2 -2
- package/sdk/ts.js +4 -4
- package/sdk/ts.js.map +1 -1
- package/src/connection/generator.js +31 -31
- package/src/connection/generator.js.map +1 -1
- package/src/infra/app/__snapshots__/generator.spec.ts.snap +22 -22
- package/src/preset/__snapshots__/generator.spec.ts.snap +7 -5
- package/src/py/{strands-agent → agent}/__snapshots__/generator.spec.ts.snap +19 -19
- package/src/py/agent/a2a-connection/generator.d.ts +10 -0
- package/src/py/{strands-agent → agent}/a2a-connection/generator.js +7 -7
- package/src/py/agent/a2a-connection/generator.js.map +1 -0
- package/src/py/{strands-agent → agent}/a2a-connection/schema.d.ts +1 -1
- package/src/py/{strands-agent → agent}/a2a-connection/schema.json +5 -5
- package/src/py/agent/generator.d.ts +10 -0
- package/src/py/{strands-agent → agent}/generator.js +7 -9
- package/src/py/agent/generator.js.map +1 -0
- package/src/py/{strands-agent → agent}/mcp-connection/__snapshots__/generator.spec.ts.snap +4 -4
- package/src/py/agent/mcp-connection/generator.d.ts +10 -0
- package/src/py/{strands-agent → agent}/mcp-connection/generator.js +7 -7
- package/src/py/agent/mcp-connection/generator.js.map +1 -0
- package/src/{ts/strands-agent/a2a-connection → py/agent/mcp-connection}/schema.d.ts +1 -1
- package/src/py/{strands-agent → agent}/mcp-connection/schema.json +4 -4
- package/src/{ts/strands-agent → py/agent}/react-connection/generator.d.ts +3 -3
- package/src/py/{strands-agent → agent}/react-connection/generator.js +7 -7
- package/src/py/agent/react-connection/generator.js.map +1 -0
- package/src/py/{strands-agent/mcp-connection → agent/react-connection}/schema.d.ts +1 -1
- package/src/py/{strands-agent → agent}/react-connection/schema.json +4 -4
- package/src/py/{strands-agent → agent}/react-connection/serve-local.d.ts +2 -2
- package/src/py/{strands-agent → agent}/react-connection/serve-local.js +3 -3
- package/src/py/agent/react-connection/serve-local.js.map +1 -0
- package/src/py/agent/schema.d.ts +22 -0
- package/src/py/{strands-agent → agent}/schema.json +21 -13
- package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +3 -3
- package/src/ts/{strands-agent → agent}/__snapshots__/generator.spec.ts.snap +16 -16
- package/src/ts/agent/a2a-connection/generator.d.ts +10 -0
- package/src/ts/{strands-agent → agent}/a2a-connection/generator.js +7 -7
- package/src/ts/agent/a2a-connection/generator.js.map +1 -0
- package/src/ts/{strands-agent/mcp-connection → agent/a2a-connection}/schema.d.ts +1 -1
- package/src/ts/{strands-agent → agent}/a2a-connection/schema.json +5 -5
- package/src/ts/agent/generator.d.ts +10 -0
- package/src/ts/{strands-agent → agent}/generator.js +9 -11
- package/src/ts/agent/generator.js.map +1 -0
- package/src/ts/{strands-agent → agent}/mcp-connection/__snapshots__/generator.spec.ts.snap +4 -4
- package/src/ts/agent/mcp-connection/generator.d.ts +10 -0
- package/src/ts/{strands-agent → agent}/mcp-connection/generator.js +7 -7
- package/src/ts/agent/mcp-connection/generator.js.map +1 -0
- package/src/ts/agent/mcp-connection/schema.d.ts +15 -0
- package/src/ts/{strands-agent → agent}/mcp-connection/schema.json +4 -4
- package/src/{py/strands-agent → ts/agent}/react-connection/generator.d.ts +3 -3
- package/src/ts/{strands-agent → agent}/react-connection/generator.js +7 -7
- package/src/ts/agent/react-connection/generator.js.map +1 -0
- package/src/ts/agent/react-connection/schema.d.ts +15 -0
- package/src/ts/{strands-agent → agent}/react-connection/schema.json +5 -5
- package/src/ts/agent/react-connection/serve-local.d.ts +13 -0
- package/src/ts/{strands-agent → agent}/react-connection/serve-local.js +3 -7
- package/src/ts/agent/react-connection/serve-local.js.map +1 -0
- package/src/ts/agent/schema.d.ts +22 -0
- package/src/ts/{strands-agent → agent}/schema.json +21 -13
- package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +3 -3
- package/src/ts/rdb/{strands-agent-connection → agent-connection}/__snapshots__/generator.spec.ts.snap +12 -12
- package/src/ts/rdb/agent-connection/generator.d.ts +10 -0
- package/src/ts/rdb/{strands-agent-connection → agent-connection}/generator.js +6 -6
- package/src/ts/rdb/agent-connection/generator.js.map +1 -0
- package/src/ts/rdb/{strands-agent-connection → agent-connection}/schema.d.ts +1 -1
- package/src/ts/rdb/{strands-agent-connection → agent-connection}/schema.json +4 -4
- package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +45 -43
- package/src/ts/react-website/cognito-auth/generator.js +5 -4
- package/src/ts/react-website/cognito-auth/generator.js.map +1 -1
- package/src/ts/react-website/cognito-auth/schema.d.ts +1 -1
- package/src/ts/react-website/cognito-auth/schema.json +3 -3
- package/src/ts/react-website/cognito-auth/utils.d.ts +1 -0
- package/src/ts/react-website/cognito-auth/utils.js +23 -0
- package/src/ts/react-website/cognito-auth/utils.js.map +1 -1
- package/src/utils/agent-connection/agent-connection.js +2 -2
- package/src/utils/agent-connection/agent-connection.js.map +1 -1
- package/src/utils/agent-connection/files/py-core-runtime-config/runtime_config.py.template +1 -4
- package/src/utils/agent-core-constructs/agent-core-constructs.js +0 -3
- package/src/utils/agent-core-constructs/agent-core-constructs.js.map +1 -1
- package/src/utils/agent-core-constructs/files/cdk/app/agent-core/__nameKebabCase__/__nameKebabCase__.ts.template +1 -1
- package/src/utils/ast.d.ts +1 -1
- package/src/utils/ast.js +13 -1
- package/src/utils/ast.js.map +1 -1
- package/src/utils/files/common/shadcn/src/components/ui/sidebar.tsx.template +1 -1
- package/src/utils/versions.d.ts +55 -56
- package/src/utils/versions.js +54 -55
- package/src/utils/versions.js.map +1 -1
- package/src/py/strands-agent/a2a-connection/generator.d.ts +0 -10
- package/src/py/strands-agent/a2a-connection/generator.js.map +0 -1
- package/src/py/strands-agent/generator.d.ts +0 -10
- package/src/py/strands-agent/generator.js.map +0 -1
- package/src/py/strands-agent/mcp-connection/generator.d.ts +0 -10
- package/src/py/strands-agent/mcp-connection/generator.js.map +0 -1
- package/src/py/strands-agent/react-connection/generator.js.map +0 -1
- package/src/py/strands-agent/react-connection/schema.d.ts +0 -15
- package/src/py/strands-agent/react-connection/serve-local.js.map +0 -1
- package/src/py/strands-agent/schema.d.ts +0 -20
- package/src/ts/rdb/strands-agent-connection/generator.d.ts +0 -10
- package/src/ts/rdb/strands-agent-connection/generator.js.map +0 -1
- package/src/ts/strands-agent/a2a-connection/generator.d.ts +0 -10
- package/src/ts/strands-agent/a2a-connection/generator.js.map +0 -1
- package/src/ts/strands-agent/generator.d.ts +0 -10
- package/src/ts/strands-agent/generator.js.map +0 -1
- package/src/ts/strands-agent/mcp-connection/generator.d.ts +0 -10
- package/src/ts/strands-agent/mcp-connection/generator.js.map +0 -1
- package/src/ts/strands-agent/react-connection/generator.js.map +0 -1
- package/src/ts/strands-agent/react-connection/schema.d.ts +0 -15
- package/src/ts/strands-agent/react-connection/serve-local.d.ts +0 -17
- package/src/ts/strands-agent/react-connection/serve-local.js.map +0 -1
- package/src/ts/strands-agent/schema.d.ts +0 -20
- /package/src/py/{strands-agent → agent}/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client.py.template +0 -0
- /package/src/py/{strands-agent → agent}/files/a2a/main.py.template +0 -0
- /package/src/py/{strands-agent → agent}/files/ag-ui/main.py.template +0 -0
- /package/src/py/{strands-agent → agent}/files/common/__init__.py.template +0 -0
- /package/src/py/{strands-agent → agent}/files/common/agent.py.template +0 -0
- /package/src/py/{strands-agent → agent}/files/deploy/Dockerfile.template +0 -0
- /package/src/py/{strands-agent → agent}/files/http/init.py.template +0 -0
- /package/src/py/{strands-agent → agent}/files/http/main.py.template +0 -0
- /package/src/py/{strands-agent → agent}/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client.py.template +0 -0
- /package/src/py/{strands-agent → agent}/react-connection/__snapshots__/generator.spec.ts.snap +0 -0
- /package/src/py/{strands-agent → agent}/react-connection/files/agent/scripts/__agentNameSnakeCase___openapi.py.template +0 -0
- /package/src/py/{strands-agent → agent}/scripts/http/chat.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/a2a/index.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/common/agent.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/deploy/Dockerfile.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/http/agent-core-trpc-client.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/http/client.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/http/index.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/http/init.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/http/router.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/http/schema/z-async-iterable.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/react-connection/__snapshots__/generator.spec.ts.snap +0 -0
- /package/src/ts/{strands-agent → agent}/react-connection/files/src/components/__agentNameClassName__AgentClientProvider.tsx.template +0 -0
- /package/src/ts/{strands-agent → agent}/react-connection/files/src/hooks/use__agentNameClassName__Agent.tsx.template +0 -0
- /package/src/ts/{strands-agent → agent}/scripts/http/chat.ts.template +0 -0
|
@@ -1,45 +1,53 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/schema",
|
|
3
|
-
"$id": "py#
|
|
4
|
-
"title": "py#
|
|
5
|
-
"description": "Add
|
|
3
|
+
"$id": "py#agent",
|
|
4
|
+
"title": "py#agent",
|
|
5
|
+
"description": "Add an AI Agent to a Python project",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"properties": {
|
|
8
8
|
"project": {
|
|
9
9
|
"type": "string",
|
|
10
|
-
"description": "The project to add the
|
|
10
|
+
"description": "The project to add the Agent to",
|
|
11
11
|
"$default": {
|
|
12
12
|
"$source": "argv",
|
|
13
13
|
"index": 0
|
|
14
14
|
},
|
|
15
|
-
"x-prompt": "Select the Python project to add the
|
|
15
|
+
"x-prompt": "Select the Python project to add the Agent to",
|
|
16
16
|
"x-dropdown": "projects"
|
|
17
17
|
},
|
|
18
|
+
"sdk": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"description": "The agent SDK to use.",
|
|
21
|
+
"x-prompt": "Which agent SDK would you like to use?",
|
|
22
|
+
"enum": ["strands"],
|
|
23
|
+
"default": "strands",
|
|
24
|
+
"x-priority": "important"
|
|
25
|
+
},
|
|
18
26
|
"computeType": {
|
|
19
27
|
"type": "string",
|
|
20
|
-
"description": "The type of compute to host your
|
|
21
|
-
"x-prompt": "How would you like to host your
|
|
28
|
+
"description": "The type of compute to host your Agent.",
|
|
29
|
+
"x-prompt": "How would you like to host your Agent server?",
|
|
22
30
|
"enum": ["BedrockAgentCoreRuntime", "None"],
|
|
23
31
|
"default": "BedrockAgentCoreRuntime",
|
|
24
32
|
"x-priority": "important"
|
|
25
33
|
},
|
|
26
34
|
"name": {
|
|
27
35
|
"type": "string",
|
|
28
|
-
"description": "The name of your
|
|
29
|
-
"x-prompt": "What would you like to call your
|
|
36
|
+
"description": "The name of your Agent (default: agent)",
|
|
37
|
+
"x-prompt": "What would you like to call your Agent? (default: agent)"
|
|
30
38
|
},
|
|
31
39
|
"auth": {
|
|
32
40
|
"type": "string",
|
|
33
|
-
"description": "The method used to authenticate with your
|
|
41
|
+
"description": "The method used to authenticate with your Agent. Choose between IAM (default) or Cognito.",
|
|
34
42
|
"default": "IAM",
|
|
35
43
|
"enum": ["IAM", "Cognito"],
|
|
36
|
-
"x-prompt": "How would you like to authenticate with your
|
|
44
|
+
"x-prompt": "How would you like to authenticate with your Agent?",
|
|
37
45
|
"x-priority": "important"
|
|
38
46
|
},
|
|
39
47
|
"protocol": {
|
|
40
48
|
"type": "string",
|
|
41
|
-
"description": "The server protocol for your
|
|
42
|
-
"x-prompt": "Which protocol would you like to use for your
|
|
49
|
+
"description": "The server protocol for your Agent. HTTP exposes a FastAPI HTTP server. A2A exposes an Agent-to-Agent protocol server. AG-UI exposes an Agent-User Interaction protocol server for direct frontend integration.",
|
|
50
|
+
"x-prompt": "Which protocol would you like to use for your Agent?",
|
|
43
51
|
"enum": ["HTTP", "A2A", "AG-UI"],
|
|
44
52
|
"default": "HTTP",
|
|
45
53
|
"x-priority": "important"
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
ProtocolType,
|
|
26
26
|
Runtime,
|
|
27
27
|
RuntimeProps,
|
|
28
|
-
} from '
|
|
28
|
+
} from 'aws-cdk-lib/aws-bedrockagentcore';
|
|
29
29
|
import { IGrantable, IPrincipal, Grant } from 'aws-cdk-lib/aws-iam';
|
|
30
30
|
import { RuntimeConfig } from '../../../core/runtime-config.js';
|
|
31
31
|
import { findWorkspaceRoot } from '../../../core/workspace.js';
|
|
@@ -648,8 +648,8 @@ version = "0.1.0"
|
|
|
648
648
|
dependencies = [
|
|
649
649
|
"aws-lambda-powertools==3.29.0",
|
|
650
650
|
"mcp==1.27.1",
|
|
651
|
-
"uvicorn==0.
|
|
652
|
-
"boto3==1.43.
|
|
651
|
+
"uvicorn==0.48.0",
|
|
652
|
+
"boto3==1.43.14",
|
|
653
653
|
"aws-opentelemetry-distro==0.17.0"
|
|
654
654
|
]
|
|
655
655
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
|
2
2
|
|
|
3
|
-
exports[`ts#
|
|
3
|
+
exports[`ts#agent generator > should match snapshot for BedrockAgentCoreRuntime generated constructs files > agent-Dockerfile 1`] = `
|
|
4
4
|
"FROM public.ecr.aws/docker/library/node:lts-jod
|
|
5
5
|
|
|
6
6
|
WORKDIR /app
|
|
@@ -20,7 +20,7 @@ CMD [ "node", "--require", "@aws/aws-distro-opentelemetry-node-autoinstrumentati
|
|
|
20
20
|
"
|
|
21
21
|
`;
|
|
22
22
|
|
|
23
|
-
exports[`ts#
|
|
23
|
+
exports[`ts#agent generator > should match snapshot for BedrockAgentCoreRuntime generated constructs files > agent-construct.ts 1`] = `
|
|
24
24
|
"import { Lazy, Names } from 'aws-cdk-lib';
|
|
25
25
|
import { Platform } from 'aws-cdk-lib/aws-ecr-assets';
|
|
26
26
|
import { Connections, IConnectable } from 'aws-cdk-lib/aws-ec2';
|
|
@@ -32,7 +32,7 @@ import {
|
|
|
32
32
|
ProtocolType,
|
|
33
33
|
Runtime,
|
|
34
34
|
RuntimeProps,
|
|
35
|
-
} from '
|
|
35
|
+
} from 'aws-cdk-lib/aws-bedrockagentcore';
|
|
36
36
|
import {
|
|
37
37
|
PolicyStatement,
|
|
38
38
|
IGrantable,
|
|
@@ -143,17 +143,17 @@ export class SnapshotBedrockAgent
|
|
|
143
143
|
"
|
|
144
144
|
`;
|
|
145
145
|
|
|
146
|
-
exports[`ts#
|
|
146
|
+
exports[`ts#agent generator > should match snapshot for BedrockAgentCoreRuntime generated constructs files > agents-index.ts 1`] = `
|
|
147
147
|
"export * from './snapshot-bedrock-agent/snapshot-bedrock-agent.js';
|
|
148
148
|
"
|
|
149
149
|
`;
|
|
150
150
|
|
|
151
|
-
exports[`ts#
|
|
151
|
+
exports[`ts#agent generator > should match snapshot for BedrockAgentCoreRuntime generated constructs files > app-index.ts 1`] = `
|
|
152
152
|
"export * from './agents/index.js';
|
|
153
153
|
"
|
|
154
154
|
`;
|
|
155
155
|
|
|
156
|
-
exports[`ts#
|
|
156
|
+
exports[`ts#agent generator > should match snapshot for BedrockAgentCoreRuntime generated constructs files > core-index.ts 1`] = `
|
|
157
157
|
"export * from './app.js';
|
|
158
158
|
export * from './checkov.js';
|
|
159
159
|
export * from './runtime-config.js';
|
|
@@ -161,7 +161,7 @@ export * from './workspace.js';
|
|
|
161
161
|
"
|
|
162
162
|
`;
|
|
163
163
|
|
|
164
|
-
exports[`ts#
|
|
164
|
+
exports[`ts#agent generator > should match snapshot for Terraform generated files > terraform-agent.tf 1`] = `
|
|
165
165
|
"variable "env" {
|
|
166
166
|
description = "Environment variables to pass to the agent core runtime"
|
|
167
167
|
type = map(string)
|
|
@@ -256,7 +256,7 @@ output "appconfig_application_id" {
|
|
|
256
256
|
"
|
|
257
257
|
`;
|
|
258
258
|
|
|
259
|
-
exports[`ts#
|
|
259
|
+
exports[`ts#agent generator > should match snapshot for Terraform generated files > terraform-agent-core-runtime.tf 1`] = `
|
|
260
260
|
"terraform {
|
|
261
261
|
required_version = ">= 1.0"
|
|
262
262
|
|
|
@@ -627,7 +627,7 @@ output "agent_runtime_version" {
|
|
|
627
627
|
"
|
|
628
628
|
`;
|
|
629
629
|
|
|
630
|
-
exports[`ts#
|
|
630
|
+
exports[`ts#agent generator > should match snapshot for generated files > agent-agent.ts 1`] = `
|
|
631
631
|
"import { Agent, tool } from '@strands-agents/sdk';
|
|
632
632
|
import { z } from 'zod';
|
|
633
633
|
|
|
@@ -651,9 +651,9 @@ export const getAgent = async () =>
|
|
|
651
651
|
"
|
|
652
652
|
`;
|
|
653
653
|
|
|
654
|
-
exports[`ts#
|
|
654
|
+
exports[`ts#agent generator > should match snapshot for generated files > agent-agent-core-mcp-client.ts 1`] = `null`;
|
|
655
655
|
|
|
656
|
-
exports[`ts#
|
|
656
|
+
exports[`ts#agent generator > should match snapshot for generated files > agent-agent-core-trpc-client.ts 1`] = `
|
|
657
657
|
"import { randomUUID } from 'node:crypto';
|
|
658
658
|
import { fromNodeProviderChain } from '@aws-sdk/credential-providers';
|
|
659
659
|
import {
|
|
@@ -809,7 +809,7 @@ export class AgentCoreTrpcClient {
|
|
|
809
809
|
"
|
|
810
810
|
`;
|
|
811
811
|
|
|
812
|
-
exports[`ts#
|
|
812
|
+
exports[`ts#agent generator > should match snapshot for generated files > agent-client.ts 1`] = `
|
|
813
813
|
"import { AppRouter } from './router.js';
|
|
814
814
|
import {
|
|
815
815
|
AgentCoreTrpcClient,
|
|
@@ -844,7 +844,7 @@ export class SnapshotAgentClient {
|
|
|
844
844
|
"
|
|
845
845
|
`;
|
|
846
846
|
|
|
847
|
-
exports[`ts#
|
|
847
|
+
exports[`ts#agent generator > should match snapshot for generated files > agent-index.ts 1`] = `
|
|
848
848
|
"import { randomUUID } from 'node:crypto';
|
|
849
849
|
import { createServer } from 'http';
|
|
850
850
|
import {
|
|
@@ -911,7 +911,7 @@ console.log(\`TRPC server listening on port \${PORT}\`);
|
|
|
911
911
|
"
|
|
912
912
|
`;
|
|
913
913
|
|
|
914
|
-
exports[`ts#
|
|
914
|
+
exports[`ts#agent generator > should match snapshot for generated files > agent-init.ts 1`] = `
|
|
915
915
|
"import { initTRPC } from '@trpc/server';
|
|
916
916
|
|
|
917
917
|
export interface Context {
|
|
@@ -924,7 +924,7 @@ export const publicProcedure = t.procedure;
|
|
|
924
924
|
"
|
|
925
925
|
`;
|
|
926
926
|
|
|
927
|
-
exports[`ts#
|
|
927
|
+
exports[`ts#agent generator > should match snapshot for generated files > agent-router.ts 1`] = `
|
|
928
928
|
"import { publicProcedure, t } from './init.js';
|
|
929
929
|
import { z } from 'zod';
|
|
930
930
|
import { zAsyncIterable } from './schema/z-async-iterable.js';
|
|
@@ -966,7 +966,7 @@ export type AppRouter = typeof appRouter;
|
|
|
966
966
|
"
|
|
967
967
|
`;
|
|
968
968
|
|
|
969
|
-
exports[`ts#
|
|
969
|
+
exports[`ts#agent generator > should match snapshot for generated files > agent-z-async-iterable.ts 1`] = `
|
|
970
970
|
"import { isTrackedEnvelope, tracked, TrackedEnvelope } from '@trpc/server';
|
|
971
971
|
import { z } from 'zod';
|
|
972
972
|
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
import { GeneratorCallback, Tree } from '@nx/devkit';
|
|
6
|
+
import { TsAgentA2aConnectionGeneratorSchema } from './schema';
|
|
7
|
+
import { NxGeneratorInfo } from '../../../utils/nx';
|
|
8
|
+
export declare const TS_AGENT_A2A_CONNECTION_GENERATOR_INFO: NxGeneratorInfo;
|
|
9
|
+
export declare const tsAgentA2aConnectionGenerator: (tree: Tree, options: TsAgentA2aConnectionGeneratorSchema) => Promise<GeneratorCallback>;
|
|
10
|
+
export default tsAgentA2aConnectionGenerator;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.tsAgentA2aConnectionGenerator = exports.TS_AGENT_A2A_CONNECTION_GENERATOR_INFO = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
6
6
|
* SPDX-License-Identifier: Apache-2.0
|
|
@@ -14,14 +14,14 @@ const versions_1 = require("../../../utils/versions");
|
|
|
14
14
|
const npm_scope_1 = require("../../../utils/npm-scope");
|
|
15
15
|
const ast_1 = require("../../../utils/ast");
|
|
16
16
|
const agent_connection_1 = require("../../../utils/agent-connection/agent-connection");
|
|
17
|
-
exports.
|
|
18
|
-
const
|
|
17
|
+
exports.TS_AGENT_A2A_CONNECTION_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
|
|
18
|
+
const tsAgentA2aConnectionGenerator = async (tree, options) => {
|
|
19
19
|
const sourceProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.sourceProject);
|
|
20
20
|
const targetProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.targetProject);
|
|
21
21
|
const agentComponent = options.sourceComponent;
|
|
22
22
|
const targetAgentComponent = options.targetComponent;
|
|
23
23
|
if (!agentComponent || !targetAgentComponent) {
|
|
24
|
-
throw new Error('Both sourceComponent and targetComponent must be provided for ts#
|
|
24
|
+
throw new Error('Both sourceComponent and targetComponent must be provided for ts#agent -> a2a connections');
|
|
25
25
|
}
|
|
26
26
|
if (targetAgentComponent.protocol !== 'A2A') {
|
|
27
27
|
throw new Error(`Target agent '${targetAgentComponent.name}' uses the ${targetAgentComponent.protocol ?? 'HTTP'} protocol — only A2A agents can be connected as tools.`);
|
|
@@ -102,13 +102,13 @@ const tsStrandsAgentA2aConnectionGenerator = async (tree, options) => {
|
|
|
102
102
|
'zod',
|
|
103
103
|
]), {});
|
|
104
104
|
await (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [
|
|
105
|
-
exports.
|
|
105
|
+
exports.TS_AGENT_A2A_CONNECTION_GENERATOR_INFO,
|
|
106
106
|
]);
|
|
107
107
|
await (0, format_1.formatFilesInSubtree)(tree);
|
|
108
108
|
return () => {
|
|
109
109
|
(0, devkit_1.installPackagesTask)(tree);
|
|
110
110
|
};
|
|
111
111
|
};
|
|
112
|
-
exports.
|
|
113
|
-
exports.default = exports.
|
|
112
|
+
exports.tsAgentA2aConnectionGenerator = tsAgentA2aConnectionGenerator;
|
|
113
|
+
exports.default = exports.tsAgentA2aConnectionGenerator;
|
|
114
114
|
//# sourceMappingURL=generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/ts/agent/a2a-connection/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ import { ComponentMetadata } from '../../../utils/nx';
|
|
|
7
7
|
/**
|
|
8
8
|
* TypeScript types for options defined in schema.json
|
|
9
9
|
*/
|
|
10
|
-
export interface
|
|
10
|
+
export interface TsAgentA2aConnectionGeneratorSchema {
|
|
11
11
|
sourceProject: string;
|
|
12
12
|
targetProject: string;
|
|
13
13
|
sourceComponent?: ComponentMetadata;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/schema",
|
|
3
|
-
"$id": "ts#
|
|
4
|
-
"title": "ts#
|
|
5
|
-
"description": "Connect a TypeScript
|
|
3
|
+
"$id": "ts#agent#a2a-connection",
|
|
4
|
+
"title": "ts#agent#a2a-connection",
|
|
5
|
+
"description": "Connect a TypeScript Agent to an A2A agent",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"properties": {
|
|
8
8
|
"sourceProject": {
|
|
9
9
|
"type": "string",
|
|
10
|
-
"description": "The project containing the host
|
|
10
|
+
"description": "The project containing the host Agent"
|
|
11
11
|
},
|
|
12
12
|
"targetProject": {
|
|
13
13
|
"type": "string",
|
|
14
|
-
"description": "The project containing the target A2A
|
|
14
|
+
"description": "The project containing the target A2A Agent"
|
|
15
15
|
},
|
|
16
16
|
"sourceComponent": {
|
|
17
17
|
"type": "string",
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
import { GeneratorCallback, Tree } from '@nx/devkit';
|
|
6
|
+
import { TsAgentGeneratorSchema } from './schema';
|
|
7
|
+
import { NxGeneratorInfo } from '../../utils/nx';
|
|
8
|
+
export declare const TS_AGENT_GENERATOR_INFO: NxGeneratorInfo;
|
|
9
|
+
export declare const tsAgentGenerator: (tree: Tree, options: TsAgentGeneratorSchema) => Promise<GeneratorCallback>;
|
|
10
|
+
export default tsAgentGenerator;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.tsAgentGenerator = exports.TS_AGENT_GENERATOR_INFO = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
6
6
|
* SPDX-License-Identifier: Apache-2.0
|
|
@@ -19,8 +19,8 @@ const agent_core_constructs_1 = require("../../utils/agent-core-constructs/agent
|
|
|
19
19
|
const port_1 = require("../../utils/port");
|
|
20
20
|
const fs_1 = require("../../utils/fs");
|
|
21
21
|
const agent_connection_1 = require("../../utils/agent-connection/agent-connection");
|
|
22
|
-
exports.
|
|
23
|
-
const
|
|
22
|
+
exports.TS_AGENT_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
|
|
23
|
+
const tsAgentGenerator = async (tree, options) => {
|
|
24
24
|
const project = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.project);
|
|
25
25
|
if (!tree.exists((0, devkit_1.joinPathFragments)(project.root, 'tsconfig.json'))) {
|
|
26
26
|
throw new Error(`Unsupported project ${options.project}. Expected a TypeScript project (with a tsconfig.json)`);
|
|
@@ -37,8 +37,8 @@ const tsStrandsAgentGenerator = async (tree, options) => {
|
|
|
37
37
|
const auth = options.auth ?? 'IAM';
|
|
38
38
|
const protocol = options.protocol ?? 'HTTP';
|
|
39
39
|
if (protocol === 'AG-UI') {
|
|
40
|
-
throw new Error(`The AG-UI protocol is not yet supported for TypeScript
|
|
41
|
-
`Use a Python
|
|
40
|
+
throw new Error(`The AG-UI protocol is not yet supported for TypeScript agents. ` +
|
|
41
|
+
`Use a Python agent with protocol='AG-UI' instead, or choose 'HTTP' or 'A2A' for TypeScript. ` +
|
|
42
42
|
`Track TypeScript support at https://github.com/strands-agents/sdk-typescript/issues/347`);
|
|
43
43
|
}
|
|
44
44
|
// Ensure the shared agent-connection project exists so the server entry
|
|
@@ -190,15 +190,13 @@ const tsStrandsAgentGenerator = async (tree, options) => {
|
|
|
190
190
|
},
|
|
191
191
|
},
|
|
192
192
|
});
|
|
193
|
-
(0, nx_1.addComponentGeneratorMetadata)(tree, project.name, exports.
|
|
194
|
-
await (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [
|
|
195
|
-
exports.TS_STRANDS_AGENT_GENERATOR_INFO,
|
|
196
|
-
]);
|
|
193
|
+
(0, nx_1.addComponentGeneratorMetadata)(tree, project.name, exports.TS_AGENT_GENERATOR_INFO, targetSourceDirRelativeToProjectRoot, agentTargetPrefix, { port: localDevPort, rc: agentNameClassName, auth, protocol });
|
|
194
|
+
await (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [exports.TS_AGENT_GENERATOR_INFO]);
|
|
197
195
|
await (0, format_1.formatFilesInSubtree)(tree);
|
|
198
196
|
return () => {
|
|
199
197
|
(0, devkit_1.installPackagesTask)(tree);
|
|
200
198
|
};
|
|
201
199
|
};
|
|
202
|
-
exports.
|
|
203
|
-
exports.default = exports.
|
|
200
|
+
exports.tsAgentGenerator = tsAgentGenerator;
|
|
201
|
+
exports.default = exports.tsAgentGenerator;
|
|
204
202
|
//# sourceMappingURL=generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/agent/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
|
2
2
|
|
|
3
|
-
exports[`ts#
|
|
3
|
+
exports[`ts#agent#mcp-connection generator > should match snapshot for agent-connection src files > agent-connection-index.ts 1`] = `
|
|
4
4
|
"export * from './app/inventory-mcp-client.js';
|
|
5
5
|
export * from './core/with-session-id.js';
|
|
6
6
|
export * from './core/session-context.js';
|
|
@@ -8,7 +8,7 @@ export * from './core/session-context.js';
|
|
|
8
8
|
"
|
|
9
9
|
`;
|
|
10
10
|
|
|
11
|
-
exports[`ts#
|
|
11
|
+
exports[`ts#agent#mcp-connection generator > should match snapshot for agent-connection src files > agentcore-mcp-client.ts 1`] = `
|
|
12
12
|
"import { McpClient } from '@strands-agents/sdk';
|
|
13
13
|
import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';
|
|
14
14
|
import { AwsClient } from 'aws4fetch';
|
|
@@ -140,7 +140,7 @@ export class AgentCoreMcpClient {
|
|
|
140
140
|
"
|
|
141
141
|
`;
|
|
142
142
|
|
|
143
|
-
exports[`ts#
|
|
143
|
+
exports[`ts#agent#mcp-connection generator > should match snapshot for agent-connection src files > inventory-mcp-client.ts 1`] = `
|
|
144
144
|
"import { McpClient } from '@strands-agents/sdk';
|
|
145
145
|
import { AgentCoreMcpClient } from '../core/agentcore-mcp-client.js';
|
|
146
146
|
import { getConnectedAgentRuntimeArn } from '../core/runtime-config.js';
|
|
@@ -161,7 +161,7 @@ export class InventoryMcpClient {
|
|
|
161
161
|
"
|
|
162
162
|
`;
|
|
163
163
|
|
|
164
|
-
exports[`ts#
|
|
164
|
+
exports[`ts#agent#mcp-connection generator > should match snapshot for agent-connection src files > transformed-agent.ts 1`] = `
|
|
165
165
|
"import { InventoryMcpClient } from ':proj/agent-connection';
|
|
166
166
|
import { Agent, tool } from '@strands-agents/sdk';
|
|
167
167
|
import { z } from 'zod';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
import { GeneratorCallback, Tree } from '@nx/devkit';
|
|
6
|
+
import { TsAgentMcpConnectionGeneratorSchema } from './schema';
|
|
7
|
+
import { NxGeneratorInfo } from '../../../utils/nx';
|
|
8
|
+
export declare const TS_AGENT_MCP_CONNECTION_GENERATOR_INFO: NxGeneratorInfo;
|
|
9
|
+
export declare const tsAgentMcpConnectionGenerator: (tree: Tree, options: TsAgentMcpConnectionGeneratorSchema) => Promise<GeneratorCallback>;
|
|
10
|
+
export default tsAgentMcpConnectionGenerator;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.tsAgentMcpConnectionGenerator = exports.TS_AGENT_MCP_CONNECTION_GENERATOR_INFO = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
6
6
|
* SPDX-License-Identifier: Apache-2.0
|
|
@@ -14,14 +14,14 @@ const versions_1 = require("../../../utils/versions");
|
|
|
14
14
|
const npm_scope_1 = require("../../../utils/npm-scope");
|
|
15
15
|
const ast_1 = require("../../../utils/ast");
|
|
16
16
|
const agent_connection_1 = require("../../../utils/agent-connection/agent-connection");
|
|
17
|
-
exports.
|
|
18
|
-
const
|
|
17
|
+
exports.TS_AGENT_MCP_CONNECTION_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
|
|
18
|
+
const tsAgentMcpConnectionGenerator = async (tree, options) => {
|
|
19
19
|
const sourceProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.sourceProject);
|
|
20
20
|
const targetProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.targetProject);
|
|
21
21
|
const agentComponent = options.sourceComponent;
|
|
22
22
|
const mcpComponent = options.targetComponent;
|
|
23
23
|
if (!agentComponent || !mcpComponent) {
|
|
24
|
-
throw new Error('Both sourceComponent and targetComponent must be provided for ts#
|
|
24
|
+
throw new Error('Both sourceComponent and targetComponent must be provided for ts#agent -> mcp connections');
|
|
25
25
|
}
|
|
26
26
|
if (mcpComponent.auth && mcpComponent.auth !== 'IAM') {
|
|
27
27
|
throw new Error(`MCP server connection currently only supports IAM authentication, but '${mcpComponent.name}' uses '${mcpComponent.auth}' authentication.`);
|
|
@@ -85,13 +85,13 @@ const tsStrandsAgentMcpConnectionGenerator = async (tree, options) => {
|
|
|
85
85
|
'@aws-sdk/credential-providers',
|
|
86
86
|
]), {});
|
|
87
87
|
await (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [
|
|
88
|
-
exports.
|
|
88
|
+
exports.TS_AGENT_MCP_CONNECTION_GENERATOR_INFO,
|
|
89
89
|
]);
|
|
90
90
|
await (0, format_1.formatFilesInSubtree)(tree);
|
|
91
91
|
return () => {
|
|
92
92
|
(0, devkit_1.installPackagesTask)(tree);
|
|
93
93
|
};
|
|
94
94
|
};
|
|
95
|
-
exports.
|
|
96
|
-
exports.default = exports.
|
|
95
|
+
exports.tsAgentMcpConnectionGenerator = tsAgentMcpConnectionGenerator;
|
|
96
|
+
exports.default = exports.tsAgentMcpConnectionGenerator;
|
|
97
97
|
//# sourceMappingURL=generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/ts/agent/mcp-connection/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
import { ComponentMetadata } from '../../../utils/nx';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* TypeScript types for options defined in schema.json
|
|
9
|
+
*/
|
|
10
|
+
export interface TsAgentMcpConnectionGeneratorSchema {
|
|
11
|
+
sourceProject: string;
|
|
12
|
+
targetProject: string;
|
|
13
|
+
sourceComponent?: ComponentMetadata;
|
|
14
|
+
targetComponent?: ComponentMetadata;
|
|
15
|
+
}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/schema",
|
|
3
|
-
"$id": "ts#
|
|
4
|
-
"title": "ts#
|
|
5
|
-
"description": "Connect a TypeScript
|
|
3
|
+
"$id": "ts#agent#mcp-connection",
|
|
4
|
+
"title": "ts#agent#mcp-connection",
|
|
5
|
+
"description": "Connect a TypeScript Agent to an MCP server",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"properties": {
|
|
8
8
|
"sourceProject": {
|
|
9
9
|
"type": "string",
|
|
10
|
-
"description": "The project containing the
|
|
10
|
+
"description": "The project containing the Agent"
|
|
11
11
|
},
|
|
12
12
|
"targetProject": {
|
|
13
13
|
"type": "string",
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
import { Tree } from '@nx/devkit';
|
|
6
6
|
import { NxGeneratorInfo } from '../../../utils/nx';
|
|
7
7
|
import { ResolvedConnectionOptions } from '../../../connection/generator';
|
|
8
|
-
export declare const
|
|
9
|
-
export declare
|
|
10
|
-
export default
|
|
8
|
+
export declare const TS_AGENT_REACT_CONNECTION_GENERATOR_INFO: NxGeneratorInfo;
|
|
9
|
+
export declare function tsAgentReactConnectionGenerator(tree: Tree, options: ResolvedConnectionOptions): Promise<() => void>;
|
|
10
|
+
export default tsAgentReactConnectionGenerator;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
exports.
|
|
3
|
+
exports.TS_AGENT_REACT_CONNECTION_GENERATOR_INFO = void 0;
|
|
4
|
+
exports.tsAgentReactConnectionGenerator = tsAgentReactConnectionGenerator;
|
|
5
5
|
/**
|
|
6
6
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
7
7
|
* SPDX-License-Identifier: Apache-2.0
|
|
@@ -17,8 +17,8 @@ const nx_1 = require("../../../utils/nx");
|
|
|
17
17
|
const metrics_1 = require("../../../utils/metrics");
|
|
18
18
|
const serve_local_1 = require("./serve-local");
|
|
19
19
|
const agent_runtime_config_1 = require("../../../connection/agent-runtime-config");
|
|
20
|
-
exports.
|
|
21
|
-
async function
|
|
20
|
+
exports.TS_AGENT_REACT_CONNECTION_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
|
|
21
|
+
async function tsAgentReactConnectionGenerator(tree, options) {
|
|
22
22
|
const frontendProjectConfig = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.sourceProject);
|
|
23
23
|
const agentProjectConfig = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.targetProject);
|
|
24
24
|
const targetComponent = options.targetComponent;
|
|
@@ -67,7 +67,7 @@ async function tsStrandsAgentReactConnectionGenerator(tree, options) {
|
|
|
67
67
|
await (0, ast_1.applyGritQL)(tree, mainTsxPath, '`<App />` => `<QueryClientProvider><App /></QueryClientProvider>` where { $program <: not contains `<QueryClientProvider>$_</QueryClientProvider>` }');
|
|
68
68
|
// Wrap <App /> in the agent client provider if not already present
|
|
69
69
|
await (0, ast_1.applyGritQL)(tree, mainTsxPath, `\`<App />\` => \`<${clientProviderName}><App /></${clientProviderName}>\` where { $program <: not contains \`<${clientProviderName}>$_</${clientProviderName}>\` }`);
|
|
70
|
-
await (0, serve_local_1.
|
|
70
|
+
await (0, serve_local_1.addTsAgentTargetToServeLocal)(tree, frontendProjectConfig.name, agentProjectConfig.name, {
|
|
71
71
|
agentName,
|
|
72
72
|
agentNameClassName,
|
|
73
73
|
port: agentPort,
|
|
@@ -96,14 +96,14 @@ async function tsStrandsAgentReactConnectionGenerator(tree, options) {
|
|
|
96
96
|
...(auth === 'Cognito' ? ['react-oidc-context'] : []),
|
|
97
97
|
]), (0, versions_1.withVersions)(['@smithy/types']));
|
|
98
98
|
await (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [
|
|
99
|
-
exports.
|
|
99
|
+
exports.TS_AGENT_REACT_CONNECTION_GENERATOR_INFO,
|
|
100
100
|
]);
|
|
101
101
|
await (0, format_1.formatFilesInSubtree)(tree);
|
|
102
102
|
return () => {
|
|
103
103
|
(0, devkit_1.installPackagesTask)(tree);
|
|
104
104
|
};
|
|
105
105
|
}
|
|
106
|
-
exports.default =
|
|
106
|
+
exports.default = tsAgentReactConnectionGenerator;
|
|
107
107
|
/**
|
|
108
108
|
* Ensures a wildcard path entry exists in tsconfig.base.json for the given project,
|
|
109
109
|
* allowing deep imports (e.g., `:scope/project/src/agent/router.js`).
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/ts/agent/react-connection/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
import { ComponentMetadata } from '../../../utils/nx';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* TypeScript types for options defined in schema.json
|
|
9
|
+
*/
|
|
10
|
+
export interface TsAgentReactConnectionGeneratorSchema {
|
|
11
|
+
sourceProject: string;
|
|
12
|
+
targetProject: string;
|
|
13
|
+
sourceComponent?: ComponentMetadata;
|
|
14
|
+
targetComponent?: ComponentMetadata;
|
|
15
|
+
}
|