@aws/nx-plugin 0.82.0 → 0.82.2
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/package.json +1 -1
- package/src/connection/generator.d.ts +32 -2
- package/src/connection/generator.js +125 -16
- package/src/connection/generator.js.map +1 -1
- package/src/connection/schema.d.ts +2 -0
- package/src/connection/schema.json +8 -0
- package/src/infra/app/__snapshots__/generator.spec.ts.snap +4 -4
- package/src/mcp-server/generator-info.d.ts +5 -1
- package/src/mcp-server/generator-info.js +52 -8
- package/src/mcp-server/generator-info.js.map +1 -1
- package/src/py/fast-api/__snapshots__/generator.spec.ts.snap +66 -38
- package/src/py/lambda-function/generator.js +2 -1
- package/src/py/lambda-function/generator.js.map +1 -1
- package/src/py/mcp-server/generator.js +2 -1
- package/src/py/mcp-server/generator.js.map +1 -1
- package/src/py/strands-agent/generator.js +2 -1
- package/src/py/strands-agent/generator.js.map +1 -1
- package/src/smithy/ts/api/__snapshots__/generator.spec.ts.snap +56 -42
- package/src/trpc/backend/__snapshots__/generator.spec.ts.snap +158 -110
- package/src/ts/lambda-function/generator.js +1 -1
- package/src/ts/lambda-function/generator.js.map +1 -1
- package/src/ts/lib/vitest.js +2 -0
- package/src/ts/lib/vitest.js.map +1 -1
- package/src/ts/mcp-server/generator.js +1 -1
- package/src/ts/mcp-server/generator.js.map +1 -1
- package/src/ts/nx-generator/generator.js +1 -1
- package/src/ts/nx-generator/generator.js.map +1 -1
- package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +6 -6
- package/src/ts/react-website/app/generator.js +5 -1
- package/src/ts/react-website/app/generator.js.map +1 -1
- package/src/ts/react-website/cognito-auth/generator.js +4 -2
- package/src/ts/react-website/cognito-auth/generator.js.map +1 -1
- package/src/ts/react-website/runtime-config/generator.js +4 -2
- package/src/ts/react-website/runtime-config/generator.js.map +1 -1
- package/src/ts/strands-agent/generator.js +1 -1
- package/src/ts/strands-agent/generator.js.map +1 -1
- package/src/utils/api-constructs/files/cdk/app/apis/http/__apiNameKebabCase__.ts.template +15 -17
- package/src/utils/api-constructs/files/cdk/app/apis/rest/__apiNameKebabCase__.ts.template +24 -21
- package/src/utils/api-constructs/files/cdk/core/api/rest/rest-api.ts.template +20 -2
- package/src/utils/api-constructs/files/cdk/core/api/utils/utils.ts.template +4 -1
- package/src/utils/nx.d.ts +10 -1
- package/src/utils/nx.js +3 -5
- package/src/utils/nx.js.map +1 -1
- package/src/utils/paths.d.ts +5 -1
- package/src/utils/paths.js +10 -1
- package/src/utils/paths.js.map +1 -1
- package/src/utils/versions.d.ts +4 -1
- package/src/utils/versions.js +3 -0
- package/src/utils/versions.js.map +1 -1
package/package.json
CHANGED
|
@@ -2,17 +2,47 @@
|
|
|
2
2
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
3
|
* SPDX-License-Identifier: Apache-2.0
|
|
4
4
|
*/
|
|
5
|
-
import { Tree } from '@nx/devkit';
|
|
5
|
+
import { ProjectConfiguration, Tree } from '@nx/devkit';
|
|
6
6
|
import { ConnectionGeneratorSchema } from './schema';
|
|
7
|
+
import { ComponentMetadata } from '../utils/nx';
|
|
7
8
|
/**
|
|
8
|
-
* List of supported source and target project types for connections
|
|
9
|
+
* List of supported source and target project types for connections.
|
|
10
|
+
* These can be project-level types (determined by introspection) or
|
|
11
|
+
* component generator ids (from component metadata).
|
|
9
12
|
*/
|
|
10
13
|
declare const SUPPORTED_PROJECT_TYPES: readonly ["ts#trpc-api", "py#fast-api", "react", "smithy"];
|
|
11
14
|
type ProjectType = (typeof SUPPORTED_PROJECT_TYPES)[number];
|
|
15
|
+
export type Connection = {
|
|
16
|
+
source: string;
|
|
17
|
+
target: string;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Sentinel value for sourceComponent/targetComponent that means
|
|
21
|
+
* "use the project-level connection, not a component".
|
|
22
|
+
*/
|
|
23
|
+
export declare const PROJECT_COMPONENT_SENTINEL = ".";
|
|
24
|
+
/**
|
|
25
|
+
* The result of resolving a connection, including the matched connection
|
|
26
|
+
* and any resolved source/target component metadata.
|
|
27
|
+
*/
|
|
28
|
+
export interface ResolvedConnection {
|
|
29
|
+
readonly connection: Connection;
|
|
30
|
+
readonly sourceComponent?: ComponentMetadata;
|
|
31
|
+
readonly targetComponent?: ComponentMetadata;
|
|
32
|
+
}
|
|
12
33
|
/**
|
|
13
34
|
* Generator for a connection between two projects
|
|
14
35
|
*/
|
|
15
36
|
export declare const connectionGenerator: (tree: Tree, options: ConnectionGeneratorSchema) => Promise<() => void>;
|
|
37
|
+
/**
|
|
38
|
+
* Find a component in project metadata matching the given reference.
|
|
39
|
+
* Checks by name first, then by path, then by generator.
|
|
40
|
+
*/
|
|
41
|
+
export declare const findComponentInMetadata: (projectConfiguration: ProjectConfiguration, componentRef: string) => ComponentMetadata | undefined;
|
|
42
|
+
/**
|
|
43
|
+
* Resolve the connection to use, considering source/target projects and components.
|
|
44
|
+
*/
|
|
45
|
+
export declare const resolveConnection: (tree: Tree, options: ConnectionGeneratorSchema, supportedConnections?: readonly Connection[]) => ResolvedConnection;
|
|
16
46
|
/**
|
|
17
47
|
* Determine whether the given project is of a known project type
|
|
18
48
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.determineProjectType = exports.connectionGenerator = void 0;
|
|
3
|
+
exports.determineProjectType = exports.resolveConnection = exports.findComponentInMetadata = exports.connectionGenerator = exports.PROJECT_COMPONENT_SENTINEL = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
/**
|
|
6
6
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
@@ -16,7 +16,9 @@ const generator_3 = require("../smithy/project/generator");
|
|
|
16
16
|
const generator_4 = require("../smithy/ts/api/generator");
|
|
17
17
|
const generator_5 = tslib_1.__importDefault(require("../smithy/react-connection/generator"));
|
|
18
18
|
/**
|
|
19
|
-
* List of supported source and target project types for connections
|
|
19
|
+
* List of supported source and target project types for connections.
|
|
20
|
+
* These can be project-level types (determined by introspection) or
|
|
21
|
+
* component generator ids (from component metadata).
|
|
20
22
|
*/
|
|
21
23
|
const SUPPORTED_PROJECT_TYPES = [
|
|
22
24
|
'ts#trpc-api',
|
|
@@ -25,7 +27,13 @@ const SUPPORTED_PROJECT_TYPES = [
|
|
|
25
27
|
'smithy',
|
|
26
28
|
];
|
|
27
29
|
/**
|
|
28
|
-
*
|
|
30
|
+
* Sentinel value for sourceComponent/targetComponent that means
|
|
31
|
+
* "use the project-level connection, not a component".
|
|
32
|
+
*/
|
|
33
|
+
exports.PROJECT_COMPONENT_SENTINEL = '.';
|
|
34
|
+
/**
|
|
35
|
+
* Enumerates the supported project connections.
|
|
36
|
+
* Source and target can be project-level types or component generator ids.
|
|
29
37
|
*/
|
|
30
38
|
const SUPPORTED_CONNECTIONS = [
|
|
31
39
|
{ source: 'react', target: 'ts#trpc-api' },
|
|
@@ -53,26 +61,128 @@ const CONNECTION_GENERATORS = {
|
|
|
53
61
|
* Generator for a connection between two projects
|
|
54
62
|
*/
|
|
55
63
|
const connectionGenerator = (tree, options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
56
|
-
const
|
|
57
|
-
const
|
|
58
|
-
|
|
59
|
-
|
|
64
|
+
const { connection } = (0, exports.resolveConnection)(tree, options);
|
|
65
|
+
const connectionKey = `${connection.source} -> ${connection.target}`;
|
|
66
|
+
return yield CONNECTION_GENERATORS[connectionKey](tree, options);
|
|
67
|
+
});
|
|
68
|
+
exports.connectionGenerator = connectionGenerator;
|
|
69
|
+
/**
|
|
70
|
+
* Find a component in project metadata matching the given reference.
|
|
71
|
+
* Checks by name first, then by path, then by generator.
|
|
72
|
+
*/
|
|
73
|
+
const findComponentInMetadata = (projectConfiguration, componentRef) => {
|
|
74
|
+
var _a, _b, _c, _d;
|
|
75
|
+
const components = (_b = (_a = projectConfiguration.metadata) === null || _a === void 0 ? void 0 : _a.components) !== null && _b !== void 0 ? _b : [];
|
|
76
|
+
return ((_d = (_c = components.find((c) => c.name === componentRef)) !== null && _c !== void 0 ? _c : components.find((c) => c.path === componentRef)) !== null && _d !== void 0 ? _d : components.find((c) => c.generator === componentRef));
|
|
77
|
+
};
|
|
78
|
+
exports.findComponentInMetadata = findComponentInMetadata;
|
|
79
|
+
/**
|
|
80
|
+
* Gather all connection candidates for a project configuration. This includes:
|
|
81
|
+
* - The project-level type (if it's a supported type)
|
|
82
|
+
* - Each component's generator id as a candidate type
|
|
83
|
+
*/
|
|
84
|
+
const gatherCandidates = (tree, projectConfig) => {
|
|
85
|
+
var _a, _b;
|
|
86
|
+
const projectType = determineProjectTypeFromConfig(tree, projectConfig);
|
|
87
|
+
const components = (_b = (_a = projectConfig.metadata) === null || _a === void 0 ? void 0 : _a.components) !== null && _b !== void 0 ? _b : [];
|
|
88
|
+
return [
|
|
89
|
+
...(projectType ? [{ type: projectType }] : []),
|
|
90
|
+
...components.map((component) => ({
|
|
91
|
+
type: component.generator,
|
|
92
|
+
component,
|
|
93
|
+
})),
|
|
94
|
+
];
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* Validate that a specified component exists in the project metadata.
|
|
98
|
+
* Skips validation for undefined refs and the project sentinel '.'.
|
|
99
|
+
*/
|
|
100
|
+
const validateComponent = (componentRef, projectConfig, side) => {
|
|
101
|
+
var _a, _b;
|
|
102
|
+
if (!componentRef || componentRef === exports.PROJECT_COMPONENT_SENTINEL)
|
|
103
|
+
return;
|
|
104
|
+
const found = (0, exports.findComponentInMetadata)(projectConfig, componentRef);
|
|
105
|
+
if (!found) {
|
|
106
|
+
const components = (_b = (_a = projectConfig.metadata) === null || _a === void 0 ? void 0 : _a.components) !== null && _b !== void 0 ? _b : [];
|
|
107
|
+
throw new Error(`Component '${componentRef}' not found in ${side} project ${projectConfig.name}. ` +
|
|
108
|
+
`Available components: ${components.length > 0 ? components.map((c) => { var _a; return (_a = c.name) !== null && _a !== void 0 ? _a : c.generator; }).join(', ') : 'none'}`);
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
/**
|
|
112
|
+
* Narrow candidates based on the user's specified component reference.
|
|
113
|
+
*/
|
|
114
|
+
const filterConnectionCandidatesForComponentReference = (componentRef, projectConfig, candidates, supportedConnections, side) => {
|
|
115
|
+
if (!componentRef)
|
|
116
|
+
return candidates;
|
|
117
|
+
if (componentRef === exports.PROJECT_COMPONENT_SENTINEL) {
|
|
118
|
+
return candidates.filter((c) => !c.component);
|
|
60
119
|
}
|
|
61
|
-
|
|
62
|
-
|
|
120
|
+
const component = (0, exports.findComponentInMetadata)(projectConfig, componentRef);
|
|
121
|
+
if (!component)
|
|
122
|
+
return candidates;
|
|
123
|
+
const isConnectionParticipant = supportedConnections.some((c) => c[side] === component.generator);
|
|
124
|
+
if (!isConnectionParticipant)
|
|
125
|
+
return candidates;
|
|
126
|
+
return candidates.filter((c) => { var _a; return ((_a = c.component) === null || _a === void 0 ? void 0 : _a.generator) === component.generator; });
|
|
127
|
+
};
|
|
128
|
+
/**
|
|
129
|
+
* Resolve the connection to use, considering source/target projects and components.
|
|
130
|
+
*/
|
|
131
|
+
const resolveConnection = (tree, options, supportedConnections = SUPPORTED_CONNECTIONS) => {
|
|
132
|
+
const sourceConfig = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.sourceProject);
|
|
133
|
+
const targetConfig = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.targetProject);
|
|
134
|
+
// Validate explicitly specified components exist
|
|
135
|
+
validateComponent(options.sourceComponent, sourceConfig, 'source');
|
|
136
|
+
validateComponent(options.targetComponent, targetConfig, 'target');
|
|
137
|
+
// Gather and narrow candidates
|
|
138
|
+
const sourceCandidates = filterConnectionCandidatesForComponentReference(options.sourceComponent, sourceConfig, gatherCandidates(tree, sourceConfig), supportedConnections, 'source');
|
|
139
|
+
const targetCandidates = filterConnectionCandidatesForComponentReference(options.targetComponent, targetConfig, gatherCandidates(tree, targetConfig), supportedConnections, 'target');
|
|
140
|
+
// Cross-product candidates and find supported connections
|
|
141
|
+
const matches = [];
|
|
142
|
+
for (const source of sourceCandidates) {
|
|
143
|
+
for (const target of targetCandidates) {
|
|
144
|
+
const match = supportedConnections.find((c) => c.source === source.type && c.target === target.type);
|
|
145
|
+
if (match) {
|
|
146
|
+
matches.push({
|
|
147
|
+
connection: match,
|
|
148
|
+
sourceComponent: source.component,
|
|
149
|
+
targetComponent: target.component,
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
}
|
|
63
153
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
154
|
+
if (matches.length === 0) {
|
|
155
|
+
const sourceTypes = [...new Set(sourceCandidates.map((c) => c.type))];
|
|
156
|
+
const targetTypes = [...new Set(targetCandidates.map((c) => c.type))];
|
|
157
|
+
throw new Error(`This generator does not support a connection from ${options.sourceProject}${sourceTypes.length > 0 ? ` (${sourceTypes.join(', ')})` : ''} to ${options.targetProject}${targetTypes.length > 0 ? ` (${targetTypes.join(', ')})` : ''}`);
|
|
67
158
|
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
159
|
+
if (matches.length > 1) {
|
|
160
|
+
const connectionDescriptions = matches
|
|
161
|
+
.map((m) => `${m.connection.source} -> ${m.connection.target}`)
|
|
162
|
+
.join(', ');
|
|
163
|
+
throw new Error(`Ambiguous connection from ${options.sourceProject} to ${options.targetProject}. ` +
|
|
164
|
+
`Multiple supported connections found: ${connectionDescriptions}. ` +
|
|
165
|
+
`Please specify sourceComponent and/or targetComponent to disambiguate.`);
|
|
166
|
+
}
|
|
167
|
+
return {
|
|
168
|
+
connection: matches[0].connection,
|
|
169
|
+
sourceComponent: matches[0].sourceComponent,
|
|
170
|
+
targetComponent: matches[0].targetComponent,
|
|
171
|
+
};
|
|
172
|
+
};
|
|
173
|
+
exports.resolveConnection = resolveConnection;
|
|
71
174
|
/**
|
|
72
175
|
* Determine whether the given project is of a known project type
|
|
73
176
|
*/
|
|
74
177
|
const determineProjectType = (tree, projectName) => {
|
|
75
178
|
const projectConfiguration = (0, nx_1.readProjectConfigurationUnqualified)(tree, projectName);
|
|
179
|
+
return determineProjectTypeFromConfig(tree, projectConfiguration);
|
|
180
|
+
};
|
|
181
|
+
exports.determineProjectType = determineProjectType;
|
|
182
|
+
/**
|
|
183
|
+
* Determine whether the given project configuration is of a known project type
|
|
184
|
+
*/
|
|
185
|
+
const determineProjectTypeFromConfig = (tree, projectConfiguration) => {
|
|
76
186
|
// NB: if adding new checks, ensure these go from most to least specific
|
|
77
187
|
// eg. react website is more specific than typescript project
|
|
78
188
|
if (isTrpcApi(tree, projectConfiguration)) {
|
|
@@ -89,7 +199,6 @@ const determineProjectType = (tree, projectName) => {
|
|
|
89
199
|
}
|
|
90
200
|
return undefined;
|
|
91
201
|
};
|
|
92
|
-
exports.determineProjectType = determineProjectType;
|
|
93
202
|
const sourceRoot = (projectConfiguration) => {
|
|
94
203
|
var _a;
|
|
95
204
|
return (_a = projectConfiguration.sourceRoot) !== null && _a !== void 0 ? _a : (0, devkit_1.joinPathFragments)(projectConfiguration.root, 'src');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/connection/generator.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,uCAA2E;AAE3E,gFAAyD;AACzD,sCAAoD;AACpD,wCAAyC;AACzC,uFAAmE;AACnE,
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/connection/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,14 @@
|
|
|
19
19
|
"description": "The target project to connect to",
|
|
20
20
|
"x-prompt": "Select the target project to connect to",
|
|
21
21
|
"x-dropdown": "projects"
|
|
22
|
+
},
|
|
23
|
+
"sourceComponent": {
|
|
24
|
+
"type": "string",
|
|
25
|
+
"description": "The source component to connect from (component name, path relative to source project root, or generator id). Use '.' to explicitly select the project as the source."
|
|
26
|
+
},
|
|
27
|
+
"targetComponent": {
|
|
28
|
+
"type": "string",
|
|
29
|
+
"description": "The target component to connect to (component name, path relative to target project root, or generator id). Use '.' to explicitly select the project as the target."
|
|
22
30
|
}
|
|
23
31
|
},
|
|
24
32
|
"required": ["sourceProject", "targetProject"]
|
|
@@ -21,7 +21,7 @@ exports[`infra generator > should add required dependencies to package.json > de
|
|
|
21
21
|
"@swc/core": "~1.15.5",
|
|
22
22
|
"@swc/helpers": "~0.5.18",
|
|
23
23
|
"@types/node": "22.19.13",
|
|
24
|
-
"@vitest/coverage-v8": "
|
|
24
|
+
"@vitest/coverage-v8": "4.0.18",
|
|
25
25
|
"eslint": "^9.8.0",
|
|
26
26
|
"eslint-config-prettier": "^10.0.0",
|
|
27
27
|
"eslint-plugin-prettier": "5.5.5",
|
|
@@ -32,7 +32,7 @@ exports[`infra generator > should add required dependencies to package.json > de
|
|
|
32
32
|
"typescript": "~5.9.2",
|
|
33
33
|
"typescript-eslint": "^8.40.0",
|
|
34
34
|
"vite": "^7.0.0",
|
|
35
|
-
"vitest": "
|
|
35
|
+
"vitest": "4.0.18",
|
|
36
36
|
}
|
|
37
37
|
`;
|
|
38
38
|
|
|
@@ -55,7 +55,7 @@ exports[`infra generator > should add required dependencies to package.json > pa
|
|
|
55
55
|
"@swc/core": "~1.15.5",
|
|
56
56
|
"@swc/helpers": "~0.5.18",
|
|
57
57
|
"@types/node": "22.19.13",
|
|
58
|
-
"@vitest/coverage-v8": "
|
|
58
|
+
"@vitest/coverage-v8": "4.0.18",
|
|
59
59
|
"eslint": "^9.8.0",
|
|
60
60
|
"eslint-config-prettier": "^10.0.0",
|
|
61
61
|
"eslint-plugin-prettier": "5.5.5",
|
|
@@ -66,7 +66,7 @@ exports[`infra generator > should add required dependencies to package.json > pa
|
|
|
66
66
|
"typescript": "~5.9.2",
|
|
67
67
|
"typescript-eslint": "^8.40.0",
|
|
68
68
|
"vite": "^7.0.0",
|
|
69
|
-
"vitest": "
|
|
69
|
+
"vitest": "4.0.18",
|
|
70
70
|
},
|
|
71
71
|
"name": "@proj/source",
|
|
72
72
|
"type": "module",
|
|
@@ -17,7 +17,11 @@ export declare const fetchGuidePagesForGenerator: (info: NxGeneratorInfo, genera
|
|
|
17
17
|
* Fetch markdown guide pages from github
|
|
18
18
|
*/
|
|
19
19
|
export declare const fetchGuidePages: (guidePages: string[], generators: NxGeneratorInfo[], packageManager?: string) => Promise<string>;
|
|
20
|
+
/**
|
|
21
|
+
* Fetch a snippet's content from github
|
|
22
|
+
*/
|
|
23
|
+
export declare const fetchSnippet: (snippetName: string) => Promise<string>;
|
|
20
24
|
/**
|
|
21
25
|
* Post-process a guide page to "inline" relevant components
|
|
22
26
|
*/
|
|
23
|
-
export declare const postProcessGuide: (guide: string, generators: NxGeneratorInfo[], packageManager?: string) => string
|
|
27
|
+
export declare const postProcessGuide: (guide: string, generators: NxGeneratorInfo[], packageManager?: string) => Promise<string>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.postProcessGuide = exports.fetchGuidePages = exports.fetchGuidePagesForGenerator = exports.renderGeneratorInfo = exports.buildNxCommand = void 0;
|
|
3
|
+
exports.postProcessGuide = exports.fetchSnippet = exports.fetchGuidePages = exports.fetchGuidePagesForGenerator = exports.renderGeneratorInfo = exports.buildNxCommand = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
/**
|
|
6
6
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
@@ -64,12 +64,28 @@ const fetchGuidePages = (guidePages, generators, packageManager) => tslib_1.__aw
|
|
|
64
64
|
const guides = yield Promise.allSettled(guidePages.map((guide) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
65
65
|
return yield (yield fetch(`https://raw.githubusercontent.com/awslabs/nx-plugin-for-aws/refs/heads/main/docs/src/content/docs/en/guides/${guide}.mdx`)).text();
|
|
66
66
|
})));
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
.join('\n\n');
|
|
67
|
+
const fulfilled = guides.filter((result) => result.status === 'fulfilled');
|
|
68
|
+
const processed = yield Promise.all(fulfilled.map((result) => (0, exports.postProcessGuide)(result.value, generators, packageManager)));
|
|
69
|
+
return processed.join('\n\n');
|
|
71
70
|
});
|
|
72
71
|
exports.fetchGuidePages = fetchGuidePages;
|
|
72
|
+
const SNIPPET_BASE_URL = 'https://raw.githubusercontent.com/awslabs/nx-plugin-for-aws/refs/heads/main/docs/src/content/docs/en/snippets';
|
|
73
|
+
/**
|
|
74
|
+
* Fetch a snippet's content from github
|
|
75
|
+
*/
|
|
76
|
+
const fetchSnippet = (snippetName) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
77
|
+
try {
|
|
78
|
+
const response = yield fetch(`${SNIPPET_BASE_URL}/${snippetName}.mdx`);
|
|
79
|
+
if (!response.ok) {
|
|
80
|
+
return '';
|
|
81
|
+
}
|
|
82
|
+
return yield response.text();
|
|
83
|
+
}
|
|
84
|
+
catch (_a) {
|
|
85
|
+
return '';
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
exports.fetchSnippet = fetchSnippet;
|
|
73
89
|
const findGeneratorAndSchema = (generators, generatorId) => {
|
|
74
90
|
const generator = generators.find((info) => info.id === generatorId);
|
|
75
91
|
if (!generator) {
|
|
@@ -86,9 +102,37 @@ const findGeneratorAndSchema = (generators, generatorId) => {
|
|
|
86
102
|
/**
|
|
87
103
|
* Post-process a guide page to "inline" relevant components
|
|
88
104
|
*/
|
|
89
|
-
const postProcessGuide = (guide, generators, packageManager) => {
|
|
105
|
+
const postProcessGuide = (guide, generators, packageManager) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
106
|
+
// Replace <Snippet /> with fetched snippet content
|
|
107
|
+
// Use a regex that matches the full self-closing tag, allowing / in attribute values
|
|
108
|
+
const snippetRegex = /<Snippet\s+((?:[^/]|\/(?!>))+)\s*\/>/g;
|
|
109
|
+
const snippetMatches = [...guide.matchAll(snippetRegex)];
|
|
110
|
+
let processedGuide = guide;
|
|
111
|
+
if (snippetMatches.length > 0) {
|
|
112
|
+
// Fetch all snippets in parallel
|
|
113
|
+
const snippetResults = yield Promise.all(snippetMatches.map((match) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
114
|
+
const nameMatch = match[1].match(/name=["']([^"']+)["']/);
|
|
115
|
+
if (!nameMatch) {
|
|
116
|
+
return { original: match[0], replacement: match[0] };
|
|
117
|
+
}
|
|
118
|
+
const snippetName = nameMatch[1];
|
|
119
|
+
const snippetContent = yield (0, exports.fetchSnippet)(snippetName);
|
|
120
|
+
if (!snippetContent) {
|
|
121
|
+
return { original: match[0], replacement: match[0] };
|
|
122
|
+
}
|
|
123
|
+
// Recursively post-process the snippet content
|
|
124
|
+
const processedContent = yield (0, exports.postProcessGuide)(snippetContent.trim(), generators, packageManager);
|
|
125
|
+
return {
|
|
126
|
+
original: match[0],
|
|
127
|
+
replacement: `<Snippet name="${snippetName}">\n${processedContent}\n</Snippet>`,
|
|
128
|
+
};
|
|
129
|
+
})));
|
|
130
|
+
for (const { original, replacement } of snippetResults) {
|
|
131
|
+
processedGuide = processedGuide.replace(original, replacement);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
90
134
|
// Replace <NxCommands /> with markdown code blocks
|
|
91
|
-
|
|
135
|
+
processedGuide = processedGuide.replace(/<NxCommands\s+commands={([^}]+)}\s*\/>/g, (match, commandsMatch) => {
|
|
92
136
|
try {
|
|
93
137
|
const commands = JSON.parse(commandsMatch
|
|
94
138
|
.replaceAll("\\'", '__ESCAPED_SINGLE_QUOTE__')
|
|
@@ -129,6 +173,6 @@ const postProcessGuide = (guide, generators, packageManager) => {
|
|
|
129
173
|
return renderSchema(info.schema);
|
|
130
174
|
});
|
|
131
175
|
return processedGuide;
|
|
132
|
-
};
|
|
176
|
+
});
|
|
133
177
|
exports.postProcessGuide = postProcessGuide;
|
|
134
178
|
//# sourceMappingURL=generator-info.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator-info.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/mcp-server/generator-info.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,0CAA2C;AAE3C,oDAAoB;AAEpB;;GAEG;AACI,MAAM,cAAc,GAAG,CAAC,OAAe,EAAE,EAAW,EAAE,EAAE;;IAC7D,OAAA,GACE,EAAE;QACA,CAAC,CAAC,GACE,MAAA;YACE,GAAG,EAAE,KAAK;YACV,GAAG,EAAE,MAAM;SACZ,CAAC,EAAE,CAAC,mCAAI,EACX,GAAG;QACL,CAAC,CAAC,EACN,MAAM,OAAO,EAAE,CAAA;CAAA,CAAC;AAVL,QAAA,cAAc,kBAUT;AAElB,MAAM,YAAY,GAAG,CAAC,MAAW,EAAE,EAAE,CACnC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;KAC9B,GAAG,CACF,CAAC,CAAC,SAAS,EAAE,eAAe,CAAgB,EAAE,EAAE,WAC9C,OAAA,KAAK,SAAS,WAAW,eAAe,CAAC,IAAI,IAAI,CAAC,MAAA,MAAM,CAAC,QAAQ,mCAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,eAAe,CAAC,WAAW,EAAE,CAAA,EAAA,CACrJ;KACA,IAAI,CAAC,IAAI,CAAC,CAAC;AAEhB,MAAM,sBAAsB,GAAG,CAC7B,WAAmB,EACnB,MAAW,EACX,cAAuB,EACvB,EAAE,CAAC;EACH,IAAA,sBAAc,EACd,oBAAoB,WAAW,qBAAqB,MAAM,CAAC,OAAO,CAChE,MAAM,CAAC,UAAU,CAClB;KACE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,WAAC,OAAA,CAAC,MAAA,MAAM,CAAC,QAAQ,mCAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA,EAAA,CAAC;KACpE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAgB,EAAE,EAAE,CAAC,KAAK,SAAS,KAAK,SAAS,GAAG,CAAC;KACpE,IAAI,CAAC,GAAG,CAAC,EAAE,EACd,cAAc,CACf;OACM,CAAC;AAER;;GAEG;AACI,MAAM,mBAAmB,GAAG,CACjC,cAAsB,EACtB,IAAqB,EACb,EAAE;IACV,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC,CAAC;IAE7E,OAAO,GAAG,IAAI,CAAC,EAAE;;eAEJ,IAAI,CAAC,WAAW;;;EAG7B,YAAY,CAAC,MAAM,CAAC;;;EAGpB,sBAAsB,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,cAAc,CAAC;CACxD,CAAC;AACF,CAAC,CAAC;AAhBW,QAAA,mBAAmB,uBAgB9B;AAEF;;;;GAIG;AACI,MAAM,2BAA2B,GAAG,CACzC,IAAqB,EACrB,UAA6B,EAC7B,cAAuB,EACN,EAAE;;IACnB,OAAO,MAAM,IAAA,uBAAe,EAC1B,MAAA,IAAI,CAAC,UAAU,mCAAI,CAAC,IAAA,iBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EACvC,UAAU,EACV,cAAc,CACf,CAAC;AACJ,CAAC,CAAA,CAAC;AAVW,QAAA,2BAA2B,+BAUtC;AAEF;;GAEG;AACI,MAAM,eAAe,GAAG,CAC7B,UAAoB,EACpB,UAA6B,EAC7B,cAAuB,EACN,EAAE;IACnB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,UAAU,CACrC,UAAU,CAAC,GAAG,CACZ,CAAO,KAAK,EAAE,EAAE;QACd,OAAA,MAAM,CACJ,MAAM,KAAK,CACT,+GAA+G,KAAK,MAAM,CAC3H,CACF,CAAC,IAAI,EAAE,CAAA;MAAA,CACX,CACF,CAAC;IACF,
|
|
1
|
+
{"version":3,"file":"generator-info.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/mcp-server/generator-info.ts"],"names":[],"mappings":"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"}
|