@aws/nx-plugin 0.68.1 → 0.69.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 (53) hide show
  1. package/LICENSE-THIRD-PARTY +19 -195
  2. package/package.json +7 -7
  3. package/src/infra/app/__snapshots__/generator.spec.ts.snap +15 -15
  4. package/src/preset/__snapshots__/generator.spec.ts.snap +2 -2
  5. package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +1 -1
  6. package/src/py/strands-agent/__snapshots__/generator.spec.ts.snap +2 -2
  7. package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +1 -1
  8. package/src/ts/nx-plugin/__snapshots__/generator.spec.ts.snap +1 -1
  9. package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +195 -311
  10. package/src/ts/react-website/app/files/app/shadcn/src/app.tsx.template +12 -0
  11. package/src/ts/react-website/app/files/app/shadcn/src/components/AppLayout/index.tsx.template +116 -0
  12. package/src/ts/react-website/app/files/app/shadcn/src/components/alert.tsx.template +30 -0
  13. package/src/ts/react-website/app/files/app/shadcn/src/components/spinner.tsx.template +3 -0
  14. package/src/ts/react-website/app/files/app/shadcn/src/main.tsx.template +32 -0
  15. package/src/ts/react-website/app/files/app/shadcn/src/styles.css.template +2 -0
  16. package/src/ts/react-website/app/files/tanstack-router/shadcn/src/components/app-sidebar.tsx.template +49 -0
  17. package/src/ts/react-website/app/files/tanstack-router/shadcn/src/routes/index.tsx.template +16 -0
  18. package/src/ts/react-website/app/generator.d.ts +3 -2
  19. package/src/ts/react-website/app/generator.js +41 -11
  20. package/src/ts/react-website/app/generator.js.map +1 -1
  21. package/src/ts/react-website/app/schema.d.ts +1 -1
  22. package/src/ts/react-website/app/schema.json +6 -2
  23. package/src/ts/react-website/cognito-auth/generator.js +12 -8
  24. package/src/ts/react-website/cognito-auth/generator.js.map +1 -1
  25. package/src/ts/react-website/cognito-auth/utils.d.ts +1 -0
  26. package/src/ts/react-website/cognito-auth/utils.js +113 -1
  27. package/src/ts/react-website/cognito-auth/utils.js.map +1 -1
  28. package/src/utils/files/common/shadcn/readme/README.md.template +32 -0
  29. package/src/utils/files/common/shadcn/src/components/ui/alert.tsx.template +66 -0
  30. package/src/utils/files/common/shadcn/src/components/ui/breadcrumb.tsx.template +109 -0
  31. package/src/utils/files/common/shadcn/src/components/ui/button.tsx.template +62 -0
  32. package/src/utils/files/common/shadcn/src/components/ui/card.tsx.template +92 -0
  33. package/src/utils/files/common/shadcn/src/components/ui/input.tsx.template +21 -0
  34. package/src/utils/files/common/shadcn/src/components/ui/separator.tsx.template +28 -0
  35. package/src/utils/files/common/shadcn/src/components/ui/sheet.tsx.template +139 -0
  36. package/src/utils/files/common/shadcn/src/components/ui/sidebar.tsx.template +726 -0
  37. package/src/utils/files/common/shadcn/src/components/ui/skeleton.tsx.template +13 -0
  38. package/src/utils/files/common/shadcn/src/components/ui/spinner.tsx.template +16 -0
  39. package/src/utils/files/common/shadcn/src/components/ui/tooltip.tsx.template +61 -0
  40. package/src/utils/files/common/shadcn/src/hooks/use-mobile.ts.template +19 -0
  41. package/src/utils/files/common/shadcn/src/index.ts.template +2 -0
  42. package/src/utils/files/common/shadcn/src/lib/utils.ts.template +6 -0
  43. package/src/utils/files/common/shadcn/src/styles/globals.css.template +125 -0
  44. package/src/utils/files/shadcn/components.json.template +20 -0
  45. package/src/utils/shared-constructs-constants.d.ts +2 -0
  46. package/src/utils/shared-constructs-constants.js +3 -1
  47. package/src/utils/shared-constructs-constants.js.map +1 -1
  48. package/src/utils/shared-shadcn.d.ts +6 -0
  49. package/src/utils/shared-shadcn.js +123 -0
  50. package/src/utils/shared-shadcn.js.map +1 -0
  51. package/src/utils/versions.d.ts +38 -26
  52. package/src/utils/versions.js +37 -25
  53. package/src/utils/versions.js.map +1 -1
