@aws/nx-plugin 0.3.0 → 0.5.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.
Files changed (80) hide show
  1. package/LICENSE-THIRD-PARTY +76 -65
  2. package/package.json +2 -1
  3. package/src/cloudscape-website/app/README.md +1 -1
  4. package/src/cloudscape-website/app/__snapshots__/generator.spec.ts.snap +93 -29
  5. package/src/cloudscape-website/app/files/app/README.md.template +4 -2
  6. package/src/cloudscape-website/app/files/app/src/{layouts/App → components/AppLayout}/index.tsx.template +38 -19
  7. package/src/cloudscape-website/app/files/app/src/{layouts/App → components/AppLayout}/navitems.ts.template +1 -1
  8. package/src/cloudscape-website/app/files/app/src/hooks/useAppLayout.tsx.template +5 -0
  9. package/src/cloudscape-website/app/files/app/src/main.tsx.template +13 -6
  10. package/src/cloudscape-website/app/files/app/src/routeTree.gen.ts.template +111 -0
  11. package/src/cloudscape-website/app/files/app/src/routes/__root.tsx.template +6 -0
  12. package/src/cloudscape-website/app/files/app/src/routes/index.tsx.template +5 -0
  13. package/src/cloudscape-website/app/files/app/src/routes/welcome/index.tsx.template +21 -0
  14. package/src/cloudscape-website/app/files/app/src/styles.css.template +1 -0
  15. package/src/cloudscape-website/app/generator.js +24 -13
  16. package/src/cloudscape-website/app/generator.js.map +1 -1
  17. package/src/cloudscape-website/cognito-auth/__snapshots__/generator.spec.ts.snap +2 -2
  18. package/src/cloudscape-website/cognito-auth/generator.js +2 -2
  19. package/src/cloudscape-website/cognito-auth/generator.js.map +1 -1
  20. package/src/cloudscape-website/runtime-config/__snapshots__/generator.spec.ts.snap +2 -4
  21. package/src/cloudscape-website/runtime-config/generator.js +3 -3
  22. package/src/cloudscape-website/runtime-config/generator.js.map +1 -1
  23. package/src/infra/app/__snapshots__/generator.spec.ts.snap +5 -1
  24. package/src/infra/app/generator.js +1 -1
  25. package/src/infra/app/generator.js.map +1 -1
  26. package/src/license/README.md +50 -15
  27. package/src/license/__snapshots__/config.spec.ts.snap +10 -3
  28. package/src/license/config-types.d.ts +14 -0
  29. package/src/license/config.d.ts +1 -1
  30. package/src/license/config.js +15 -12
  31. package/src/license/config.js.map +1 -1
  32. package/src/license/generator.js +1 -4
  33. package/src/license/generator.js.map +1 -1
  34. package/src/license/sync/generator.js +40 -32
  35. package/src/license/sync/generator.js.map +1 -1
  36. package/src/license/sync/project-file-sync.d.ts +15 -0
  37. package/src/license/sync/project-file-sync.js +52 -0
  38. package/src/license/sync/project-file-sync.js.map +1 -0
  39. package/src/trpc/backend/__snapshots__/generator.spec.ts.snap +317 -6
  40. package/src/trpc/backend/files/backend/README.md.template +1 -1
  41. package/src/trpc/backend/files/backend/src/client/index.ts.template +33 -0
  42. package/src/trpc/backend/files/backend/src/client/sigv4.ts.template +9 -0
  43. package/src/trpc/backend/files/backend/src/index.ts.template +3 -1
  44. package/src/trpc/backend/files/backend/src/init.ts.template +18 -0
  45. package/src/trpc/backend/files/backend/src/local-server.ts.template +17 -0
  46. package/src/trpc/backend/files/backend/src/middleware/error.ts.template +26 -0
  47. package/src/trpc/backend/files/backend/src/middleware/index.ts.template +15 -0
  48. package/src/trpc/backend/files/backend/src/middleware/logger.ts.template +26 -0
  49. package/src/trpc/backend/files/backend/src/middleware/metrics.ts.template +36 -0
  50. package/src/trpc/backend/files/backend/src/middleware/tracer.ts.template +44 -0
  51. package/src/trpc/backend/files/backend/src/procedures/echo.ts.template +8 -0
  52. package/src/trpc/backend/files/backend/src/router.ts.template +20 -0
  53. package/src/trpc/backend/files/common/constructs/src/app/trpc-apis/__apiNameKebabCase__.ts.template +1 -1
  54. package/src/trpc/backend/files/schema/src/index.ts.template +1 -7
  55. package/src/trpc/backend/files/schema/src/procedures/echo.ts.template +13 -0
  56. package/src/trpc/backend/generator.js +10 -1
  57. package/src/trpc/backend/generator.js.map +1 -1
  58. package/src/trpc/react/__snapshots__/generator.spec.ts.snap +4 -6
  59. package/src/trpc/react/files/src/hooks/useSigV4.tsx.template +20 -3
  60. package/src/trpc/react/generator.js +2 -2
  61. package/src/trpc/react/generator.js.map +1 -1
  62. package/src/ts/lib/eslint.js +1 -1
  63. package/src/ts/lib/eslint.js.map +1 -1
  64. package/src/utils/test.d.ts +4 -0
  65. package/src/utils/test.js +16 -1
  66. package/src/utils/test.js.map +1 -1
  67. package/src/utils/toml.d.ts +10 -0
  68. package/src/utils/toml.js +17 -0
  69. package/src/utils/toml.js.map +1 -0
  70. package/src/utils/versions.d.ts +6 -3
  71. package/src/utils/versions.js +5 -2
  72. package/src/utils/versions.js.map +1 -1
  73. package/src/cloudscape-website/app/files/app/src/layouts/Routes/index.tsx.template +0 -16
  74. package/src/cloudscape-website/app/files/app/src/pages/Home/index.tsx.template +0 -23
  75. package/src/trpc/backend/files/backend/src/lambdas/index.ts.template +0 -1
  76. package/src/trpc/backend/files/backend/src/lambdas/middleware.ts.template +0 -146
  77. package/src/trpc/backend/files/backend/src/lambdas/router.ts.template +0 -36
  78. /package/src/license/{files → sync/files}/licenses/ASL/LICENSE.template +0 -0
  79. /package/src/license/{files → sync/files}/licenses/Apache-2.0/LICENSE.template +0 -0
  80. /package/src/license/{files → sync/files}/licenses/MIT/LICENSE.template +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/trpc/backend/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/trpc/backend/generator.ts"],"names":[],"mappings":"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"}
