@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
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.addNoneAuthMenu = addNoneAuthMenu;
4
4
  exports.addCloudscapeAuthMenu = addCloudscapeAuthMenu;
5
+ exports.addShadcnAuthMenu = addShadcnAuthMenu;
5
6
  const ast_1 = require("../../../utils/ast");
6
7
  const typescript_1 = require("typescript");
7
8
  // Adds a user greeting and sign-out button to the default AppLayout header when using the None UX provider.
@@ -12,7 +13,7 @@ function addNoneAuthMenu(tree, appLayoutTsxPath) {
12
13
  const classValue = (classAttr === null || classAttr === void 0 ? void 0 : classAttr.initializer) && (0, typescript_1.isStringLiteral)(classAttr.initializer)
13
14
  ? classAttr.initializer.text
14
15
  : undefined;
15
- return classValue === 'app-header-inner';
16
+ return classValue === null || classValue === void 0 ? void 0 : classValue.split(/\s+/).includes('app-header-inner');
16
17
  }
17
18
  (0, ast_1.replace)(tree, appLayoutTsxPath, 'JsxElement:has(JsxOpeningElement JsxAttribute[name.text="className"] StringLiteral[text="app-header-inner"])', (node) => {
18
19
  if (!isAppHeaderInner(node)) {
@@ -89,4 +90,115 @@ function addCloudscapeAuthMenu(tree, appLayoutTsxPath) {
89
90
  ]));
90
91
  });
91
92
  }