@@ -0,0 +1,13 @@
1
+ import { cn } from "<%= scopeAlias %>common-shadcn/lib/utils"
2
+
3
+ function Skeleton({ className, ...props }: React.ComponentProps<"div">) {
4
+ return (
5
+ <div
6
+ data-slot="skeleton"
7
+ className={cn("bg-accent animate-pulse rounded-md", className)}
8
+ {...props}
9
+ />
10
+ )
11
+ }
12
+
13
+ export { Skeleton }
@@ -0,0 +1,16 @@
1
+ import { Loader2Icon } from "lucide-react"
2
+
3
+ import { cn } from "<%= scopeAlias %>common-shadcn/lib/utils"
4
+
5
+ function Spinner({ className, ...props }: React.ComponentProps<"svg">) {
6
+ return (
7
+ <Loader2Icon
8
+ role="status"
9
+ aria-label="Loading"
10
+ className={cn("size-4 animate-spin", className)}
11
+ {...props}
12
+ />
13
+ )
14
+ }
15
+
16
+ export { Spinner }
@@ -0,0 +1,61 @@
1
+ "use client"
2
+
3
+ import * as React from "react"
4
+ import * as TooltipPrimitive from "@radix-ui/react-tooltip"
5
+
6
+ import { cn } from "<%= scopeAlias %>common-shadcn/lib/utils"
7
+
8
+ function TooltipProvider({
9
+ delayDuration = 0,
10
+ ...props
11
+ }: React.ComponentProps<typeof TooltipPrimitive.Provider>) {
12
+ return (
13
+ <TooltipPrimitive.Provider
14
+ data-slot="tooltip-provider"
15
+ delayDuration={delayDuration}
16
+ {...props}
17
+ />
18
+ )
19
+ }
20
+
21
+ function Tooltip({
22
+ ...props
23
+ }: React.ComponentProps<typeof TooltipPrimitive.Root>) {
24
+ return (
25
+ <TooltipProvider>
26
+ <TooltipPrimitive.Root data-slot="tooltip" {...props} />
27
+ </TooltipProvider>
28
+ )
29
+ }
30
+
31
+ function TooltipTrigger({
32
+ ...props
33
+ }: React.ComponentProps<typeof TooltipPrimitive.Trigger>) {
34
+ return <TooltipPrimitive.Trigger data-slot="tooltip-trigger" {...props} />
35
+ }
36
+
37
+ function TooltipContent({
38
+ className,
39
+ sideOffset = 0,
40
+ children,
41
+ ...props
42
+ }: React.ComponentProps<typeof TooltipPrimitive.Content>) {
43
+ return (
44
+ <TooltipPrimitive.Portal>
45
+ <TooltipPrimitive.Content
46
+ data-slot="tooltip-content"
47
+ sideOffset={sideOffset}
48
+ className={cn(
49
+ "bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",
50
+ className
51
+ )}
52
+ {...props}
53
+ >
54
+ {children}
55
+ <TooltipPrimitive.Arrow className="bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" />
56
+ </TooltipPrimitive.Content>
57
+ </TooltipPrimitive.Portal>
58
+ )
59
+ }
60
+
61
+ export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider }
@@ -0,0 +1,19 @@
1
+ import * as React from "react"
2
+
3
+ const MOBILE_BREAKPOINT = 768
4
+
5
+ export function useIsMobile() {
6
+ const [isMobile, setIsMobile] = React.useState<boolean | undefined>(undefined)
7
+
8
+ React.useEffect(() => {
9
+ const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`)
10
+ const onChange = () => {
11
+ setIsMobile(window.innerWidth < MOBILE_BREAKPOINT)
12
+ }
13
+ mql.addEventListener("change", onChange)
14
+ setIsMobile(window.innerWidth < MOBILE_BREAKPOINT)
15
+ return () => mql.removeEventListener("change", onChange)
16
+ }, [])
17
+
18
+ return !!isMobile
19
+ }
@@ -0,0 +1,2 @@
1
+ export * from './lib/utils.js';
2
+ export * from './hooks/use-mobile.js';
@@ -0,0 +1,6 @@
1
+ import { clsx, type ClassValue } from 'clsx';
2
+ import { twMerge } from 'tailwind-merge';
3
+
4
+ export function cn(...inputs: ClassValue[]) {
5
+ return twMerge(clsx(inputs));
6
+ }
@@ -0,0 +1,125 @@
1
+ @import 'tailwindcss';
2
+ @source '../**/*.{ts,tsx}';
3
+
4
+ @import 'tw-animate-css';
5
+
6
+ @custom-variant dark (&:is(.dark *));
7
+
8
+ :root {
9
+ --background: oklch(1 0 0);
10
+ --foreground: oklch(0.145 0 0);
11
+ --card: oklch(1 0 0);
12
+ --card-foreground: oklch(0.145 0 0);
13
+ --popover: oklch(1 0 0);
14
+ --popover-foreground: oklch(0.145 0 0);
15
+ --primary: oklch(0.205 0 0);
16
+ --primary-foreground: oklch(0.985 0 0);
17
+ --secondary: oklch(0.97 0 0);
18
+ --secondary-foreground: oklch(0.205 0 0);
19
+ --muted: oklch(0.97 0 0);
20
+ --muted-foreground: oklch(0.556 0 0);
21
+ --accent: oklch(0.97 0 0);
22
+ --accent-foreground: oklch(0.205 0 0);
23
+ --destructive: oklch(0.577 0.245 27.325);
24
+ --destructive-foreground: oklch(0.577 0.245 27.325);
25
+ --border: oklch(0.922 0 0);
26
+ --input: oklch(0.922 0 0);
27
+ --ring: oklch(0.708 0 0);
28
+ --chart-1: oklch(0.646 0.222 41.116);
29
+ --chart-2: oklch(0.6 0.118 184.704);
30
+ --chart-3: oklch(0.398 0.07 227.392);
31
+ --chart-4: oklch(0.828 0.189 84.429);
32
+ --chart-5: oklch(0.769 0.188 70.08);
33
+ --radius: 0.625rem;
34
+ --sidebar: oklch(0.985 0 0);
35
+ --sidebar-foreground: oklch(0.145 0 0);
36
+ --sidebar-primary: oklch(0.205 0 0);
37
+ --sidebar-primary-foreground: oklch(0.985 0 0);
38
+ --sidebar-accent: oklch(0.97 0 0);
39
+ --sidebar-accent-foreground: oklch(0.205 0 0);
40
+ --sidebar-border: oklch(0.922 0 0);
41
+ --sidebar-ring: oklch(0.708 0 0);
42
+ }
43
+
44
+ .dark {
45
+ --background: oklch(0.145 0 0);
46
+ --foreground: oklch(0.985 0 0);
47
+ --card: oklch(0.145 0 0);
48
+ --card-foreground: oklch(0.985 0 0);
49
+ --popover: oklch(0.145 0 0);
50
+ --popover-foreground: oklch(0.985 0 0);
51
+ --primary: oklch(0.985 0 0);
52
+ --primary-foreground: oklch(0.205 0 0);
53
+ --secondary: oklch(0.269 0 0);
54
+ --secondary-foreground: oklch(0.985 0 0);
55
+ --muted: oklch(0.269 0 0);
56
+ --muted-foreground: oklch(0.708 0 0);
57
+ --accent: oklch(0.269 0 0);
58
+ --accent-foreground: oklch(0.985 0 0);
59
+ --destructive: oklch(0.396 0.141 25.723);
60
+ --destructive-foreground: oklch(0.637 0.237 25.331);
61
+ --border: oklch(0.269 0 0);
62
+ --input: oklch(0.269 0 0);
63
+ --ring: oklch(0.556 0 0);
64
+ --chart-1: oklch(0.488 0.243 264.376);
65
+ --chart-2: oklch(0.696 0.17 162.48);
66
+ --chart-3: oklch(0.769 0.188 70.08);
67
+ --chart-4: oklch(0.627 0.265 303.9);
68
+ --chart-5: oklch(0.645 0.246 16.439);
69
+ --sidebar: oklch(0.205 0 0);
70
+ --sidebar-foreground: oklch(0.985 0 0);
71
+ --sidebar-primary: oklch(0.488 0.243 264.376);
72
+ --sidebar-primary-foreground: oklch(0.985 0 0);
73
+ --sidebar-accent: oklch(0.269 0 0);
74
+ --sidebar-accent-foreground: oklch(0.985 0 0);
75
+ --sidebar-border: oklch(0.269 0 0);
76
+ --sidebar-ring: oklch(0.439 0 0);
77
+ }
78
+
79
+ @theme inline {
80
+ --color-background: var(--background);
81
+ --color-foreground: var(--foreground);
82
+ --color-card: var(--card);
83
+ --color-card-foreground: var(--card-foreground);
84
+ --color-popover: var(--popover);
85
+ --color-popover-foreground: var(--popover-foreground);
86
+ --color-primary: var(--primary);
87
+ --color-primary-foreground: var(--primary-foreground);
88
+ --color-secondary: var(--secondary);
89
+ --color-secondary-foreground: var(--secondary-foreground);
90
+ --color-muted: var(--muted);
91
+ --color-muted-foreground: var(--muted-foreground);
92
+ --color-accent: var(--accent);
93
+ --color-accent-foreground: var(--accent-foreground);
94
+ --color-destructive: var(--destructive);
95
+ --color-destructive-foreground: var(--destructive-foreground);
96
+ --color-border: var(--border);
97
+ --color-input: var(--input);
98
+ --color-ring: var(--ring);
99
+ --color-chart-1: var(--chart-1);
100
+ --color-chart-2: var(--chart-2);
101
+ --color-chart-3: var(--chart-3);
102
+ --color-chart-4: var(--chart-4);
103
+ --color-chart-5: var(--chart-5);
104
+ --radius-sm: calc(var(--radius) - 4px);
105
+ --radius-md: calc(var(--radius) - 2px);
106
+ --radius-lg: var(--radius);
107
+ --radius-xl: calc(var(--radius) + 4px);
108
+ --color-sidebar: var(--sidebar);
109
+ --color-sidebar-foreground: var(--sidebar-foreground);
110
+ --color-sidebar-primary: var(--sidebar-primary);
111
+ --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
112
+ --color-sidebar-accent: var(--sidebar-accent);
113
+ --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
114
+ --color-sidebar-border: var(--sidebar-border);
115
+ --color-sidebar-ring: var(--sidebar-ring);
116
+ }
117
+
118
+ @layer base {
119
+ * {
120
+ @apply border-border outline-ring/50;
121
+ }
122
+ body {
123
+ @apply bg-background text-foreground;
124
+ }
125
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "$schema": "https://ui.shadcn.com/schema.json",
3
+ "style": "new-york",
4
+ "rsc": true,
5
+ "tsx": true,
6
+ "tailwind": {
7
+ "config": "",
8
+ "css": "packages/common/shadcn/src/styles/globals.css",
9
+ "baseColor": "zinc",
10
+ "cssVariables": true
11
+ },
12
+ "iconLibrary": "lucide",
13
+ "aliases": {
14
+ "components": "<%= sharedShadcnAlias %>/components",
15
+ "utils": "<%= sharedShadcnAlias %>/lib/utils",
16
+ "hooks": "<%= sharedShadcnAlias %>/hooks",
17
+ "lib": "<%= sharedShadcnAlias %>/lib",
18
+ "ui": "<%= sharedShadcnAlias %>/components/ui"
19
+ }
20
+ }
@@ -7,3 +7,5 @@ export declare const SHARED_CONSTRUCTS_NAME = "common-constructs";
7
7
  export declare const SHARED_CONSTRUCTS_DIR = "common/constructs";
8
8
  export declare const SHARED_TERRAFORM_NAME = "terraform";
9
9
  export declare const SHARED_TERRAFORM_DIR = "common/terraform";
10
+ export declare const SHARED_SHADCN_NAME = "common-shadcn";
11
+ export declare const SHARED_SHADCN_DIR = "common/shadcn";
@@ -4,10 +4,12 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.SHARED_TERRAFORM_DIR = exports.SHARED_TERRAFORM_NAME = exports.SHARED_CONSTRUCTS_DIR = exports.SHARED_CONSTRUCTS_NAME = exports.PACKAGES_DIR = void 0;
7
+ exports.SHARED_SHADCN_DIR = exports.SHARED_SHADCN_NAME = exports.SHARED_TERRAFORM_DIR = exports.SHARED_TERRAFORM_NAME = exports.SHARED_CONSTRUCTS_DIR = exports.SHARED_CONSTRUCTS_NAME = exports.PACKAGES_DIR = void 0;
8
8
  exports.PACKAGES_DIR = 'packages';
9
9
  exports.SHARED_CONSTRUCTS_NAME = 'common-constructs';
10
10
  exports.SHARED_CONSTRUCTS_DIR = 'common/constructs';
11
11
  exports.SHARED_TERRAFORM_NAME = 'terraform';
12
12
  exports.SHARED_TERRAFORM_DIR = 'common/terraform';
13
+ exports.SHARED_SHADCN_NAME = 'common-shadcn';
14
+ exports.SHARED_SHADCN_DIR = 'common/shadcn';
13
15
  //# sourceMappingURL=shared-constructs-constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared-constructs-constants.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/shared-constructs-constants.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEU,QAAA,YAAY,GAAG,UAAU,CAAC;AAC1B,QAAA,sBAAsB,GAAG,mBAAmB,CAAC;AAC7C,QAAA,qBAAqB,GAAG,mBAAmB,CAAC;AAC5C,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,oBAAoB,GAAG,kBAAkB,CAAC"}
1
+ {"version":3,"file":"shared-constructs-constants.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/shared-constructs-constants.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEU,QAAA,YAAY,GAAG,UAAU,CAAC;AAC1B,QAAA,sBAAsB,GAAG,mBAAmB,CAAC;AAC7C,QAAA,qBAAqB,GAAG,mBAAmB,CAAC;AAC5C,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,oBAAoB,GAAG,kBAAkB,CAAC;AAC1C,QAAA,kBAAkB,GAAG,eAAe,CAAC;AACrC,QAAA,iBAAiB,GAAG,eAAe,CAAC"}
@@ -0,0 +1,6 @@
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
+ export declare function sharedShadcnGenerator(tree: Tree): Promise<void>;
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sharedShadcnGenerator = sharedShadcnGenerator;
4
+ const tslib_1 = require("tslib");
5
+ /**
6
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
7
+ * SPDX-License-Identifier: Apache-2.0
8
+ */
9
+ const devkit_1 = require("@nx/devkit");
10
+ const typescript_1 = require("typescript");
11
+ const generator_1 = tslib_1.__importDefault(require("../ts/lib/generator"));
12
+ const ts_project_utils_1 = require("../ts/lib/ts-project-utils");
13
+ const format_1 = require("./format");
14
+ const npm_scope_1 = require("./npm-scope");
15
+ const ast_1 = require("./ast");
16
+ const shared_constructs_constants_1 = require("./shared-constructs-constants");
17
+ const versions_1 = require("./versions");
18
+ const SHADCN_DEPS = [
19
+ 'class-variance-authority',
20
+ 'clsx',
21
+ 'tailwind-merge',
22
+ 'lucide-react',
23
+ 'tw-animate-css',
24
+ '@radix-ui/react-label',
25
+ '@radix-ui/react-primitive',
26
+ '@radix-ui/react-slot',
27
+ '@radix-ui/react-separator',
28
+ '@radix-ui/react-dialog',
29
+ '@radix-ui/react-tooltip',
30
+ ];
31
+ const NPMRC_IGNORE_WORKSPACE_ROOT_CHECK = 'ignore-workspace-root-check=true';
32
+ const ensureNpmrcIgnoresWorkspaceRoot = (tree) => {
33
+ const npmrcPath = '.npmrc';
34
+ if (tree.exists(npmrcPath)) {
35
+ const npmrcContent = tree.read(npmrcPath, 'utf-8');
36
+ const alreadyConfigured = npmrcContent
37
+ .split(/\r?\n/)
38
+ .some((line) => line.trim() === NPMRC_IGNORE_WORKSPACE_ROOT_CHECK);
39
+ if (alreadyConfigured) {
40
+ return false;
41
+ }
42
+ const needsTrailingNewline = npmrcContent.length > 0 && !npmrcContent.endsWith('\n');
43
+ tree.write(npmrcPath, `${npmrcContent}${needsTrailingNewline ? '\n' : ''}${NPMRC_IGNORE_WORKSPACE_ROOT_CHECK}\n`);
44
+ return true;
45
+ }
46
+ tree.write(npmrcPath, `${NPMRC_IGNORE_WORKSPACE_ROOT_CHECK}\n`);
47
+ return true;
48
+ };
49
+ const addSharedShadcnEslintRules = (tree, eslintConfigPath) => {
50
+ if (!tree.exists(eslintConfigPath)) {
51
+ return;
52
+ }
53
+ const existingRule = (0, ast_1.query)(tree, eslintConfigPath, 'PropertyAssignment:has(StringLiteral[value="@nx/enforce-module-boundaries"])');
54
+ if (existingRule.length > 0) {
55
+ return;
56
+ }
57
+ // shadcn generates aliased imports from components.json, which conflict with our
58
+ // relative-import lint rule. This rule is therefore disabled for common-shadcn.
59
+ // import { cn } from ':my-app/common-shadcn/lib/utils';
60
+ const ruleConfig = (0, ast_1.jsonToAst)({
61
+ files: ['**/*.{ts,tsx,js,jsx}'],
62
+ rules: {
63
+ '@nx/enforce-module-boundaries': 'off',
64
+ },
65
+ });
66
+ (0, ast_1.replace)(tree, eslintConfigPath, 'ExportAssignment > ArrayLiteralExpression', (node) => typescript_1.factory.createArrayLiteralExpression([...node.elements, ruleConfig], true));
67
+ };
68
+ function sharedShadcnGenerator(tree) {
69
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
70
+ const npmScopePrefix = (0, npm_scope_1.getNpmScopePrefix)(tree);
71
+ const scopeAlias = (0, npm_scope_1.toScopeAlias)(npmScopePrefix);
72
+ const sharedShadcnAlias = `${scopeAlias}${shared_constructs_constants_1.SHARED_SHADCN_NAME}`;
73
+ const fullyQualifiedName = `${npmScopePrefix}${shared_constructs_constants_1.SHARED_SHADCN_NAME}`;
74
+ const libraryRoot = (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_SHADCN_DIR);
75
+ const shadcnSrcRoot = (0, devkit_1.joinPathFragments)(libraryRoot, 'src');
76
+ const eslintConfigPath = (0, devkit_1.joinPathFragments)(libraryRoot, 'eslint.config.mjs');
77
+ ensureNpmrcIgnoresWorkspaceRoot(tree);
78
+ if (!tree.exists((0, devkit_1.joinPathFragments)(libraryRoot, 'project.json'))) {
79
+ yield (0, generator_1.default)(tree, {
80
+ name: shared_constructs_constants_1.SHARED_SHADCN_NAME,
81
+ directory: shared_constructs_constants_1.PACKAGES_DIR,
82
+ subDirectory: shared_constructs_constants_1.SHARED_SHADCN_DIR,
83
+ });
84
+ tree.delete(shadcnSrcRoot);
85
+ (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', shared_constructs_constants_1.SHARED_SHADCN_DIR, 'src'), shadcnSrcRoot, {
86
+ scopeAlias,
87
+ }, {
88
+ overwriteStrategy: devkit_1.OverwriteStrategy.KeepExisting,
89
+ });
90
+ (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', shared_constructs_constants_1.SHARED_SHADCN_DIR, 'readme'), libraryRoot, {
91
+ fullyQualifiedName,
92
+ scopeAlias,
93
+ }, {
94
+ overwriteStrategy: devkit_1.OverwriteStrategy.Overwrite,
95
+ });
96
+ (0, ts_project_utils_1.configureTsProject)(tree, {
97
+ dir: libraryRoot,
98
+ fullyQualifiedName,
99
+ });
100
+ (0, devkit_1.updateJson)(tree, (0, devkit_1.joinPathFragments)(libraryRoot, 'tsconfig.lib.json'), (json) => {
101
+ var _a, _b, _c;
102
+ return (Object.assign(Object.assign({}, json), { compilerOptions: Object.assign(Object.assign({}, json.compilerOptions), { jsx: 'react-jsx', module: 'preserve', moduleResolution: 'bundler', lib: Array.from(new Set([...((_b = (_a = json.compilerOptions) === null || _a === void 0 ? void 0 : _a.lib) !== null && _b !== void 0 ? _b : []), 'DOM'])) }), include: Array.from(new Set([...((_c = json.include) !== null && _c !== void 0 ? _c : []), 'src/**/*.tsx'])) }));
103
+ });
104
+ addSharedShadcnEslintRules(tree, eslintConfigPath);
105
+ (0, devkit_1.addDependenciesToPackageJson)(tree, (0, versions_1.withVersions)([...SHADCN_DEPS]), {});
106
+ }
107
+ (0, devkit_1.updateJson)(tree, 'tsconfig.base.json', (json) => {
108
+ var _a, _b;
109
+ return (Object.assign(Object.assign({}, json), { compilerOptions: Object.assign(Object.assign({}, json.compilerOptions), { paths: Object.assign(Object.assign({}, ((_b = (_a = json.compilerOptions) === null || _a === void 0 ? void 0 : _a.paths) !== null && _b !== void 0 ? _b : {})), { [`${sharedShadcnAlias}/*`]: [
110
+ (0, devkit_1.joinPathFragments)(libraryRoot, 'src', '*'),
111
+ ] }) }) }));
112
+ });
113
+ if (!tree.exists('components.json')) {
114
+ (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', 'shadcn'), '.', {
115
+ sharedShadcnAlias,
116
+ }, {
117
+ overwriteStrategy: devkit_1.OverwriteStrategy.KeepExisting,
118
+ });
119
+ }
120
+ yield (0, format_1.formatFilesInSubtree)(tree);
121
+ });
122
+ }
123
+ //# sourceMappingURL=shared-shadcn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-shadcn.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/shared-shadcn.ts"],"names":[],"mappings":"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"}
@@ -6,10 +6,10 @@
6
6
  * Versons for TypeScript dependencies added by generators
7
7
  */
8
8
  export declare const TS_VERSIONS: {
9
- readonly '@aws-sdk/client-cognito-identity': "3.974.0";
10
- readonly '@aws-sdk/client-dynamodb': "3.974.0";
11
- readonly '@aws-sdk/credential-providers': "3.974.0";
12
- readonly '@aws-sdk/credential-provider-cognito-identity': "3.972.1";
9
+ readonly '@aws-sdk/client-cognito-identity': "3.975.0";
10
+ readonly '@aws-sdk/client-dynamodb': "3.975.0";
11
+ readonly '@aws-sdk/credential-providers': "3.975.0";
12
+ readonly '@aws-sdk/credential-provider-cognito-identity': "3.972.2";
13
13
  readonly '@aws-smithy/server-apigateway': "1.0.0-alpha.10";
14
14
  readonly '@aws-smithy/server-node': "1.0.0-alpha.10";
15
15
  readonly '@aws-lambda-powertools/logger': "2.30.2";
@@ -19,21 +19,21 @@ export declare const TS_VERSIONS: {
19
19
  readonly '@middy/core': "6.4.5";
20
20
  readonly '@nxlv/python': "21.3.1";
21
21
  readonly '@nx-extend/terraform': "9.0.1";
22
- readonly '@nx/devkit': "22.4.1";
23
- readonly '@nx/react': "22.4.1";
24
- readonly 'create-nx-workspace': "22.4.1";
22
+ readonly '@nx/devkit': "22.4.2";
23
+ readonly '@nx/react': "22.4.2";
24
+ readonly 'create-nx-workspace': "22.4.2";
25
25
  readonly '@modelcontextprotocol/sdk': "1.25.3";
26
- readonly '@modelcontextprotocol/inspector': "0.18.0";
26
+ readonly '@modelcontextprotocol/inspector': "0.19.0";
27
27
  readonly '@strands-agents/sdk': "0.2.0";
28
- readonly '@tanstack/react-router': "1.154.12";
29
- readonly '@tanstack/router-plugin': "1.154.12";
30
- readonly '@tanstack/router-generator': "1.154.12";
28
+ readonly '@tanstack/react-router': "1.157.16";
29
+ readonly '@tanstack/router-plugin': "1.157.16";
30
+ readonly '@tanstack/router-generator': "1.157.16";
31
31
  readonly '@tanstack/virtual-file-routes': "1.154.7";
32
32
  readonly '@tanstack/router-utils': "1.154.7";
33
- readonly '@cloudscape-design/board-components': "3.0.143";
34
- readonly '@cloudscape-design/components': "3.0.1181";
35
- readonly '@cloudscape-design/global-styles': "1.0.49";
36
- readonly '@tanstack/react-query': "5.90.19";
33
+ readonly '@cloudscape-design/board-components': "3.0.145";
34
+ readonly '@cloudscape-design/components': "3.0.1184";
35
+ readonly '@cloudscape-design/global-styles': "1.0.50";
36
+ readonly '@tanstack/react-query': "5.90.20";
37
37
  readonly '@tanstack/react-query-devtools': "5.91.2";
38
38
  readonly '@trpc/tanstack-react-query': "11.8.1";
39
39
  readonly '@trpc/client': "11.8.1";
@@ -45,12 +45,14 @@ export declare const TS_VERSIONS: {
45
45
  readonly '@types/express': "5.0.6";
46
46
  readonly '@smithy/types': "4.12.0";
47
47
  readonly aws4fetch: "1.0.20";
48
- readonly 'aws-cdk': "2.1102.0";
49
- readonly 'aws-cdk-lib': "2.235.1";
50
- readonly '@aws-cdk/aws-bedrock-agentcore-alpha': "2.233.0-alpha.0";
48
+ readonly 'aws-cdk': "2.1103.0";
49
+ readonly 'aws-cdk-lib': "2.236.0";
50
+ readonly '@aws-cdk/aws-bedrock-agentcore-alpha': "2.236.0-alpha.0";
51
51
  readonly 'aws-xray-sdk-core': "3.12.0";
52
52
  readonly constructs: "10.4.5";
53
53
  readonly cors: "2.8.6";
54
+ readonly 'class-variance-authority': "0.7.1";
55
+ readonly clsx: "2.1.1";
54
56
  readonly electrodb: "3.5.3";
55
57
  readonly esbuild: "0.27.2";
56
58
  readonly 'eslint-plugin-prettier': "5.5.5";
@@ -58,18 +60,28 @@ export declare const TS_VERSIONS: {
58
60
  readonly 'jsonc-eslint-parser': "2.4.2";
59
61
  readonly 'make-dir-cli': "4.0.0";
60
62
  readonly ncp: "2.0.0";
61
- readonly 'npm-check-updates': "19.3.1";
63
+ readonly 'npm-check-updates': "19.3.2";
62
64
  readonly 'oidc-client-ts': "3.4.1";
63
65
  readonly prettier: "3.8.1";
64
66
  readonly 'react-oidc-context': "3.3.0";
65
- readonly react: "19.2.3";
66
- readonly 'react-dom': "19.2.3";
67
+ readonly react: "19.2.4";
68
+ readonly 'react-dom': "19.2.4";
67
69
  readonly rimraf: "6.1.2";
68
70
  readonly rolldown: "1.0.0-rc.1";
69
71
  readonly 'source-map-support': "0.5.21";
70
72
  readonly tailwindcss: "4.1.18";
71
73
  readonly '@tailwindcss/vite': "4.1.18";
72
74
  readonly tsx: "4.21.0";
75
+ readonly 'lucide-react': "0.555.0";
76
+ readonly '@radix-ui/react-dialog': "1.1.15";
77
+ readonly '@radix-ui/react-label': "2.1.8";
78
+ readonly '@radix-ui/react-primitive': "2.1.4";
79
+ readonly '@radix-ui/react-slot': "1.2.4";
80
+ readonly '@radix-ui/react-separator': "1.1.8";
81
+ readonly '@radix-ui/react-tooltip': "1.2.8";
82
+ readonly shadcn: "3.6.2";
83
+ readonly 'tw-animate-css': "1.4.0";
84
+ readonly 'tailwind-merge': "3.4.0";
73
85
  readonly 'vite-tsconfig-paths': "5.1.4";
74
86
  readonly zod: "4.3.6";
75
87
  readonly ws: "8.19.0";
@@ -79,7 +91,7 @@ export type ITsDepVersion = keyof typeof TS_VERSIONS;
79
91
  * Add versions to the given dependencies
80
92
  */
81
93
  export declare const withVersions: (deps: ITsDepVersion[]) => {
82
- [k: string]: "3.974.0" | "3.972.1" | "1.0.0-alpha.10" | "2.30.2" | "6.4.5" | "21.3.1" | "9.0.1" | "22.4.1" | "1.25.3" | "0.18.0" | "0.2.0" | "1.154.12" | "1.154.7" | "3.0.143" | "3.0.1181" | "1.0.49" | "5.90.19" | "5.91.2" | "11.8.1" | "22.19.7" | "8.10.160" | "2.8.19" | "8.18.1" | "5.0.6" | "4.12.0" | "1.0.20" | "2.1102.0" | "2.235.1" | "2.233.0-alpha.0" | "3.12.0" | "10.4.5" | "2.8.6" | "3.5.3" | "0.27.2" | "5.5.5" | "5.2.1" | "2.4.2" | "4.0.0" | "2.0.0" | "19.3.1" | "3.4.1" | "3.8.1" | "3.3.0" | "19.2.3" | "6.1.2" | "1.0.0-rc.1" | "0.5.21" | "4.1.18" | "4.21.0" | "5.1.4" | "4.3.6" | "8.19.0";
94
+ [k: string]: "3.975.0" | "3.972.2" | "1.0.0-alpha.10" | "2.30.2" | "6.4.5" | "21.3.1" | "9.0.1" | "22.4.2" | "1.25.3" | "0.19.0" | "0.2.0" | "1.157.16" | "1.154.7" | "3.0.145" | "3.0.1184" | "1.0.50" | "5.90.20" | "5.91.2" | "11.8.1" | "22.19.7" | "8.10.160" | "2.8.19" | "8.18.1" | "5.0.6" | "4.12.0" | "1.0.20" | "2.1103.0" | "2.236.0" | "2.236.0-alpha.0" | "3.12.0" | "10.4.5" | "2.8.6" | "0.7.1" | "2.1.1" | "3.5.3" | "0.27.2" | "5.5.5" | "5.2.1" | "2.4.2" | "4.0.0" | "2.0.0" | "19.3.2" | "3.4.1" | "3.8.1" | "3.3.0" | "19.2.4" | "6.1.2" | "1.0.0-rc.1" | "0.5.21" | "4.1.18" | "4.21.0" | "0.555.0" | "1.1.15" | "2.1.8" | "2.1.4" | "1.2.4" | "1.1.8" | "1.2.8" | "3.6.2" | "1.4.0" | "3.4.0" | "5.1.4" | "4.3.6" | "8.19.0";
83
95
  };
84
96
  /**
85
97
  * Versions for Python dependencies added by generators
@@ -90,14 +102,14 @@ export declare const PY_VERSIONS: {
90
102
  readonly 'aws-lambda-powertools[parser]': "==3.24.0";
91
103
  readonly 'aws-opentelemetry-distro': "==0.14.2";
92
104
  readonly 'bedrock-agentcore': "==0.1.7";
93
- readonly boto3: "==1.42.36";
94
- readonly checkov: "==3.2.499";
105
+ readonly boto3: "==1.42.39";
106
+ readonly checkov: "==3.2.500";
95
107
  readonly fastapi: "==0.128.0";
96
108
  readonly 'fastapi[standard]': "==0.128.0";
97
- readonly mangum: "==0.20.0";
109
+ readonly mangum: "==0.21.0";
98
110
  readonly mcp: "==1.26.0";
99
111
  readonly 'pip-check-updates': "==0.28.0";
100
- readonly 'strands-agents': "==1.23.0";
112
+ readonly 'strands-agents': "==1.24.0";
101
113
  readonly 'strands-agents-tools': "==0.2.19";
102
114
  readonly uvicorn: "==0.40.0";
103
115
  };