@@ -121,15 +121,13 @@ exports[`trpc react generator > should modify main.tsx correctly > main.tsx 1`]
121
121
  "import TrpcClientProviders from './components/TrpcClients';
122
122
  import RuntimeConfigProvider from './components/RuntimeConfig';
123
123
  import { App } from './app';
124
- import { BrowserRouter } from 'react-router-dom';
124
+ import { RouterProvider } from '@tanstack/react-router';
125
125
  export function Main() {
126
126
  return (
127
127
  <RuntimeConfigProvider>
128
- <BrowserRouter>
129
- <TrpcClientProviders>
130
- <App />
131
- </TrpcClientProviders>
132
- </BrowserRouter>
128
+ <TrpcClientProviders>
129
+ <RouterProvider router={router} />
130
+ </TrpcClientProviders>
133
131
  </RuntimeConfigProvider>
134
132
  );
135
133
  }
@@ -1,14 +1,31 @@
1
1
  import { AwsClient } from 'aws4fetch';
2
2
  import { CognitoIdentityClient } from '@aws-sdk/client-cognito-identity';
3
3
  import { fromCognitoIdentityPool } from '@aws-sdk/credential-provider-cognito-identity';
4
- import { useCallback } from 'react';
4
+ import { useCallback, useState } from 'react';
5
5
  import { useAuth } from 'react-oidc-context';
6
6
  import { useRuntimeConfig } from './useRuntimeConfig';
7
+ import { AwsCredentialIdentity, AwsCredentialIdentityProvider } from '@smithy/types';
8
+
9
+ // Credential expiration grace time before considering credentials as expired
10
+ const CREDENTIAL_EXPIRY_OFFSET_MILLIS = 30 * 1000;
7
11
 