93
+ function addShadcnAuthMenu(tree, appLayoutTsxPath) {
94
+ if (!tree.exists(appLayoutTsxPath)) {
95
+ throw new Error(`Expected top nav component at ${appLayoutTsxPath}`);
96
+ }
97
+ (0, ast_1.addDestructuredImport)(tree, appLayoutTsxPath, ['useEffect', 'useRef', 'useState'], 'react');
98
+ const menuStateDeclaration = typescript_1.factory.createVariableStatement(undefined, typescript_1.factory.createVariableDeclarationList([
99
+ typescript_1.factory.createVariableDeclaration(typescript_1.factory.createArrayBindingPattern([
100
+ typescript_1.factory.createBindingElement(undefined, undefined, typescript_1.factory.createIdentifier('menuOpen'), undefined),
101
+ typescript_1.factory.createBindingElement(undefined, undefined, typescript_1.factory.createIdentifier('setMenuOpen'), undefined),
102
+ ]), undefined, undefined, typescript_1.factory.createCallExpression(typescript_1.factory.createIdentifier('useState'), undefined, [typescript_1.factory.createFalse()])),
103
+ ], typescript_1.NodeFlags.Const));
104
+ const menuRefDeclaration = typescript_1.factory.createVariableStatement(undefined, typescript_1.factory.createVariableDeclarationList([
105
+ typescript_1.factory.createVariableDeclaration(typescript_1.factory.createIdentifier('menuRef'), undefined, undefined, typescript_1.factory.createCallExpression(typescript_1.factory.createIdentifier('useRef'), [
106
+ typescript_1.factory.createTypeReferenceNode(typescript_1.factory.createIdentifier('HTMLDivElement'), undefined),
107
+ ], [typescript_1.factory.createNull()])),
108
+ ], typescript_1.NodeFlags.Const));
109
+ const userNameExpr = typescript_1.factory.createAsExpression(typescript_1.factory.createElementAccessChain(typescript_1.factory.createPropertyAccessChain(typescript_1.factory.createIdentifier('user'), typescript_1.factory.createToken(typescript_1.SyntaxKind.QuestionDotToken), typescript_1.factory.createIdentifier('profile')), typescript_1.factory.createToken(typescript_1.SyntaxKind.QuestionDotToken), typescript_1.factory.createStringLiteral('cognito:username')), typescript_1.factory.createKeywordTypeNode(typescript_1.SyntaxKind.AnyKeyword));
110
+ const userInitialExpr = typescript_1.factory.createCallChain(typescript_1.factory.createPropertyAccessChain(typescript_1.factory.createCallChain(typescript_1.factory.createPropertyAccessExpression(userNameExpr, typescript_1.factory.createIdentifier('charAt')), typescript_1.factory.createToken(typescript_1.SyntaxKind.QuestionDotToken), undefined, [typescript_1.factory.createNumericLiteral(0)]), typescript_1.factory.createToken(typescript_1.SyntaxKind.QuestionDotToken), typescript_1.factory.createIdentifier('toUpperCase')), typescript_1.factory.createToken(typescript_1.SyntaxKind.QuestionDotToken), undefined, []);
111
+ const useEffectStatement = typescript_1.factory.createExpressionStatement(typescript_1.factory.createCallExpression(typescript_1.factory.createIdentifier('useEffect'), undefined, [
112
+ typescript_1.factory.createArrowFunction(undefined, undefined, [], undefined, typescript_1.factory.createToken(typescript_1.SyntaxKind.EqualsGreaterThanToken), typescript_1.factory.createBlock([
113
+ typescript_1.factory.createVariableStatement(undefined, typescript_1.factory.createVariableDeclarationList([
114
+ typescript_1.factory.createVariableDeclaration(typescript_1.factory.createIdentifier('handleClickOutside'), undefined, undefined, typescript_1.factory.createArrowFunction(undefined, undefined, [
115
+ typescript_1.factory.createParameterDeclaration(undefined, undefined, typescript_1.factory.createIdentifier('event'), undefined, typescript_1.factory.createTypeReferenceNode(typescript_1.factory.createIdentifier('MouseEvent'), undefined), undefined),
116
+ ], undefined, typescript_1.factory.createToken(typescript_1.SyntaxKind.EqualsGreaterThanToken), typescript_1.factory.createBlock([
117
+ typescript_1.factory.createIfStatement(typescript_1.factory.createBinaryExpression(typescript_1.factory.createPropertyAccessExpression(typescript_1.factory.createIdentifier('menuRef'), typescript_1.factory.createIdentifier('current')), typescript_1.factory.createToken(typescript_1.SyntaxKind.AmpersandAmpersandToken), typescript_1.factory.createPrefixUnaryExpression(typescript_1.SyntaxKind.ExclamationToken, typescript_1.factory.createCallExpression(typescript_1.factory.createPropertyAccessExpression(typescript_1.factory.createPropertyAccessExpression(typescript_1.factory.createIdentifier('menuRef'), typescript_1.factory.createIdentifier('current')), typescript_1.factory.createIdentifier('contains')), undefined, [
118
+ typescript_1.factory.createAsExpression(typescript_1.factory.createPropertyAccessExpression(typescript_1.factory.createIdentifier('event'), typescript_1.factory.createIdentifier('target')), typescript_1.factory.createKeywordTypeNode(typescript_1.SyntaxKind.AnyKeyword)),
119
+ ]))), typescript_1.factory.createBlock([
120
+ typescript_1.factory.createExpressionStatement(typescript_1.factory.createCallExpression(typescript_1.factory.createIdentifier('setMenuOpen'), undefined, [typescript_1.factory.createFalse()])),
121
+ ], true), undefined),
122
+ ], true))),
123
+ ], typescript_1.NodeFlags.Const)),
124
+ typescript_1.factory.createExpressionStatement(typescript_1.factory.createCallExpression(typescript_1.factory.createPropertyAccessExpression(typescript_1.factory.createIdentifier('document'), typescript_1.factory.createIdentifier('addEventListener')), undefined, [
125
+ typescript_1.factory.createStringLiteral('mousedown'),
126
+ typescript_1.factory.createIdentifier('handleClickOutside'),
127
+ ])),
128
+ typescript_1.factory.createReturnStatement(typescript_1.factory.createArrowFunction(undefined, undefined, [], undefined, typescript_1.factory.createToken(typescript_1.SyntaxKind.EqualsGreaterThanToken), typescript_1.factory.createBlock([
129
+ typescript_1.factory.createExpressionStatement(typescript_1.factory.createCallExpression(typescript_1.factory.createPropertyAccessExpression(typescript_1.factory.createIdentifier('document'), typescript_1.factory.createIdentifier('removeEventListener')), undefined, [
130
+ typescript_1.factory.createStringLiteral('mousedown'),
131
+ typescript_1.factory.createIdentifier('handleClickOutside'),
132
+ ])),
133
+ ], true))),
134
+ ], true)),
135
+ typescript_1.factory.createArrayLiteralExpression([], false),
136
+ ]));
137
+ (0, ast_1.replace)(tree, appLayoutTsxPath, 'VariableDeclaration[name.text="AppLayout"]', (node) => {
138
+ const arrowFunction = node.initializer;
139
+ if (!arrowFunction || arrowFunction.body.kind !== typescript_1.SyntaxKind.Block) {
140
+ return node;
141
+ }
142
+ const body = arrowFunction.body;
143
+ const newStatements = [
144
+ menuStateDeclaration,
145
+ menuRefDeclaration,
146
+ useEffectStatement,
147
+ ...body.statements,
148
+ ];
149
+ const newArrowFunction = typescript_1.factory.updateArrowFunction(arrowFunction, arrowFunction.modifiers, arrowFunction.typeParameters, arrowFunction.parameters, arrowFunction.type, arrowFunction.equalsGreaterThanToken, typescript_1.factory.updateBlock(body, newStatements));
150
+ return typescript_1.factory.updateVariableDeclaration(node, node.name, node.exclamationToken, node.type, newArrowFunction);
151
+ });
152
+ const authMenu = typescript_1.factory.createJsxElement(typescript_1.factory.createJsxOpeningElement(typescript_1.factory.createIdentifier('div'), undefined, typescript_1.factory.createJsxAttributes([
153
+ typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('className'), typescript_1.factory.createStringLiteral('ml-auto flex items-center gap-3')),
154
+ typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('ref'), typescript_1.factory.createJsxExpression(undefined, typescript_1.factory.createIdentifier('menuRef'))),
155
+ ])), [
156
+ typescript_1.factory.createJsxElement(typescript_1.factory.createJsxOpeningElement(typescript_1.factory.createIdentifier('button'), undefined, typescript_1.factory.createJsxAttributes([
157
+ typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('type'), typescript_1.factory.createStringLiteral('button')),
158
+ typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('onClick'), typescript_1.factory.createJsxExpression(undefined, typescript_1.factory.createArrowFunction(undefined, undefined, [], undefined, typescript_1.factory.createToken(typescript_1.SyntaxKind.EqualsGreaterThanToken), typescript_1.factory.createCallExpression(typescript_1.factory.createIdentifier('setMenuOpen'), undefined, [
159
+ typescript_1.factory.createArrowFunction(undefined, undefined, [
160
+ typescript_1.factory.createParameterDeclaration(undefined, undefined, typescript_1.factory.createIdentifier('open'), undefined, undefined, undefined),
161
+ ], undefined, typescript_1.factory.createToken(typescript_1.SyntaxKind.EqualsGreaterThanToken), typescript_1.factory.createPrefixUnaryExpression(typescript_1.SyntaxKind.ExclamationToken, typescript_1.factory.createIdentifier('open'))),
162
+ ])))),
163
+ typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('className'), typescript_1.factory.createStringLiteral('focus-visible:ring-ring/60 bg-muted text-muted-foreground flex size-10 items-center justify-center rounded-full border border-border/60 font-semibold shadow-sm outline-none transition hover:bg-muted/80 focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-offset-background cursor-pointer')),
164
+ typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('aria-label'), typescript_1.factory.createStringLiteral('Open user menu')),
165
+ typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('aria-expanded'), typescript_1.factory.createJsxExpression(undefined, typescript_1.factory.createIdentifier('menuOpen'))),
166
+ ])), [typescript_1.factory.createJsxExpression(undefined, userInitialExpr)], typescript_1.factory.createJsxClosingElement(typescript_1.factory.createIdentifier('button'))),
167
+ typescript_1.factory.createJsxExpression(undefined, typescript_1.factory.createBinaryExpression(typescript_1.factory.createIdentifier('menuOpen'), typescript_1.factory.createToken(typescript_1.SyntaxKind.AmpersandAmpersandToken), typescript_1.factory.createParenthesizedExpression(typescript_1.factory.createJsxElement(typescript_1.factory.createJsxOpeningElement(typescript_1.factory.createIdentifier('div'), undefined, typescript_1.factory.createJsxAttributes([
168
+ typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('className'), typescript_1.factory.createStringLiteral('bg-popover text-popover-foreground absolute right-4 top-14 w-36 overflow-hidden rounded-md border shadow-md')),
169
+ ])), [
170
+ typescript_1.factory.createJsxElement(typescript_1.factory.createJsxOpeningElement(typescript_1.factory.createIdentifier('div'), undefined, typescript_1.factory.createJsxAttributes([
171
+ typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('className'), typescript_1.factory.createStringLiteral('px-3 py-2 text-sm font-semibold')),
172
+ ])), [
173
+ typescript_1.factory.createJsxText('Hi, '),
174
+ typescript_1.factory.createJsxExpression(undefined, userNameExpr),
175
+ typescript_1.factory.createJsxText('!'),
176
+ ], typescript_1.factory.createJsxClosingElement(typescript_1.factory.createIdentifier('div'))),
177
+ typescript_1.factory.createJsxSelfClosingElement(typescript_1.factory.createIdentifier('div'), undefined, typescript_1.factory.createJsxAttributes([
178
+ typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('className'), typescript_1.factory.createStringLiteral('bg-border/70 h-px w-full')),
179
+ typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('role'), typescript_1.factory.createStringLiteral('separator')),
180
+ ])),
181
+ typescript_1.factory.createJsxElement(typescript_1.factory.createJsxOpeningElement(typescript_1.factory.createIdentifier('button'), undefined, typescript_1.factory.createJsxAttributes([
182
+ typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('type'), typescript_1.factory.createStringLiteral('button')),
183
+ typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('className'), typescript_1.factory.createStringLiteral('hover:bg-muted w-full px-3 py-2 text-left text-sm cursor-pointer')),
184
+ typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('onClick'), typescript_1.factory.createJsxExpression(undefined, typescript_1.factory.createArrowFunction(undefined, undefined, [], undefined, typescript_1.factory.createToken(typescript_1.SyntaxKind.EqualsGreaterThanToken), typescript_1.factory.createBlock([
185
+ typescript_1.factory.createExpressionStatement(typescript_1.factory.createCallExpression(typescript_1.factory.createIdentifier('setMenuOpen'), undefined, [typescript_1.factory.createFalse()])),
186
+ typescript_1.factory.createExpressionStatement(typescript_1.factory.createCallExpression(typescript_1.factory.createIdentifier('removeUser'), undefined, [])),
187
+ typescript_1.factory.createExpressionStatement(typescript_1.factory.createCallExpression(typescript_1.factory.createIdentifier('signoutRedirect'), undefined, [
188
+ typescript_1.factory.createObjectLiteralExpression([
189
+ typescript_1.factory.createPropertyAssignment('post_logout_redirect_uri', typescript_1.factory.createPropertyAccessExpression(typescript_1.factory.createPropertyAccessExpression(typescript_1.factory.createIdentifier('window'), typescript_1.factory.createIdentifier('location')), typescript_1.factory.createIdentifier('origin'))),
190
+ typescript_1.factory.createPropertyAssignment('extraQueryParams', typescript_1.factory.createObjectLiteralExpression([
191
+ typescript_1.factory.createPropertyAssignment('redirect_uri', typescript_1.factory.createPropertyAccessExpression(typescript_1.factory.createPropertyAccessExpression(typescript_1.factory.createIdentifier('window'), typescript_1.factory.createIdentifier('location')), typescript_1.factory.createIdentifier('origin'))),
192
+ typescript_1.factory.createPropertyAssignment('response_type', typescript_1.factory.createStringLiteral('code')),
193
+ ], true)),
194
+ ], true),
195
+ ])),
196
+ typescript_1.factory.createExpressionStatement(typescript_1.factory.createCallExpression(typescript_1.factory.createIdentifier('clearStaleState'), undefined, [])),
197
+ ], true)))),
198
+ ])), [typescript_1.factory.createJsxText('Sign out')], typescript_1.factory.createJsxClosingElement(typescript_1.factory.createIdentifier('button'))),
199
+ ], typescript_1.factory.createJsxClosingElement(typescript_1.factory.createIdentifier('div')))))),
200
+ ], typescript_1.factory.createJsxClosingElement(typescript_1.factory.createIdentifier('div')));
201
+ const appendAuthMenu = (node) => typescript_1.factory.createJsxElement(node.openingElement, [...node.children, authMenu], node.closingElement);
202
+ (0, ast_1.replace)(tree, appLayoutTsxPath, 'JsxElement[openingElement.tagName.text="header"]', appendAuthMenu);
203
+ }
92
204
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/ts/react-website/cognito-auth/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/ts/react-website/cognito-auth/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ # <%= fullyQualifiedName %>
2
+
3
+ This package centralises Shadcn UI components that are shared between your React websites.
4
+
5
+ - Components live under `packages/common/shadcn/src/components`
6
+ - Utilities live under `packages/common/shadcn/src/lib`
7
+ - Hooks live under `packages/common/shadcn/src/hooks`
8
+ - Global styles are defined in `packages/common/shadcn/src/styles.css`
9
+
10
+ The repository root contains a `components.json` configured to target this package, so you can add new components with:
11
+
12
+ With npm:
13
+ ```bash
14
+ npx shadcn@latest add <component>
15
+ ```
16
+
17
+ With pnpm:
18
+ ```bash
19
+ pnpm dlx shadcn@latest add <component>
20
+ ```
21
+
22
+ With yarn:
23
+ ```bash
24
+ yarn shadcn@latest add <component>
25
+ ```
26
+
27
+ With bun:
28
+ ```bash
29
+ bunx --bun shadcn@latest add <component>
30
+ ```
31
+
32
+ Run the command from the repository root (not `packages/common/shadcn`) so it picks up the root `components.json`.
@@ -0,0 +1,66 @@
1
+ import * as React from "react"
2
+ import { cva, type VariantProps } from "class-variance-authority"
3
+
4
+ import { cn } from "<%= scopeAlias %>common-shadcn/lib/utils"
5
+
6
+ const alertVariants = cva(
7
+ "relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current",
8
+ {
9
+ variants: {
10
+ variant: {
11
+ default: "bg-card text-card-foreground",
12
+ destructive:
13
+ "text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90",
14
+ },
15
+ },
16
+ defaultVariants: {
17
+ variant: "default",
18
+ },
19
+ }
20
+ )
21
+
22
+ function Alert({
23
+ className,
24
+ variant,
25
+ ...props
26
+ }: React.ComponentProps<"div"> & VariantProps<typeof alertVariants>) {
27
+ return (
28
+ <div
29
+ data-slot="alert"
30
+ role="alert"
31
+ className={cn(alertVariants({ variant }), className)}
32
+ {...props}
33
+ />
34
+ )
35
+ }
36
+
37
+ function AlertTitle({ className, ...props }: React.ComponentProps<"div">) {
38
+ return (
39
+ <div
40
+ data-slot="alert-title"
41
+ className={cn(
42
+ "col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",
43
+ className
44
+ )}
45
+ {...props}
46
+ />
47
+ )
48
+ }
49
+
50
+ function AlertDescription({
51
+ className,
52
+ ...props
53
+ }: React.ComponentProps<"div">) {
54
+ return (
55
+ <div
56
+ data-slot="alert-description"
57
+ className={cn(
58
+ "text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",
59
+ className
60
+ )}
61
+ {...props}
62
+ />
63
+ )
64
+ }
65
+
66
+ export { Alert, AlertTitle, AlertDescription }
@@ -0,0 +1,109 @@
1
+ import * as React from "react"
2
+ import { Slot } from "@radix-ui/react-slot"
3
+ import { ChevronRight, MoreHorizontal } from "lucide-react"
4
+
5
+ import { cn } from "<%= scopeAlias %>common-shadcn/lib/utils"
6
+
7
+ function Breadcrumb({ ...props }: React.ComponentProps<"nav">) {
8
+ return <nav aria-label="breadcrumb" data-slot="breadcrumb" {...props} />
9
+ }
10
+
11
+ function BreadcrumbList({ className, ...props }: React.ComponentProps<"ol">) {
12
+ return (
13
+ <ol
14
+ data-slot="breadcrumb-list"
15
+ className={cn(
16
+ "text-muted-foreground flex flex-wrap items-center gap-1.5 text-sm break-words sm:gap-2.5",
17
+ className
18
+ )}
19
+ {...props}
20
+ />
21
+ )
22
+ }
23
+
24
+ function BreadcrumbItem({ className, ...props }: React.ComponentProps<"li">) {
25
+ return (
26
+ <li
27
+ data-slot="breadcrumb-item"
28
+ className={cn("inline-flex items-center gap-1.5", className)}
29
+ {...props}
30
+ />
31
+ )
32
+ }
33
+
34
+ function BreadcrumbLink({
35
+ asChild,
36
+ className,
37
+ ...props
38
+ }: React.ComponentProps<"a"> & {
39
+ asChild?: boolean
40
+ }) {
41
+ const Comp = asChild ? Slot : "a"
42
+
43
+ return (
44
+ <Comp
45
+ data-slot="breadcrumb-link"
46
+ className={cn("hover:text-foreground transition-colors", className)}
47
+ {...props}
48
+ />
49
+ )
50
+ }
51
+
52
+ function BreadcrumbPage({ className, ...props }: React.ComponentProps<"span">) {
53
+ return (
54
+ <span
55
+ data-slot="breadcrumb-page"
56
+ role="link"
57
+ aria-disabled="true"
58
+ aria-current="page"
59
+ className={cn("text-foreground font-normal", className)}
60
+ {...props}
61
+ />
62
+ )
63
+ }
64
+
65
+ function BreadcrumbSeparator({
66
+ children,
67
+ className,
68
+ ...props
69
+ }: React.ComponentProps<"li">) {
70
+ return (
71
+ <li
72
+ data-slot="breadcrumb-separator"
73
+ role="presentation"
74
+ aria-hidden="true"
75
+ className={cn("[&>svg]:size-3.5", className)}
76
+ {...props}
77
+ >
78
+ {children ?? <ChevronRight />}
79
+ </li>
80
+ )
81
+ }
82
+
83
+ function BreadcrumbEllipsis({
84
+ className,
85
+ ...props
86
+ }: React.ComponentProps<"span">) {
87
+ return (
88
+ <span
89
+ data-slot="breadcrumb-ellipsis"
90
+ role="presentation"
91
+ aria-hidden="true"
92
+ className={cn("flex size-9 items-center justify-center", className)}
93
+ {...props}
94
+ >
95
+ <MoreHorizontal className="size-4" />
96
+ <span className="sr-only">More</span>
97
+ </span>
98
+ )
99
+ }
100
+
101
+ export {
102
+ Breadcrumb,
103
+ BreadcrumbList,
104
+ BreadcrumbItem,
105
+ BreadcrumbLink,
106
+ BreadcrumbPage,
107
+ BreadcrumbSeparator,
108
+ BreadcrumbEllipsis,
109
+ }
@@ -0,0 +1,62 @@
1
+ import * as React from "react"
2
+ import { Slot } from "@radix-ui/react-slot"
3
+ import { cva, type VariantProps } from "class-variance-authority"
4
+
5
+ import { cn } from "<%= scopeAlias %>common-shadcn/lib/utils"
6
+
7
+ const buttonVariants = cva(
8
+ "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
9
+ {
10
+ variants: {
11
+ variant: {
12
+ default: "bg-primary text-primary-foreground hover:bg-primary/90",
13
+ destructive:
14
+ "bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
15
+ outline:
16
+ "border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
17
+ secondary:
18
+ "bg-secondary text-secondary-foreground hover:bg-secondary/80",
19
+ ghost:
20
+ "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
21
+ link: "text-primary underline-offset-4 hover:underline",
22
+ },
23
+ size: {
24
+ default: "h-9 px-4 py-2 has-[>svg]:px-3",
25
+ sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
26
+ lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
27
+ icon: "size-9",
28
+ "icon-sm": "size-8",
29
+ "icon-lg": "size-10",
30
+ },
31
+ },
32
+ defaultVariants: {
33
+ variant: "default",
34
+ size: "default",
35
+ },
36
+ }
37
+ )
38
+
39
+ function Button({
40
+ className,
41
+ variant = "default",
42
+ size = "default",
43
+ asChild = false,
44
+ ...props
45
+ }: React.ComponentProps<"button"> &
46
+ VariantProps<typeof buttonVariants> & {
47
+ asChild?: boolean
48
+ }) {
49
+ const Comp = asChild ? Slot : "button"
50
+
51
+ return (
52
+ <Comp
53
+ data-slot="button"
54
+ data-variant={variant}
55
+ data-size={size}
56
+ className={cn(buttonVariants({ variant, size, className }))}
57
+ {...props}
58
+ />
59
+ )
60
+ }
61
+
62
+ export { Button, buttonVariants }
@@ -0,0 +1,92 @@
1
+ import * as React from "react"
2
+
3
+ import { cn } from "<%= scopeAlias %>common-shadcn/lib/utils"
4
+
5
+ function Card({ className, ...props }: React.ComponentProps<"div">) {
6
+ return (
7
+ <div
8
+ data-slot="card"
9
+ className={cn(
10
+ "bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",
11
+ className
12
+ )}
13
+ {...props}
14
+ />
15
+ )
16
+ }
17
+
18
+ function CardHeader({ className, ...props }: React.ComponentProps<"div">) {
19
+ return (
20
+ <div
21
+ data-slot="card-header"
22
+ className={cn(
23
+ "@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",
24
+ className
25
+ )}
26
+ {...props}
27
+ />
28
+ )
29
+ }
30
+
31
+ function CardTitle({ className, ...props }: React.ComponentProps<"div">) {
32
+ return (
33
+ <div
34
+ data-slot="card-title"
35
+ className={cn("leading-none font-semibold", className)}
36
+ {...props}
37
+ />
38
+ )
39
+ }
40
+
41
+ function CardDescription({ className, ...props }: React.ComponentProps<"div">) {
42
+ return (
43
+ <div
44
+ data-slot="card-description"
45
+ className={cn("text-muted-foreground text-sm", className)}
46
+ {...props}
47
+ />
48
+ )
49
+ }
50
+
51
+ function CardAction({ className, ...props }: React.ComponentProps<"div">) {
52
+ return (
53
+ <div
54
+ data-slot="card-action"
55
+ className={cn(
56
+ "col-start-2 row-span-2 row-start-1 self-start justify-self-end",
57
+ className
58
+ )}
59
+ {...props}
60
+ />
61
+ )
62
+ }
63
+
64
+ function CardContent({ className, ...props }: React.ComponentProps<"div">) {
65
+ return (
66
+ <div
67
+ data-slot="card-content"
68
+ className={cn("px-6", className)}
69
+ {...props}
70
+ />
71
+ )
72
+ }
73
+
74
+ function CardFooter({ className, ...props }: React.ComponentProps<"div">) {
75
+ return (
76
+ <div
77
+ data-slot="card-footer"
78
+ className={cn("flex items-center px-6 [.border-t]:pt-6", className)}
79
+ {...props}
80
+ />
81
+ )
82
+ }
83
+
84
+ export {
85
+ Card,
86
+ CardHeader,
87
+ CardFooter,
88
+ CardTitle,
89
+ CardAction,
90
+ CardDescription,
91
+ CardContent,
92
+ }
@@ -0,0 +1,21 @@
1
+ import * as React from "react"
2
+
3
+ import { cn } from "<%= scopeAlias %>common-shadcn/lib/utils"
4
+
5
+ function Input({ className, type, ...props }: React.ComponentProps<"input">) {
6
+ return (
7
+ <input
8
+ type={type}
9
+ data-slot="input"
10
+ className={cn(
11
+ "file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
12
+ "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
13
+ "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
14
+ className
15
+ )}
16
+ {...props}
17
+ />
18
+ )
19
+ }
20
+
21
+ export { Input }
@@ -0,0 +1,28 @@
1
+ "use client"
2
+
3
+ import * as React from "react"
4
+ import * as SeparatorPrimitive from "@radix-ui/react-separator"
5
+
6
+ import { cn } from "<%= scopeAlias %>common-shadcn/lib/utils"
7
+
8
+ function Separator({
9
+ className,
10
+ orientation = "horizontal",
11
+ decorative = true,
12
+ ...props
13
+ }: React.ComponentProps<typeof SeparatorPrimitive.Root>) {
14
+ return (
15
+ <SeparatorPrimitive.Root
16
+ data-slot="separator"
17
+ decorative={decorative}
18
+ orientation={orientation}
19
+ className={cn(
20
+ "bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",
21
+ className
22
+ )}
23
+ {...props}
24
+ />
25
+ )
26
+ }
27
+
28
+ export { Separator }