gold-on-frontend-common 0.1.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.
- package/README.md +75 -0
- package/config/eslint/base.mjs +13 -0
- package/config/eslint/next-js.mjs +27 -0
- package/config/eslint/react-library.mjs +10 -0
- package/config/typescript/base.json +16 -0
- package/config/typescript/nextjs.json +14 -0
- package/config/typescript/react-library.json +7 -0
- package/dist/components/accordion.d.ts +12 -0
- package/dist/components/accordion.d.ts.map +1 -0
- package/dist/components/accordion.js +34 -0
- package/dist/components/accordion.js.map +1 -0
- package/dist/components/alert.d.ts +13 -0
- package/dist/components/alert.d.ts.map +1 -0
- package/dist/components/alert.js +52 -0
- package/dist/components/alert.js.map +1 -0
- package/dist/components/avatar.d.ts +12 -0
- package/dist/components/avatar.d.ts.map +1 -0
- package/dist/components/avatar.js +39 -0
- package/dist/components/avatar.js.map +1 -0
- package/dist/components/badge.d.ts +12 -0
- package/dist/components/badge.d.ts.map +1 -0
- package/dist/components/badge.js +37 -0
- package/dist/components/badge.js.map +1 -0
- package/dist/components/breadcrumb.d.ts +12 -0
- package/dist/components/breadcrumb.d.ts.map +1 -0
- package/dist/components/breadcrumb.js +28 -0
- package/dist/components/breadcrumb.js.map +1 -0
- package/dist/components/button-group.d.ts +9 -0
- package/dist/components/button-group.d.ts.map +1 -0
- package/dist/components/button-group.js +25 -0
- package/dist/components/button-group.js.map +1 -0
- package/dist/components/button.d.ts +12 -0
- package/dist/components/button.d.ts.map +1 -0
- package/dist/components/button.js +48 -0
- package/dist/components/button.js.map +1 -0
- package/dist/components/card.d.ts +10 -0
- package/dist/components/card.d.ts.map +1 -0
- package/dist/components/card.js +25 -0
- package/dist/components/card.js.map +1 -0
- package/dist/components/dialog.d.ts +18 -0
- package/dist/components/dialog.d.ts.map +1 -0
- package/dist/components/dialog.js +38 -0
- package/dist/components/dialog.js.map +1 -0
- package/dist/components/dropdown-menu.d.ts +26 -0
- package/dist/components/dropdown-menu.d.ts.map +1 -0
- package/dist/components/dropdown-menu.js +52 -0
- package/dist/components/dropdown-menu.js.map +1 -0
- package/dist/components/field.d.ts +25 -0
- package/dist/components/field.d.ts.map +1 -0
- package/dist/components/field.js +75 -0
- package/dist/components/field.js.map +1 -0
- package/dist/components/form.d.ts +25 -0
- package/dist/components/form.d.ts.map +1 -0
- package/dist/components/form.js +58 -0
- package/dist/components/form.js.map +1 -0
- package/dist/components/index.d.ts +24 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +24 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/input.d.ts +4 -0
- package/dist/components/input.d.ts.map +1 -0
- package/dist/components/input.js +7 -0
- package/dist/components/input.js.map +1 -0
- package/dist/components/label.d.ts +5 -0
- package/dist/components/label.d.ts.map +1 -0
- package/dist/components/label.js +9 -0
- package/dist/components/label.js.map +1 -0
- package/dist/components/pagination.d.ts +17 -0
- package/dist/components/pagination.d.ts.map +1 -0
- package/dist/components/pagination.js +33 -0
- package/dist/components/pagination.js.map +1 -0
- package/dist/components/separator.d.ts +5 -0
- package/dist/components/separator.d.ts.map +1 -0
- package/dist/components/separator.js +9 -0
- package/dist/components/separator.js.map +1 -0
- package/dist/components/sonner.d.ts +4 -0
- package/dist/components/sonner.d.ts.map +1 -0
- package/dist/components/sonner.js +22 -0
- package/dist/components/sonner.js.map +1 -0
- package/dist/components/status-label.d.ts +10 -0
- package/dist/components/status-label.d.ts.map +1 -0
- package/dist/components/status-label.js +34 -0
- package/dist/components/status-label.js.map +1 -0
- package/dist/components/table.d.ts +11 -0
- package/dist/components/table.d.ts.map +1 -0
- package/dist/components/table.js +29 -0
- package/dist/components/table.js.map +1 -0
- package/dist/components/tabs.d.ts +8 -0
- package/dist/components/tabs.d.ts.map +1 -0
- package/dist/components/tabs.js +18 -0
- package/dist/components/tabs.js.map +1 -0
- package/dist/components/toggle-group.d.ts +12 -0
- package/dist/components/toggle-group.d.ts.map +1 -0
- package/dist/components/toggle-group.js +37 -0
- package/dist/components/toggle-group.js.map +1 -0
- package/dist/components/toggle.d.ts +11 -0
- package/dist/components/toggle.d.ts.map +1 -0
- package/dist/components/toggle.js +36 -0
- package/dist/components/toggle.js.map +1 -0
- package/dist/components/tooltip.d.ts +8 -0
- package/dist/components/tooltip.d.ts.map +1 -0
- package/dist/components/tooltip.js +18 -0
- package/dist/components/tooltip.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +6 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/styles/globals.css +222 -0
- package/dist/tokens.d.ts +118 -0
- package/dist/tokens.d.ts.map +1 -0
- package/dist/tokens.js +63 -0
- package/dist/tokens.js.map +1 -0
- package/package.json +115 -0
package/README.md
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# gold-on-frontend-common
|
|
2
|
+
|
|
3
|
+
Shared Gold On React components, Tailwind v4 design tokens, and frontend configuration.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
npm install gold-on-frontend-common
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
The package is public. Consuming projects do not need a token or custom `.npmrc`.
|
|
12
|
+
|
|
13
|
+
## Components and styles
|
|
14
|
+
|
|
15
|
+
Import the shared stylesheet once in the application's global CSS:
|
|
16
|
+
|
|
17
|
+
```css
|
|
18
|
+
@import "gold-on-frontend-common/styles.css";
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Use the components from the main entry point or a component subpath:
|
|
22
|
+
|
|
23
|
+
```tsx
|
|
24
|
+
import { Button } from "gold-on-frontend-common";
|
|
25
|
+
import { Card } from "gold-on-frontend-common/components/card";
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
JavaScript design tokens are available separately:
|
|
29
|
+
|
|
30
|
+
```ts
|
|
31
|
+
import { colors, tokens } from "gold-on-frontend-common/tokens";
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Shared configuration
|
|
35
|
+
|
|
36
|
+
Extend the TypeScript configuration:
|
|
37
|
+
|
|
38
|
+
```json
|
|
39
|
+
{
|
|
40
|
+
"extends": "gold-on-frontend-common/tsconfig/nextjs.json"
|
|
41
|
+
}
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Use the ESLint flat configuration:
|
|
45
|
+
|
|
46
|
+
```js
|
|
47
|
+
import config from "gold-on-frontend-common/eslint/next-js";
|
|
48
|
+
|
|
49
|
+
export default config;
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
The Next.js ESLint entry expects `next` to be installed in the consuming application.
|
|
53
|
+
|
|
54
|
+
## Publish
|
|
55
|
+
|
|
56
|
+
1. Update `version` in `package.json`.
|
|
57
|
+
2. Commit and push the change.
|
|
58
|
+
3. Create a GitHub Release, or run the `Publish package` workflow manually.
|
|
59
|
+
|
|
60
|
+
For the first GitHub Actions publish:
|
|
61
|
+
|
|
62
|
+
1. Create an npm granular access token with read/write package permission and 2FA bypass enabled.
|
|
63
|
+
2. Add it to the GitHub repository as the Actions secret `NPM_TOKEN`.
|
|
64
|
+
3. Run the `Publish package` workflow.
|
|
65
|
+
|
|
66
|
+
Consumers never need this token. npm provenance is disabled because npm only supports GitHub
|
|
67
|
+
Actions provenance when the source repository is public.
|
|
68
|
+
|
|
69
|
+
For a local publish, authenticate with npm and run:
|
|
70
|
+
|
|
71
|
+
```sh
|
|
72
|
+
npm login
|
|
73
|
+
npm run check
|
|
74
|
+
npm run publish:npm
|
|
75
|
+
```
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import nextVitals from "eslint-config-next/core-web-vitals";
|
|
2
|
+
import nextTs from "eslint-config-next/typescript";
|
|
3
|
+
import { defineConfig, globalIgnores } from "eslint/config";
|
|
4
|
+
|
|
5
|
+
import { baseConfig } from "./base.mjs";
|
|
6
|
+
|
|
7
|
+
export default defineConfig([
|
|
8
|
+
...nextVitals,
|
|
9
|
+
...nextTs,
|
|
10
|
+
...baseConfig,
|
|
11
|
+
globalIgnores([
|
|
12
|
+
"**/.next/**",
|
|
13
|
+
"**/.turbo/**",
|
|
14
|
+
"**/out/**",
|
|
15
|
+
"**/build/**",
|
|
16
|
+
"**/dist/**",
|
|
17
|
+
"**/next-env.d.ts"
|
|
18
|
+
]),
|
|
19
|
+
{
|
|
20
|
+
rules: {
|
|
21
|
+
"jsx-a11y/anchor-is-valid": [
|
|
22
|
+
"error",
|
|
23
|
+
{ components: ["Link"], aspects: ["invalidHref", "preferButton"] }
|
|
24
|
+
]
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
]);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import nextTs from "eslint-config-next/typescript";
|
|
2
|
+
import { defineConfig, globalIgnores } from "eslint/config";
|
|
3
|
+
|
|
4
|
+
import { baseConfig } from "./base.mjs";
|
|
5
|
+
|
|
6
|
+
export default defineConfig([
|
|
7
|
+
...nextTs,
|
|
8
|
+
...baseConfig,
|
|
9
|
+
globalIgnores(["**/.turbo/**", "**/dist/**"])
|
|
10
|
+
]);
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json.schemastore.org/tsconfig",
|
|
3
|
+
"compilerOptions": {
|
|
4
|
+
"allowJs": true,
|
|
5
|
+
"esModuleInterop": true,
|
|
6
|
+
"isolatedModules": true,
|
|
7
|
+
"lib": ["dom", "dom.iterable", "esnext"],
|
|
8
|
+
"module": "esnext",
|
|
9
|
+
"moduleResolution": "bundler",
|
|
10
|
+
"noEmit": true,
|
|
11
|
+
"resolveJsonModule": true,
|
|
12
|
+
"skipLibCheck": true,
|
|
13
|
+
"strict": true,
|
|
14
|
+
"target": "ES2017"
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { type VariantProps } from "class-variance-authority";
|
|
3
|
+
import { Accordion as AccordionPrimitive } from "radix-ui";
|
|
4
|
+
declare const accordionVariants: (props?: ({
|
|
5
|
+
variant?: "default" | "card" | null | undefined;
|
|
6
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
7
|
+
declare function Accordion({ className, variant, ...props }: React.ComponentProps<typeof AccordionPrimitive.Root> & VariantProps<typeof accordionVariants>): React.JSX.Element;
|
|
8
|
+
declare function AccordionItem({ className, ...props }: React.ComponentProps<typeof AccordionPrimitive.Item>): React.JSX.Element;
|
|
9
|
+
declare function AccordionTrigger({ className, children, ...props }: React.ComponentProps<typeof AccordionPrimitive.Trigger>): React.JSX.Element;
|
|
10
|
+
declare function AccordionContent({ className, children, ...props }: React.ComponentProps<typeof AccordionPrimitive.Content>): React.JSX.Element;
|
|
11
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, accordionVariants };
|
|
12
|
+
//# sourceMappingURL=accordion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accordion.d.ts","sourceRoot":"","sources":["../../src/components/accordion.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,SAAS,IAAI,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAI3D,QAAA,MAAM,iBAAiB;;8EAUrB,CAAC;AAEH,iBAAS,SAAS,CAAC,EACjB,SAAS,EACT,OAAO,EACP,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,kBAAkB,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,OAAO,iBAAiB,CAAC,qBAS/F;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,kBAAkB,CAAC,IAAI,CAAC,qBAWtD;AAED,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,kBAAkB,CAAC,OAAO,CAAC,qBAyBzD;AAED,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,kBAAkB,CAAC,OAAO,CAAC,qBAiBzD;AAED,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { ChevronDownIcon, ChevronUpIcon } from "lucide-react";
|
|
4
|
+
import { cva } from "class-variance-authority";
|
|
5
|
+
import { Accordion as AccordionPrimitive } from "radix-ui";
|
|
6
|
+
import { cn } from "../lib/utils.js";
|
|
7
|
+
const accordionVariants = cva("flex w-full flex-col", {
|
|
8
|
+
variants: {
|
|
9
|
+
variant: {
|
|
10
|
+
default: "",
|
|
11
|
+
card: "gap-3 [&>[data-slot=accordion-item]]:rounded-2xl [&>[data-slot=accordion-item]]:border [&>[data-slot=accordion-item]]:border-transparent [&>[data-slot=accordion-item][data-state=open]]:border-border [&>[data-slot=accordion-item][data-state=open]]:bg-card [&>[data-slot=accordion-item][data-state=open]]:shadow-card"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
defaultVariants: {
|
|
15
|
+
variant: "default"
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
function Accordion({ className, variant, ...props }) {
|
|
19
|
+
return (_jsx(AccordionPrimitive.Root, { "data-slot": "accordion", "data-variant": variant ?? "default", className: cn(accordionVariants({ variant, className })), ...props }));
|
|
20
|
+
}
|
|
21
|
+
function AccordionItem({ className, ...props }) {
|
|
22
|
+
return (_jsx(AccordionPrimitive.Item, { "data-slot": "accordion-item", className: cn("not-last:border-b data-[state=open]:border-b-transparent [[data-variant=card]>&]:px-4", className), ...props }));
|
|
23
|
+
}
|
|
24
|
+
function AccordionTrigger({ className, children, ...props }) {
|
|
25
|
+
return (_jsx(AccordionPrimitive.Header, { className: "flex", children: _jsxs(AccordionPrimitive.Trigger, { "data-slot": "accordion-trigger", className: cn(
|
|
26
|
+
// Changed text-left to text-start
|
|
27
|
+
// Changed ml-auto to ms-auto in the icon target
|
|
28
|
+
"group/accordion-trigger relative flex flex-1 items-center justify-between rounded-lg border border-transparent py-3 text-start text-sm font-semibold transition-all outline-none hover:text-primary-main focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:after:border-ring disabled:pointer-events-none disabled:opacity-50 **:data-[slot=accordion-trigger-icon]:ms-auto **:data-[slot=accordion-trigger-icon]:size-4 **:data-[slot=accordion-trigger-icon]:text-muted-foreground [[data-variant=card]_&]:min-h-16 [[data-variant=card]_&]:px-2", className), ...props, children: [children, _jsx(ChevronDownIcon, { "data-slot": "accordion-trigger-icon", className: "pointer-events-none shrink-0 group-aria-expanded/accordion-trigger:hidden" }), _jsx(ChevronUpIcon, { "data-slot": "accordion-trigger-icon", className: "pointer-events-none hidden shrink-0 group-aria-expanded/accordion-trigger:inline" })] }) }));
|
|
29
|
+
}
|
|
30
|
+
function AccordionContent({ className, children, ...props }) {
|
|
31
|
+
return (_jsx(AccordionPrimitive.Content, { "data-slot": "accordion-content", className: "overflow-hidden text-sm data-closed:animate-accordion-up data-open:animate-accordion-down", ...props, children: _jsx("div", { className: cn("h-(--radix-accordion-content-height) pt-0 pb-3 text-ink-secondary [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4 [[data-variant=card]_&]:px-2 [[data-variant=card]_&]:pb-5", className), children: children }) }));
|
|
32
|
+
}
|
|
33
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, accordionVariants };
|
|
34
|
+
//# sourceMappingURL=accordion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accordion.js","sourceRoot":"","sources":["../../src/components/accordion.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAIb,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,SAAS,IAAI,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE3D,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,MAAM,iBAAiB,GAAG,GAAG,CAAC,sBAAsB,EAAE;IACpD,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,4TAA4T;SACnU;KACF;IACD,eAAe,EAAE;QACf,OAAO,EAAE,SAAS;KACnB;CACF,CAAC,CAAC;AAEH,SAAS,SAAS,CAAC,EACjB,SAAS,EACT,OAAO,EACP,GAAG,KAAK,EACsF;IAC9F,OAAO,CACL,KAAC,kBAAkB,CAAC,IAAI,iBACZ,WAAW,kBACP,OAAO,IAAI,SAAS,EAClC,SAAS,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,KACpD,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,EACrB,SAAS,EACT,GAAG,KAAK,EAC6C;IACrD,OAAO,CACL,KAAC,kBAAkB,CAAC,IAAI,iBACZ,gBAAgB,EAC1B,SAAS,EAAE,EAAE,CACX,uFAAuF,EACvF,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACgD;IACxD,OAAO,CACL,KAAC,kBAAkB,CAAC,MAAM,IAAC,SAAS,EAAC,MAAM,YACzC,MAAC,kBAAkB,CAAC,OAAO,iBACf,mBAAmB,EAC7B,SAAS,EAAE,EAAE;YACX,kCAAkC;YAClC,gDAAgD;YAChD,0jBAA0jB,EAC1jB,SAAS,CACV,KACG,KAAK,aAER,QAAQ,EACT,KAAC,eAAe,iBACJ,wBAAwB,EAClC,SAAS,EAAC,2EAA2E,GACrF,EACF,KAAC,aAAa,iBACF,wBAAwB,EAClC,SAAS,EAAC,kFAAkF,GAC5F,IACyB,GACH,CAC7B,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACgD;IACxD,OAAO,CACL,KAAC,kBAAkB,CAAC,OAAO,iBACf,mBAAmB,EAC7B,SAAS,EAAC,2FAA2F,KACjG,KAAK,YAET,cACE,SAAS,EAAE,EAAE,CACX,8NAA8N,EAC9N,SAAS,CACV,YAEA,QAAQ,GACL,GACqB,CAC9B,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { type VariantProps } from "class-variance-authority";
|
|
3
|
+
declare const alertVariants: (props?: ({
|
|
4
|
+
color?: "info" | "success" | "warning" | "error" | null | undefined;
|
|
5
|
+
variant?: "soft" | "filled" | null | undefined;
|
|
6
|
+
disabled?: boolean | null | undefined;
|
|
7
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
8
|
+
declare function Alert({ className, color, variant, disabled, ...props }: React.ComponentProps<"div"> & VariantProps<typeof alertVariants>): React.JSX.Element;
|
|
9
|
+
declare function AlertTitle({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
10
|
+
declare function AlertDescription({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
11
|
+
declare function AlertAction({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
12
|
+
export { Alert, AlertAction, AlertDescription, AlertTitle, alertVariants };
|
|
13
|
+
//# sourceMappingURL=alert.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alert.d.ts","sourceRoot":"","sources":["../../src/components/alert.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAIlE,QAAA,MAAM,aAAa;;;;8EAyClB,CAAC;AAEF,iBAAS,KAAK,CAAC,EACb,SAAS,EACT,KAAK,EACL,OAAO,EACP,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,OAAO,aAAa,CAAC,qBAUlE;AAED,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,qBAQvE;AAED,iBAAS,gBAAgB,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,qBAQ7E;AAED,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,qBAQxE;AAED,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { cva } from "class-variance-authority";
|
|
3
|
+
import { cn } from "../lib/utils.js";
|
|
4
|
+
const alertVariants = cva("relative flex w-full items-center gap-3 rounded-lg px-4 py-3 text-sm font-medium [&>svg]:size-5 [&>svg]:shrink-0 [&>svg]:fill-current", {
|
|
5
|
+
variants: {
|
|
6
|
+
color: {
|
|
7
|
+
info: "[--alert-icon:var(--color-info-light)] [--alert-light:var(--color-info-lighter)] [--alert-main:var(--color-info-main)] [--alert-text:var(--color-info-dark)]",
|
|
8
|
+
success: "[--alert-icon:var(--color-success-light)] [--alert-light:var(--color-success-lighter)] [--alert-main:var(--color-success-main)] [--alert-text:var(--color-success-dark)]",
|
|
9
|
+
warning: "[--alert-icon:var(--color-warning-light)] [--alert-light:var(--color-warning-lighter)] [--alert-main:var(--color-warning-main)] [--alert-text:var(--color-warning-dark)]",
|
|
10
|
+
error: "[--alert-icon:var(--color-error-light)] [--alert-light:var(--color-error-lighter)] [--alert-main:var(--color-error-main)] [--alert-text:var(--color-error-dark)]"
|
|
11
|
+
},
|
|
12
|
+
variant: {
|
|
13
|
+
soft: "bg-[var(--alert-light)] text-[var(--alert-text)] [&>svg]:fill-[var(--alert-icon)] [&>svg]:stroke-[var(--alert-text)]",
|
|
14
|
+
filled: "bg-[var(--alert-main)] text-[var(--alert-contrast)] [&>svg]:fill-[var(--alert-contrast)] [&>svg]:stroke-[var(--alert-main)]"
|
|
15
|
+
},
|
|
16
|
+
disabled: {
|
|
17
|
+
true: "pointer-events-none opacity-48",
|
|
18
|
+
false: ""
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
compoundVariants: [
|
|
22
|
+
{
|
|
23
|
+
color: ["info", "success", "error"],
|
|
24
|
+
variant: "filled",
|
|
25
|
+
className: "[--alert-contrast:#fff]"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
color: "warning",
|
|
29
|
+
variant: "filled",
|
|
30
|
+
className: "[--alert-contrast:#151104]"
|
|
31
|
+
}
|
|
32
|
+
],
|
|
33
|
+
defaultVariants: {
|
|
34
|
+
color: "info",
|
|
35
|
+
variant: "soft",
|
|
36
|
+
disabled: false
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
function Alert({ className, color, variant, disabled, ...props }) {
|
|
40
|
+
return (_jsx("div", { "data-slot": "alert", role: "alert", "aria-disabled": disabled || undefined, className: cn(alertVariants({ color, variant, disabled, className })), ...props }));
|
|
41
|
+
}
|
|
42
|
+
function AlertTitle({ className, ...props }) {
|
|
43
|
+
return (_jsx("div", { "data-slot": "alert-title", className: cn("min-w-0 flex-1 font-semibold", className), ...props }));
|
|
44
|
+
}
|
|
45
|
+
function AlertDescription({ className, ...props }) {
|
|
46
|
+
return (_jsx("div", { "data-slot": "alert-description", className: cn("min-w-0 flex-1 leading-relaxed", className), ...props }));
|
|
47
|
+
}
|
|
48
|
+
function AlertAction({ className, ...props }) {
|
|
49
|
+
return (_jsx("div", { "data-slot": "alert-action", className: cn("ms-auto flex shrink-0 items-center", className), ...props }));
|
|
50
|
+
}
|
|
51
|
+
export { Alert, AlertAction, AlertDescription, AlertTitle, alertVariants };
|
|
52
|
+
//# sourceMappingURL=alert.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alert.js","sourceRoot":"","sources":["../../src/components/alert.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,MAAM,aAAa,GAAG,GAAG,CACvB,uIAAuI,EACvI;IACE,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,IAAI,EAAE,8JAA8J;YACpK,OAAO,EACL,0KAA0K;YAC5K,OAAO,EACL,0KAA0K;YAC5K,KAAK,EACH,kKAAkK;SACrK;QACD,OAAO,EAAE;YACP,IAAI,EAAE,sHAAsH;YAC5H,MAAM,EACJ,6HAA6H;SAChI;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,gCAAgC;YACtC,KAAK,EAAE,EAAE;SACV;KACF;IACD,gBAAgB,EAAE;QAChB;YACE,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC;YACnC,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,yBAAyB;SACrC;QACD;YACE,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,4BAA4B;SACxC;KACF;IACD,eAAe,EAAE;QACf,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,KAAK;KAChB;CACF,CACF,CAAC;AAEF,SAAS,KAAK,CAAC,EACb,SAAS,EACT,KAAK,EACL,OAAO,EACP,QAAQ,EACR,GAAG,KAAK,EACyD;IACjE,OAAO,CACL,2BACY,OAAO,EACjB,IAAI,EAAC,OAAO,mBACG,QAAQ,IAAI,SAAS,EACpC,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,KACjE,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA+B;IACtE,OAAO,CACL,2BACY,aAAa,EACvB,SAAS,EAAE,EAAE,CAAC,8BAA8B,EAAE,SAAS,CAAC,KACpD,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA+B;IAC5E,OAAO,CACL,2BACY,mBAAmB,EAC7B,SAAS,EAAE,EAAE,CAAC,gCAAgC,EAAE,SAAS,CAAC,KACtD,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA+B;IACvE,OAAO,CACL,2BACY,cAAc,EACxB,SAAS,EAAE,EAAE,CAAC,oCAAoC,EAAE,SAAS,CAAC,KAC1D,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { type VariantProps } from "class-variance-authority";
|
|
3
|
+
import { Avatar as AvatarPrimitive } from "radix-ui";
|
|
4
|
+
declare const avatarVariants: (props?: ({
|
|
5
|
+
shape?: "circle" | "rounded" | "square" | null | undefined;
|
|
6
|
+
size?: "default" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | null | undefined;
|
|
7
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
8
|
+
declare function Avatar({ className, shape, size, ...props }: React.ComponentProps<typeof AvatarPrimitive.Root> & VariantProps<typeof avatarVariants>): React.JSX.Element;
|
|
9
|
+
declare function AvatarImage({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Image>): React.JSX.Element;
|
|
10
|
+
declare function AvatarFallback({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Fallback>): React.JSX.Element;
|
|
11
|
+
export { Avatar, AvatarFallback, AvatarImage, avatarVariants };
|
|
12
|
+
//# sourceMappingURL=avatar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"avatar.d.ts","sourceRoot":"","sources":["../../src/components/avatar.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,UAAU,CAAC;AAIrD,QAAA,MAAM,cAAc;;;8EAsBlB,CAAC;AAEH,iBAAS,MAAM,CAAC,EACd,SAAS,EACT,KAAK,EACL,IAAI,EACJ,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,qBAQzF;AAED,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,qBAQ/F;AAED,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,QAAQ,CAAC,qBAWvD;AAED,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { cva } from "class-variance-authority";
|
|
4
|
+
import { Avatar as AvatarPrimitive } from "radix-ui";
|
|
5
|
+
import { cn } from "../lib/utils.js";
|
|
6
|
+
const avatarVariants = cva("relative flex shrink-0 overflow-hidden bg-muted", {
|
|
7
|
+
variants: {
|
|
8
|
+
shape: {
|
|
9
|
+
circle: "rounded-full",
|
|
10
|
+
rounded: "rounded-xl",
|
|
11
|
+
square: "rounded-none"
|
|
12
|
+
},
|
|
13
|
+
size: {
|
|
14
|
+
xs: "size-6",
|
|
15
|
+
sm: "size-8",
|
|
16
|
+
default: "size-10",
|
|
17
|
+
md: "size-12",
|
|
18
|
+
lg: "size-16",
|
|
19
|
+
xl: "size-20",
|
|
20
|
+
"2xl": "size-24",
|
|
21
|
+
"3xl": "size-32"
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
defaultVariants: {
|
|
25
|
+
shape: "circle",
|
|
26
|
+
size: "default"
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
function Avatar({ className, shape, size, ...props }) {
|
|
30
|
+
return (_jsx(AvatarPrimitive.Root, { "data-slot": "avatar", className: cn(avatarVariants({ shape, size, className })), ...props }));
|
|
31
|
+
}
|
|
32
|
+
function AvatarImage({ className, ...props }) {
|
|
33
|
+
return (_jsx(AvatarPrimitive.Image, { "data-slot": "avatar-image", className: cn("aspect-square size-full object-cover", className), ...props }));
|
|
34
|
+
}
|
|
35
|
+
function AvatarFallback({ className, ...props }) {
|
|
36
|
+
return (_jsx(AvatarPrimitive.Fallback, { "data-slot": "avatar-fallback", className: cn("flex size-full items-center justify-center bg-primary-lighter font-semibold text-primary-main", className), ...props }));
|
|
37
|
+
}
|
|
38
|
+
export { Avatar, AvatarFallback, AvatarImage, avatarVariants };
|
|
39
|
+
//# sourceMappingURL=avatar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"avatar.js","sourceRoot":"","sources":["../../src/components/avatar.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAIb,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,UAAU,CAAC;AAErD,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,MAAM,cAAc,GAAG,GAAG,CAAC,iDAAiD,EAAE;IAC5E,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,MAAM,EAAE,cAAc;YACtB,OAAO,EAAE,YAAY;YACrB,MAAM,EAAE,cAAc;SACvB;QACD,IAAI,EAAE;YACJ,EAAE,EAAE,QAAQ;YACZ,EAAE,EAAE,QAAQ;YACZ,OAAO,EAAE,SAAS;YAClB,EAAE,EAAE,SAAS;YACb,EAAE,EAAE,SAAS;YACb,EAAE,EAAE,SAAS;YACb,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;SACjB;KACF;IACD,eAAe,EAAE;QACf,KAAK,EAAE,QAAQ;QACf,IAAI,EAAE,SAAS;KAChB;CACF,CAAC,CAAC;AAEH,SAAS,MAAM,CAAC,EACd,SAAS,EACT,KAAK,EACL,IAAI,EACJ,GAAG,KAAK,EACgF;IACxF,OAAO,CACL,KAAC,eAAe,CAAC,IAAI,iBACT,QAAQ,EAClB,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,KACrD,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAsD;IAC9F,OAAO,CACL,KAAC,eAAe,CAAC,KAAK,iBACV,cAAc,EACxB,SAAS,EAAE,EAAE,CAAC,sCAAsC,EAAE,SAAS,CAAC,KAC5D,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,EACtB,SAAS,EACT,GAAG,KAAK,EAC8C;IACtD,OAAO,CACL,KAAC,eAAe,CAAC,QAAQ,iBACb,iBAAiB,EAC3B,SAAS,EAAE,EAAE,CACX,+FAA+F,EAC/F,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { type VariantProps } from "class-variance-authority";
|
|
3
|
+
declare const badgeVariants: (props?: ({
|
|
4
|
+
color?: "info" | "success" | "warning" | "error" | "neutral" | "primary" | "secondary" | null | undefined;
|
|
5
|
+
variant?: "default" | "soft" | "outline" | null | undefined;
|
|
6
|
+
size?: "default" | "sm" | null | undefined;
|
|
7
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
8
|
+
declare function Badge({ className, color, variant, size, asChild, ...props }: React.ComponentProps<"span"> & VariantProps<typeof badgeVariants> & {
|
|
9
|
+
asChild?: boolean;
|
|
10
|
+
}): React.JSX.Element;
|
|
11
|
+
export { Badge, badgeVariants };
|
|
12
|
+
//# sourceMappingURL=badge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"badge.d.ts","sourceRoot":"","sources":["../../src/components/badge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAIlE,QAAA,MAAM,aAAa;;;;8EAmClB,CAAC;AAEF,iBAAS,KAAK,CAAC,EACb,SAAS,EACT,KAAK,EACL,OAAO,EACP,IAAI,EACJ,OAAe,EACf,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAC7B,YAAY,CAAC,OAAO,aAAa,CAAC,GAAG;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,qBAUF;AAED,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Slot } from "@radix-ui/react-slot";
|
|
3
|
+
import { cva } from "class-variance-authority";
|
|
4
|
+
import { cn } from "../lib/utils.js";
|
|
5
|
+
const badgeVariants = cva("inline-flex w-fit shrink-0 items-center justify-center gap-1 font-medium whitespace-nowrap transition-colors disabled:pointer-events-none disabled:opacity-48 [&>svg]:size-3.5 [&>svg]:shrink-0", {
|
|
6
|
+
variants: {
|
|
7
|
+
color: {
|
|
8
|
+
neutral: "[--badge-contrast:#fff] [--badge-main:var(--color-primary-darker)] [--badge-text:var(--color-primary-darker)]",
|
|
9
|
+
primary: "[--badge-contrast:#fff] [--badge-main:var(--color-primary-main)] [--badge-text:var(--color-primary-main)]",
|
|
10
|
+
secondary: "[--badge-contrast:#151104] [--badge-main:var(--color-secondary-main)] [--badge-text:var(--color-secondary-main)]",
|
|
11
|
+
info: "[--badge-contrast:#fff] [--badge-main:var(--color-info-main)] [--badge-text:var(--color-info-main)]",
|
|
12
|
+
success: "[--badge-contrast:#fff] [--badge-main:var(--color-success-main)] [--badge-text:var(--color-success-main)]",
|
|
13
|
+
warning: "[--badge-contrast:#151104] [--badge-main:var(--color-warning-main)] [--badge-text:var(--color-warning-main)]",
|
|
14
|
+
error: "[--badge-contrast:#fff] [--badge-main:var(--color-error-main)] [--badge-text:var(--color-error-main)]"
|
|
15
|
+
},
|
|
16
|
+
variant: {
|
|
17
|
+
default: "bg-[var(--badge-main)] text-[var(--badge-contrast)]",
|
|
18
|
+
outline: "border border-[var(--badge-main)] bg-transparent text-[var(--badge-text)]",
|
|
19
|
+
soft: "bg-[color-mix(in_srgb,var(--badge-main)_24%,transparent)] text-[var(--badge-text)]"
|
|
20
|
+
},
|
|
21
|
+
size: {
|
|
22
|
+
sm: "h-6 rounded-md px-2 text-xs",
|
|
23
|
+
default: "h-8 rounded-lg px-3 text-sm"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
defaultVariants: {
|
|
27
|
+
color: "neutral",
|
|
28
|
+
variant: "default",
|
|
29
|
+
size: "default"
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
function Badge({ className, color, variant, size, asChild = false, ...props }) {
|
|
33
|
+
const Comp = asChild ? Slot : "span";
|
|
34
|
+
return (_jsx(Comp, { "data-slot": "badge", className: cn(badgeVariants({ color, variant, size, className })), ...props }));
|
|
35
|
+
}
|
|
36
|
+
export { Badge, badgeVariants };
|
|
37
|
+
//# sourceMappingURL=badge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"badge.js","sourceRoot":"","sources":["../../src/components/badge.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,MAAM,aAAa,GAAG,GAAG,CACvB,iMAAiM,EACjM;IACE,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,OAAO,EACL,+GAA+G;YACjH,OAAO,EACL,2GAA2G;YAC7G,SAAS,EACP,kHAAkH;YACpH,IAAI,EAAE,qGAAqG;YAC3G,OAAO,EACL,2GAA2G;YAC7G,OAAO,EACL,8GAA8G;YAChH,KAAK,EACH,uGAAuG;SAC1G;QACD,OAAO,EAAE;YACP,OAAO,EAAE,qDAAqD;YAC9D,OAAO,EAAE,2EAA2E;YACpF,IAAI,EAAE,oFAAoF;SAC3F;QACD,IAAI,EAAE;YACJ,EAAE,EAAE,6BAA6B;YACjC,OAAO,EAAE,6BAA6B;SACvC;KACF;IACD,eAAe,EAAE;QACf,KAAK,EAAE,SAAS;QAChB,OAAO,EAAE,SAAS;QAClB,IAAI,EAAE,SAAS;KAChB;CACF,CACF,CAAC;AAEF,SAAS,KAAK,CAAC,EACb,SAAS,EACT,KAAK,EACL,OAAO,EACP,IAAI,EACJ,OAAO,GAAG,KAAK,EACf,GAAG,KAAK,EAIP;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;IAErC,OAAO,CACL,KAAC,IAAI,iBACO,OAAO,EACjB,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,KAC7D,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
declare function Breadcrumb({ ...props }: React.ComponentProps<"nav">): React.JSX.Element;
|
|
3
|
+
declare function BreadcrumbList({ className, ...props }: React.ComponentProps<"ol">): React.JSX.Element;
|
|
4
|
+
declare function BreadcrumbItem({ className, ...props }: React.ComponentProps<"li">): React.JSX.Element;
|
|
5
|
+
declare function BreadcrumbLink({ asChild, className, ...props }: React.ComponentProps<"a"> & {
|
|
6
|
+
asChild?: boolean;
|
|
7
|
+
}): React.JSX.Element;
|
|
8
|
+
declare function BreadcrumbPage({ className, ...props }: React.ComponentProps<"span">): React.JSX.Element;
|
|
9
|
+
declare function BreadcrumbSeparator({ children, className, ...props }: React.ComponentProps<"li">): React.JSX.Element;
|
|
10
|
+
declare function BreadcrumbEllipsis({ className, ...props }: React.ComponentProps<"span">): React.JSX.Element;
|
|
11
|
+
export { Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator };
|
|
12
|
+
//# sourceMappingURL=breadcrumb.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"breadcrumb.d.ts","sourceRoot":"","sources":["../../src/components/breadcrumb.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,iBAAS,UAAU,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,qBAE5D;AAED,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,qBAW1E;AAED,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,qBAQ1E;AAED,iBAAS,cAAc,CAAC,EACtB,OAAe,EACf,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,qBAUnD;AAED,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,qBAW5E;AAED,iBAAS,mBAAmB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,qBAYzF;AAED,iBAAS,kBAAkB,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,qBAahF;AAED,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,cAAc,EACd,cAAc,EACd,mBAAmB,EACpB,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { ChevronRightIcon, MoreHorizontalIcon } from "lucide-react";
|
|
3
|
+
import { Slot } from "@radix-ui/react-slot";
|
|
4
|
+
import { cn } from "../lib/utils.js";
|
|
5
|
+
function Breadcrumb({ ...props }) {
|
|
6
|
+
return _jsx("nav", { "data-slot": "breadcrumb", "aria-label": "breadcrumb", ...props });
|
|
7
|
+
}
|
|
8
|
+
function BreadcrumbList({ className, ...props }) {
|
|
9
|
+
return (_jsx("ol", { "data-slot": "breadcrumb-list", className: cn("flex flex-wrap items-center gap-2 text-sm text-ink-secondary sm:gap-2.5", className), ...props }));
|
|
10
|
+
}
|
|
11
|
+
function BreadcrumbItem({ className, ...props }) {
|
|
12
|
+
return (_jsx("li", { "data-slot": "breadcrumb-item", className: cn("inline-flex items-center gap-2", className), ...props }));
|
|
13
|
+
}
|
|
14
|
+
function BreadcrumbLink({ asChild = false, className, ...props }) {
|
|
15
|
+
const Comp = asChild ? Slot : "a";
|
|
16
|
+
return (_jsx(Comp, { "data-slot": "breadcrumb-link", className: cn("text-ink-primary transition-colors hover:text-primary-main", className), ...props }));
|
|
17
|
+
}
|
|
18
|
+
function BreadcrumbPage({ className, ...props }) {
|
|
19
|
+
return (_jsx("span", { "data-slot": "breadcrumb-page", role: "link", "aria-current": "page", "aria-disabled": "true", className: cn("font-medium text-ink-secondary", className), ...props }));
|
|
20
|
+
}
|
|
21
|
+
function BreadcrumbSeparator({ children, className, ...props }) {
|
|
22
|
+
return (_jsx("li", { "data-slot": "breadcrumb-separator", role: "presentation", "aria-hidden": "true", className: cn("text-ink-disabled [&>svg]:size-3.5 rtl:[&>svg]:rotate-180", className), ...props, children: children ?? _jsx(ChevronRightIcon, {}) }));
|
|
23
|
+
}
|
|
24
|
+
function BreadcrumbEllipsis({ className, ...props }) {
|
|
25
|
+
return (_jsxs("span", { "data-slot": "breadcrumb-ellipsis", role: "presentation", "aria-hidden": "true", className: cn("flex size-8 items-center justify-center", className), ...props, children: [_jsx(MoreHorizontalIcon, { className: "size-4" }), _jsx("span", { className: "sr-only", children: "More" })] }));
|
|
26
|
+
}
|
|
27
|
+
export { Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator };
|
|
28
|
+
//# sourceMappingURL=breadcrumb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"breadcrumb.js","sourceRoot":"","sources":["../../src/components/breadcrumb.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAE5C,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,SAAS,UAAU,CAAC,EAAE,GAAG,KAAK,EAA+B;IAC3D,OAAO,2BAAe,YAAY,gBAAY,YAAY,KAAK,KAAK,GAAI,CAAC;AAC3E,CAAC;AAED,SAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA8B;IACzE,OAAO,CACL,0BACY,iBAAiB,EAC3B,SAAS,EAAE,EAAE,CACX,yEAAyE,EACzE,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA8B;IACzE,OAAO,CACL,0BACY,iBAAiB,EAC3B,SAAS,EAAE,EAAE,CAAC,gCAAgC,EAAE,SAAS,CAAC,KACtD,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,EACtB,OAAO,GAAG,KAAK,EACf,SAAS,EACT,GAAG,KAAK,EAC0C;IAClD,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IAElC,OAAO,CACL,KAAC,IAAI,iBACO,iBAAiB,EAC3B,SAAS,EAAE,EAAE,CAAC,4DAA4D,EAAE,SAAS,CAAC,KAClF,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAgC;IAC3E,OAAO,CACL,4BACY,iBAAiB,EAC3B,IAAI,EAAC,MAAM,kBACE,MAAM,mBACL,MAAM,EACpB,SAAS,EAAE,EAAE,CAAC,gCAAgC,EAAE,SAAS,CAAC,KACtD,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,KAAK,EAA8B;IACxF,OAAO,CACL,0BACY,sBAAsB,EAChC,IAAI,EAAC,cAAc,iBACP,MAAM,EAClB,SAAS,EAAE,EAAE,CAAC,2DAA2D,EAAE,SAAS,CAAC,KACjF,KAAK,YAER,QAAQ,IAAI,KAAC,gBAAgB,KAAG,GAC9B,CACN,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAgC;IAC/E,OAAO,CACL,6BACY,qBAAqB,EAC/B,IAAI,EAAC,cAAc,iBACP,MAAM,EAClB,SAAS,EAAE,EAAE,CAAC,yCAAyC,EAAE,SAAS,CAAC,KAC/D,KAAK,aAET,KAAC,kBAAkB,IAAC,SAAS,EAAC,QAAQ,GAAG,EACzC,eAAM,SAAS,EAAC,SAAS,qBAAY,IAChC,CACR,CAAC;AACJ,CAAC;AAED,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,cAAc,EACd,cAAc,EACd,mBAAmB,EACpB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { type VariantProps } from "class-variance-authority";
|
|
3
|
+
declare const buttonGroupVariants: (props?: ({
|
|
4
|
+
orientation?: "horizontal" | "vertical" | null | undefined;
|
|
5
|
+
size?: "default" | "sm" | "lg" | null | undefined;
|
|
6
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
7
|
+
declare function ButtonGroup({ className, orientation, size, role, ...props }: React.ComponentProps<"div"> & VariantProps<typeof buttonGroupVariants>): React.JSX.Element;
|
|
8
|
+
export { ButtonGroup, buttonGroupVariants };
|
|
9
|
+
//# sourceMappingURL=button-group.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button-group.d.ts","sourceRoot":"","sources":["../../src/components/button-group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAIlE,QAAA,MAAM,mBAAmB;;;8EAsBxB,CAAC;AAEF,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,WAAW,EACX,IAAI,EACJ,IAAc,EACd,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,OAAO,mBAAmB,CAAC,qBAUxE;AAED,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { cva } from "class-variance-authority";
|
|
3
|
+
import { cn } from "../lib/utils.js";
|
|
4
|
+
const buttonGroupVariants = cva("inline-flex w-fit rounded-lg [&>[data-slot=button]]:rounded-none [&>[data-slot=button]]:shadow-none", {
|
|
5
|
+
variants: {
|
|
6
|
+
orientation: {
|
|
7
|
+
horizontal: "flex-row [&>[data-slot=button]+[data-slot=button]:not([data-variant=outline])]:border-s [&>[data-slot=button]+[data-slot=button]:not([data-variant=outline])]:border-s-black/15 [&>[data-slot=button]+[data-slot=button][data-variant=outline]]:-ms-px [&>[data-slot=button]:first-child]:rounded-s-lg [&>[data-slot=button]:last-child]:rounded-e-lg",
|
|
8
|
+
vertical: "flex-col [&>[data-slot=button]+[data-slot=button]:not([data-variant=outline])]:border-t [&>[data-slot=button]+[data-slot=button]:not([data-variant=outline])]:border-t-black/15 [&>[data-slot=button]+[data-slot=button][data-variant=outline]]:-mt-px [&>[data-slot=button]:first-child]:rounded-t-lg [&>[data-slot=button]:last-child]:rounded-b-lg"
|
|
9
|
+
},
|
|
10
|
+
size: {
|
|
11
|
+
sm: "[&>[data-slot=button]]:h-[30px] [&>[data-slot=button]]:px-3 [&>[data-slot=button]]:text-[13px]",
|
|
12
|
+
default: "[&>[data-slot=button]]:h-9 [&>[data-slot=button]]:px-4 [&>[data-slot=button]]:text-sm",
|
|
13
|
+
lg: "[&>[data-slot=button]]:h-12 [&>[data-slot=button]]:px-5 [&>[data-slot=button]]:text-base"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
defaultVariants: {
|
|
17
|
+
orientation: "horizontal",
|
|
18
|
+
size: "default"
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
function ButtonGroup({ className, orientation, size, role = "group", ...props }) {
|
|
22
|
+
return (_jsx("div", { "data-slot": "button-group", "data-orientation": orientation, role: role, className: cn(buttonGroupVariants({ orientation, size, className })), ...props }));
|
|
23
|
+
}
|
|
24
|
+
export { ButtonGroup, buttonGroupVariants };
|
|
25
|
+
//# sourceMappingURL=button-group.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button-group.js","sourceRoot":"","sources":["../../src/components/button-group.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,MAAM,mBAAmB,GAAG,GAAG,CAC7B,qGAAqG,EACrG;IACE,QAAQ,EAAE;QACR,WAAW,EAAE;YACX,UAAU,EACR,uVAAuV;YACzV,QAAQ,EACN,uVAAuV;SAC1V;QACD,IAAI,EAAE;YACJ,EAAE,EAAE,gGAAgG;YACpG,OAAO,EACL,uFAAuF;YACzF,EAAE,EAAE,0FAA0F;SAC/F;KACF;IACD,eAAe,EAAE;QACf,WAAW,EAAE,YAAY;QACzB,IAAI,EAAE,SAAS;KAChB;CACF,CACF,CAAC;AAEF,SAAS,WAAW,CAAC,EACnB,SAAS,EACT,WAAW,EACX,IAAI,EACJ,IAAI,GAAG,OAAO,EACd,GAAG,KAAK,EAC+D;IACvE,OAAO,CACL,2BACY,cAAc,sBACN,WAAW,EAC7B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,KAChE,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { type VariantProps } from "class-variance-authority";
|
|
3
|
+
declare const buttonVariants: (props?: ({
|
|
4
|
+
color?: "info" | "success" | "warning" | "error" | "primary" | "secondary" | null | undefined;
|
|
5
|
+
variant?: "default" | "link" | "text" | "soft" | "outline" | "contained" | "outlined" | "ghost" | null | undefined;
|
|
6
|
+
size?: "default" | "sm" | "lg" | "icon" | "icon-sm" | "icon-lg" | null | undefined;
|
|
7
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
8
|
+
declare function Button({ className, color, variant, size, asChild, ...props }: React.ComponentProps<"button"> & VariantProps<typeof buttonVariants> & {
|
|
9
|
+
asChild?: boolean;
|
|
10
|
+
}): React.JSX.Element;
|
|
11
|
+
export { Button, buttonVariants };
|
|
12
|
+
//# sourceMappingURL=button.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../src/components/button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AASlE,QAAA,MAAM,cAAc;;;;8EAkDnB,CAAC;AAEF,iBAAS,MAAM,CAAC,EACd,SAAS,EACT,KAAK,EACL,OAAO,EACP,IAAI,EACJ,OAAe,EACf,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,GAC/B,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,qBAWF;AAED,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Slot } from "@radix-ui/react-slot";
|
|
3
|
+
import { cva } from "class-variance-authority";
|
|
4
|
+
import { cn } from "../lib/utils.js";
|
|
5
|
+
const luxuryButtonEffect = "relative isolate overflow-hidden duration-700 ease-out hover:z-10 hover:scale-[1.02] " +
|
|
6
|
+
"before:pointer-events-none before:absolute before:inset-0 before:-translate-x-full before:bg-linear-to-r before:from-transparent before:via-white/20 before:to-transparent before:content-[''] before:transition-transform before:duration-[1.2s] before:ease-in-out hover:before:translate-x-full " +
|
|
7
|
+
"disabled:hover:scale-100 disabled:hover:before:-translate-x-full";
|
|
8
|
+
const buttonVariants = cva(cn("inline-flex shrink-0 items-center justify-center gap-2 rounded-lg font-semibold whitespace-nowrap transition-[background-color,border-color,color,box-shadow,transform] outline-none focus-visible:ring-[3px] focus-visible:ring-[color-mix(in_srgb,var(--button-main)_24%,transparent)] disabled:pointer-events-none disabled:border-action-active/24 disabled:bg-action-active/24 disabled:text-action-active/80 disabled:shadow-none aria-invalid:border-error-main aria-invalid:ring-error-main/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", luxuryButtonEffect), {
|
|
9
|
+
variants: {
|
|
10
|
+
color: {
|
|
11
|
+
primary: "[--button-contrast:#fff] [--button-dark:var(--color-primary-dark)] [--button-main:var(--color-primary-main)]",
|
|
12
|
+
secondary: "[--button-contrast:#151104] [--button-dark:var(--color-secondary-dark)] [--button-main:var(--color-secondary-main)]",
|
|
13
|
+
info: "[--button-contrast:#fff] [--button-dark:var(--color-info-dark)] [--button-main:var(--color-info-main)]",
|
|
14
|
+
success: "[--button-contrast:#fff] [--button-dark:var(--color-success-dark)] [--button-main:var(--color-success-main)]",
|
|
15
|
+
warning: "[--button-contrast:#151104] [--button-dark:var(--color-warning-dark)] [--button-main:var(--color-warning-main)]",
|
|
16
|
+
error: "[--button-contrast:#fff] [--button-dark:var(--color-error-dark)] [--button-main:var(--color-error-main)]"
|
|
17
|
+
},
|
|
18
|
+
variant: {
|
|
19
|
+
default: "bg-[var(--button-main)] text-[var(--button-contrast)] hover:bg-[var(--button-dark)] hover:shadow-[0_8px_16px_color-mix(in_srgb,var(--button-main)_32%,transparent)]",
|
|
20
|
+
contained: "bg-[var(--button-main)] text-[var(--button-contrast)] hover:bg-[var(--button-dark)] hover:shadow-[0_8px_16px_color-mix(in_srgb,var(--button-main)_32%,transparent)]",
|
|
21
|
+
outlined: "border border-[var(--button-main)] bg-transparent text-[var(--button-main)] hover:bg-[color-mix(in_srgb,var(--button-main)_8%,transparent)]",
|
|
22
|
+
text: "bg-transparent text-[var(--button-main)] hover:bg-[color-mix(in_srgb,var(--button-main)_8%,transparent)]",
|
|
23
|
+
soft: "bg-[color-mix(in_srgb,var(--button-main)_16%,transparent)] text-[var(--button-main)] hover:bg-[color-mix(in_srgb,var(--button-main)_24%,transparent)]",
|
|
24
|
+
outline: "border border-[var(--button-main)] bg-transparent text-[var(--button-main)] hover:bg-[color-mix(in_srgb,var(--button-main)_8%,transparent)]",
|
|
25
|
+
ghost: "bg-transparent text-[var(--button-main)] hover:bg-[color-mix(in_srgb,var(--button-main)_8%,transparent)]",
|
|
26
|
+
link: "h-auto bg-transparent p-0 text-[var(--button-main)] underline-offset-4 hover:underline"
|
|
27
|
+
},
|
|
28
|
+
size: {
|
|
29
|
+
default: "h-9 px-4 text-sm has-[>svg]:px-3",
|
|
30
|
+
sm: "h-[30px] gap-1.5 px-3 text-[13px] has-[>svg]:px-2.5",
|
|
31
|
+
lg: "h-12 px-5 text-base has-[>svg]:px-4",
|
|
32
|
+
icon: "size-9",
|
|
33
|
+
"icon-sm": "size-[30px]",
|
|
34
|
+
"icon-lg": "size-12"
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
defaultVariants: {
|
|
38
|
+
color: "primary",
|
|
39
|
+
variant: "default",
|
|
40
|
+
size: "default"
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
function Button({ className, color, variant, size, asChild = false, ...props }) {
|
|
44
|
+
const Comp = asChild ? Slot : "button";
|
|
45
|
+
return (_jsx(Comp, { "data-slot": "button", "data-variant": variant ?? "default", className: cn(buttonVariants({ color, variant, size, className })), ...props }));
|
|
46
|
+
}
|
|
47
|
+
export { Button, buttonVariants };
|
|
48
|
+
//# sourceMappingURL=button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/components/button.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,MAAM,kBAAkB,GACtB,uFAAuF;IACvF,qSAAqS;IACrS,kEAAkE,CAAC;AAErE,MAAM,cAAc,GAAG,GAAG,CACxB,EAAE,CACA,0jBAA0jB,EAC1jB,kBAAkB,CACnB,EACD;IACE,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,OAAO,EACL,8GAA8G;YAChH,SAAS,EACP,qHAAqH;YACvH,IAAI,EAAE,wGAAwG;YAC9G,OAAO,EACL,8GAA8G;YAChH,OAAO,EACL,iHAAiH;YACnH,KAAK,EACH,0GAA0G;SAC7G;QACD,OAAO,EAAE;YACP,OAAO,EACL,qKAAqK;YACvK,SAAS,EACP,qKAAqK;YACvK,QAAQ,EACN,6IAA6I;YAC/I,IAAI,EAAE,0GAA0G;YAChH,IAAI,EAAE,uJAAuJ;YAC7J,OAAO,EACL,6IAA6I;YAC/I,KAAK,EACH,0GAA0G;YAC5G,IAAI,EAAE,wFAAwF;SAC/F;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,kCAAkC;YAC3C,EAAE,EAAE,qDAAqD;YACzD,EAAE,EAAE,qCAAqC;YACzC,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,aAAa;YACxB,SAAS,EAAE,SAAS;SACrB;KACF;IACD,eAAe,EAAE;QACf,KAAK,EAAE,SAAS;QAChB,OAAO,EAAE,SAAS;QAClB,IAAI,EAAE,SAAS;KAChB;CACF,CACF,CAAC;AAEF,SAAS,MAAM,CAAC,EACd,SAAS,EACT,KAAK,EACL,OAAO,EACP,IAAI,EACJ,OAAO,GAAG,KAAK,EACf,GAAG,KAAK,EAIP;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEvC,OAAO,CACL,KAAC,IAAI,iBACO,QAAQ,kBACJ,OAAO,IAAI,SAAS,EAClC,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,KAC9D,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC"}
|