8
12
  export const useSigV4 = () => {
9
13
  const { cognitoProps } = useRuntimeConfig();
10
14
  const { user } = useAuth();
11
15
 
16
+ const [cachedCredentials, setCachedCredentials] = useState<{ [key: string]: AwsCredentialIdentity }>({});
17
+
18
+ const withCachedCredentials = useCallback(async (provider: AwsCredentialIdentityProvider, ...cacheKeys: string[]): Promise<AwsCredentialIdentity> => {
19
+ const key = `sigv4/${cacheKeys.join('/')}`;
20
+ const cachedCreds = cachedCredentials[key];
21
+ if (cachedCreds && cachedCreds.expiration && cachedCreds.expiration.getTime() > Date.now() + CREDENTIAL_EXPIRY_OFFSET_MILLIS) {
22
+ return cachedCreds;
23
+ }
24
+ const credentials = await provider();
25
+ setCachedCredentials((prev) => ({ ...prev, [key]: credentials }));
26
+ return credentials;
27
+ }, [cachedCredentials, setCachedCredentials]);
28
+
12
29
  return useCallback(
13
30
  async (input: RequestInfo | URL, init?: RequestInit | undefined) => {
14
31
  if (!cognitoProps) {
@@ -29,10 +46,10 @@ export const useSigV4 = () => {
29
46
  const cognitoidentity = new CognitoIdentityClient({
30
47
  credentials: credentialsFromCognitoIdentityPool,
31
48
  });
32
- const credential = await cognitoidentity.config.credentials();
49
+ const credential = await withCachedCredentials(cognitoidentity.config.credentials, cognitoProps.identityPoolId, user.profile.sub);
33
50
  const awsClient = new AwsClient(credential);
34
51
  return awsClient.fetch(input, init);
35
52
  },
36
- [cognitoProps, user?.id_token]
53
+ [cognitoProps, user?.id_token, user.profile.sub, withCachedCredentials]
37
54
  );
38
55
  };
@@ -80,7 +80,7 @@ function reactGenerator(tree, options) {
80
80
  const mainTsxAst = (0, tsquery_1.ast)(mainTsxSource);
81
81
  const hasProvider = tsquery_1.tsquery.query(mainTsxAst, 'JsxOpeningElement[tagName.name="TrpcClientProviders"]').length > 0;
82
82
  if (!hasProvider) {
83
- (0, ast_1.replace)(tree, mainTsxPath, 'JsxSelfClosingElement[tagName.name="App"]', (node) => (0, ast_1.createJsxElementFromIdentifier)('TrpcClientProviders', [node]));
83
+ (0, ast_1.replace)(tree, mainTsxPath, 'JsxSelfClosingElement[tagName.name="RouterProvider"]', (node) => (0, ast_1.createJsxElementFromIdentifier)('TrpcClientProviders', [node]));
84
84
  }
85
85
  // update TrpcApis.tsx
86
86
  const trpcApisPath = (0, devkit_1.joinPathFragments)(frontendProjectConfig.sourceRoot, 'components/TrpcClients/TrpcApis.tsx');
@@ -156,7 +156,7 @@ function reactGenerator(tree, options) {
156
156
  ...(options.auth === 'IAM'
157
157
  ? ['oidc-client-ts', 'react-oidc-context']
158
158
  : []),
159
- ]), {});
159
+ ]), (0, versions_1.withVersions)(['@smithy/types']));
160
160
  yield (0, format_1.formatFilesInSubtree)(tree);
161
161
  return () => {
162
162
  (0, devkit_1.installPackagesTask)(tree);
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/trpc/react/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/trpc/react/generator.ts"],"names":[],"mappings":"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"}
@@ -26,7 +26,7 @@ const configureEslint = (tree) => tslib_1.__awaiter(void 0, void 0, void 0, func
26
26
  },
27
27
  ] }));
28
28
  }
29
- (0, devkit_1.addDependenciesToPackageJson)(tree, {}, (0, versions_1.withVersions)(['prettier', 'eslint-plugin-prettier']));
29
+ (0, devkit_1.addDependenciesToPackageJson)(tree, {}, (0, versions_1.withVersions)(['prettier', 'eslint-plugin-prettier', 'jsonc-eslint-parser']));
30
30
  // Update or create eslint.config.mjs
31
31
  const eslintConfigPath = 'eslint.config.mjs';
