@aws/nx-plugin 1.0.0-rc.21 → 1.0.0-rc.23
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/license/generator.js +22 -8
- package/src/license/generator.js.map +1 -1
- package/src/license/known-exceptions.d.ts +1 -0
- package/src/license/known-exceptions.js +13 -1
- package/src/license/known-exceptions.js.map +1 -1
- package/src/py/agent/__snapshots__/generator.spec.ts.snap +167 -3
- package/src/py/agent/a2a-connection/files/langchain/agent-connection/app/__targetAgentSnakeCase___client_langchain.py.template +28 -0
- package/src/py/agent/a2a-connection/generator.js +59 -31
- package/src/py/agent/a2a-connection/generator.js.map +1 -1
- package/src/py/agent/files/a2a-langchain/main.py.template +89 -0
- package/src/py/agent/files/ag-ui-langchain/main.py.template +83 -0
- package/src/py/agent/files/common-langchain/agent.py.template +30 -0
- package/src/py/agent/files/http-langchain/main.py.template +84 -0
- package/src/py/agent/gateway-connection/files/langchain/agent-connection/app/__gatewaySnakeCase___client_langchain.py.template +34 -0
- package/src/py/agent/gateway-connection/generator.js +15 -9
- package/src/py/agent/gateway-connection/generator.js.map +1 -1
- package/src/py/agent/generator.js +69 -14
- package/src/py/agent/generator.js.map +1 -1
- package/src/py/agent/mcp-connection/files/langchain/agent-connection/app/__mcpServerSnakeCase___client_langchain.py.template +30 -0
- package/src/py/agent/mcp-connection/generator.js +15 -11
- package/src/py/agent/mcp-connection/generator.js.map +1 -1
- package/src/py/agent/react-connection/serve-local.js +9 -1
- package/src/py/agent/react-connection/serve-local.js.map +1 -1
- package/src/py/agent/schema.d.ts +1 -1
- package/src/py/agent/schema.json +1 -1
- package/src/py/dynamodb/agent-connection/generator.js +1 -1
- package/src/py/dynamodb/agent-connection/generator.js.map +1 -1
- package/src/py/dynamodb/fast-api-connection/generator.js +1 -1
- package/src/py/dynamodb/fast-api-connection/generator.js.map +1 -1
- package/src/py/dynamodb/mcp-server-connection/generator.js +1 -1
- package/src/py/dynamodb/mcp-server-connection/generator.js.map +1 -1
- package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +1 -1
- package/src/py/project/generator.d.ts +14 -1
- package/src/py/project/generator.js +12 -2
- package/src/py/project/generator.js.map +1 -1
- package/src/ts/agent/__snapshots__/generator.spec.ts.snap +1 -1
- package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +1 -1
- package/src/ts/rdb/__snapshots__/generator.spec.ts.snap +4 -0
- package/src/ts/rdb/files/src/utils.ts.template +2 -0
- package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +25 -72
- package/src/ts/react-website/cognito-auth/__snapshots__/generator.terraform.spec.ts.snap +17 -4
- package/src/utils/agent-connection/agent-connection.d.ts +58 -9
- package/src/utils/agent-connection/agent-connection.js +146 -13
- package/src/utils/agent-connection/agent-connection.js.map +1 -1
- package/src/utils/agent-connection/files/py-core-langchain/a2a/agentcore_a2a_client_langchain.py.template +99 -0
- package/src/utils/agent-connection/files/py-core-langchain/gateway/agentcore_gateway_mcp_client_langchain.py.template +57 -0
- package/src/utils/agent-connection/files/py-core-langchain/mcp/agentcore_mcp_client_langchain.py.template +64 -0
- package/src/utils/agent-core-constructs/files/terraform/core/agent-core/runtime.tf.template +1 -1
- package/src/utils/identity-constructs/files/terraform/core/user-identity/add-callback-url/add-callback-url.tf.template +17 -4
- package/src/utils/names.d.ts +16 -0
- package/src/utils/names.js +18 -1
- package/src/utils/names.js.map +1 -1
- package/src/utils/py.d.ts +14 -1
- package/src/utils/py.js +34 -7
- package/src/utils/py.js.map +1 -1
- package/src/utils/versions.d.ts +6 -0
- package/src/utils/versions.js +6 -0
- package/src/utils/versions.js.map +1 -1
package/src/py/agent/schema.d.ts
CHANGED
package/src/py/agent/schema.json
CHANGED
|
@@ -15,7 +15,7 @@ exports.PY_DYNAMODB_AGENT_CONNECTION_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)
|
|
|
15
15
|
const pyDynamoDBAgentConnectionGenerator = async (tree, options) => {
|
|
16
16
|
const sourceProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.sourceProject);
|
|
17
17
|
const targetProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.targetProject);
|
|
18
|
-
(0, py_1.addWorkspaceDependencyToPyProject)(tree, sourceProject
|
|
18
|
+
(0, py_1.addWorkspaceDependencyToPyProject)(tree, sourceProject, targetProject);
|
|
19
19
|
const agentName = options.sourceComponent?.name ?? 'agent';
|
|
20
20
|
const serveLocalTarget = `${agentName}-serve-local`;
|
|
21
21
|
if (sourceProject.targets?.[serveLocalTarget]) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/py/dynamodb/agent-connection/generator.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAKoB;AACpB,kDAA6D;AAC7D,oDAAyE;AACzE,0CAK2B;AAC3B,4DAAgE;AAChE,0CAAsE;AAGzD,QAAA,2CAA2C,GACtD,IAAA,qBAAgB,EAAC,UAAU,CAAC,CAAC;AAExB,MAAM,kCAAkC,GAAG,KAAK,EACrD,IAAU,EACV,OAAiD,EACrB,EAAE;IAC9B,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IACF,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IAEF,IAAA,sCAAiC,
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/py/dynamodb/agent-connection/generator.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAKoB;AACpB,kDAA6D;AAC7D,oDAAyE;AACzE,0CAK2B;AAC3B,4DAAgE;AAChE,0CAAsE;AAGzD,QAAA,2CAA2C,GACtD,IAAA,qBAAgB,EAAC,UAAU,CAAC,CAAC;AAExB,MAAM,kCAAkC,GAAG,KAAK,EACrD,IAAU,EACV,OAAiD,EACrB,EAAE;IAC9B,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IACF,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IAEF,IAAA,sCAAiC,EAAC,IAAI,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;IAEtE,MAAM,SAAS,GAAG,OAAO,CAAC,eAAe,EAAE,IAAI,IAAI,OAAO,CAAC;IAC3D,MAAM,gBAAgB,GAAG,GAAG,SAAS,cAAc,CAAC;IAEpD,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC9C,IAAA,sCAAiC,EAAC,aAAa,EAAE,gBAAgB,EAAE;YACjE,QAAQ,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC;YAC9B,MAAM,EAAE,aAAa;SACtB,CAAC,CAAC;QACH,IAAA,mCAA0B,EAAC,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,IAAA,yCAA+B,EAAC,IAAI,EAAE;QAC1C,mDAA2C;KAC5C,CAAC,CAAC;IACH,MAAM,IAAA,6BAAoB,EAAC,IAAI,CAAC,CAAC;IACjC,OAAO,KAAK,IAAI,EAAE;QAChB,IAAA,4BAAmB,EAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,IAAI,wBAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,oBAAM,EAAE,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IAChE,CAAC,CAAC;AACJ,CAAC,CAAC;AAlCW,QAAA,kCAAkC,sCAkC7C;AAEF,kBAAe,0CAAkC,CAAC"}
|
|
@@ -15,7 +15,7 @@ exports.PY_DYNAMODB_FAST_API_CONNECTION_GENERATOR_INFO = (0, nx_1.getGeneratorIn
|
|
|
15
15
|
const pyDynamoDBFastApiConnectionGenerator = async (tree, options) => {
|
|
16
16
|
const sourceProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.sourceProject);
|
|
17
17
|
const targetProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.targetProject);
|
|
18
|
-
(0, py_1.addWorkspaceDependencyToPyProject)(tree, sourceProject
|
|
18
|
+
(0, py_1.addWorkspaceDependencyToPyProject)(tree, sourceProject, targetProject);
|
|
19
19
|
if (sourceProject.targets?.['serve-local']) {
|
|
20
20
|
(0, nx_1.addDependencyToTargetIfNotPresent)(sourceProject, 'serve-local', {
|
|
21
21
|
projects: [targetProject.name],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/py/dynamodb/fast-api-connection/generator.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAKoB;AACpB,kDAA6D;AAC7D,oDAAyE;AACzE,0CAK2B;AAC3B,4DAAgE;AAChE,0CAAsE;AAGzD,QAAA,8CAA8C,GACzD,IAAA,qBAAgB,EAAC,UAAU,CAAC,CAAC;AAExB,MAAM,oCAAoC,GAAG,KAAK,EACvD,IAAU,EACV,OAAmD,EACvB,EAAE;IAC9B,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IACF,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IAEF,IAAA,sCAAiC,
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/py/dynamodb/fast-api-connection/generator.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAKoB;AACpB,kDAA6D;AAC7D,oDAAyE;AACzE,0CAK2B;AAC3B,4DAAgE;AAChE,0CAAsE;AAGzD,QAAA,8CAA8C,GACzD,IAAA,qBAAgB,EAAC,UAAU,CAAC,CAAC;AAExB,MAAM,oCAAoC,GAAG,KAAK,EACvD,IAAU,EACV,OAAmD,EACvB,EAAE;IAC9B,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IACF,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IAEF,IAAA,sCAAiC,EAAC,IAAI,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;IAEtE,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;QAC3C,IAAA,sCAAiC,EAAC,aAAa,EAAE,aAAa,EAAE;YAC9D,QAAQ,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC;YAC9B,MAAM,EAAE,aAAa;SACtB,CAAC,CAAC;QACH,IAAA,mCAA0B,EAAC,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,IAAA,yCAA+B,EAAC,IAAI,EAAE;QAC1C,sDAA8C;KAC/C,CAAC,CAAC;IACH,MAAM,IAAA,6BAAoB,EAAC,IAAI,CAAC,CAAC;IACjC,OAAO,KAAK,IAAI,EAAE;QAChB,IAAA,4BAAmB,EAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,IAAI,wBAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,oBAAM,EAAE,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IAChE,CAAC,CAAC;AACJ,CAAC,CAAC;AA/BW,QAAA,oCAAoC,wCA+B/C;AAEF,kBAAe,4CAAoC,CAAC"}
|
|
@@ -15,7 +15,7 @@ exports.PY_DYNAMODB_MCP_SERVER_CONNECTION_GENERATOR_INFO = (0, nx_1.getGenerator
|
|
|
15
15
|
const pyDynamoDBMcpServerConnectionGenerator = async (tree, options) => {
|
|
16
16
|
const sourceProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.sourceProject);
|
|
17
17
|
const targetProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.targetProject);
|
|
18
|
-
(0, py_1.addWorkspaceDependencyToPyProject)(tree, sourceProject
|
|
18
|
+
(0, py_1.addWorkspaceDependencyToPyProject)(tree, sourceProject, targetProject);
|
|
19
19
|
const mcpServerName = options.sourceComponent?.name ?? 'mcp-server';
|
|
20
20
|
const serveLocalTarget = `${mcpServerName}-serve-local`;
|
|
21
21
|
if (sourceProject.targets?.[serveLocalTarget]) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/py/dynamodb/mcp-server-connection/generator.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAKoB;AACpB,kDAA6D;AAC7D,oDAAyE;AACzE,0CAK2B;AAC3B,4DAAgE;AAChE,0CAAsE;AAGzD,QAAA,gDAAgD,GAC3D,IAAA,qBAAgB,EAAC,UAAU,CAAC,CAAC;AAExB,MAAM,sCAAsC,GAAG,KAAK,EACzD,IAAU,EACV,OAAqD,EACzB,EAAE;IAC9B,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IACF,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IAEF,IAAA,sCAAiC,
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/py/dynamodb/mcp-server-connection/generator.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAKoB;AACpB,kDAA6D;AAC7D,oDAAyE;AACzE,0CAK2B;AAC3B,4DAAgE;AAChE,0CAAsE;AAGzD,QAAA,gDAAgD,GAC3D,IAAA,qBAAgB,EAAC,UAAU,CAAC,CAAC;AAExB,MAAM,sCAAsC,GAAG,KAAK,EACzD,IAAU,EACV,OAAqD,EACzB,EAAE;IAC9B,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IACF,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IAEF,IAAA,sCAAiC,EAAC,IAAI,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;IAEtE,MAAM,aAAa,GAAG,OAAO,CAAC,eAAe,EAAE,IAAI,IAAI,YAAY,CAAC;IACpE,MAAM,gBAAgB,GAAG,GAAG,aAAa,cAAc,CAAC;IAExD,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC9C,IAAA,sCAAiC,EAAC,aAAa,EAAE,gBAAgB,EAAE;YACjE,QAAQ,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC;YAC9B,MAAM,EAAE,aAAa;SACtB,CAAC,CAAC;QACH,IAAA,mCAA0B,EAAC,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,IAAA,yCAA+B,EAAC,IAAI,EAAE;QAC1C,wDAAgD;KACjD,CAAC,CAAC;IACH,MAAM,IAAA,6BAAoB,EAAC,IAAI,CAAC,CAAC;IACjC,OAAO,KAAK,IAAI,EAAE;QAChB,IAAA,4BAAmB,EAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,IAAI,wBAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,oBAAM,EAAE,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IAChE,CAAC,CAAC;AACJ,CAAC,CAAC;AAlCW,QAAA,sCAAsC,0CAkCjD;AAEF,kBAAe,8CAAsC,CAAC"}
|
|
@@ -8,9 +8,22 @@ import type { PyProjectGeneratorSchema } from './schema';
|
|
|
8
8
|
export declare const PY_PROJECT_GENERATOR_INFO: NxGeneratorInfo;
|
|
9
9
|
export interface PyProjectDetails {
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
11
|
+
* Fully qualified Nx project id including scope, in dot notation (eg foo.bar).
|
|
12
|
+
* This is the identifier Nx uses (readProjectConfiguration, the project
|
|
13
|
+
* graph, target references) and is intentionally kept dotted.
|
|
12
14
|
*/
|
|
13
15
|
readonly fullyQualifiedName: string;
|
|
16
|
+
/**
|
|
17
|
+
* PEP 503 normalised Python distribution name (eg foo-bar). This is the name
|
|
18
|
+
* written to the project's `[project].name`, the root `[tool.uv.sources]`
|
|
19
|
+
* key, and any inter-project dependency string. It is hyphenated (not dotted)
|
|
20
|
+
* so `uv` and `@nxlv/python` can match it: uv writes `uv.lock` keyed by the
|
|
21
|
+
* PEP 503 hyphenated name, and `@nxlv/python`'s dependency inference splits a
|
|
22
|
+
* dotted name on `.` and so would otherwise drop the edge entirely. Keeping
|
|
23
|
+
* the distribution name decoupled from `fullyQualifiedName` is what lets the
|
|
24
|
+
* workspace dependency edge appear in the Nx project graph.
|
|
25
|
+
*/
|
|
26
|
+
readonly distributionName: string;
|
|
14
27
|
/**
|
|
15
28
|
* Directory of the library relative to the root
|
|
16
29
|
*/
|
|
@@ -26,16 +26,19 @@ const getPyProjectDetails = (tree, schema) => {
|
|
|
26
26
|
const normalizedName = (0, names_1.toSnakeCase)(schema.name);
|
|
27
27
|
const normalizedModuleName = (0, names_1.toSnakeCase)(schema.moduleName ?? `${scope}_${normalizedName}`);
|
|
28
28
|
const fullyQualifiedName = `${scope}.${normalizedName}`;
|
|
29
|
+
// The Python distribution name is the PEP 503 normalised form of the
|
|
30
|
+
// fully qualified name: hyphenated, never dotted. See PyProjectDetails.
|
|
31
|
+
const distributionName = (0, names_1.normalizeDistributionName)(fullyQualifiedName);
|
|
29
32
|
// NB: interactive nx generator cli can pass empty string
|
|
30
33
|
const dir = (0, devkit_1.joinPathFragments)(schema.directory || '.', schema.subDirectory || normalizedName);
|
|
31
|
-
return { dir, fullyQualifiedName, normalizedModuleName };
|
|
34
|
+
return { dir, fullyQualifiedName, distributionName, normalizedModuleName };
|
|
32
35
|
};
|
|
33
36
|
exports.getPyProjectDetails = getPyProjectDetails;
|
|
34
37
|
/**
|
|
35
38
|
* Generates a Python project
|
|
36
39
|
*/
|
|
37
40
|
const pyProjectGenerator = async (tree, schema) => {
|
|
38
|
-
const { dir, normalizedModuleName, fullyQualifiedName } = (0, exports.getPyProjectDetails)(tree, schema);
|
|
41
|
+
const { dir, normalizedModuleName, fullyQualifiedName, distributionName } = (0, exports.getPyProjectDetails)(tree, schema);
|
|
39
42
|
const pythonPlugin = (0, versions_1.withVersions)(['@nxlv/python']);
|
|
40
43
|
(0, devkit_1.addDependenciesToPackageJson)(tree, {}, pythonPlugin);
|
|
41
44
|
Object.entries(pythonPlugin).forEach(([name, version]) => (0, devkit_1.ensurePackage)(name, version));
|
|
@@ -70,7 +73,14 @@ const pyProjectGenerator = async (tree, schema) => {
|
|
|
70
73
|
});
|
|
71
74
|
}
|
|
72
75
|
await (0, nxlv_python_1.uvProjectGenerator)(tree, {
|
|
76
|
+
// The Nx project id (and `uv.workspace.members` etc.) keys off `name`, so
|
|
77
|
+
// keep it dotted. `packageName` is the separate PEP 503 distribution name
|
|
78
|
+
// written to `[project].name` and the root `[tool.uv.sources]` key; it is
|
|
79
|
+
// hyphenated so `@nxlv/python` infers the workspace dependency edge (it
|
|
80
|
+
// splits a dotted name on `.` and would otherwise drop it). This split is
|
|
81
|
+
// the whole fix (see PyProjectDetails.distributionName).
|
|
73
82
|
name: fullyQualifiedName,
|
|
83
|
+
packageName: distributionName,
|
|
74
84
|
publishable: false,
|
|
75
85
|
buildLockedVersions: true,
|
|
76
86
|
buildBundleLocalDependencies: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/py/project/generator.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAWoB;AACpB,iDAG8B;AAC9B,yCAAkD;AAClD,iDAAsE;AACtE,
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/py/project/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -297,6 +297,8 @@ const transientErrorPatterns = [
|
|
|
297
297
|
'ECONNREFUSED',
|
|
298
298
|
'ENOTFOUND',
|
|
299
299
|
'P1000', // Prisma: authentication failed
|
|
300
|
+
'P1001', // Prisma: can't reach database server
|
|
301
|
+
'P1002', // Prisma: database server reached but timed out
|
|
300
302
|
'ER_ACCESS_DENIED_ERROR', // MySQL: access denied
|
|
301
303
|
];
|
|
302
304
|
|
|
@@ -4104,6 +4106,8 @@ const transientErrorPatterns = [
|
|
|
4104
4106
|
'ECONNREFUSED',
|
|
4105
4107
|
'ENOTFOUND',
|
|
4106
4108
|
'P1000', // Prisma: authentication failed
|
|
4109
|
+
'P1001', // Prisma: can't reach database server
|
|
4110
|
+
'P1002', // Prisma: database server reached but timed out
|
|
4107
4111
|
'ER_ACCESS_DENIED_ERROR', // MySQL: access denied
|
|
4108
4112
|
];
|
|
4109
4113
|
|
|
@@ -95,6 +95,8 @@ const transientErrorPatterns = [
|
|
|
95
95
|
'ECONNREFUSED',
|
|
96
96
|
'ENOTFOUND',
|
|
97
97
|
'P1000', // Prisma: authentication failed
|
|
98
|
+
'P1001', // Prisma: can't reach database server
|
|
99
|
+
'P1002', // Prisma: database server reached but timed out
|
|
98
100
|
'ER_ACCESS_DENIED_ERROR', // MySQL: access denied
|
|
99
101
|
];
|
|
100
102
|
|
|
@@ -7,8 +7,6 @@ import { tanstackRouter } from '@tanstack/router-plugin/vite';
|
|
|
7
7
|
/// <reference types='vitest' />
|
|
8
8
|
import { defineConfig } from 'vite';
|
|
9
9
|
import react from '@vitejs/plugin-react';
|
|
10
|
-
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
11
|
-
import { nxCopyAssetsPlugin } from '@nx/vite/plugins/nx-copy-assets.plugin';
|
|
12
10
|
|
|
13
11
|
export default defineConfig(() => ({
|
|
14
12
|
root: import.meta.dirname,
|
|
@@ -27,13 +25,11 @@ export default defineConfig(() => ({
|
|
|
27
25
|
generatedRouteTree: resolve(__dirname, 'src/routeTree.gen.ts'),
|
|
28
26
|
}),
|
|
29
27
|
react(),
|
|
30
|
-
nxViteTsPaths(),
|
|
31
|
-
nxCopyAssetsPlugin(['*.md']),
|
|
32
28
|
tailwindcss(),
|
|
33
29
|
],
|
|
34
30
|
// Uncomment this if you are using workers.
|
|
35
31
|
// worker: {
|
|
36
|
-
//
|
|
32
|
+
// plugins: [],
|
|
37
33
|
// },
|
|
38
34
|
build: {
|
|
39
35
|
outDir: '../dist/test-app',
|
|
@@ -52,7 +48,7 @@ export default defineConfig(() => ({
|
|
|
52
48
|
include: ['{src,tests}/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],
|
|
53
49
|
reporters: ['default'],
|
|
54
50
|
coverage: {
|
|
55
|
-
reportsDirectory: '
|
|
51
|
+
reportsDirectory: './test-output/vitest/coverage',
|
|
56
52
|
provider: 'v8' as const,
|
|
57
53
|
},
|
|
58
54
|
},
|
|
@@ -68,8 +64,6 @@ import { tanstackRouter } from '@tanstack/router-plugin/vite';
|
|
|
68
64
|
/// <reference types='vitest' />
|
|
69
65
|
import { defineConfig } from 'vite';
|
|
70
66
|
import react from '@vitejs/plugin-react';
|
|
71
|
-
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
72
|
-
import { nxCopyAssetsPlugin } from '@nx/vite/plugins/nx-copy-assets.plugin';
|
|
73
67
|
|
|
74
68
|
export default defineConfig(() => ({
|
|
75
69
|
root: import.meta.dirname,
|
|
@@ -88,12 +82,10 @@ export default defineConfig(() => ({
|
|
|
88
82
|
generatedRouteTree: resolve(__dirname, 'src/routeTree.gen.ts'),
|
|
89
83
|
}),
|
|
90
84
|
react(),
|
|
91
|
-
nxViteTsPaths(),
|
|
92
|
-
nxCopyAssetsPlugin(['*.md']),
|
|
93
85
|
],
|
|
94
86
|
// Uncomment this if you are using workers.
|
|
95
87
|
// worker: {
|
|
96
|
-
//
|
|
88
|
+
// plugins: [],
|
|
97
89
|
// },
|
|
98
90
|
build: {
|
|
99
91
|
outDir: '../dist/test-app',
|
|
@@ -112,7 +104,7 @@ export default defineConfig(() => ({
|
|
|
112
104
|
include: ['{src,tests}/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],
|
|
113
105
|
reporters: ['default'],
|
|
114
106
|
coverage: {
|
|
115
|
-
reportsDirectory: '
|
|
107
|
+
reportsDirectory: './test-output/vitest/coverage',
|
|
116
108
|
provider: 'v8' as const,
|
|
117
109
|
},
|
|
118
110
|
},
|
|
@@ -961,18 +953,7 @@ vitest.config.*.timestamp*
|
|
|
961
953
|
runtime-config.json"
|
|
962
954
|
`;
|
|
963
955
|
|
|
964
|
-
exports[`react-website generator > Tanstack router integration > should generate website with no router correctly > .
|
|
965
|
-
"# Add files here to ignore them from prettier formatting
|
|
966
|
-
/dist
|
|
967
|
-
/coverage
|
|
968
|
-
/.nx/cache
|
|
969
|
-
/.nx/workspace-data"
|
|
970
|
-
`;
|
|
971
|
-
|
|
972
|
-
exports[`react-website generator > Tanstack router integration > should generate website with no router correctly > .prettierrc 1`] = `
|
|
973
|
-
"{ "singleQuote": true }
|
|
974
|
-
"
|
|
975
|
-
`;
|
|
956
|
+
exports[`react-website generator > Tanstack router integration > should generate website with no router correctly > .prettierrc 1`] = `"{"singleQuote":true}"`;
|
|
976
957
|
|
|
977
958
|
exports[`react-website generator > Tanstack router integration > should generate website with no router correctly > biome.json 1`] = `
|
|
978
959
|
"{
|
|
@@ -1145,7 +1126,6 @@ exports[`react-website generator > Tanstack router integration > should generate
|
|
|
1145
1126
|
"@vitest/ui": "4.1.8",
|
|
1146
1127
|
"jiti": "2.4.2",
|
|
1147
1128
|
"jsdom": "~22.1.0",
|
|
1148
|
-
"prettier": "~3.6.2",
|
|
1149
1129
|
"typescript": "~5.9.2",
|
|
1150
1130
|
"vite": "8.0.16",
|
|
1151
1131
|
"vitest": "4.1.8"
|
|
@@ -2009,9 +1989,9 @@ export default defineConfig(() => ({
|
|
|
2009
1989
|
|
|
2010
1990
|
exports[`react-website generator > Tanstack router integration > should generate website with no router correctly > pnpm-workspace.yaml 1`] = `
|
|
2011
1991
|
"packages:
|
|
2012
|
-
-
|
|
2013
|
-
-
|
|
2014
|
-
-
|
|
1992
|
+
- "packages/*"
|
|
1993
|
+
- "test-app"
|
|
1994
|
+
- "packages/common/*"
|
|
2015
1995
|
"
|
|
2016
1996
|
`;
|
|
2017
1997
|
|
|
@@ -2066,7 +2046,7 @@ In order to integrate with cognito or trpc backends, you need to have a \`runtim
|
|
|
2066
2046
|
`;
|
|
2067
2047
|
|
|
2068
2048
|
exports[`react-website generator > Tanstack router integration > should generate website with no router correctly > test-app/index.html 1`] = `
|
|
2069
|
-
"<!
|
|
2049
|
+
"<!DOCTYPE html>
|
|
2070
2050
|
<html lang="en">
|
|
2071
2051
|
<head>
|
|
2072
2052
|
<meta charset="utf-8" />
|
|
@@ -2467,9 +2447,9 @@ exports[`react-website generator > Tanstack router integration > should generate
|
|
|
2467
2447
|
|
|
2468
2448
|
exports[`react-website generator > Tanstack router integration > should generate website with no router correctly > test-app/tsconfig.spec.json 1`] = `
|
|
2469
2449
|
"{
|
|
2470
|
-
"extends": "
|
|
2450
|
+
"extends": "../tsconfig.base.json",
|
|
2471
2451
|
"compilerOptions": {
|
|
2472
|
-
"outDir": "
|
|
2452
|
+
"outDir": "./out-tsc/vitest",
|
|
2473
2453
|
"types": [
|
|
2474
2454
|
"vitest/globals",
|
|
2475
2455
|
"vitest/importMeta",
|
|
@@ -2509,8 +2489,6 @@ exports[`react-website generator > Tanstack router integration > should generate
|
|
|
2509
2489
|
/// <reference types='vitest' />
|
|
2510
2490
|
import { defineConfig } from 'vite';
|
|
2511
2491
|
import react from '@vitejs/plugin-react';
|
|
2512
|
-
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
2513
|
-
import { nxCopyAssetsPlugin } from '@nx/vite/plugins/nx-copy-assets.plugin';
|
|
2514
2492
|
|
|
2515
2493
|
export default defineConfig(() => ({
|
|
2516
2494
|
root: import.meta.dirname,
|
|
@@ -2523,15 +2501,10 @@ export default defineConfig(() => ({
|
|
|
2523
2501
|
port: 4300,
|
|
2524
2502
|
host: 'localhost',
|
|
2525
2503
|
},
|
|
2526
|
-
plugins: [
|
|
2527
|
-
react(),
|
|
2528
|
-
nxViteTsPaths(),
|
|
2529
|
-
nxCopyAssetsPlugin(['*.md']),
|
|
2530
|
-
tailwindcss(),
|
|
2531
|
-
],
|
|
2504
|
+
plugins: [react(), tailwindcss()],
|
|
2532
2505
|
// Uncomment this if you are using workers.
|
|
2533
2506
|
// worker: {
|
|
2534
|
-
//
|
|
2507
|
+
// plugins: [],
|
|
2535
2508
|
// },
|
|
2536
2509
|
build: {
|
|
2537
2510
|
outDir: '../dist/test-app',
|
|
@@ -2550,7 +2523,7 @@ export default defineConfig(() => ({
|
|
|
2550
2523
|
include: ['{src,tests}/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],
|
|
2551
2524
|
reporters: ['default'],
|
|
2552
2525
|
coverage: {
|
|
2553
|
-
reportsDirectory: '
|
|
2526
|
+
reportsDirectory: './test-output/vitest/coverage',
|
|
2554
2527
|
provider: 'v8' as const,
|
|
2555
2528
|
},
|
|
2556
2529
|
},
|
|
@@ -2603,18 +2576,7 @@ vitest.config.*.timestamp*
|
|
|
2603
2576
|
runtime-config.json"
|
|
2604
2577
|
`;
|
|
2605
2578
|
|
|
2606
|
-
exports[`react-website generator > Tanstack router integration > should generate website with router correctly > .
|
|
2607
|
-
"# Add files here to ignore them from prettier formatting
|
|
2608
|
-
/dist
|
|
2609
|
-
/coverage
|
|
2610
|
-
/.nx/cache
|
|
2611
|
-
/.nx/workspace-data"
|
|
2612
|
-
`;
|
|
2613
|
-
|
|
2614
|
-
exports[`react-website generator > Tanstack router integration > should generate website with router correctly > .prettierrc 1`] = `
|
|
2615
|
-
"{ "singleQuote": true }
|
|
2616
|
-
"
|
|
2617
|
-
`;
|
|
2579
|
+
exports[`react-website generator > Tanstack router integration > should generate website with router correctly > .prettierrc 1`] = `"{"singleQuote":true}"`;
|
|
2618
2580
|
|
|
2619
2581
|
exports[`react-website generator > Tanstack router integration > should generate website with router correctly > biome.json 1`] = `
|
|
2620
2582
|
"{
|
|
@@ -2792,7 +2754,6 @@ exports[`react-website generator > Tanstack router integration > should generate
|
|
|
2792
2754
|
"@vitest/ui": "4.1.8",
|
|
2793
2755
|
"jiti": "2.4.2",
|
|
2794
2756
|
"jsdom": "~22.1.0",
|
|
2795
|
-
"prettier": "~3.6.2",
|
|
2796
2757
|
"typescript": "~5.9.2",
|
|
2797
2758
|
"vite": "8.0.16",
|
|
2798
2759
|
"vitest": "4.1.8"
|
|
@@ -3656,9 +3617,9 @@ export default defineConfig(() => ({
|
|
|
3656
3617
|
|
|
3657
3618
|
exports[`react-website generator > Tanstack router integration > should generate website with router correctly > pnpm-workspace.yaml 1`] = `
|
|
3658
3619
|
"packages:
|
|
3659
|
-
-
|
|
3660
|
-
-
|
|
3661
|
-
-
|
|
3620
|
+
- "packages/*"
|
|
3621
|
+
- "test-app"
|
|
3622
|
+
- "packages/common/*"
|
|
3662
3623
|
"
|
|
3663
3624
|
`;
|
|
3664
3625
|
|
|
@@ -3713,7 +3674,7 @@ In order to integrate with cognito or trpc backends, you need to have a \`runtim
|
|
|
3713
3674
|
`;
|
|
3714
3675
|
|
|
3715
3676
|
exports[`react-website generator > Tanstack router integration > should generate website with router correctly > test-app/index.html 1`] = `
|
|
3716
|
-
"<!
|
|
3677
|
+
"<!DOCTYPE html>
|
|
3717
3678
|
<html lang="en">
|
|
3718
3679
|
<head>
|
|
3719
3680
|
<meta charset="utf-8" />
|
|
@@ -4298,9 +4259,9 @@ exports[`react-website generator > Tanstack router integration > should generate
|
|
|
4298
4259
|
|
|
4299
4260
|
exports[`react-website generator > Tanstack router integration > should generate website with router correctly > test-app/tsconfig.spec.json 1`] = `
|
|
4300
4261
|
"{
|
|
4301
|
-
"extends": "
|
|
4262
|
+
"extends": "../tsconfig.base.json",
|
|
4302
4263
|
"compilerOptions": {
|
|
4303
|
-
"outDir": "
|
|
4264
|
+
"outDir": "./out-tsc/vitest",
|
|
4304
4265
|
"types": [
|
|
4305
4266
|
"vitest/globals",
|
|
4306
4267
|
"vitest/importMeta",
|
|
@@ -4342,8 +4303,6 @@ import { tanstackRouter } from '@tanstack/router-plugin/vite';
|
|
|
4342
4303
|
/// <reference types='vitest' />
|
|
4343
4304
|
import { defineConfig } from 'vite';
|
|
4344
4305
|
import react from '@vitejs/plugin-react';
|
|
4345
|
-
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
4346
|
-
import { nxCopyAssetsPlugin } from '@nx/vite/plugins/nx-copy-assets.plugin';
|
|
4347
4306
|
|
|
4348
4307
|
export default defineConfig(() => ({
|
|
4349
4308
|
root: import.meta.dirname,
|
|
@@ -4362,13 +4321,11 @@ export default defineConfig(() => ({
|
|
|
4362
4321
|
generatedRouteTree: resolve(__dirname, 'src/routeTree.gen.ts'),
|
|
4363
4322
|
}),
|
|
4364
4323
|
react(),
|
|
4365
|
-
nxViteTsPaths(),
|
|
4366
|
-
nxCopyAssetsPlugin(['*.md']),
|
|
4367
4324
|
tailwindcss(),
|
|
4368
4325
|
],
|
|
4369
4326
|
// Uncomment this if you are using workers.
|
|
4370
4327
|
// worker: {
|
|
4371
|
-
//
|
|
4328
|
+
// plugins: [],
|
|
4372
4329
|
// },
|
|
4373
4330
|
build: {
|
|
4374
4331
|
outDir: '../dist/test-app',
|
|
@@ -4387,7 +4344,7 @@ export default defineConfig(() => ({
|
|
|
4387
4344
|
include: ['{src,tests}/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],
|
|
4388
4345
|
reporters: ['default'],
|
|
4389
4346
|
coverage: {
|
|
4390
|
-
reportsDirectory: '
|
|
4347
|
+
reportsDirectory: './test-output/vitest/coverage',
|
|
4391
4348
|
provider: 'v8' as const,
|
|
4392
4349
|
},
|
|
4393
4350
|
},
|
|
@@ -4459,8 +4416,6 @@ import { tanstackRouter } from '@tanstack/router-plugin/vite';
|
|
|
4459
4416
|
/// <reference types='vitest' />
|
|
4460
4417
|
import { defineConfig } from 'vite';
|
|
4461
4418
|
import react from '@vitejs/plugin-react';
|
|
4462
|
-
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
4463
|
-
import { nxCopyAssetsPlugin } from '@nx/vite/plugins/nx-copy-assets.plugin';
|
|
4464
4419
|
|
|
4465
4420
|
export default defineConfig(() => ({
|
|
4466
4421
|
root: import.meta.dirname,
|
|
@@ -4479,13 +4434,11 @@ export default defineConfig(() => ({
|
|
|
4479
4434
|
generatedRouteTree: resolve(__dirname, 'src/routeTree.gen.ts'),
|
|
4480
4435
|
}),
|
|
4481
4436
|
react(),
|
|
4482
|
-
nxViteTsPaths(),
|
|
4483
|
-
nxCopyAssetsPlugin(['*.md']),
|
|
4484
4437
|
tailwindcss(),
|
|
4485
4438
|
],
|
|
4486
4439
|
// Uncomment this if you are using workers.
|
|
4487
4440
|
// worker: {
|
|
4488
|
-
//
|
|
4441
|
+
// plugins: [],
|
|
4489
4442
|
// },
|
|
4490
4443
|
build: {
|
|
4491
4444
|
outDir: '../dist/test-app',
|
|
@@ -4504,7 +4457,7 @@ export default defineConfig(() => ({
|
|
|
4504
4457
|
include: ['{src,tests}/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],
|
|
4505
4458
|
reporters: ['default'],
|
|
4506
4459
|
coverage: {
|
|
4507
|
-
reportsDirectory: '
|
|
4460
|
+
reportsDirectory: './test-output/vitest/coverage',
|
|
4508
4461
|
provider: 'v8' as const,
|
|
4509
4462
|
},
|
|
4510
4463
|
},
|
|
@@ -67,6 +67,7 @@ resource "null_resource" "add_callback_url" {
|
|
|
67
67
|
import boto3
|
|
68
68
|
import os
|
|
69
69
|
import sys
|
|
70
|
+
import time
|
|
70
71
|
|
|
71
72
|
# Configuration
|
|
72
73
|
user_pool_id = os.environ['USER_POOL_ID']
|
|
@@ -76,12 +77,24 @@ new_callback_url = os.environ['NEW_CALLBACK_URL']
|
|
|
76
77
|
# Initialize Cognito client
|
|
77
78
|
cognito = boto3.client('cognito-idp')
|
|
78
79
|
|
|
80
|
+
# A freshly created user pool / client can take several minutes to become
|
|
81
|
+
# visible to describe_user_pool_client, so retry on ResourceNotFoundException.
|
|
82
|
+
def describe_with_retry():
|
|
83
|
+
deadline = time.time() + 5 * 60
|
|
84
|
+
while True:
|
|
85
|
+
try:
|
|
86
|
+
return cognito.describe_user_pool_client(
|
|
87
|
+
UserPoolId=user_pool_id,
|
|
88
|
+
ClientId=client_id,
|
|
89
|
+
)
|
|
90
|
+
except cognito.exceptions.ResourceNotFoundException:
|
|
91
|
+
if time.time() >= deadline:
|
|
92
|
+
raise
|
|
93
|
+
time.sleep(5)
|
|
94
|
+
|
|
79
95
|
try:
|
|
80
96
|
# Get current user pool client configuration
|
|
81
|
-
response =
|
|
82
|
-
UserPoolId=user_pool_id,
|
|
83
|
-
ClientId=client_id
|
|
84
|
-
)
|
|
97
|
+
response = describe_with_retry()
|
|
85
98
|
|
|
86
99
|
client_config = response['UserPoolClient']
|
|
87
100
|
current_callback_urls = client_config.get('CallbackURLs', [])
|