32
32
  if (tree.exists(eslintConfigPath)) {
@@ -1 +1 @@
1
- {"version":3,"file":"eslint.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/lib/eslint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eslint.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/lib/eslint.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,6 @@
1
1
  import { Tree } from '@nx/devkit';
2
2
  export declare const createTreeUsingTsSolutionSetup: () => Tree;
3
+ /**
4
+ * Snapshot all files within a directory in the given tree
5
+ */
6
+ export declare const snapshotTreeDir: (tree: Tree, dir: string) => void;
package/src/utils/test.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createTreeUsingTsSolutionSetup = void 0;
3
+ exports.snapshotTreeDir = exports.createTreeUsingTsSolutionSetup = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  /**
6
6
  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
@@ -8,6 +8,7 @@ const tslib_1 = require("tslib");
8
8
  */
9
9
  const vitest_1 = require("vitest");
10
10
  const testing_1 = require("@nx/devkit/testing");
11
+ const devkit_1 = require("@nx/devkit");
11
12
  const ts_solution_setup_1 = tslib_1.__importDefault(require("@nx/js/src/utils/typescript/ts-solution-setup"));
12
13
  const createTreeUsingTsSolutionSetup = () => {
13
14
  vitest_1.vi.spyOn(ts_solution_setup_1.default, 'isUsingTsSolutionSetup').mockImplementation(() => true);
@@ -16,4 +17,18 @@ const createTreeUsingTsSolutionSetup = () => {
16
17
  return tree;
17
18
  };
18
19
  exports.createTreeUsingTsSolutionSetup = createTreeUsingTsSolutionSetup;
20
+ /**
21
+ * Snapshot all files within a directory in the given tree
22
+ */
23
+ const snapshotTreeDir = (tree, dir) => {
24
+ if (tree.isFile(dir)) {
25
+ (0, vitest_1.expect)(tree.read(dir, 'utf-8')).toMatchSnapshot(dir);
26
+ }
27
+ else {
28
+ tree
29
+ .children(dir)
30
+ .forEach((subDir) => (0, exports.snapshotTreeDir)(tree, (0, devkit_1.joinPathFragments)(dir, subDir)));
31
+ }
32
+ };
33
+ exports.snapshotTreeDir = snapshotTreeDir;
19
34
  //# sourceMappingURL=test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"test.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/test.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,mCAA4B;AAC5B,gDAAkE;AAElE,8GAA0E;AAEnE,MAAM,8BAA8B,GAAG,GAAS,EAAE;IACvD,WAAE,CAAC,KAAK,CAAC,2BAAa,EAAE,wBAAwB,CAAC,CAAC,kBAAkB,CAClE,GAAG,EAAE,CAAC,IAAI,CACX,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,sCAA4B,GAAE,CAAC;IAE5C,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AATW,QAAA,8BAA8B,kCASzC"}
1
+ {"version":3,"file":"test.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/test.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,mCAAoC;AACpC,gDAAkE;AAClE,uCAAqD;AACrD,8GAA0E;AAEnE,MAAM,8BAA8B,GAAG,GAAS,EAAE;IACvD,WAAE,CAAC,KAAK,CAAC,2BAAa,EAAE,wBAAwB,CAAC,CAAC,kBAAkB,CAClE,GAAG,EAAE,CAAC,IAAI,CACX,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,sCAA4B,GAAE,CAAC;IAE5C,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AATW,QAAA,8BAA8B,kCASzC;AAEF;;GAEG;AACI,MAAM,eAAe,GAAG,CAAC,IAAU,EAAE,GAAW,EAAE,EAAE;IACzD,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IACvD,CAAC;SAAM,CAAC;QACN,IAAI;aACD,QAAQ,CAAC,GAAG,CAAC;aACb,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAClB,IAAA,uBAAe,EAAC,IAAI,EAAE,IAAA,0BAAiB,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CACtD,CAAC;IACN,CAAC;AACH,CAAC,CAAC;AAVW,QAAA,eAAe,mBAU1B"}
@@ -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 { Tree } from '@nx/devkit';
6
+ import TOML from '@iarna/toml';
7
+ /**
8
+ * Update a toml file
9
+ */
10
+ export declare const updateToml: (tree: Tree, filePath: string, updater: (prev: TOML.JsonMap) => TOML.JsonMap) => void;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateToml = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const toml_1 = tslib_1.__importDefault(require("@iarna/toml"));
6
+ /**
7
+ * Update a toml file
8
+ */
9
+ const updateToml = (tree, filePath, updater) => {
10
+ if (!tree.exists(filePath)) {
11
+ throw new Error(`Cannot update toml file ${filePath} as it does not exist`);
12
+ }
13
+ const prev = toml_1.default.parse(tree.read(filePath, 'utf-8'));
14
+ tree.write(filePath, toml_1.default.stringify(updater(prev)));
15
+ };
16
+ exports.updateToml = updateToml;
17
+ //# sourceMappingURL=toml.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toml.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/toml.ts"],"names":[],"mappings":";;;;AAKA,+DAA+B;AAE/B;;GAEG;AACI,MAAM,UAAU,GAAG,CACxB,IAAU,EACV,QAAgB,EAChB,OAA6C,EAC7C,EAAE;IACF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,uBAAuB,CAAC,CAAC;IAC9E,CAAC;IACD,MAAM,IAAI,GAAG,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IACtD,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACtD,CAAC,CAAC;AAVW,QAAA,UAAU,cAUrB"}
@@ -6,10 +6,13 @@ export declare const VERSIONS: {
6
6
  readonly '@cdklabs/cdk-validator-cfnguard': "^0.0.60";
7
7
  readonly '@aws-cdk/aws-cognito-identitypool-alpha': "^2.166.0-alpha.0";
8
8
  readonly '@aws-sdk/client-cognito-identity': "^3.721.0";
9
+ readonly '@aws-sdk/credential-providers': "^3.721.0";
9
10
  readonly '@aws-sdk/credential-provider-cognito-identity': "^3.721.0";
10
11
  readonly '@aws-lambda-powertools/logger': "^2.11.0";
11
12
  readonly '@aws-lambda-powertools/metrics': "^2.11.0";
12
13
  readonly '@aws-lambda-powertools/tracer': "^2.11.0";
14
+ readonly '@tanstack/react-router': "^1.99.7";
15
+ readonly '@tanstack/router-plugin': "^1.99.7";
13
16
  readonly '@cloudscape-design/board-components': "^3.0.84";
14
17
  readonly '@cloudscape-design/components': "^3.0.823";
15
18
  readonly '@cloudscape-design/global-styles': "^1.0.34";
@@ -18,18 +21,18 @@ export declare const VERSIONS: {
18
21
  readonly '@trpc/client': "11.0.0-rc.700";
19
22
  readonly '@trpc/server': "11.0.0-rc.700";
20
23
  readonly '@types/aws-lambda': "^8.10.145";
24
+ readonly '@smithy/types': "^4.1.0";
21
25
  readonly aws4fetch: "^1.0.20";
22
26
  readonly 'aws-cdk': "^2.166.0";
23
27
  readonly 'aws-cdk-lib': "^2.166.0";
24
28
  readonly 'aws-xray-sdk-core': "^3.10.2";
25
- readonly 'cdk-app-cli': "^0.0.427";
26
29
  readonly constructs: "^10.4.2";
27
30
  readonly esbuild: "^0.24.0";
28
31
  readonly 'eslint-plugin-prettier': "^5.2.2";
32
+ readonly 'jsonc-eslint-parser': "^2.4.0";
29
33
  readonly 'oidc-client-ts': "^3.1.0";
30
34
  readonly prettier: "^3.4.2";
31
35
  readonly 'react-oidc-context': "^3.2.0";
32
- readonly 'react-router-dom': "^7.1.1";
33
36
  readonly 'source-map-support': "^0.5.21";
34
37
  readonly tsx: "^4.19.2";
35
38
  readonly zod: "^3.23.8";
@@ -38,5 +41,5 @@ export declare const VERSIONS: {
38
41
  * Add versions to the given dependencies
39
42
  */
40
43
  export declare const withVersions: (deps: (keyof typeof VERSIONS)[]) => {
41
- [k: string]: "^0.0.60" | "^2.166.0-alpha.0" | "^3.721.0" | "^2.11.0" | "^3.0.84" | "^3.0.823" | "^1.0.34" | "^5.59.20" | "11.0.0-rc.700" | "^8.10.145" | "^1.0.20" | "^2.166.0" | "^3.10.2" | "^0.0.427" | "^10.4.2" | "^0.24.0" | "^5.2.2" | "^3.1.0" | "^3.4.2" | "^3.2.0" | "^7.1.1" | "^0.5.21" | "^4.19.2" | "^3.23.8";
44
+ [k: string]: "^0.0.60" | "^2.166.0-alpha.0" | "^3.721.0" | "^2.11.0" | "^1.99.7" | "^3.0.84" | "^3.0.823" | "^1.0.34" | "^5.59.20" | "11.0.0-rc.700" | "^8.10.145" | "^4.1.0" | "^1.0.20" | "^2.166.0" | "^3.10.2" | "^10.4.2" | "^0.24.0" | "^5.2.2" | "^2.4.0" | "^3.1.0" | "^3.4.2" | "^3.2.0" | "^0.5.21" | "^4.19.2" | "^3.23.8";
42
45
  };
@@ -9,10 +9,13 @@ exports.VERSIONS = {
9
9
  '@cdklabs/cdk-validator-cfnguard': '^0.0.60',
10
10
  '@aws-cdk/aws-cognito-identitypool-alpha': '^2.166.0-alpha.0',
11
11
  '@aws-sdk/client-cognito-identity': '^3.721.0',
12
+ '@aws-sdk/credential-providers': '^3.721.0',
12
13
  '@aws-sdk/credential-provider-cognito-identity': '^3.721.0',
13
14
  '@aws-lambda-powertools/logger': '^2.11.0',
14
15
  '@aws-lambda-powertools/metrics': '^2.11.0',
15
16
  '@aws-lambda-powertools/tracer': '^2.11.0',
17
+ '@tanstack/react-router': '^1.99.7',
18
+ '@tanstack/router-plugin': '^1.99.7',
16
19
  '@cloudscape-design/board-components': '^3.0.84',
17
20
  '@cloudscape-design/components': '^3.0.823',
18
21
  '@cloudscape-design/global-styles': '^1.0.34',
@@ -21,18 +24,18 @@ exports.VERSIONS = {
21
24
  '@trpc/client': '11.0.0-rc.700',
22
25
  '@trpc/server': '11.0.0-rc.700',
23
26
  '@types/aws-lambda': '^8.10.145',
27
+ '@smithy/types': '^4.1.0',
24
28
  aws4fetch: '^1.0.20',
25
29
  'aws-cdk': '^2.166.0',
26
30
  'aws-cdk-lib': '^2.166.0',
27
31
  'aws-xray-sdk-core': '^3.10.2',
28
- 'cdk-app-cli': '^0.0.427',
29
32
  constructs: '^10.4.2',
30
33
  esbuild: '^0.24.0',
31
34
  'eslint-plugin-prettier': '^5.2.2',
35
+ 'jsonc-eslint-parser': '^2.4.0',
32
36
  'oidc-client-ts': '^3.1.0',
33
37
  prettier: '^3.4.2',
34
38
  'react-oidc-context': '^3.2.0',
35
- 'react-router-dom': '^7.1.1',
36
39
  'source-map-support': '^0.5.21',
37
40
  tsx: '^4.19.2',
38
41
  zod: '^3.23.8',
@@ -1 +1 @@
1
- {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/versions.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACU,QAAA,QAAQ,GAAG;IACtB,iCAAiC,EAAE,SAAS;IAC5C,yCAAyC,EAAE,kBAAkB;IAC7D,kCAAkC,EAAE,UAAU;IAC9C,+CAA+C,EAAE,UAAU;IAC3D,+BAA+B,EAAE,SAAS;IAC1C,gCAAgC,EAAE,SAAS;IAC3C,+BAA+B,EAAE,SAAS;IAC1C,qCAAqC,EAAE,SAAS;IAChD,+BAA+B,EAAE,UAAU;IAC3C,kCAAkC,EAAE,SAAS;IAC7C,uBAAuB,EAAE,UAAU;IACnC,mBAAmB,EAAE,eAAe;IACpC,cAAc,EAAE,eAAe;IAC/B,cAAc,EAAE,eAAe;IAC/B,mBAAmB,EAAE,WAAW;IAChC,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,UAAU;IACrB,aAAa,EAAE,UAAU;IACzB,mBAAmB,EAAE,SAAS;IAC9B,aAAa,EAAE,UAAU;IACzB,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,SAAS;IAClB,wBAAwB,EAAE,QAAQ;IAClC,gBAAgB,EAAE,QAAQ;IAC1B,QAAQ,EAAE,QAAQ;IAClB,oBAAoB,EAAE,QAAQ;IAC9B,kBAAkB,EAAE,QAAQ;IAC5B,oBAAoB,EAAE,SAAS;IAC/B,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;CACN,CAAC;AACX;;GAEG;AACI,MAAM,YAAY,GAAG,CAAC,IAA+B,EAAE,EAAE,CAC9D,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,gBAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AADjD,QAAA,YAAY,gBACqC"}
1
+ {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/versions.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACU,QAAA,QAAQ,GAAG;IACtB,iCAAiC,EAAE,SAAS;IAC5C,yCAAyC,EAAE,kBAAkB;IAC7D,kCAAkC,EAAE,UAAU;IAC9C,+BAA+B,EAAE,UAAU;IAC3C,+CAA+C,EAAE,UAAU;IAC3D,+BAA+B,EAAE,SAAS;IAC1C,gCAAgC,EAAE,SAAS;IAC3C,+BAA+B,EAAE,SAAS;IAC1C,wBAAwB,EAAE,SAAS;IACnC,yBAAyB,EAAE,SAAS;IACpC,qCAAqC,EAAE,SAAS;IAChD,+BAA+B,EAAE,UAAU;IAC3C,kCAAkC,EAAE,SAAS;IAC7C,uBAAuB,EAAE,UAAU;IACnC,mBAAmB,EAAE,eAAe;IACpC,cAAc,EAAE,eAAe;IAC/B,cAAc,EAAE,eAAe;IAC/B,mBAAmB,EAAE,WAAW;IAChC,eAAe,EAAE,QAAQ;IACzB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,UAAU;IACrB,aAAa,EAAE,UAAU;IACzB,mBAAmB,EAAE,SAAS;IAC9B,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,SAAS;IAClB,wBAAwB,EAAE,QAAQ;IAClC,qBAAqB,EAAE,QAAQ;IAC/B,gBAAgB,EAAE,QAAQ;IAC1B,QAAQ,EAAE,QAAQ;IAClB,oBAAoB,EAAE,QAAQ;IAC9B,oBAAoB,EAAE,SAAS;IAC/B,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;CACN,CAAC;AACX;;GAEG;AACI,MAAM,YAAY,GAAG,CAAC,IAA+B,EAAE,EAAE,CAC9D,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,gBAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AADjD,QAAA,YAAY,gBACqC"}
@@ -1,16 +0,0 @@
1
- import * as React from 'react';
2
- import { Route, Routes as ReactRoutes } from 'react-router-dom';
3
- import Home from '../../pages/Home';
4
-
5
- /**
6
- * Defines the Routes.
7
- */
8
- const Routes: React.FC = () => {
9
- return (
10
- <ReactRoutes>
11
- <Route key={0} path="/" element={<Home />} />
12
- </ReactRoutes>
13
- );
14
- };
15
-
16
- export default Routes;
@@ -1,23 +0,0 @@
1
- import {
2
- Container,
3
- ContentLayout,
4
- Header,
5
- SpaceBetween,
6
- } from "@cloudscape-design/components";
7
-
8
- /**
9
- * Component to render the home "/" route.
10
- */
11
- const Home: React.FC = () => {
12
- return (
13
- <ContentLayout header={<Header>Home</Header>}>
14
- <SpaceBetween size="l">
15
- <Container>
16
- Hello World!
17
- </Container>
18
- </SpaceBetween>
19
- </ContentLayout>
20
- );
21
- };
22
-
23
- export default Home;
@@ -1 +0,0 @@
1
- export * from './router.js';
@@ -1,146 +0,0 @@
1
- import { Logger } from '@aws-lambda-powertools/logger';
2
- import { Metrics, MetricUnit } from '@aws-lambda-powertools/metrics';
3
- import { Tracer } from '@aws-lambda-powertools/tracer';
4
- import { initTRPC, TRPCError } from '@trpc/server';
5
- import { Context as APIGWContext } from 'aws-lambda';
6
- import { Subsegment } from 'aws-xray-sdk-core';
7
-
8
- export type IMiddlewareContext = ILoggerContext &
9
- IMetricsContext &
10
- ITracerContext;
11
-
12
- interface ILoggerContext extends APIGWContext {
13
- logger: Logger;
14
- }
15
-
16
- interface IMetricsContext extends APIGWContext {
17
- metrics: Metrics;
18
- }
19
-
20
- interface ITracerContext extends APIGWContext {
21
- tracer: Tracer;
22
- }
23
-
24
- export const createLoggerPlugin = () => {
25
- const t = initTRPC.context<ILoggerContext>().create();
26
- return {
27
- loggerPlugin: t.procedure.use(async (opts) => {
28
- const logger = new Logger();
29
-
30
- const response = await opts.next({
31
- ctx: {
32
- ...opts.ctx,
33
- logger,
34
- },
35
- });
36
-
37
- if (!response.ok) {
38
- logger.error('Unexpected error occured', response.error.cause ?? '');
39
- }
40
-
41
- return response;
42
- }),
43
- };
44
- };
45
-
46
- export const createMetricsPlugin = () => {
47
- const t = initTRPC.context<IMetricsContext>().create();
48
-
49
- return {
50
- metricsPlugin: t.procedure.use(async (opts) => {
51
- const metrics = new Metrics();
52
- metrics.captureColdStartMetric();
53
-
54
- metrics.addMetric('requestCount', MetricUnit.Count, 1);
55
-
56
- try {
57
- const response = await opts.next({
58
- ctx: {
59
- ...opts.ctx,
60
- metrics,
61
- },
62
- });
63
-
64
- if (!response.ok) {
65
- metrics.addMetric('errorCount', MetricUnit.Count, 1);
66
- } else {
67
- metrics.addMetric('successCount', MetricUnit.Count, 1);
68
- }
69
-
70
- return response;
71
- } finally {
72
- metrics.publishStoredMetrics();
73
- }
74
- }),
75
- };
76
- };
77
-
78
- export const createTracerPlugin = () => {
79
- const t = initTRPC.context<ITracerContext>().create();
80
-
81
- return {
82
- tracerPlugin: t.procedure.use(async (opts) => {
83
- const tracer = new Tracer();
84
- const segment = tracer.getSegment();
85
- let handlerSegment: Subsegment | undefined;
86
-
87
- if (segment) {
88
- handlerSegment = segment.addNewSubsegment(`## ${opts.path}`);
89
- tracer.setSegment(handlerSegment);
90
- }
91
-
92
- tracer.annotateColdStart();
93
- tracer.addServiceNameAnnotation();
94
-
95
- try {
96
- const response = await opts.next({
97
- ctx: {
98
- ...opts.ctx,
99
- tracer,
100
- },
101
- });
102
-
103
- if (!response.ok && response.error.cause instanceof Error) {
104
- tracer.addErrorAsMetadata(response.error.cause);
105
- }
106
- return response;
107
- } finally {
108
- if (segment && handlerSegment) {
109
- handlerSegment.close();
110
- tracer.setSegment(segment);
111
- }
112
- }
113
- }),
114
- };
115
- };
116
-
117
- export const createErrorPlugin = () => {
118
- const t = initTRPC.context().create();
119
- return {
120
- errorPlugin: t.procedure.use(async (opts) => {
121
- const response = await opts.next({
122
- ctx: {
123
- ...opts.ctx,
124
- },
125
- });
126
-
127
- if (!response.ok) {
128
- let trpcError: TRPCError;
129
-
130
- if (response.error.cause instanceof TRPCError) {
131
- trpcError = response.error.cause;
132
- } else {
133
- trpcError = new TRPCError({
134
- code: 'INTERNAL_SERVER_ERROR',
135
- message: 'An unexpected error occurred, please try again later.',
136
- cause: response.error.cause,
137
- });
138
- }
139
-
140
- throw trpcError;
141
- } else {
142
- return response;
143
- }
144
- }),
145
- };
146
- };
@@ -1,36 +0,0 @@
1
- import { initTRPC } from '@trpc/server';
2
- import {
3
- awsLambdaRequestHandler,
4
- } from '@trpc/server/adapters/aws-lambda';
5
- import { EchoSchema } from '<%= schemaProjectAlias %>';
6
- import {
7
- createErrorPlugin,
8
- createLoggerPlugin,
9
- createMetricsPlugin,
10
- createTracerPlugin,
11
- IMiddlewareContext,
12
- } from './middleware.js';
13
- import { z } from 'zod';
14
-
15
- export type Context = IMiddlewareContext;
16
-
17
- const t = initTRPC.context<Context>().create();
18
- export const router = t.router;
19
- export const publicProcedure = t.procedure
20
- .unstable_concat(createLoggerPlugin().loggerPlugin)
21
- .unstable_concat(createTracerPlugin().tracerPlugin)
22
- .unstable_concat(createMetricsPlugin().metricsPlugin)
23
- .unstable_concat(createErrorPlugin().errorPlugin);
24
-
25
- const appRouter = router({
26
- echo: publicProcedure
27
- .input(z.string())
28
- .output(EchoSchema)
29
- .query((opts) => ({ result: opts.input })),
30
- });
31
-
32
- export const handler = awsLambdaRequestHandler({
33
- router: appRouter
34
- });
35
-
36
- export type AppRouter = typeof appRouter;